一下子看完这个网址不用跳跳跳点点点系列
学习网址:机器学习 (Machine Learning) - Sklearn | 莫烦Python
通常来说, 机器学习的方法包括:
监督学习 supervised learning;
非监督学习 unsupervised learning;
半监督学习 semi-supervised learning;
那我们为什么要选择Sklearn呢?
Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一.
Sklearn 包含了很多种机器学习的方式:
Classification 分类
Regression 回归
Clustering 非监督分类
Dimensionality reduction 数据降维
Model Selection 模型选择
Preprocessing 数据预处理
安装Sklearn吧
最简单的方法就是使用pip
打开命令窗口输入:pip3 install-Uscikit-learn
注:我电脑为win64,已安装python3、numpy等。
官网是最好的教程:scikit-learn: machine learning in Python — scikit-learn 0.20.0 documentation
在兴奋的码代码之前,首先要选择你需要的算法!
算法分为分类,回归,聚类,降维四类。
监督——分类和回归
非监督——聚类
除此之外,还需要考虑数据集的大小。例如当数据量<50时,就需要增加数据量。
首先尝试一下分类器的使用!KNN classifier!
目的:根据花的属性将花分类。
基本思路:选择几个临近点,综合它们做个平均来作为预测值。
好像跟matlab有异曲同工之妙。。。
接下来我们来看看Sklearn强大的数据库 data sets。
可用数据网址:API Reference — scikit-learn 0.20.0 documentation
好像跟前面差不多~~
当然我们也可以自己生成虚拟数据:
高级使用
数据标准化
在进行数据标准化之前,我们首先要搞清楚什么是数据标准化?为什么要进行数据标准化?由于参加过数学建模比赛的同学应该知道,没参加过的请自行百度。总之不要看了别人跟你展示正确率提高了之后,将“提升准确率”作为说服你进行数据标准化的理由。
检验神经网络
我们如何检验一个网络的正确率从而改进网络呢?
第一种方法:之前提到的“训练组与测试组”。
就像考试结束我们来对照正确答案给个分数~
第二种方法:误差曲线。
说白了就是误差的可视化。跌宕起伏的曲线肯定不好。
误差曲线的反面是准确度曲线,其实就是跟误差曲线互补。
第三种方法:正规化——解决Overfitting问题。
第四种方法:交叉验证——确定哪样的参数能够更有效的解决现有的问题
后面的就不写了,交叉验证什么的,只起到了了解的作用。
后记:下次一定用markdown