本发明涉及数据挖掘领域,特别涉及一种建立数据挖掘自动回馈系统的方法。
背景技术:
随着大数据技术飞速发展,数据挖掘技术被更加广泛的应用,高校、科研单位、政府以及技术企业都在广泛的使用数据挖掘技术。
一个完整的数据挖掘过程往往包括:数据预处理、数据挖掘算法执行以及数据结果报告等。其中最关键的步骤就是通过数据挖掘算法的执行得到数据挖掘的结果,这个步骤往往需要大量的人工干预与反馈。人工干预与反馈表现为通过专家的经验模型观察执行算法的结果,再根据结果重新调整算法参数重新执行算法得到新结果,直到数据挖掘得到满意的结果。这一过程往往耗费大量的人力成本,浪费了时间和精力。虽然大多数数据挖掘算法可以不断的迭代和收敛,但是由于初始参数和计算过程中的局部最优解造成的数据挖掘结果不理想,并不能通过算法本身迭代解决。
技术实现要素:
本发明的目的在于解决目前数据挖掘实现过程中的需要不断人工反馈调优的问题,提供一种建立高效、可实现、自动化数据挖掘自动回馈系统的方法。
本发明所涉及的一种建立数据挖掘自动回馈系统的方法,所述数据挖掘自动回馈系统包括数据分割模块、结果评价模块、参数调整模块;数据分割模块用于将数据分割为训练数据和评价数据;结果评价模块用于评价数据挖掘结果的满意度,评价的结果反馈给参数数据调整模块;参数调整模块根据结果评价模块的评价调整数据挖掘算法参数。
本发明所涉及的一种建立数据挖掘自动回馈系统的方法,其步骤如下:
步骤1、将待挖掘源数据按比例随机分割为训练数据和测试数据,其中训练数据将用于训练数据挖掘算法模型,测试数据用于评价数据挖掘模型的准确性,为每一次过程执行进行多次分割且使用不同随机原型,避免因随机分割的偶然性影响对算法结果的评价;
步骤2、如果数据挖掘算法输出为模型,则将步骤1中数据分割产生的测试数据的自变量作为输入,使用数据挖掘算法训练产生的算法模型进行数据挖掘,比对步骤1中测试数据中原本的数据结果和使用算法模型进行挖掘的输出,计算二者匹配程度,匹配上计算出MSE以及RMSE等网络性能指标得出对算法模型的准确度评估;
如果数据挖掘算法输出为结果数据,则将训练数据产生的数据挖掘结果与测试数据相比较,计算二者匹配程度,匹配上的数据计算出MSE以及RMSE等网络性能指标,并将将匹配程度和网络性能指标反馈给参数数据调整模块;
步骤3、根据步骤2中对数据挖掘算法模型测试结果及对算法模型的准确度评估,根据结果评价模块的反馈结果,使用参数自动调整算法对数据挖掘的参数进行调整;
步骤4、将调整参数后的数据挖掘算法模型作为新的算法模型,重新执行步骤1,直至数据挖掘算法模型的测试结果达到要求;
其中步骤3所述参数自动调整算法包括:将参数划分为标量参数和矢量参数;进行调参时,优先调整标量参数,调整标量参数仍不能满足需求时,以粒度由粗变细的方式,逐步调整各个矢量参数;
进一步地,上述标量参数指参数的值为有限个数的值,如相似度距离方法仅能为欧几里得距离、明可夫斯基距离、曼哈顿距离等有限的取值;
进一步地,上述矢量参数指可以在一定范围能以任意浮点数调整的参数,如朴素贝叶斯分类算法的平滑参数;
其中步骤2所述MSE一种网络的性能函数,为网络的均方误差,其计算方法如下:
其中步骤2所述RMSE一种网络的性能函数,为网络的均方根误差,其计算方法如下:
本发明的方法所建立的一种数据挖掘自动回馈系统,其数据分割模块、结果评价模块、参数调整模块协同工作形成反馈,自动调整、优化数据挖掘算法的参数,比以往进行数据挖掘更节约人力成本。通过数据分割模块将数据分割为训练数据和测试数据,使数据挖掘效果验证有据可依。通过结果评价模块对数据挖掘算法结果做评价,对数据挖掘效果做出反馈,使参数调整更科学。通过参数调整模块对数据挖掘算法的参数自动调整,减少使用专家经验模型带来的人力浪费。通过参数自动调整算法高效地、精准地自动调整算法参数,有效的提高参数调整效率,减少自动化过程中过多的遍历参数取值范围造成的实际浪费。
附图说明
图1为本发明实施例中数据挖掘自动回馈系统工作流程图;
其中,1为数据分割模块,2为结果评价模块,3为参数调整模块。
图2为本发明实施例中数据分割模块工作流程图;
图3为本发明实施例中结果评价模块工作流程图;
图4为本发明实施例中结果评价模块工作流程图;
图5为本发明实施例中参数调整模块工作流程图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
实施例一
通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
本实施例所涉及的一种数据挖掘自动回馈系统,其工作流程图如图1所示,具体步骤如下:
步骤1、数据分割
如图2所示,将待挖掘源数据按比例随机分割为训练数据和测试数据,其中训练数据将用于训练数据挖掘算法模型,测试数据用于评价数据挖掘模型的准确性,为每一次过程执行进行多次分割且使用不同随机原型,避免因随机分割的偶然性影响对算法结果的评价。
步骤2、训练并评估数据挖掘算法
如图3所示,如果数据挖掘算法输出为模型则将步骤1中数据分割产生的测试数据的自变量作为输入,使用数据挖掘算法训练产生的算法模型进行数据挖掘,比对步骤1中测试数据中原本的数据结果和使用算法模型进行挖掘的输出,计算二者匹配程度,匹配上计算出MSE以及RMSE等网络性能指标得出对算法模型的准确度评估。
如图4所示,如果数据挖掘算法输出为结果数据,则将训练数据产生的数据挖掘结果与测试数据相比较,计算二者匹配程度,匹配上的数据计算出MSE以及RMSE等网络性能指标,并将将匹配程度和网络性能指标反馈给参数数据调整模块。
其中步骤2所述MSE一种网络的性能函数,为网络的均方误差,其计算方法如下:
其中步骤2所述RMSE一种网络的性能函数,为网络的均方根误差,其计算方法如下:
步骤3、调整数据挖掘算法参数优化数据挖掘算法
如图5所示,根据结果评价模块的反馈结果,使用参数自动调整算法对数据挖掘的参数进行调整。其中参数自动调整算法包括:将参数划分为标量参数和矢量参数;进行调参时,优先调整标量参数,调整标量参数仍不能满足需求时,以粒度由粗变细的方式,逐步调整各个矢量参数。其中标量参数指参数的值为有限个数的值,如相似度距离方法仅能为欧几里得距离、明可夫斯基距离、曼哈顿距离等有限的取值;其中矢量参数指可以在一定范围能以任意浮点数调整的参数,如朴素贝叶斯分类算法的平滑参数。
如图1所示,该数据挖掘自动回馈系统包含3个模块:数据分割模块1,结果评价模块2、参数调整模块3。
其中,结果评价模块2、参数调整模块3与数据挖掘算法形成成一个反馈环,在得到满意的数据挖掘结果前,不断地在反馈环中进行正反馈优化。数据挖掘算法的计算结果或得出的模型输入到算法评价模块,算法评价模块的输出结果输入到参数调整模块,参数调整的结果又作用到数据挖掘算法中,形成一个环形的运算体系。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。