Task0 machine learning综述

机器学习基础知识
(一)类型

1.监督学习

监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。在监督学习的过程中会提供对错指示,通过不断地重复训练,使其找到给定的训练数据集中的某种模式或规律,当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求包括输入和输出,主要应用于分类和预测。监督学习常用于分类问题和回归问题,常见算法包括对数几率回归(Logistic Regression)和反向传递神经网络(Back Propagation Neural Network)。

2.无监督学习

与监督学习不同,在无监督学习中,无须对数据集进行标记,即没有输出。其需要从数据集中发现隐含的某种结构,从而获得样本数据的结构特征,判断哪些数据比较相似。因此,非监督学习目标不是告诉计算机怎么做,而是让它去学习怎样做事情。常见的关联规则及聚类都属于无监督学习,常见算法包括Apriori算法及k-means算法等。

3.半监督学习

半监督学习是监督学习和非监督学习的结合,其在训练阶段使用的是未标记的数据和已标记的数据,不仅要学习属性之间的结构关系,也要输出分类模型进行预测。在此学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据来进行预测。应用场景包括分类和回归,算法包括一些对常用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。如图论推理算法(Graph Inference)或者拉普拉斯支持向量机(Laplacian SVM.)等。

4.强化学习

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。在强化学习下,输入数据直接反馈到模型,模型必须对此立刻作出调整。常见的应用场景包括动态系统以及机器人控制等。常见算法包括Q-Learning以及时间差学习(Temporal difference learning)。

(二).机器学习基础概念
2.1 机器学习概念
所谓机器学习就是致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。经验就是指数据。也就是说机器学习一种算法,可以利用数据来得到模型,在面对新的情况时,模型就会给出相应的结果,同时,模型也需要不断地进行优化,优化算法也是机器学习中极为重要的一环。

2.2 常见的机器学习算法
线性算法(线性回归、套索回归、岭回归、逻辑回归)
决策树(ID3、C4.5、CART)
支持向量机
朴素贝叶斯算法(朴素贝叶斯、高斯朴素贝叶斯、多项式朴素贝叶斯、贝叶斯置信网络、贝叶斯网络)
邻近算法
聚类算法(k-Means、k-Medians、Expectation Maximisation、Hierarchical Clustering)
随机森林
降维算法
梯度提升算法(GBM、XGBoost、LightGBM、CatBoost)
深度学习
3.机器学习损失函数
0-1损失函数
绝对值损失函数
平方损失函数
log对数损失函数
指数损失函数
Hinge损失函数
4.机器学习优化方法
梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。梯度的方向是函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向。

主要有:
(全量)梯度下降
随机梯度下降
小批量梯度下降
引入动量的梯度下降
自适应学习率的Adagrad算法
牛顿法

4.机器学习的评价指标
MSE
MAE
RMSE
Top-k准确率
混淆矩阵

机器学习模型选择

  1. 交叉验证

所有数据分为三部分:训练集、交叉验证集和测试集。交叉验证集不仅在选择模型时有用,在超参数选择、正则项参数 [公式] 和评价模型中也很有用。

  1. k-折叠交叉验证
  • 假设训练集为S ,将训练集等分为k份:{S1,S2,...,Sk}\{S_1, S_2, ..., S_k\}.
  • 然后每次从集合中拿出k-1份进行训练
  • 利用集合中剩下的那一份来进行测试并计算损失值
  • 最后得到k次测试得到的损失值,并选择平均损失值最小的模型
  1. Bias与Variance,欠拟合与过拟合

欠拟合一般表示模型对数据的表现能力不足,通常是模型的复杂度不够,并且Bias高,训练集的损失值高,测试集的损失值也高.

过拟合一般表示模型对数据的表现能力过好,通常是模型的复杂度过高,并且Variance高,训练集的损失值低,测试集的损失值高.

Task0 machine learning综述Task0 machine learning综述
  1. 解决方法
  • 增加训练样本: 解决高Variance情况
  • 减少特征维数: 解决高Variance情况
  • 增加特征维数: 解决高Bias情况
  • 增加模型复杂度: 解决高Bias情况
  • 减小模型复杂度: 解决高Variance情况