机器学习(一) -- 概述

系列文章目录及链接

上篇:机器学习(零) -- 系列文章目录及链接
下篇:机器学习(二) -- 数据预处理(1)


前言

tips:标题前有“***”的内容为补充内容,是给好奇心重的宝宝看的,可自行跳过。文章内容被“文章内容”删除线标记的,也可以自行跳过。“!!!”一般需要特别注意或者容易出错的地方。

本系列文章是作者边学习边总结的,内容有不对的地方还请多多指正,同时本系列文章会不断完善,每篇文章不定时会有修改。

数学基础:高等数学、线性代数、概率论和数理统计。
编程基础:python、numpy、pandas、Matplotlib、Scikit-learn……
编程IDE:学习推荐Jupyter,大型项目用Pycharm。
操作系统:需要会一点Linux。

本章主要简述了机器学习大致有哪些东西,对大体框架有一定了解。


一、机器学习定义(是什么)

机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

它是人工智能核心,是使计算机具有智能的根本途径。

-- 百度百科

人工智能(AL)

机器学习(ML)机器学习是人工智能的一个子领域,是人工智能的核心。机器学习是从数据通往智能的技术途径,是现代人工智能的本质。

深度学习(DL)深度学习是机器学习的一个子领域,是目前最火的方向。

加入神经网络的关系表示:

二、机器学习的应用(能做什么)

模式识别(Pattern Recognition,PR)== 机器学习:计算机能够比人类更高效地读取大量的数据、学习数据的特征并从中找出数据的模式。这样的任务也被称为“机器学习”或者“模式识别”。统计学习是使用统计方法的一种机器学习。

计算机视觉(Computer Vision,CV):图像识别(人脸识别)、图像检索、物体识别等。

数据挖掘(Data Mining,DM):推荐系统等。

自然语言处理(Natural Language Processing, NLP):文本分类(Text Classification)、语言模型(Language Modeling)、机器翻译(Machine Translation)、问答系统(Question Answering)、语音识别(Speech Recognition)等。

统计学习(Statistical Learning,SL):支持向量机SVM、核方法等。

等……

三、***机器学习的流派

四、机器学习的系统定义与通俗理解

1、系统定义

假设用P来评估计算机程序在某任务类T上的性能,若一个程序通过利用经验E在T中任务上获得了性能改善,则我们就说关于T和P,该程序对E进行了学习

-- 西瓜书

机器学习 = 任务 + 方法 + 经验 + 性能

任务-T:机器学习要解决的问题                    任务是机器学习的研究对象;

方法-A:   各种机器学习方法                           方法是机器学习的核心内容;

经验-E:训练模型的数据,实例                    经验是机器学习的动力源泉;

性能-P:方法针对任务的性能评估准则        性能是机器学习的检验指标。

2、通俗理解

机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测。(类比人类)

​从数据中自动分析获得模型,并利用模型对未知数据进行预测。

流程:有了历史数据 --> 通过学习算法(训练) --> 得到模型 --> 用新数据进行预测

目的:机器学习=找一个函数(模型=函数)

3、明确关键点

算法是核心,数据计算是基础

3、机器学习 = 任务 + 方法 + 经验 +

五、机器学习的基本术语

按照流程介绍不同术语。

-- 以下内容从【西瓜书】概括而得

1、有了数据

数据集(D,data set):100个西瓜构成一个数据集。

样本(sample,示例,instance):100个西瓜中的每一个西瓜,就是一个样本。

属性(attribute,特征,feature):西瓜的色泽,根蒂,敲声。

        属性值(attribute value):西瓜的色泽为青绿色,青绿即为属性值。

样本空间(sample space,属性空间,attribute space、输入空间)(X):属性张成的空间。“色泽”,“根蒂”,“敲声”作为三个坐标轴,则他们张成一个描述西瓜的三维空间

特征向量(feature vector):颜色、大小、敲起来的振幅。一个维度(dimensionality)

2、通过学习算法

2.1、学习(learning,训练,training)

训练数据(training data)

训练样本(training sample,训练示例,training instance、训练例)

训练集(training set)

假设(hypothesis):学得模型对应关于数据的某种潜在的规律(比如敲声清脆的可能是好瓜)。

真相(真实,ground-truth):潜在规律本身(比如敲声清脆的一定是好瓜)。

学习器(learner,模型,model):得到的模型。

2.2、样本结果信息

标记(label):((色泽=青绿;根蒂=蜷缩;敲声=浊响),好瓜),“好瓜”称为“标记”。

样例(example):拥有标记信息的示例称为样例

用(xi,yi)表示第i个样例,其中yi属于Y,是示例xi的标记。
标记空间(label space、输出空间):Y是所有标记的集合。

3、得到模型

分类、回归、聚类等,具体后面【机器学习的分类】详讲。

4、进行预测

4.1、测试(testing):

测试样本(testing sample,测试示例,testing instance、测试例)

4.2、测试能力:

泛化(generalization)能力:适应新样本(未见示例,unseen instance)的能力

--     独立同分布:假设样本空间中全体样本服从一个未知“分布”(distribution)D,我们获得的每一个样本都是独立地从这个分布上采样获得的,即“独立同分布”(independent and identically distributed,简称,i.i.d.)

5、数据集构成简单理解

结构:特征值(房子面积,房子位置、房子楼层)+目标值(这里是价格)

对于每一行数据我们可以称为样本

有些数据集可以没有目标值,如下

数据类型

        离散型数据:由记录不同类别个体的数目所得到的数据,又称计数数据,所有这些数据全部都是整数,而且不能再细分,也不能进一步提高他们的精确度。

连续型数据: 变量可以在 某个范围内取任一数 ,即变量的取值可以是连续

  的,如,长度、时间、质量值等,这类数据通常是非整数,含有小数部分。

        (离散型是区间内不可分,连续型是区间内可分)

六、机器学习的分类

1、监督学习(Supervised Learning,有导师学习)

从有标记数据中学习模型(输入数据有特征有标签,即有标准答案)

1.1、分类(classification) -- 离散

1.1.1、二分类(binary classification)

正类(positive class)、反类(negative class,负类)
Y={-1,+1}/{0,1}        (Y被分成-1,1,或者0,1)

eg:识别猫和狗。

1.1.2、多分类(multi-class classification)

|Y|>2

eg:数字识别

1.2、回归(regression) -- 连续

预测的是连续值,

Y=R(实数集)

eg:房屋价格预测:

2、无监督学习(Unsupervised Learning,无导师学习)

从无标记数据中学习模型(输入数据有特征无标签,即无标准答案)

2.1、聚类

分为若干组,每个组称为一个“簇”(cluster)

(聚类可以作为一个单独过程,用于寻找数据内在的分布结构,
也可以作为分类/稀疏表示等其他学习任务的前驱过程)

eg

2.2、降维

        在原始的高维空间中,包含冗余信息和噪声信息,会在实际应用中引入误差,影响准确率;而降维可以提取数据内部的本质结构,减少冗余信息和噪声信息造成的误差,提高应用中的精度

        还有异常检测等……

3、半监督学习(Semi-Supervised Learning)

        半监督学习(Semi-Supervised Learning,SSL)是模式识别和机器学习领域研究的重点问题,是监督学习与无监督学习相结合的一种学习方法。半监督学习使用大量的未标记数据,以及同时使用少量标记数据,来进行模式识别工作。当使用半监督学习时,将会要求尽量少的人员来从事工作,同时,又能够带来比较高的准确性,因此,半监督学习正越来越受到人们的重视。

--  百度百科

4、强化学习(Reinforcement Learning)

        外部环境对输出只给出评价信息而非正确答案,学习机通过强化受奖励的动作来改善自身的性能。

        实质是自主决策问题,即自动进行决策,并且可以做连续决策。

        以“试错”的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏。

5、多任务学习(Multi-task Learning)

        把多个相关(related)的任务放在一起学习。

        单任务学习时,各个任务之间的模型空间(Trained Model)是相互独立的,但现实世界中很多问题不能分解为一个—个独立的子问题,且这样忽略了问题之间所包含的丰富的关联信息。多任务学习就是为了解决这个问题而诞生的。多个任务之间共享一些因素,它们可以在学习过程中,共享它们所学到的信息,相关联的多任务学习比单任务学习具备更好的泛化 (generalization)效果。

  • 主动学习(Active Learning)
  • 集成学习(Ensemble Learning)
  • 迁移学习(Transfer Learning)
  • 多任务学习(Multi-task Learning)
  • 强化学习(Reinforcement Learning)
  • 终生学习(Life-long Learning)
  • 课程学习(Curriculum Learning)
  • 零样本学习(One/zero shot Learning)

七、机器学习的算法

        有的人总想先知道机器学习的算法有哪些(比如我QwQ)

1、监督学习

        1.1、单模型

                1.1.1、线性模型

                        线性回归(Linear Regression)

                                Lasso(L1正则化)

                                Ridge(岭回归,L2正则化)

                        逻辑回归(Logistic Regression,对数几率回归)

                        线性判别分析(LDA,Linear Discriminant Analysis)

                1.1.2、K近邻算法(K-Nearest Neighbors,KNN)
                1.1.3、决策树(Decision Trees)

                        ID3

                        C5.0

                        CART

                1.1.4、神经网络

                        感知机

                        神经网络(Neural Networks)

                                卷积神经网络(CNN)

                                循环神经网络(RNN)

                                生成对抗网络(GAN)

                                图神经网络(GNN)

                                长短时记忆网络(LSTM)

                                人工神经网络(ANN)

                                自编码器(Autoencoder)

                                Transformer(变换器)

                                ……

                1.1.5、支持向量机(SVM,Support Vector Machines)

                        线性可分

                        线性支持

                        线性不可分

        1.2、集成学习(多学习器组合)

                 1.2.1、Boosting

                        AdaBoost

                        梯度提升树(GBDT)

                        XCBoost

                        LightCBM

                        CatBoost

                1.2.2、Bagging

                        随机森林(Random Forests)

                1.2.3、Stacking

2、无监督学习

        2.1、聚类算法

                将数据样本划分为不同的组或簇,使得同一组内的样本相似度高,不同组之间的相似度较低。

                2.1.1、K均值聚类(K-Means Clustering)
                2.1.2、层次聚类(Hierarchical Clustering)
                2.1.2、谱聚类(spectral clustering)
                2.1.3、DBSCAN

        2.2、降维算法

                将高维数据映射到低维空间,保留数据的主要信息,同时减少数据的维度。

                2.2.1、主成分分析(Principal Component Analysis,PCA)
                2.2.2、线性判别分析(LDA)
                2.2.3、奇异值分解(SVD)
                2.2.4、t-SNE

        2.3、关联规则挖掘,关联规则学习(Association Rule Learning)

                从数据集中发现频繁出现的项集或关联规则,用于发现数据项之间的关联性。

                2.3.1、Apriori
                2.3.2、FP-growth

        2.4、异常检测

                检测数据中的异常或离群点,这些数据与正常数据的行为模式不符。

                2.4.1、基于统计的方法
                2.4.2、基于聚类的方法
                2.4.3、基于密度的方法

        2.5、高斯混合模型(Gaussian Mixture Models)

                暂时先放这吧!

3、半监督学习

        标签传播算法、半监督支持向量机和深度置信网络等

4、强化学习

        Q-learning、SARSA、策略梯度和深度强化学习

5、概率算法

        EM算法

        MCMC

        贝叶斯
                朴素贝叶斯(Naive Bayes)
                贝叶斯网络

        概率图
                CRF
                HMM

        最大熵模型

八、机器学习的流程


欲知后事如何,且看:机器学习(二) -- 数据预处理(1)

  • 29
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值