博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Splunk Machine Learning Toolkit在回归问题上的应用
阅读量:6398 次
发布时间:2019-06-23

本文共 1136 字,大约阅读时间需要 3 分钟。

在前面的文章中,我们对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://kogha.baihongyu.com/

你可能感兴趣的文章
spring coud feign
查看>>
NPOI List数据源 导出excel
查看>>
07抽象类特点
查看>>
什么事数据对象以及属性分为什么类型?
查看>>
图论精炼500题
查看>>
递归,动态规划,找最短路径,Help Jimmy
查看>>
poj 1006 生理周期
查看>>
Leetcode题目:House Robber III
查看>>
生物技术制药课程学生论文调研报告集
查看>>
LNK1104 无法打开文件 exe
查看>>
二叉树中和为某一值的路径
查看>>
【ZZ】一张图清晰追溯数据库的发展历程(1962-2016年)
查看>>
LeetCode 125. Valid Palindrome
查看>>
转:Awesome Image/Video segmentation
查看>>
深入浅出Mybatis系列(九)---强大的动态SQL(转载)
查看>>
滚动加载图片(懒加载)实现原理
查看>>
第一个spring,第五天。
查看>>
(八)jQuery中的事件
查看>>
QButtonGroup 的使用
查看>>
Oracle数据库——触发器的创建与应用
查看>>