Weka Explorer(探索者界面) 详解(4)logistic回归和回归算法

大家好,我又回来了。今天讲一讲回归。

回归算法通常用于数值的预测,但是也能用来分类(通过回归计算属于各分类的概率,取其最大者),所以 weka 把回归算法归并于 分类器标签。

打开 weka 在data文件夹下找到 cpu.with.vendor.arff 文件,这就是我们用来测试的样本,加载该样本。


线性回归算法

切换到分类器标签,在 choose 下拉框中选择 function节点下的 LinearRegression 算法,该算法就是最基本的回归算法——线性回归。

点击 Start 按钮,在 Result List 中找到生成的 分类器。右键该分类器 选择 Visualize classifier errors 可以查看分类器的误差。如图:


可以通过选择X轴和Y轴的属性,来从不同维度浏览数据,数据点用大叉表示,大叉越大说明误差越大。

线性回归算法通过计算平方误差来判断生成的分类器与真实数据的匹配程度。


logistic回归算法

当我们把线性回归算法用于分类的时候,线性回归算法就会有一个很大的弊端:
线性回归非常容易被极值干扰,见下图:
clip_image002
于是就有了logistic回归:

P(x)=1/(1+exp(-f(x1,x2,x3.....xk)) 

其中f(x1,x2,x3.....xk)是一个线性回归函数。
在logistic回归里计算误差的模型是 对数似然。
R语言实现logistic回归: glm(nomove~conc,family=binomial(link='logit'),data=anesthetic)​

M5P回归算法

在这里再向大家介绍一种很实用的回归算法:M5P算法。这个算法是决策树和线性回归算法的一个结合体。
举一个例子向大家说明。
预测 处理器芯片的价格。 处理器芯片分为电脑使用的通用芯片(代表是Intel 和 AMD)和手机、嵌入式设备使用的芯片(ARM芯片)。即使两种芯片的其他参数大体一致,通用芯片和嵌入式芯片的价格还是会有很大不同。如果在生成回归模型的时候把这两类芯片的数据混为一谈,那么生成出来的线性模型的误差必定会变得很大。如果能用决策树算法把样本预先分成两类(通用和嵌入式),然后对两个分类分别进行回归算法,那么回归模型就会好很多。
在 weka 中的分类器算法下拉框中,找到 trees 节点下的 M5P算法,对 cpu.with.vendor.arff 样本进行回归,然后与 LinearRegression 算法 比较误差,可以发现 M5P算法明显更好。如下图(图中根据MMAX这个参数先把样本分成了两类):





  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱知菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值