基于机器学习算法与因子分析的玻璃文物化学成分研究
摘要
本文基于题目给出的数据,对数据进行了预处理与描述性分析。利用了决策树算法对玻璃的玻璃类型、纹饰、颜色和风化程度进行建模,运用随机森林回归的方法对风化前的玻璃化学成分进行预测,运用无监督学习的方式对玻璃文物进行亚分类,并通过机器学习的算法建立模型,对玻璃样品的种类进行预测,最后通过因子分析进行玻璃文物化学成分的关联性研究。
针对问题一:问题一的第一问通过建立决策树模型,将玻璃类型,纹饰以及颜色作为自变量,将玻璃表面的风化程度作为因变量,建立分类模型,并且通过绘制决策树的方式直观的展示玻璃的类型,纹饰以及颜色对于玻璃的风化程度的影响。问题一的第二小问首先运用通过曼惠特尼检验对总体样本进行检验,得出高钾玻璃和铅钡玻璃在化学成分上的不同,对高钾玻璃和铅钡玻璃分别进行检验,得出高钾玻璃和铅钡玻璃风化前后化学成分的不同。通过 F 检验对两种玻璃进行检验,筛选出与玻璃的风化程度有显著的线性关系的化学成分,作为预测风化前的化学成分。对需要预测的数据运用随机森林回归的方式依次进行填充,完成对风化前玻璃化学成分的预测。
针对问题二:问题二首先剔除风化情况对化学成分含量的影响,并通过对数据统计量进行对比研究,得到不同类别特征的直观差异。接着进一步选择搭建神经网络,具体解决玻璃类型的分类问题。将原数据按照 5:1 的比例划分为训练集与测试集,选择多层感知器(MLP)模型进行训练,并通过交叉检验的方法评估模型泛化能力,得到分类规律。问题二第二部分要求对每个类别选择化学成分进行亚类划分,给出划分方法及结果,并对结果进行分析。对于亚分类,我们采用的是无监督学习方法:Kmeans 和DBSCAN,择优选择了 Kmeans 并分别从化学和模型角度分析了合理性和敏感性。
针对问题三:针对未知类型玻璃分类问题,问题三首先对不均衡数据进行数据增强
Smote 算法,解决样本数据不均衡问题。接着尝试使用多种机器学习模型,包括随机森林、xgboost 等,并通过贝叶斯优化的方式进行机器学习模型参数的优化,并比较其准确率,并择优得出结论。
针对问题四:此首先考虑对不同类别的玻璃的化学成分进行 Pearson 相关性分析, 通过绘制相关性矩阵的方式观察变量之间是否有正相关与负相关的关系。之后采取因子分析的方法,提取主要因子,根据旋转后的成分矩阵对原本的化学变量进行分组,分在一组中的化学成分有较高的相关性。考虑到多个化学成分之间可能会有互相影响的情况,因此最后再采取偏相关性分析,把一组中其他因素的影响视为常数,即暂不考虑其他要素的影响,而单独研究那两个要素之间的相互关系的密切程度。最后得出结论。
关键字: 玻璃文物 机器学习算法 因子分析 贝叶斯优化