![2e9604ebb58b42e06335d5067358f43d.png](https://i-blog.csdnimg.cn/blog_migrate/ed5ae02e29e6653ba6cbeea26ab1c26b.jpeg)
1. 机器学习:
机器学习的方法(算法)包括:
a. 监督学习 supervised learning(神经网络就是监督学习);
先教会机器某种知识,再让机器能够熟练运用该知识。(数据+标签)
![d3b7c41c70b787cdae54101530314efc.png](https://i-blog.csdnimg.cn/blog_migrate/328c98447e1542072f2e8ed782bcf5f8.png)
b. 非监督学习 unsupervised learning;
![ae92f54088db5bba3bd6b083dcd539bc.png](https://i-blog.csdnimg.cn/blog_migrate/85091b9d54dd89a9618b184ed9de718a.png)
c. 半监督学习 semi-supervised learning;
用少量有标签样本 + 大量无标签样本进行分类。
d. 强化学习 reinforcement learning;
从经验中总结提升。
把计算机丢到一个它自己完全陌生的环境,或者接手一个完成陌生的任务,让他自己尝试各种方法,完成后并能掌握该方法。(比如:Alphago)
e. 遗传算法 genetic algorithm.
类似于强化学习
弱者淘汰,强者生存。第一个版本失败,第二个版本保留第一个版本中的优点继续实验,失败了就丢弃第二个版本,继续第三个。
2. python中的模块——scikit learn
Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一.
sklearn是一个Python第三方提供的非常强力的机器学习库,它包含了从数据预处理到训练模型的各个方面。在实战使用scikit-learn中可以极大的节省我们编写代码的时间以及减少我们的代码量,使我们有更多的精力去分析数据分布,调整模型和修改超参。(sklearn为包名)
Sklearn 包含了很多种机器学习的方式:
a. Classification 分类
b. Regression 回归
c. Clustering 非监督分类
d. Dimensionality reduction 数据降维
e. Model Selection 模型选择
f. Preprocessing 数据预处理
基本概括
sklearn拥有可以用于监督和无监督学习的方法,一般来说监督学习使用的更多。sklearn中的大部分函数可以归为估计器(Estimator)和转化器(Transformer)两类。
a. 估计器(Estimator)其实就是模型,它用于对数据的预测或回归。基本上估计器都会有以下几个方法:
fit(x,y) :传入数据以及标签即可训练模型,训练的时间和参数设置,数据集大小以及数据本身的特点有关
score(x,y)用于对模型的正确率进行评分(范围0-1)。但由于对在不同的问题下,评判模型优劣的的标准不限于简单的正确率,可能还包括召回率或者是查准率等其他的指标,特别是对于类别失衡的样本,准确率并不能很好的评估模型的优劣,因此在对模型进行评估时,不要轻易的被score的得分蒙蔽。
predict(x)用于对数据的预测,它接受输入,并输出预测标签,输出的格式为numpy数组。我们通常使用这个方法返回测试的结果,再将这个结果用于评估模型。
b. 转化器(Transformer)用于对数据的处理,例如标准化、降维以及特征选择等等。同与估计器的使用方法类似:
fit(x,y) :该方法接受输入和标签,计算出数据变换的方式。
transform(x) :根据已经计算出的变换方式,返回对输入数据x变换后的结果(不改变x)
fit_transform(x,y) :该方法在计算出数据变换方式之后对输入x就地转换。
以上仅仅是简单的概括sklearn的函数的一些特点。sklearn绝大部分的函数的基本用法大概如此。但是不同的估计器会有自己不同的属性,例如随机森林会有Feature_importance来对衡量特征的重要性,而逻辑回归有coef_存放回归系数intercept_则存放截距等等。并且对于机器学习来说模型的好坏不仅取决于你选择的是哪种模型,很大程度上与你超参的设置有关。因此使用sklearn的时候一定要去看看官方文档,以便对超参进行调整。
3. 安装
a. pip 安装:
安装 Scikit-learn (sklearn) 最简单的方法就是使用 pip 安装它.
首先确认自己电脑中有安装
Python (>=2.6 或 >=3.3 版本)
Numpy (>=1.6.1)
Scipy (>=0.9)
如果还不确定如何安装 Numpy 请查看这个 安装 Numpy 教程. 如果能顺利安装 Numpy 那 Scipy 的安装就没有问题了.
然后找到你的 Terminal (MacOS or Linux), 或者 CMD (Windows). 输入以下语句:
# python 2+ 版本复制:
pip install -U scikit-learn
# python 3+ 版本复制:
pip3 install -U scikit-learn
b. Windows 注意事项
如果你是 Windows 用户, 你也可以选择使用 Anaconda 来安装所有 python 的科学计算模块. Anaconda的相关资料在这