1、概率论与凸优化:
(1)贝叶斯公式:P(A/B)=(P(B/A)P(A))/P(B)
2、回归模型与应用:
(1)线性回归
(2)逻辑回归
3、关于机器学习:
(1)有监督学习:会给定一个标准答案y
(2)无监督学习:不会给定一个标准答案y
4、降维也属于无监督学习
5、分类的问题:有监督的学习,因为要确定它属于你规定的哪一类
6、线性回归(有监督的学习):
(1)f(x)=(w^T)*x
(2)平方损失:每一个点(y的值)减去预测值的点的平方加和,然后整体除以m个点,再除以2
(3)线性回归中平方损失是一个凸函数,即有一个最低点
(4)梯度下降算法:平方损失中逐步最小化损失函数
(5)学习率与梯度下降:如果步长太大的话,会震动。如果步长很小的话,速度会很慢,所以步长的选择很重要,即学习率
(6)欠拟合与过拟合:
(1)欠拟合(没有拟合到现在的样本点):模型本身的能力不足以去学习现在的样本点
(2)过拟合:对模型拟合太多了,模型很复杂,会丧失一般性.把所有的点都算进去,但是拿出新的点的话,就很难进行对其进行处理
(7)正则化:
(1)控制参数的幅度
(2)限制参数搜索空间
(8)线性回归判断是否是正样本:结果与0比
7、损失:
(1)平方损失
(2)log损失
8、优化方向:修改损失函数
9、逻辑回归(输出p):
(1)逻辑回归的东西是一个概率(使用以下函数求概率)
(2)Sigmoid函数:g(x)=1/(1+e^(-x))
(3)回归出来的值是(0,1)之间的,类似于p
(4)log损失
(5)逻辑回归判断是否是正样本:结果与0.5比
10、机器学习步骤:通过选择损失算法,找到一个凸函数,然后利用梯度下降算法(找到最好的学习率),梯度算法是对函数进行求导
11、numpy是python当中用来表示矩阵或者高维数组的一个库
12、python基础:
(1)安装pip、numpy、pandas、scipy、matplotlib(https://www.lfd.uci.edu/~gohlke/pythonlibs/)
(2)将python2代码转化为python3:python 2to3.py -w xxx.py
(3)2to3.py:
#!/usr/bin/env python
import ...
sys.exit(main("lib2to3.fixes"))
python基础代码:
# -*- coding:utf-8 -*-