机器学习基本知识

本课程专注于机器学习的算法学习,关注于监督学习

kNN 线性回归 多项式回归 逻辑回归 模型正则化 PCA  SVM 决策树

随机森林 集成学习 模型选择 模型调试

scikit—learn机器学习库

numpy、matplotlib

数据的预处理。

数据:

多分类:1.一些算法只支持完成二分类的任务。

  1. 多分类的任务可以转换为二分类的任务。

多标签分类

回归任务:结果是一个连续数字的值,并非一个类别(如房屋价格、市场分析)

流程:

输入大量学习资料->机器学习算法->模型f(x)(输入样例)->输出结果。

多分类:

数字识别、图像识别、判断发给客户信用卡的风险评级。

多标签分类

监督学习:主要处理的是分类、回归问题,给机器的训练数据拥有“标记”或者“答案”

非监督学习

半监督学习:一部分数据有“标记”或者“答案”,另一部分数据没有。

更常见:各种原因产生的标记缺失

增强学习:根据周围环境的情况,采取行动,根据采取行动的结果,学习行动方式。

批量学习:

优点:简单

问题:如何适应环境变化

解决方案:定时重新批量学习

缺点:每次重新批量学习,运算量巨大;在某些环境变化非常快的情况下,甚至是不可能的(如股市)

在线学习:

优点:及时反映新的环境变化

问题:新的数据可能带来不好的变化

解决方案:需要加强对数据的监控

也适用于数据量巨大,完全无法批量学习的环境。

参数学习:一旦学到了参数,就不再需要原有的数据集。

非参数学习:不对模型进行过多假设,也可能有参数,不代表没参数。

数据确实非常重要,数据驱动

收集更多的数据,提高数据质量,提高数据的代表性,研究更重要的特征。

奥卡姆的剃刀:简单的就是好的。

没有免费的午餐定理:可以严格地数学推导出:任意两个算法,它们的期望性能(平均性能)是相同的。

Jupyter notebook高级—魔法命令

初始化方式:

i for i in range(10)

np.arange(0,1,0.2)

linspace(0,20,10):表示在0到20的区间里,等长的截出10个点,包含了起始点和终止点。

np.random.randint(4,8,size = 10)

np.random.seed(666):设置随机的种子。

np.random.random()

np.random.normal(10,100):生成均值为10,方差为100的浮点数。

%%time:可以用来计算运行的时间

  1. dot(B):表示矩阵之间的除法

np.linalg.inv(A):求A的逆矩阵

pinvX = np.linalg.pinv(X):求伪逆矩阵

伪逆矩阵乘原矩阵得到方阵。

聚合操作:

把一组值变为一个值。

np.sum(X,axis = 0):表示每一列的和

np.mean(X):求平均值

np.var(big_array):求方差

索引:

np.argmin(x):最小值所在的索引

ind  = [3,5,8]

x[ind]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值