机器学习基本理论和知识点

1、机器学习算法分类

监督学习:给出数据和标签进行训练,然后使用训练好的数据进行预测,分类等。监督学习中最常见的是两种问题,一种称为回归问题(线性回归和非线性回归),另一种称为分类问题,包含两类的分类问题,多个类的分类问题。

非监督学习:只给出数据,没有标签,让机器自己理解和分类。常见问题是聚类算法(K means clustering),图像的压缩(降维算法),PCA,Autoencoder等

半监督学习:结合监督学习和非监督学习

强化学习:把机器放入到一个陌生的环境,让其自己决策,然后给其决策进行打分,最后让机器朝着高分去走。

遗传算法:采用适者生存的思路,每次都保留最牛逼的那个结果。

 

2、机器学习基本流程

机器学习基本理论和知识点

每个小模块都能引申出很多算法。

  

3、非监督学习

聚类算法:自动根据特征来分类

降低维度:特征选择,数据压缩,数据可视化

PCA算法:主成分分析,下面是PCA的基本算法

机器学习基本理论和知识点

 

从n维降到k维的pca算法中,k的选择如下:k从1开始计算,知道达到99%为止

机器学习基本理论和知识点

 

 

4、异常检测(anomaly detection)

算法如下:主要将每个特征进行单独的高斯函数建模,前提是每个特征都是独立不相关的。

 

 

机器学习基本理论和知识点

异常检测和监督学习的区别:

 

 

机器学习基本理论和知识点

处理非高斯分布的特征:需要对输入的特征进行处理,比如log等

 

 

机器学习基本理论和知识点

多变量的高斯建模:如果不能确保输入特征直接是否是独立的随机变量,那么可以将其建模成多变量的高斯模型

 

 

机器学习基本理论和知识点

如何选择单独建模还是多变量的高斯建模:

机器学习基本理论和知识点

 

 

5、Large scale dataset training

当dataset的数据达到巨大的时候,就需要想更快的训练算法来节约时间。

(1)Stochastic gradient descent

和普通的gradient descent算法的对比:

机器学习基本理论和知识点

 

收敛轨迹对比:

机器学习基本理论和知识点

 

(2)mini batch gradient descend

算法如下:如果采用并行技术,mini batch gradient算法可以达到SGD一样的速度,但是具有更快的收敛速度。

 

 机器学习基本理论和知识点

(3)map-reduce并行运算方法

机器学习基本理论和知识点

 

这里的多个machine可以是真实的计算机,也可以是一个计算机的多个核,这里涉及到多核编程或者多线程编程等技术。

 

 

6、强化学习算法

强化学习的主要算法:

 

 机器学习基本理论和知识点

Q learning算法:根据Q表来决策结果,然后根据每次决策来更新Q表,具体流程如下图:

机器学习基本理论和知识点

 

Sarsa算法:跟Q learning算法类似,只是更新Q表的算法不一样。这里有Sarsa(lamda)算法和原始的Sarsa算法只是更新的步骤不同,前者是单步更新,后者是回合更新。

 

 机器学习基本理论和知识点

DQN:Deep Q network算法,融合了Q-learning和神经网络的算法,应用于电动游戏中。

 

 机器学习基本理论和知识点

Policy Gradient算法:通过奖励信息来左右反向传递的误差函数

Actor Critic算法:结合Q learning和Policy Gradient算法。

DDPG算法:Deep Deterministic Policy Gradient算法,结合了DQN和Actor Critic算法的精华。

 

7、遗传算法

遗传算法和进化策略是两种主要的采用进化理论的机器学习算法。

将进化和神经网络算法结合的算法称为神经网络进化算法;