Splunk Machine Learning Toolkit在回归问题上的应用

简介: Splunk MLTK实现了模型准确性的验证,并且可以通过特征系数来解释为什么会产生这样的模型

在前面的文章中,我们对Splunk Machine Learning Toolkit 3.0.0进行了介绍,今天我们就来聊一下机器学习中最常见的问题:回归。

什么是回归?

回归对数值连续的通常是来预测一个值,比如预测房屋价格、股票走势、产品销售量、未来的天气情况等。线性回归是最简单的一种回归算法,它期望使用一条直线去拟合数据,如图所示:

可以看出,这样直线有很多,那么哪条才是最佳拟合线呢?这就是寻找最佳拟合的问题。

如果预测值和实际值最接近,它应该是最佳拟合线。我们可以用最小二乘法(Least squares)来解决这个问题。

最小二乘法通过最小化误差的平方和寻找最佳函数匹配。

用最小二乘法容易计算,如果数据集存在线性关系,它能拟合的非常好,但对异常值非常敏感。

评价模型的准确性

欠拟合(under-fit)是模型没有很好地捕捉到数据特征,不能够很好地拟合数据;过拟合(over-fitting) 是模型把数据学习的太彻底,模型泛化能力太差,不能很好的预测数据。理想情况下,我们希望既不欠拟合,也不过拟合。

了解了欠拟合和过拟合,我们需要选择一个能反映模型预测能力的评估标准。

和方误差(sum-squared error, SSE),即真实值与模型预测值误差平方。

 

均方误差(mean-square error, MSE),即真实值与模型预测值误差平方的平均值。

方均根差(root-mean-square error, RMSD)也是一种常用的测量数值之间差异的方法。RMSD表示预测的值和实际值之差的样本标准差。

防止过拟合

正则化可以减少过拟合的风险,通过惩罚因子对回归系数进行抑制。

L1正则化表示各个参数绝对值之和;L2正则化表示各个参数平方和的开方值。在常用的回归方法中,岭(Ridge)回归使用L2正则化、Lasso法使用L1正则化、弹性网(Elastic net)使用L1+L2正则化,它们都能有效的避免过拟合。

这些回归算法在Splunk MLTK中可以直接使用,并且不需要编写复杂的代码,甚至变得更简单。

我们来看Splunk MLTK中数值预测用例:第一步,在搜索框内搜索数据,这里我们使用测试数据housing.csv,同样你也可以使用自己的数据;第二步,选择一种回归算法、确定要预测的字段、选择用来预测的字段(特征)、调整训练集和验证集的比例;第三步,填写模型名称并进行训练。

图表详细展示了字段预测值和真实值的差距:

同样Splunk MLTK也实现了模型准确性的验证,并且可以通过特征系数来解释为什么会产生这样的模型:

如果你想了解更多有关机器学习信息,或者在使用Splunk MLTK中有任何疑问,都可以到论坛(http://ask.10data.com)进行留言和讨论。

目录
相关文章
|
6月前
|
数据可视化 测试技术 API
Azure Machine Learning - Azure可视化图像分类操作实战
Azure Machine Learning - Azure可视化图像分类操作实战
82 1
|
搜索推荐 Android开发 iOS开发
AppsFlyer 研究(四)OneLink Deep Linking Guide
AppsFlyer 研究(四)OneLink Deep Linking Guide
489 0
|
6月前
|
机器学习/深度学习 运维 算法
Machine Learning机器学习之向量机(Support Vector Machine,SVM)
Machine Learning机器学习之向量机(Support Vector Machine,SVM)
|
3月前
|
机器学习/深度学习 算法 安全
【博士每天一篇文献-综述】Machine Unlearning Taxonomy, Metrics, Applications, Challenges, and Prospects
本文综述了机器遗忘的分类、评价指标、应用场景、挑战和未来研究方向,提出了精确遗忘和近似遗忘的概念,并探讨了机器遗忘在模型优化和防御攻击中的应用,同时讨论了分布式学习环境下的遗忘挑战和解决方案。
90 5
|
3月前
|
SQL 机器学习/深度学习 开发工具
【机器学习 Azure Machine Learning】Azure Machine Learning 访问SQL Server 无法写入问题 (使用微软Python AML Core SDK)
【机器学习 Azure Machine Learning】Azure Machine Learning 访问SQL Server 无法写入问题 (使用微软Python AML Core SDK)
|
6月前
|
存储 人工智能 机器人
Azure Machine Learning - 聊天机器人构建
Azure Machine Learning - 聊天机器人构建
70 0
|
算法 IDE 关系型数据库
Machine Learning-L13-频繁模式挖掘
Machine Learning-L13-频繁模式挖掘
Machine Learning-L13-频繁模式挖掘
|
机器学习/深度学习 存储 自然语言处理
Bi-SimCut: A Simple Strategy for Boosting Neural Machine Translation 论文笔记
Bi-SimCut: A Simple Strategy for Boosting Neural Machine Translation 论文笔记
|
机器学习/深度学习 人工智能 自然语言处理
Machine Learning-L0-机器学习简介
Machine Learning-L0-机器学习简介
Machine Learning-L0-机器学习简介
|
机器学习/深度学习 算法 搜索推荐
Paper:《A Few Useful Things to Know About Machine Learning—关于机器学习的一些有用的知识》翻译与解读
Paper:《A Few Useful Things to Know About Machine Learning—关于机器学习的一些有用的知识》翻译与解读
下一篇
无影云桌面