-
Python机器学习--四大基础库
2017-09-06 13:48:15科学计算库Numpy ,数据分析处理库Pandas,可视化库Matplotlib与Seaborn 是Python机器学习中最基本的四大机器学习库,也是Python机器学习的发展主线。本课程重点介绍了Python库的基本知识点,使用方法并配合案列... -
python机器学习手写算法系列——线性回归
2019-05-06 19:51:29本文致力于手把手教你实现一个最简单的机器学习模型--一元线性回归模型。短短的14行代码,就实现了。希望读完以后,你也能自己实现它。并对线性回归有更好的了解,或者从不了解到了解。本系列另一篇文章《决策树》
https://blog.csdn.net/juwikuang/article/details/89333344本文源代码:
https://github.com/juwikuang/machine_learning_step_by_step最近我发现我之前写的一篇文章《一个公式告诉你为什么程序员要转算法工程师》
http://blog.csdn.net/juwikuang/article/details/73057194
有很多人访问。我想,很多程序员和我当初一样,想从程序员转算法工程师。说说我当初为什么会想到升级成算法工程师。记得三年前,我还在印孚瑟斯(Infosys),我们的CFO非常自豪的宣布公司已经成功的让专科生的比例提高了,让本科生的比例降低了。我作为一个本科程序员,听了十分难受。当然,公司这样做是为了利润,也合理合法。换了我是CFO,我也会这样做,不过,我应该不会像他一样大声说。有些事,可以做,不能说。
后来,机缘巧合,我学习了机器学习,走上了算法工程师这条路。当时我学机器学习,是从吴恩达(Andrew Ng)的Coursera课程开始的。很多人和我一样,也是开了这门课,开始机器学习的。这门课挺好,可惜开发语言用了Octave,以至于我每次写作业,都很痛苦,因为我还要学Octave语言,而且这东西学了也没啥用。另外,这门课是英语的,只有少数人能看懂。
本文的目的,就是从最基本,最简单的机器学习算法讲起,手把手的教你实现这个算法。一边编程,一边就明白这个算法的原理了。我本人也是程序员转的算法工程师,我们的强项就是编程,弱项就是数学。我针对这个特点,专门做了以下教程。
言归正传。首先我们看看线性回归在整个机器学习里的位置。
从机器学习到线性回归
今天,我们只关注机器学习到线性回归这条线上的概念。别的以后再说。为了让大家听懂,我这次也不查维基百科了,直接按照自己的理解用大白话说,可能不是很严谨。
机器学习就是机器可以自己学习,而机器学习的方法就是利用现有的数据和算法,解出算法的参数。从而得到可以用的模型。
监督学习就是利用已有的数据(我们叫X,或者特征),和数据的标注(我们叫Y),找到x和y之间的对应关系,或者说是函数f。
回归分析是一种因变量为连续值得监督学习。
线性回归是一种x和y之间的关系为线性关系的回归分析。y=a1x1+a2x2+by=a_1x_1+a_2x_2+by=a1x1+a2x2+b,这个叫线性关系。如果这里出现了x2x^2x2,log(x)log(x)log(x), sin(x)sin(x)sin(x)之类的,那就不是线性关系了。
一元线性回归说的是,自变量x是一个纯量(scalar)。scalar类型的变量,是不可再分的。
我希望你能说明白这些概念的关系。不过,我自己也是花了很久才了解清楚的。如果你没听明白,也没关系。毕竟都是概念,没什么实际的例子,也很难理解。等你看完了本文,了解了一元线性回归。回过头来再看这些概念,就能更好的理解了。
问题
这里,我们的问题是,找出算法工程师和程序员之间的工资关系。这里直接给出北京,上海,杭州,深圳,广州的工资。
城市 x-程序员工资 y-算法工程师工资 北京 1.3854 2.1332 上海 1.2213 2.0162 杭州 1.1009 1.9138 深圳 1.0655 1.8621 广州 0.09503 1.8016 把他们用图打出来看看他们之间的关系。
由图可见,他们之间大致是一个线性关系,这时候,我们就可以试着用一元线性回归去拟合(fit)他们之间的关系。
数学模型
一元线性回归公式
以下是公式
y=ax+b+εy=ax+b+εy=ax+b+εy 为应变量 dependent variable
x 为自变量 independent variable
a 为斜率 coeffient
b 为截距 intercept
ε (读作epsilon)为误差,正态分布
线性回归的目标是,找到一组a和b,使得ε最小
y^=ax+b\hat{y}=ax+by^=ax+b
ε=y−y^ε=y-\hat{y}ε=y−y^y^\hat{y}y^ 读作y hat,也有人读作y帽子。这里的帽子一般表示估计值,用来区别真实值y。
下图可以更好的帮助你理解。
(图片来自互联网)黑色的点为观测样本,即y=ax+b+εy=ax+b+εy=ax+b+ε。
x红色的线为回归线,即y^=ax+b\hat{y}=ax+by^=ax+b。
x蓝色的线段为误差,即ε=y−y^ε=y-\hat{y}ε=y−y^
方差 - 损失函数 Cost Function
在机器学习中,很多时候,我们需要找到一个损失函数。有了损失函数,我们就可以经过不断地迭代,找到损失函数的全局或者局部最小值(或者最大值)。损失函数使得我们的问题转化成数学问题,从而可以用计算机求解。在线性回归中,我们用方差作为损失函数。我们的目标是使得方差最小。
下面的表格解释了什么是方差。
其中SSE(Sum of Square Error)是总的方差,MSE(Mean Square Error)是方差的平均值。
而这里的损失函数,用的是0.5 * MSE。即:
J(a,b)=12n∑i=0n(yi−y^i)2J(a,b)=\frac{1}{2n}\sum_{i=0}^{n}(y_i−\hat{y}_i )^2J(a,b)=2n1∑i=0n(yi−y^i)2
记住,这里的损失函数是针对参数a和b的函数,y和y^\hat{y}y^ 其实都是已知的。
优化方法 Optimization Function
有了损失函数,我们还需要一个方法,使得我们可以找到这个损失函数的最小值。机器学习把他叫做优化方法。这里的优化方法,就是算损失的方向。或者说,当我的参数变化的时候,我的损失是变大了还是变小了。如果a变大了,损失变小了。那么,说明a增大这个方向是正确的,我们可以朝着这个方向继续小幅度的前进。反之,就应该考虑往相反的方向试试看。因为每个参数(a和b)都是一维的,所以,所谓的方向,无非就是正负符号。
这里,我们需要用偏微分的方法,得到损失函数的变化量。即:
∂J∂a=∂12n∑i=0n(yi−y^i)2∂a\frac{\partial J}{\partial a} = \frac{\partial \frac{1}{2n}\sum_{i=0}^{n}(y_i−\hat{y}_i )^2}{\partial a}∂a∂J=∂a∂2n1∑i=0n(yi−y^i)2
=1n∑i=0n(yi−axi−b)∂(yi−axi−b)∂a= \frac{1}{n}\sum_{i=0}^{n}(y_i-ax_i-b) \frac{\partial (y_i-ax_i-b)}{\partial a}=n1∑i=0n(yi−axi−b)∂a∂(yi−axi−b)
=1n∑i=0n(yi−axi−b)(−xi)= \frac{1}{n}\sum_{i=0}^{n}(y_i-ax_i-b) (-x_i)=n1∑i=0n(yi−axi−b)(−xi)
=1n∑i=0nx(y^i−yi)= \frac{1}{n}\sum_{i=0}^{n}x(\hat{y}_i-y_i)=n1∑i=0nx(y^i−yi)∂J∂b=∂12n∑i=0n(yi−y^i)2∂a\frac{\partial J}{\partial b} = \frac{\partial \frac{1}{2n}\sum_{i=0}^{n}(y_i−\hat{y}_i )^2}{\partial a}∂b∂J=∂a∂2n1∑i=0n(yi−y^i)2
=1n∑i=0n(yi−axi−b)∂(yi−axi−b)∂b= \frac{1}{n}\sum_{i=0}^{n}(y_i-ax_i-b) \frac{\partial (y_i-ax_i-b)}{\partial b}=n1∑i=0n(yi−axi−b)∂b∂(yi−axi−b)
=1n∑i=0n(yi−axi−b)(−1)= \frac{1}{n}\sum_{i=0}^{n}(y_i-ax_i-b) (-1)=n1∑i=0n(yi−axi−b)(−1)
=1n∑i=0n(y^i−yi)= \frac{1}{n}\sum_{i=0}^{n}(\hat{y}_i-y_i)=n1∑i=0n(y^i−yi)如果你已经忘了微积分,你暂时可以不必纠结上面的公式,只要知道公式给出了损失函数的变化就可以了。伟大的python还提供了sympy,你可以用sympy做微积分。这部分我也放在附件代码里了,有兴趣的可以看一下。
之前说到,整过迭代过程是小幅度进行的。这里,就需要一个超参数来控制这个过程。这个超参数就是α\alphaα,通常是0.01.
这时,我们就可以去更新a和b的值:
a=a−α∂J∂aa = a - \alpha \frac{\partial J}{\partial a}a=a−α∂a∂J
b=b−α∂J∂bb = b - \alpha \frac{\partial J}{\partial b}b=b−α∂b∂J到这里,在你继续往下读之前,你先自己考虑一下,为什么这里是负号?
你考虑好了么,如果你考虑好了,我就公布答案了。
本身∂J∂a\frac{\partial J}{\partial a}∂a∂J 和 ∂J∂b\frac{\partial J}{\partial b}∂b∂J 是损失函数的变化量。如果损失函数随着a变大了,即 ∂J∂a\frac{\partial J}{\partial a}∂a∂J 为正。说明a的增大会导致损失函数的增大。那么是不是说,a的减小会使得损失函数减小呢?而我们的目标是使得J最小,所以,这个时候,我们的a要减小一点点。
(图片来自互联网)算法步骤
- a和b的起始值设置为零
- 通过模型y^=ax+b\hat{y}=ax+by^=ax+b,我们可以算出y^\hat{y}y^
- 有了y^\hat{y}y^,就可以用优化方法算去更新参数
- 重复2和3,直到找到J的最小值
流程图如下:
Created with Raphaël 2.2.0开始a=0, b=0计算模型y_hat=ax+b计算a和b的微分更新a和b找到损失函数的最小值结束yesno下图解释了模型,损失函数和优化方法之间的关系。
Python 实现
理论部分先告一段落,我们现在开始写代码,实现一元线性回归。
首先是模型,这个很简单:
def model(a, b, x): return a*x + b
接着,是损失函数:
def cost_function(a, b, x, y): n = 5 return 0.5/n * (np.square(y-a*x-b)).sum()
最后,是优化函数:
def optimize(a,b,x,y): n = 5 alpha = 1e-1 y_hat = model(a,b,x) da = (1.0/n) * ((y_hat-y)*x).sum() db = (1.0/n) * ((y_hat-y).sum()) a = a - alpha*da b = b - alpha*db return a, b
以上三个函数中a和b是标量(scalar value),x和y是向量(vector)
至此,一元线性回归的主要部分就完成了。一共才14行代码,是不是很简单。训练模型
有了模型,损失函数,优化函数,我们就可以训练模型了。具体过程请见附件代码。
这里给出分别训练1次,再训练5次,再训练10次,再训练100,再训练10000次的模型。
从上面几幅图,我们可以看到,随着训练次数的增加,回归线越来越接近样本了。我们自己写的线性回归比较简单,我只能目测,凭直觉感觉损失函数已经达到了最小值,我们就停在10000次吧。
看得再多,不如自己动手。阅读下一章节之前,请自己实现一元线性回归。
这里有现成的代码,供你参考。
http://download.csdn.net/download/juwikuang/10050886
模型评价
在机器学习中,模型的好坏是有标准的。在回归模型中,我们用R2R^2R2 来评价模型。公式:
R2=SSR/SSTR^2=SSR/SSTR2=SSR/SST
其中
SSR=∑i=0n(y^i−yˉ)SSR=\sum_{i=0}^{n}(\hat{y}_i-\bar{y})SSR=∑i=0n(y^i−yˉ)
SST=∑i=0n(yi−yˉ)SST=\sum_{i=0}^{n}(y_i-\bar{y})SST=∑i=0n(yi−yˉ)
yˉ\bar{y}yˉ 读作y bar,是y的平均值。
可以证明SST=SSR+SSESST=SSR+SSESST=SSR+SSE,证明过程又会涉及到期望等概念,我们这里不展开了。好了,现在你应该回到代码中去计算R2R^2R2 了。
用scikit-learn训练和评价模型
平时在工作中,我们不可能自己去写回归模型,最常用的第三方工具是scikit-learn。
其官网是:
http://scikit-learn.org/以下是ipython代码。
import numpy as np from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt %matplotlib inline x = [13854,12213,11009,10655,9503] #程序员工资,顺序为北京,上海,杭州,深圳,广州 x = np.reshape(x,newshape=(5,1)) / 10000.0 y = [21332, 20162, 19138, 18621, 18016] #算法工程师,顺序和上面一致 y = np.reshape(y,newshape=(5,1)) / 10000.0 # 调用模型 lr = LinearRegression() # 训练模型 lr.fit(x,y) # 计算R平方 print lr.score(x,y) # 计算y_hat y_hat = lr.predict(x) # 打印出图 plt.scatter(x,y) plt.plot(x, y_hat) plt.show()
恭喜你,看完了本文,也学会了一元线性回归。如果对你有帮助,请给我一个赞。你的支持和鼓励是我继续写下去的动力。
如果有疑问,请下面留言。
python机器学习手写算法系列
完整源代码:
https://github.com/juwikuang/machine_learning_step_by_step
欢迎阅读本系列其他文章:
-
Python机器学习基础教程
2019-12-22 15:00:23Python机器学习教程 第一章:对于机器学习,我们选择了Python 第二章:了解SciPy、PandasPython机器学习教程
第一章:对于机器学习,我们选择了Python
第二章:了解SciPy、Pandas
持续更新 ... ...
-
Python机器学习实践
2019-10-15 21:14:081、Python机器学习实践案例的算法总结。 见博文下方的算法总结表格。 2、案例和代码实现。 每个案例单独用一篇博文来讲解逻辑和Python代码实现。点击对应的链接到相应的博文中去阅读。 (1)朴素贝叶斯、...前面几篇博文已经整理了Python做数据分析和建模以及机器学习基础知识。
这篇博文主要分享Python做数据分析和建模的实践案例应用。
分为两部分:
1、Python机器学习实践案例的算法总结。
见博文下方的算法总结表格。
2、案例和代码实现。
每个案例单独用一篇博文来讲解逻辑和Python代码实现。点击对应的链接到相应的博文中去阅读。
---引申 用gesim-word2vec实现词矢量化
(2)优化算法模型:
[1] 旅行行程优化问题
[2] 住宿房间分配问题
(3)决策树分类建模
(4)分级聚类、K均值聚类
(5)KNN算法
---引申 [3] 协同过滤推荐-pyspark实现
---引申 [4]spark的安装和Jupyter使用
(6)寻找独立特征-非负矩阵因式分解
(7)支持向量机
(8)神经网络
(9)特征工程
机器学习实践案例算法总结 算法 算法描述/原理概述 适用的数据集类型 Python代码实现的主要步骤 优缺点说明 贝叶斯分类器 根据贝叶斯公式:P(cat|item) = P(item|cat)*P(cat)/P(item),
其中,P(item|cat) = P(feature|cat)*P(feature|cat)*P(feature|cat)*…适应于所有能转换成一组特征列表的数据集。 1、定义特征提取函数getfeature
2、利用样本对分类器进行训练,得到记录了特征和某个特定分类相关联的数字概率P(feature|(cat)
3、分类预测(朴素贝叶斯分类器)优点:
1、训练和分类计算的速度快
2、支持增量式的训练
3、特征的概率值被保存,所以分类学习的解释相对简单
缺点:
1、无法处理特征组合会产生分类结果影响的情况决策树分类器 从根部开始构造决策树,在每一步中都会选择一个属性,利用该属性以最佳的可能方式对数据进行拆分。
对于构造完成的决策树,从树的根部节点开始,对每一个节点的判断条件进行检查,走相应的yes or no 分支直至叶节点,即代表新数据的预测分类适应于数值型或者名词性的有分类结果的数据集 1、创建决策树。
熵、基尼不纯度衡量集合的混乱、不纯程度。信息增益来衡量一次拆分的好坏。
2、决策树剪枝
3、决策树显示--树状图/文本打印
4、决策树分类优点:
1、易于对模型的解释和理解。重要的判断因素都在靠近根部的位置。
2、能处理变量之间的相互影响。
缺点:
1、不擅长对数值结果的预测。
2、不支持增量式的训练。神经网络 支持向量机SVM K最近邻算法KNN 对一个待预测的新数据项,将其与已经知道结果值的数据项进行比较,从中找出最为接近的若干项,并根据距离远近求其加权平均值以得到最终的预测结果。 可以做数值预测的数据集 1、对变量进行缩放处理和交叉验证
2、给出一个距离度量算法/相似度度量算法
3、加权KNN算法预测优点:
1、简单易懂 2、合理的数据缩放量不但可以改善预测效果,还能知道预测过程中各个变量的重要程度。3、新的数据可以随时被添加进来,是一种online的技术。
缺点:
1、计算低效。每一个待预测项必须和所有其他数据进行比较。2、寻找合理的缩放因子的过程很乏味、计算和评估的计算工作量很大。分级聚类 它是构造一颗由所有数据项构成的树的过程。
工作方式:寻找两个距离最接近的数据项,将它们合二为一,新聚类的"位置"等于原两个数据项位置的均值。重复此过程,直到每个数据项都被包含在了一个大的聚类中为止。任何一个具有一个或多个数值属性的数据集 1、给出一个相关系数度量方法
2、分级聚类
3、绘制分级聚类树状图优点:
1、层级结构可以显示为树状图的形状,易于解读
2、面对一个全新的数据集,并不清楚想要多少群组时可通过分级聚类观察出哪些群组最接近K-Means聚类 它是将数据拆分到不同群组的方法。
工作方式:随机产生K个中心点的位置,将每个数据项都分配到距离最近的中心点。将中心位置移到分配给原中心点的所有项的平均位置处。重复上述聚类步骤。直到中心位置不再变化或达到某阈值。任何一个具有一个或多个数值属性的数据集 1、给出想要的群组数量
2、给出一个相关系数度量方法
3、K-means聚类
4、打印分类群组结果优点:
1、聚类得到的群组易于打印和识别模拟退火算法 以一个随机推测的题解开始,以此为基准随机选择一个方向,找到另一个近似解,判断其成本值。如果新题解的成本值小,则替换原题解。如果成本值更大,则用概率觉得是否取代原题解。迭代至温度几乎为0时,返回题解。 给定定义域和成本函数的优化问题 1、确定变量定义域domain
2、定义成本函数costf遗传算法 以一组种群题解开始,筛选出其中成本值最低的精英题解,利用变异、交叉的修改方法将精英题解扩充到原种群大小,称新得到的这个种群为下一代。迭代至一定代数或成本值达到某阈值或种群不再改变,返回成本值最低的作为最优解。 给定定义域和成本函数的优化问题 1、确定变量定义域domain
2、定义成本函数costf非负矩阵因式分解NMF -
Python 机器学习常用模型
2019-08-02 14:37:20Python 机器学习常用模型 python基础教程 python基础系列教程——Python的安装与测试:python解释器、PyDev编辑器、pycharm编译器 python基础系列教程——Python库的安装与卸载 python基础系列教程——Python3.x标准...Python 机器学习常用模型
python基础教程
python基础系列教程——Python的安装与测试:python解释器、PyDev编辑器、pycharm编译器
python基础系列教程——Python3.x标准模块库目录
python基础系列教程——Python中的编码问题,中文乱码问题
python数据分析系列教程——python对象与json字符串的相互转化,json文件的存储与读取
python基础系列教程——数据结构(列表、元组、字典、集合、链表)
python应用教程
python应用系列教程——python使用socket创建udp服务器端和客户端
python应用系列教程——python使用socket创建tcp服务器和客户端
python应用系列教程——python使用SocketServer实现网络服务器,socket实现客户端
python应用系列教程——python使用scapy监听网络数据包、按TCP/IP协议进行解析
python应用系列教程——python使用smtp上传邮件,使用pop3下载邮件
python应用系列教程——python使用smtp协议发送邮件:html文本邮件、图片邮件、文件附件邮件
python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改
python应用系列教程——python操作office办公软件word
python应用系列教程——python操作office办公软件(excel)
python应用系列教程——python的GUI界面编程Tkinter全解
python后台架构Django教程
python后台架构Django教程——manage.py命令
python后台架构Django教程——项目配置setting
python后台架构Django教程——连接读写mysql数据库
python后台架构Django教程——templates模板
python后台架构Django教程——admin管理员站点
python自动化测试教程
python测试系列教程——python+Selenium自动化测试框架
python网络爬虫教程
python网络爬虫系列教程——python中urllib、urllib2、cookie模块应用全解
python网络爬虫系列教程——python中pyquery库应用全解
python网络爬虫系列教程——python中lxml库应用全解(xpath表达式)
python网络爬虫系列教程——python中requests库应用全解
python网络爬虫系列教程——python中BeautifulSoup4库应用全解
python网络爬虫系列教程——PhantomJS包应用全解
python网络爬虫系列教程——Python+PhantomJS +Selenium组合应用
python网络爬虫系列教程——python网络数据爬虫误区,让你的爬虫更像人类
python数据分析存储教程
python数据存储系列教程——python对象与json字符串的相互转化,json文件的存储与读取
python数据存储系列教程——python(pandas)读写csv文件
python数据存储系列教程——python操作sqlite数据库:连接、增删查改、指令执行
python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
python数据存储系列教程——python中mongodb数据库操作:连接、增删查改、多级路径
python可视化教程
python数据可视化系列教程——matplotlib绘图全解
python爬虫助手
腾讯股票接口、和讯网股票接口、新浪股票接口、雪球股票数据、网易股票数据
python爬虫案例
python爬虫案例系列教程——根据网址爬取中文网站,获取标题、子连接、子连接数目、连接描述、中文分词列表
python爬虫案例系列教程——python爬取百度新闻RSS数据
python机器学习算法案例
特征工程:
关联挖掘:
python机器学习案例系列教程——关联分析(Apriori、FP-growth)
分类:
python机器学习案例系列教程——决策树(ID3、C4.5、CART)
python机器学习案例系列教程——K最近邻算法(KNN)、kd树
python机器学习案例系列教程——文档分类器,朴素贝叶斯分类器,费舍尔分类器
python机器学习案例系列教程——优化,寻找使成本函数最小的最优解
python机器学习案例系列教程——线性函数、线性回归、正则化
python机器学习案例系列教程——逻辑分类/逻辑回归/一般线性回归
python机器学习案例系列教程——支持向量机SVM、核方法
python机器学习案例系列教程——集成学习(Bagging、Boosting、RF、AdaBoost、GBDT、xgboost)
python机器学习案例系列教程——GBDT算法、XGBOOST算法
python机器学习案例系列教程——CTR/CVR中的FM、FFM算法
聚类:
python机器学习案例系列教程——k均值聚类、k中心点聚类
[python机器学习案例系列教程——网格聚类]
推荐系统:
搜索引擎:
python数据挖掘案例系列教程——python神经网络实现搜索引擎
图论:
python机器学习案例系列教程——最小生成树(MST)的Prim算法和Kruskal算法机器学习总结
机器学习案例系列教程——优化方法总结(梯度下降法、牛顿法、拟牛顿法、共轭梯度法等)
python机器学习库教程
python机器学习系列教程——深度学习框架比较TensorFlow、Theano、Caffe、SciKit-learn、Keras
python自然语言处理库教程
python机器学习库sklearn教程
python机器学习库sklearn——K最近邻、K最近邻分类、K最近邻回归
python机器学习库sklearn——DBSCAN密度聚类
python机器学习库sklearn——岭回归(Ridge、RidgeCV)(L2正则化)
python机器学习库sklearn——Lasso回归(L1正则化)
python机器学习库sklearn——神经网络(分类、回归)
python机器学习库sklearn——集成方法(Bagging、Boosting、随机森林RF、AdaBoost、GBDT)
python机器学习库sklearn——多类、多标签、多输出
python机器学习库sklearn——参数优化(网格搜索GridSearchCV、随机搜索RandomizedSearchCV)
python机器学习库sklearn——交叉验证(K折、留一、留p、随机)
python深度学习系列教程
python深度学习案例教程
python神经网络案例——FC全连接神经网络实现mnist手写体识别
python神经网络案例——CNN卷积神经网络实现mnist手写体识别
python深度学习库tensorflow教程
python深度学习库tensorflow——实现FC全连接神经网络识别mnist手写体
python深度学习库keras教程
python深度学习库keras实例教程
python机器学习库keras——线性回归、逻辑回归、一般逻辑回归
python机器学习库keras——CNN卷积神经网络识别手写体
python机器学习库keras——CNN卷积神经网络人脸识别
python机器学习库keras——AutoEncoder自编码、特征压缩
python深度学习库教程
python深度学习库系列教程——python调用opencv库教程
python分布式计算hadoop+hive+hbase+spark教程
hadoop、hbase、hive、spark分布式系统架构原理
-
python机器学习案例系列教程——LightGBM算法
2018-05-08 16:23:08安装pip install lightgbmgitup网址:https://github.com/Microsoft/LightGBM中文教程http://lightgbm.apachecn.org/cn/latest/index.htmllightGBM简介xgboost的出现,让数据民工们告别了传统的机器学习算法们:RF、... -
python机器学习算法(Keras)
2017-07-11 09:46:11python机器学习算法 -
python机器学习库xgboost——xgboost算法
2018-04-12 08:56:40python数据挖掘系列教程 安装 xgboost目前还不能pip在线安装,所以先在网址https://www.lfd.uci.edu/~gohlke/pythonlibs/#xgboost 中下载whl文件,然后参考... -
Python机器学习中文版
2018-03-16 13:16:10建议Ctrl+D保存到收藏夹,方便随时查看人工智能(AI)学习资料库Python机器学习简介第一章 让计算机从数据中学习将数据转化为知识三类机器学习算法第二章 训练机器学习分类算法透过人工神经元一窥早期机器学习历史... -
Python机器学习预测算法
2019-07-16 16:45:09a bytes-like object is required, not 'str'Python机器学习核心预测算法第2章 通过理解数据来了解问题2.1 解剖一个新问题2.1.1 属性和标签的不同类型决定模型的选择2.1.2 新数据集的注意事项2.2 分类问题:用声呐... -
Python机器学习经典案例实战
2017-03-24 08:54:50Python在机器学习领域应用是非常广泛的,比如,我们可以使用机器学习进行验证码识别,使用机器学习实现计算机视觉项目,或者,我们也可以使用机器学习技术实现网页分类、文本挖掘、情感分析等等各种各样的事情。机器... -
python机器学习库sklearn——交叉验证(K折、留一、留p、随机)
2018-04-06 20:00:32全栈工程师开发手册 (作者:栾鹏) python数据挖掘系列教程 学习预测函数的参数,并在相同数据集上进行测试... 为了避免这种情况,在进行(监督)机器学习实验时,通常取出部分可利用数据作为 test set(测试... -
Python机器学习实训营(原理推导+代码复现+实验分析)
2019-07-14 14:47:36Python机器学习实训营(原理推导+代码复现+实验分析)课程旨在帮助同学们在机器学习领域打下坚实基础。课程注重算法原理讲解与数学公式推导并基于Python语言给出完整的代码实现,从零开始实现每一模块功能(非调用... -
从零开始掌握Python机器学习
2017-03-14 14:54:23Author:kevinelstri DateTime:2017/3/14 ...本教程或许能帮你成功上手,从 0 到 1 掌握 Python 机器学习,至于后面再从 1 到 100 变成机器学习专家,就要看你自己的努力了。本教程原文分为两个部分,机器 -
python机器学习简易过程
2017-12-12 00:31:03python机器学习简易过程 明确目标(Ideation):明确想要去证明的问题,定义hypothesis 数据预处理(preprocess):处理错误数据;处理missing数据;处理量纲问题;处理数据组织格式;the level of the details 与... -
Python Machine Learning 中文版,Python机器学习介绍
2018-03-11 22:39:53Python机器学习机器学习,如今最令人振奋的计算机领域之一。看看那些大公司,Google、Facebook、Apple、Amazon早已展开了一场关于机器学习的军备竞赛。从手机上的语音助手、垃圾邮件过滤到逛淘宝时的物品推荐,无一... -
Python机器学习基础-学习笔记+教程资源分享
2019-01-30 16:09:451、《Python机器学习基础》高清PDF中英文双版+实战源代码; 2、吴恩达教授课程笔记+原始讲义; 最近由于工作需要和个人兴趣所向,开始学习python机器学习 ** 笔记 首先我自己通俗总结下机器学习是什么,简单来说就是... -
Python机器学习算法和实践
2018-06-22 15:49:25机器学习算法实战教程,包括各种常用机器学习算法,该课程教学视频以手写形式+普通话授课(类似斯坦福大学授课方式),+Python代码。经典算法进行原理推导与案例实战双管齐下,具体课程内容包括K-Means算法、KNN算法... -
python机器学习库sklearn——Lasso回归(L1正则化)
2018-04-06 09:00:56python数据挖掘系列教程 The Lasso 是估计稀疏系数的线性模型。 它在一些情况下是有用的,因为它倾向于使用具有较少参数值的情况,有效地减少给定解决方案所依赖变量的数量。 因此,Lasso 及其变体是压缩感知领域的... -
Python机器学习Sklearn入门之神经网络
2017-09-17 20:27:04Python机器学习Sklearn入门之神经网络 学习笔记 -
Python机器学习进阶实战视频教学
2018-11-14 14:51:56进阶实战课程旨在帮助同学们掌握机器学习进阶算法原理并应用Python工具包进行实战任务,学习过程中建议大家先掌握机器学习经典算法再加入进阶实战课程中。课程整体风格通俗易懂,用最接地气的方式带大家轻松入门... -
Python机器学习笔记(四):强化学习
2017-08-08 15:33:35大一暑假学习热情颇高却又贪多求快,囫囵吞枣地花了几天刷了一遍Python机器学习入门课程,很快就什么都不记得了。之后一年半多,也没有什么需要用到机器学习的地方,加上断断续续学了C++,连Python语法都快忘光了。 ... -
Python 机器学习 Scikit-learn 完全入门指南
2018-02-28 00:00:00本文来自作者 刘明 在 GitChat 上分享 「Python 机器学习 Scikit-learn 完全入门指南」编辑 | 哈比使用 Python 的科研人员,几乎都用过 SciPy。SciPy 是一... -
Python机器学习 (Python Machine Learning 中文版 PDF)
2018-03-11 22:43:00Python机器学习介绍(Python Machine Learning 中文版) 机器学习,如今最令人振奋的计算机领域之一。看看那些大公司,Google、Facebook、Apple、Amazon早已展开了一场关于机器学习的军备竞赛。从手机上的语音助手... -
Python机器学习库scikit-learn实践
2015-10-05 00:02:22Python机器学习库scikit-learn实践zouxy09@qq.comhttp://blog.csdn.net/zouxy09 一、概述 机器学习算法在近几年大数据点燃的热火熏陶下已经变得被人所“熟知”,就算不懂得其中各算法理论,叫你喊上一两个著名算法... -
python机器学习手写算法系列——梯度提升回归
2019-09-08 10:57:35《python机器学习手写算法系列——线性回归》 《python机器学习手写算法系列——决策树》 概述 GBDT全称Gradent Boosting Decision Tree, 也叫Gradient Boosting Tree。 GBDT是一种ensemble方法。所以如果你使用... -
Python 机器学习经典实例
2018-04-12 10:44:15内容介绍 在如今这个处处以数据驱动的世界中,机器学习正变得越来越大众化。它已经被广泛地应用于不同领域,如搜索...用最火的 Python 语言、通过各种各样的机器学习算法来解决实际问题! 书中介绍的主要问题如下。 ... -
Python机器学习库sklearn的安装
2018-02-19 08:15:52Python机器学习库sklearn的安装scikit-learn是Python的一个开源机器学习模块,它建立在NumPy,SciPy和matplotlib模块之上能够为用户提供各种机器学习算法接口,可以让用户简单、高效地进行数据挖掘和数据分析。... -
[机器学习篇]基于Python机器学习常用库
2017-03-07 16:53:37Python常用的机器学习库Python在科学计算中用途广泛:计算机视觉、人工智能、数学、天文等。它同样适用于机器学习也是意料之中的事。 这篇文章就列举并描述Python的最有用的机器学习工具和库。这个列表中,我们不...
-
模糊查询和聚合函数
-
linux下定义命令
-
快速使用 FastAPI开发网络数据接口
-
mybatis set
-
最新最全论文合集——多模态情感分析
-
MySQL 事务和锁
-
关于Mysql外键从新学习
-
leetcode之回溯算法
-
activiti修改流程定义二进制数据后需清缓存
-
【爱码农】C#制作MDI文本编辑器
-
access应用的3个开发实例
-
动臂助推器-源码
-
hapi-react:渲染hapi视图-源码
-
代理ip如何指定地区
-
具有亚甲基的曲折形石墨烯纳米带的自旋和带隙工程
-
libusb-rs:libusb的安全Rust封装器-源码
-
HDU 2006 求奇数的乘积
-
难以量化的需求开发与管理
-
具有双螺旋通道的无源微混合器
-
创建一个listener