机器学习
参考莫烦Python
1. 机器学习介绍
1.1. 分类
监督学习 supervised learning
无监督学习 unsupervised learning
半监督学习 semi-supervised learning
强化学习 reinforcement learning
遗传算法 genetic algorithm
1.2. 神经网络
1.2.1. 人工、生物神经网络对比
人工神经网络靠正向和反向传播来更新神经元
生物神经网络靠刺激产生新的联结
1.2.2. 神经网络
Neural Network,全连接神经网络
1.2.3. 卷积神经网络CNN
Convolutional Neural Network,不再针对每一像素,而是针对一小块区域
卷积 -> 池化 -> 全连接
1.2.4. 循环神经网络RNN
Recurrent Neural Network
1.2.5. LSTM RNN循环神经网络
long-short term memory,长短期记忆循环神经网络
1.2.6. 自编码Auto Encoder
自编码是一种非监督学习
1.2.7. 生成对抗网络GAN
Generative Adversarial Networks
1.2.8. 神经网络黑盒
至今为止,人类还没有搞清楚生物神经网络的运行方式
1.2.9. 梯度下降
优化问题:牛顿法、最小二乘法、梯度下降法
全局最优、局部最优
1.2.10. 迁移学习Transfer Learning
不是所有人都拥有庞大的计算能力,因此需要借鉴已有的资源
1.3. 神经网络技巧
1.3.1. 检验神经网络Evaluation
评价神经网络,并从评价中改进神经网络
1.3.2. 特征标准化 Feature Normalization
数据标准化、归一化、正规化等
minmax normalization、std normalization
1.3.3. 选择好特征 Good Features
避免无意义的信息、避免重复的信息、避免复杂的信息
1.3.4. 激励函数 Activation Function
y=wx ==> y=AF(wx)
激励函数:relu、tanh、sigmoid 等
1.3.5. 过拟合 Overfitting
解决过拟合:1. 增加数据量 2. L1,L2… regularization 3. Dropout regularization
1.3.6. 加速神经网络的训练
Speed Up Training: 1. SGD (Stochastic Gradient Descent) 2.
1.3.7. 处理不均衡数据
Imbalanced data
1.3.8. 批标准化 (Batch Normalization)
处理隐藏层数据
1.3.9. L1/L2 正规化 (Regularization)
1.4. 自然语言处理
1.4.1. 什么是自然语言处理 NLP
文字 <----> 数字
1.4.2. 搜索引擎工作方式
文章向量化
1.4.3. 词向量
1.4.4. 句向量
1.4.5. 语言模型的注意力
过滤、筛选信息
1.4.6. 预训练语言模型
要善于利用资源
1.5. 强化学习
1.5.1. 强化学习
分数导向性,类似于监督学习中的标签。强化学习的算法有多种
1.5.2. 强化学习方法汇总
分类1:不理解环境(Model-Free RL)、理解环境(Model-Based RL)
分类2:基于概率(Policy-Based RL)、基于价值(Value-Based RL)
分类3:回合更新(Monte-Carlo update)、单步更新(Temporal-Difference update)
分类4:在线学习(On-Policy)、离线学习(Off-Policy)
1.6. 遗传算法
遗传算法(Genetic Algorithm)、进化策略(Evolution Strategy)