10 2016 档案

摘要:对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了。 1. 获取数据,定义问题 没有数据,当然没法研究机器学习啦。:) 这里我们用UCI大学公开的机器学习数据来跑线性回归。 数据的介绍在这: http://ar 阅读全文
posted @ 2016-10-31 17:37 刘建平Pinard 阅读(103617) 评论(77) 推荐(20) 编辑
摘要:很多朋友想学习机器学习,却苦于环境的搭建,这里给出windows上scikit-learn研究开发环境的搭建步骤。 Step 1. Python的安装 python有2.x和3.x的版本之分,但是很多好的机器学习python库都不支持3.x,因此,推荐安装2.7版本的python。当前最新的pyth 阅读全文
posted @ 2016-10-30 17:37 刘建平Pinard 阅读(17231) 评论(8) 推荐(4) 编辑
摘要:目前机器学习可以说是百花齐放阶段,不过如果要学习或者研究机器学习,进而用到生产环境,对平台,开发语言,机器学习库的选择就要费一番脑筋了。这里就我自己的机器学习经验做一个建议,仅供参考。 首先,对于平台选择的第一个问题是,你是要用于生产环境,也就是具体的产品中,还是仅仅是做研究学习用? 1. 生产环境 阅读全文
posted @ 2016-10-28 12:15 刘建平Pinard 阅读(23768) 评论(30) 推荐(15) 编辑
摘要:线性回归可以说是机器学习中最基本的问题类型了,这里就对线性回归的原理和算法做一个小结。 1. 线性回归的模型函数和损失函数 线性回归遇到的问题一般是这样的。我们有m个样本,每个样本对应于n维特征和一个结果输出,如下: \((x_1^{(0)}, x_2^{(0)}, ...x_n^{(0)}, y_ 阅读全文
posted @ 2016-10-28 11:12 刘建平Pinard 阅读(59454) 评论(111) 推荐(24) 编辑
摘要:在机器学习的算法评估中,尤其是分类算法评估中,我们经常听到精确率(precision)与召回率(recall),RoC曲线与PR曲线这些概念,那这些概念到底有什么用处呢? 首先,我们需要搞清楚几个拗口的概念: 1. TP, FP, TN, FN 听起来还是很费劲,不过我们用一张图就很容易理解了。图如 阅读全文
posted @ 2016-10-24 16:22 刘建平Pinard 阅读(41036) 评论(35) 推荐(15) 编辑
摘要:交叉验证是在机器学习建立模型和验证模型参数时常用的办法。交叉验证,顾名思义,就是重复的使用数据,把得到的样本数据进行切分,组合为不同的训练集和测试集,用训练集来训练模型,用测试集来评估模型预测的好坏。在此基础上可以得到多组不同的训练集和测试集,某次训练集中的某样本在下次可能成为测试集中的样本,即所谓 阅读全文
posted @ 2016-10-24 15:28 刘建平Pinard 阅读(88972) 评论(95) 推荐(26) 编辑
摘要:最小二乘法是用来做函数拟合或者求函数极值的方法。在机器学习,尤其是回归模型中,经常可以看到最小二乘法的身影,这里就对我对最小二乘法的认知做一个小结。 1.最小二乘法的原理与要解决的问题 最小二乘法是由勒让德在19世纪发现的,原理的一般形式很简单,当然发现的过程是非常艰难的。形式如下式:$$目标函数 阅读全文
posted @ 2016-10-19 12:31 刘建平Pinard 阅读(106548) 评论(72) 推荐(58) 编辑
摘要:在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。这里就对梯度下降法做一个完整的总结。 1. 梯度 在微积分里面,对多元函数的参数求∂偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数 阅读全文
posted @ 2016-10-17 22:49 刘建平Pinard 阅读(533826) 评论(247) 推荐(163) 编辑