文档介绍:基于AUTO-SKLEARN的图像识别算法
摘要:本文提出了一种基于自动机器学习(Automatic Machine Learning)框架AUTO-SKLEARN的图像识别算法。通过逻辑回归、K-近邻、SVM、多层感知神经网行超参数优化,并以元学习的方式在贝叶斯优化前缩小优化空间,除此之外,还生成了机器学习集成模型,以这种集成学习的方式增强学习和识别性能。
美国学者Pelikan等在2002年提出了贝叶斯优化算法[8]。这种算法首先随机产生了初始种群;然后从当前种群中选择(可以采用进化算法的各种选择方法)出候选解;继而对选择后的种群建立贝叶斯网络;之后,新的候选解就从贝叶斯网络的采样中获取;最后,将采样得到的解重新加入到原来的种群中,甚至可以用新的解代替原来的所有的解;重复这个过程,直到满足终止条件。终止条件可以是算法已经收敛找到了最优解,或者是种群失去了多样性,又或者是算法无法收敛不太可能找到更优的解[9]。贝叶斯优化算法的算法流程如下:
在最优化采集函数的前提下,贝叶斯优化能够在理论上保证最终收敛。直观上,这是因为迭代过程中每次迭代都采样最有“价值”的点进行评估,只要保证足量的迭代次数,算法最终一定会收敛到全局最优解[10]。
在20世纪90年代,Wolpert等提出了的NFL定理:如果对具体学习任务的本质不作任何先验假设,则没有任何理由认定某种学习算法比另外一种更好;如果某种算法对某个特定的问题看上去比另外一种算法更好,则仅仅是它更适合这一特定的学习任务,而并非泛泛地说该算法是“优越”的[11]。同时,有学者意识到算法选择可被视作学习任务。两相结合,算法选择在机器学习学科中逐渐发展,渐而形成了元学习分支。近年来,元学习逐渐成为了一种典型的通过大数据指导样本数据的学习方法,成为了机器学习领域继增强学习(Reinforcement Learning)之后又一个重要的领域[12]。
在常规的机器学习任务中,资深机器学习工程师了解各类算法的性能,能够在诸多算法中选择出有优势的数据处理与识别算法。元学习通过不同算法的性能进行推理,以模仿这种策略。在初始阶段,评估每个候选算法在各个数据集上性能,并提取这些数据的元特征,构成元数据;然后采用适当的元算法对元数据进行元学习,获得数据集特征与算法性能间的映射关系,形成元知识库[13]。算法的选择需要依靠元知识的指导,当新的数据集加入时,可先对该数据集进行特征提取,然后根据与元知识库的特征匹配程度,选择最优的算法[14]。在AUTO-SKLEARN中采用该方法来缩小CASH(Combined Algorithm Selection and Hyperparameter optimization)问题的搜索范围,这样一来,就大大缩小了算法选择与超参数优化的搜索范围,显著提高效率[7]。
本次实验使用的数据采用digits数据集。该数据集是一个大型数据库的手写数字是通常用于训练各种图像处理系统[15][16]。数据集含1797张8*8像素的手写字体图片。
在上述数据的基礎之上,在k折交叉验证时以75%的数据作为训练集,25%的数据作为测试集,使用AUTO-SKLEARN进行