优化xgboost模型:从SVM到0.977高分

需积分: 0 0 下载量 158 浏览量 更新于2024-08-04 收藏 31KB DOCX 举报
本篇实验报告由朱志儒撰写,主要关注于使用机器学习方法优化模型性能,特别是针对一个未详尽的IT任务。作者在Windows 10 64位系统上运行,配备了Intel Core i5-6300HQ处理器和NVIDIA GeForce GTX 950M GPU,利用Python进行数据分析和建模。 首先,数据预处理是关键步骤。训练集包含空缺值,数据类型多样,包括float、int和字符串。作者通过删除含有全空列,用平均值填充数值型空缺,用最常见的值填充非数值型空缺,并使用LabelEncoder将类别数据转化为数值。接着,对所有数据进行了min-max标准化,尽管维度较低,但保持了原始特征的多样性。 初始尝试使用了sklearn库的LinearSVC进行线性支持向量机(SVM)模型训练,但因为其输出是0/1标签而非概率,不适合以AUC作为评价指标,导致得分仅为0.86323。随后,作者调整了SVC参数,如kernel设为linear,probability设为True,并通过网格搜索确定C值为1.5,虽然提高了得分至0.94539,但效果仍不理想。 考虑到SVM模型对数据预处理的敏感性,作者转向了更强大的xgboost模型。初始设置下,xgboost表现良好,得分为0.97699,明显优于之前的SVM。为了进一步优化模型性能,作者采用了调参策略,可能包括网格搜索或者随机搜索,以确定最佳参数组合。具体过程可能涉及了交叉验证,如5折验证,来评估模型在不同参数下的稳定性和泛化能力。 在整个实验中,朱志儒重点在于探索适合问题的模型和参数调整方法,以便提高预测准确性和AUC值。通过一系列尝试和优化,作者展示了如何在IT项目中有效地处理缺失值、选择合适的模型,并通过调参实现性能提升的过程。这种实践对于理解和应用机器学习模型具有很高的参考价值。