目录
看莫烦老师视频,自己做个笔记,记录下学习过程,希望有所收获,视频地址
https://www.bilibili.com/video/av17003173
1.ML主要分为5类
监督学习(SUPERVISED LEARNING) 有数据有标签,例如:回归/决策树/随机森林/k-近邻算法/罗辑回归
非监督学习(UNSUPERVISED LEARNING) 有数据没有标签,例如:关联算法/k-均值算法
监督学习和非监督学习结合的半监督学习
强化学习(REINFORCEMENT LEARNING) 从经验中总结提升,例如马尔科夫决策过程
遗传算法(GENETIC ALGORITHM) 和强化学习蕾类似,适者生存,不适者淘汰
常见的机器学习算法名单:
1.线性回归
2.逻辑回归
3.决策树
4.SVM
5.朴素贝叶斯
6.K近邻算法
7.K均值算法
8.随机森林算法
9.降维算法
10.Gradient Boost 和 Adaboost 算法
2.安装
需要用到python 里的 scikit-learn 模块
前置条件:
- Python (>=2.6 or >=3.3)
- NumPy(>= 1.6.1)
- SciPy(>= 0.9)
安装 scikit-learn
pip install -U scikit-learn #-U 代表更新,第一次安装不需要-U
conda install scikit-learn
3.如何选择机器学习的方法
图来源:http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html
4.通用学习模式
5.sklearn 的 datasets 数据库
使用真实数据来学习
from sklearn import datasets
from sklearn.linear_model import LinearRegression
loaded_data = datasets.load_boston()
data_X = loaded_data.data
data_y = loaded_data.target
model = LinearRegression()
model.fit(data_X, data_y)
print(model.predict(data_X[:4, :]))
print(data_y[:4])
打印结果如下,存在误差, 需要各种大量数据,参数的调节去完善学习的模型
创造一些数据来进行学习
from sklearn import datasets
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
X, y = datasets.make_regression(n_samples=100, n_features=1, n_targets=1, noise=10)
plt.scatter(X, y)
plt.show()
可以生成如下数据,通过调整参数,生成各种数据来进行测试学习