机器学习理论基础2笔记

在学习机器学习之前熟悉一下机器学习相关的词,对今后的机器学习有一定的帮助,使得我们能够更为清晰的认识机器学习

此次的笔记只是一种简要的概括,具体的可以参照博客https://www.csdn.net/gather_27/MtTacg5sOTg2Ni1ibG9n.html

当然还有其它的,只要我们能够学到好东西就可以收藏。

机器学习关于数据集的概念

       什么样的数据集

       数据集的行---样本

       数据集的列---特征

       特征组成的空间---特征或属性空间

       组成属性空间中的点---特征或属性向量

       将数据集切分成训练集和测试集

       使用训练集+算法构成模型解决实际问题

       误差:进行校验结果情况

       如果对于非数值的特征,需要进行特征转换

       如何对二分类问题进行评价?

              绝对值误差函数

              平方误差函数

              训练误差:机器学习模型在训练数据集上表现出的误差叫做训练误差

              测试误差: 模型在测试集上的错分率

              泛化误差:在任意一个测试数据样本上表现出的误差的期望值叫做泛化误差

              性能矩阵(混淆矩阵)

https://blog.csdn.net/u013063099/article/details/80964865该链接对以下的名词解释比较详细,有图有公式

准确率Accuracy

 精确率Precision

召回率=真正率TPR(true positive rate)

假正率FPR(false negative rate)

F1-Score(F1值): 精确率和召回率的调和平均

F1 score=2/(1/pre + 1/recall) = 2*pre*recall/(recall+pre)

          ROC(受试者工作曲线) 曲线:AUC(Area under Cruve)  [0,1]

机器学习基本概念

基本概念:训练集、测试集、特征值、监督学习、非监督学习、半监督学习、分类、回归

训练集(training set/data)/训练样例(training examples):用来进行训练,也就是产生模型或者算法的数据集。

测试集(testing set/data)/训练样例(testing examples):(通常只知道特征,用来进行预测)用来专门进行测试已经学习好的模型或者算法的数据集。

特征向量(features/feature vector):属性的集合,通常用一个向量来表示,属于一个实例。

标记(label):c(x),实例类别的标记。

正例(positive example)

反例(negative example)

分类(classification):

       目标标记为类别型数据(category)

回归(regression):

       目标标记为连续性数值(continuous numeric value)

初识机器学习分类

       有监督学习(supervised learning): 训练集有类别标记(class label)

       无监督学习(unsupervised learning): 无类别标记

       半监督学习(semi-supervised learning):有类别标记的训练集 + 无标记的训练集

机器学习步骤框架

  1. 把数据拆分为训练集和测试集
  2. 用训练集和训练集的特征向量来训练算法
  3. 用学习来的算法运用在测试集上来评估算法(可能要涉及到调整参数(parameter tuning)--(验证集(validation set)))

机器学习分类详解

监督学习、非监督学习、半监督学习、强化学习、迁移学习、深度强化迁移学习

监督学习(supervised)是指训练数据集中的每个样本均有一个已知的输出项(类标label)

输出变量为连续变量的预测问题称为回归(regression)问题(西瓜的成熟度)。

输出变量为有限个离散变量的预测问题称为分类问题(西瓜的分类)。

监督学习和无监督学习区别:是否有类别标签

       监督学习

              是否具备连续的预测值

                     分类

                     回归

       无监督学习(非监督学习)

  1. 聚类(KMeans)

在没有类别标签的情况下,通过特征之间的相似性或向异性进行分类

  1. 降维

根据算法将高维特征降低到了低维特征,低维度的特征不具备可解析性行

              聚类的假设:将有标记的样本和无标记的样本混合在一起,通过特征之间的相似性

              样本分成若干个组或若干个簇,使得组内的相似性较大,组间的相异性较大,将样

              本点都进行分组,此时,分组的样本点即包含了有类别标签的也包含没有类别标签

              根据有类别标签的样本,按照少数服从多数的投票原则对没有加标记的样本添加标

              记。至此,所有的未标记数据都可以分配标记。

       半监督学习:

              主动学习

              纯半监督学习/直推学习

强化学习

              是机器学习的一个重要分支,主要用来解决连续决策的问题。

迁移学习

       解决小数据集和个性化问题

深度(特征)+强化(连续决策)+迁移(模型的适应性问题)

      

机器学习三要素详解及概念强化

       统计学习=模型+策略+算法

       模型:规律y=ax+b

       策略:什么样的模型是好的模型?损失函数

       算法:如何高效找到最优参数,模型中未知的参数a,b

      

机器学习模型=数据+算法+策略

              数据:

              算法:提供求解参数的方法

                     解析解—平常方法

                     最优解—梯度下降法(最优解)、牛顿法

              策略:损失函数

       模型学习模型=模型+算法+策略

              模型:

                     决策函数—输出0或1

                     条件概率函数—按照概率进行输出

             

       模型—寻找规律

              机器学习中,首先要考虑学习什么样的模型,在监督学习中,如模型(y=ax+b)

       就是所要学习的内容

              模型通常分为决策函数或条件概率分布

              由决策函数表示的模型为非概率模型,由条件概率分不表示的模型为概率模型

      

       策略—模型好不好

       评估模型的好坏,使用损失函数来进行度量,模型给出的值与实际真实值存在的差别。

       

算法

       机器学习的算法就是最优化问题的算法。如果最优化问题有显示的解析解,这个最优化问题就比较简单,但通常这个解析解不存在,所以就需要利用数值计算额方法来求解。

机器学习可以利用已有的最优化算法,也可以开发独自的最优化算法。

如何设计机器学习系统

       首先明确:

              该问题是否为机器学习问题?

              该问题是机器学习哪方面的问题?--监督学习,无监督学习

       当拿到数据之后从下面两个角度思考问题:

              从数据角度思考:

                     根据具备的数据看能够做监督学习or无监督学习or半监督学习

              从业务的角度思考:

                     根据业务部门指定的业务方向,整理数据,从而建模

       特征工程

              对特征处理

              对数据处理

       数据+选择的算法è模型

       通过测试集模型,给定最终模型

       如果有新数据,通过模型给出预测结果

泛化

       模型具有好的泛化能力指的是:模型不但在训练数据集上表现的效果很好,对于新数据的适应能力也有很好的效果。

       泛化能力的表现:过拟合和欠拟合

              过拟合overfitting:模型在训练数据上表现良好,在未知数据或者测试集上表现差。

              欠拟合underfitting:在训练数据和未知数据上表现都很差。

  1. 欠拟合

模型在训练集和测试集的效果都很差

A:60% B:58%

欠拟合出现的原因:模型过于简单

欠拟合出现的场景:模型训练初期

欠拟合解决办法:

       增加模型的多项式的项

       增加模型多项式的次数

       减少正则罚项

  1. 过拟合

模型在训练集上的效果很好,但是测试效果很差

A:100%  B: 80%

A:100%  B: 40%

过拟合的出现原因:模型过于复杂,数据不纯、训练数据量太少

过拟合出现的场景:出现在模型训练的中后期

过拟合解决办法:

       针对模型过于复杂的特性,增加正则罚项了,L1,L2

       重新清洗数据

       增加训练数据量

       对样本抽样或特征进行抽样

       dropout—随机丢弃一些点(深度学习)

       模型的选择—奥卡姆剃刀原则是模型选择的基本而且重要的原则

              给定两个具有相同泛化误差的模型,较简单的模型比复杂的模型更可取

             

机器学习三要素数学理论补充

       数据

       算法

       策略

              这里的策略缩小到损失函数

              损失函数、目标函数、误差函数(这三个指的是一个意思)

              损失函数越小越好

              损失函数的期望是:

                    

              损失函数的期望越小越好P(x,y)不易求解

              监督学习的两个基本策略:1.经验风险最小化 2.结构风险最小化

              经验损失------平均损失------经验风险最小化

              结构风险------在经验风险基础上增加了正则罚项------结构风险最小化

                     随着模型的复杂度的增加,模型在训练集上的误差越小,但是模型在测试集上

                     的误差先减少然后增加,这里需要找到一个适合的点,该点需要模型具备很好

                     泛化误差能力,因此得到了结构风险最小化的点对应的就是求解的最佳点,该

                     点对应的参数即为所求解参数

正则化

       正则项

              目的:为了降低模型的复杂度

              有几个正则项:

                     L1正则项、L2正则项

                     https://blog.csdn.net/coderTC/article/details/78452300讲述了两者的区别

交叉验证

       简单交叉验证:
              将数据集切分为:训练集和测试集 7:3  6:4  8:2

       K则交叉验证:

              将数据集平均随机切分为K等份,将其中一份数据作为测试集,训练K个模型,得

              平均准确率

       留一验证:

              特殊的K则交叉验证

原文地址:https://www.cnblogs.com/yang901112/p/11480861.html