图解72个机器学习基础知识点算法聚类拟合神经网络人工智能技术

图解机器学习算法系列以图解的生动方式,阐述机器学习核心知识&重要模型,并通过代码讲通应用细节。

01

机器学习概述

1)什么是机器学习

人工智能(Artificialintelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它是一个笼统而宽泛的概念,人工智能的最终目标是使计算机能够模拟人的思维方式和行为。

大概在上世纪50年代,人工智能开始兴起,但是受限于数据和硬件设备等限制,当时发展缓慢。

深度学习(Deeplearning)是机器学习的子集,灵感来自人脑,由人工神经网络(ANN)组成,它模仿人脑中存在的相似结构。在深度学习中,学习是通过相互关联的「神经元」的一个深层的、多层的「网络」来进行的。「深度」一词通常指的是神经网络中隐藏层的数量。大概在2012年以后爆炸式增长,广泛应用在很多的场景中。

让我们看看国外知名学者对机器学习的定义:

机器学习研究的是计算机怎样模拟人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构,使之不断改善自身。

从实践的意义上来说,机器学习是在大数据的支撑下,通过各种算法让机器对数据进行深层次的统计分析以进行「自学」,使得人工智能系统获得了归纳推理和决策能力。

通过经典的垃圾邮件过滤应用,我们再来理解下机器学习的原理,以及定义中的T、E、P分别指代什么:

2)机器学习三要素

机器学习三要素包括数据、模型、算法。这三要素之间的关系,可以用下面这幅图来表示:

(1)数据

数据驱动:数据驱动指的是我们基于客观的量化数据,通过主动数据的采集分析以支持决策。与之相对的是经验驱动,比如我们常说的「拍脑袋」。

(2)模型&算法

模型:在AI数据驱动的范畴内,模型指的是基于数据X做决策Y的假设函数,可以有不同的形态,计算型和规则型等。

算法:指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最优模型。通常是一个最优化的问题。

3)机器学习发展历程

人工智能一词最早出现于1956年,用于探索一些问题的有效解决方案。1960年,美国国防部借助「神经网络」这一概念,训练计算机模仿人类的推理过程。

2010年之前,谷歌、微软等科技巨头改进了机器学习算法,将查询的准确度提升到了新的高度。而后,随着数据量的增加、先进的算法、计算和存储容量的提高,机器学习得到了更进一步的发展。

4)机器学习核心技术

分类:应用以分类数据进行模型训练,根据模型对新样本进行精准分类与预测。

聚类:从海量数据中识别数据的相似性与差异性,并按照最大共同点聚合为多个类别。

异常检测:对数据点的分布规律进行分析,识别与正常数据及差异较大的离群点。

回归:根据对已知属性值数据的训练,为模型寻找最佳拟合参数,基于模型预测新样本的输出值。

5)机器学习基本流程

机器学习工作流(WorkFlow)包含数据预处理(Processing)、模型学习(Learning)、模型评估(Evaluation)、新样本预测(Prediction)几个步骤。

数据预处理:输入(未处理的数据+标签)→处理过程(特征处理+幅度缩放、特征选择、维度约减、采样)→输出(测试集+训练集)。

模型学习:模型选择、交叉验证、结果评估、超参选择。

模型评估:了解模型对于数据集测试的得分。

新样本预测:预测测试集。

6)机器学习应用场景

作为一套数据驱动的方法,机器学习已广泛应用于数据挖掘、计算机视觉、自然语言处理、生物特征识别、搜索引擎、医学诊断、检测信用卡欺诈、证券市场分析、DNA序列测序、语音和手写识别和机器人等领域。

智能医疗:智能假肢、外骨骼、医疗保健机器人、手术机器人、智能健康管理等。

人脸识别:门禁系统、考勤系统、人脸识别防盗门、电子护照及身份证,还可以利用人脸识别系统和网络,在全国范围内搜捕逃犯。

机器人的控制领域:工业机器人、机械臂、多足机器人、扫地机器人、无人机等。

02

机器学习基本名词

监督学习(SupervisedLearning):训练集有标记信息,学习方式有分类和回归。

无监督学习(UnsupervisedLearning):训练集没有标记信息,学习方式有聚类和降维。

强化学习(ReinforcementLearning):有延迟和稀疏的反馈标签的学习方式。

示例/样本:上面一条数据集中的一条数据。

属性/特征:「色泽」「根蒂」等。

属性空间/样本空间/输入空间X:由全部属性张成的空间。

特征向量:空间中每个点对应的一个坐标向量。

标记:关于示例结果的信息,如((色泽=青绿,根蒂=蜷缩,敲声=浊响),好瓜),其中「好瓜」称为标记。

分类:若要预测的是离散值,如「好瓜」,「坏瓜」,此类学习任务称为分类。

假设:学得模型对应了关于数据的某种潜在规律。

真相:潜在规律自身。

学习过程:是为了找出或逼近真相。

泛化能力:学得模型适用于新样本的能力。一般来说,训练样本越大,越有可能通过学习来获得具有强泛化能力的模型。

03

机器学习算法分类

1)机器学习算法依托的问题场景

机器学习在近30多年已发展为一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动「学习」的算法。

机器学习算法从数据中自动分析获得规律,并利用规律对未知数据进行预测。

机器学习最主要的类别有:监督学习、无监督学习和强化学习。

监督学习:从给定的训练数据集中学习出一个函数,当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求是包括输入和输出,也可以说是特征和目标。训练集中的目标是由人标注的。常见的监督学习算法包括回归分析和统计分类。

无监督学习:与监督学习相比,训练集没有人为标注的结果。常见的无监督学习算法有生成对抗网络(GAN)、聚类。

强化学习:通过观察来学习做成如何的动作。每个动作都会对环境有所影响,学习对象根据观察到的周围环境的反馈来做出判断。

2)分类问题

分类问题是机器学习非常重要的一个组成部分。它的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。分类问题可以细分如下:

二分类问题:表示分类任务中有两个类别新的样本属于哪种已知的样本类。

多类分类(Multiclassclassification)问题:表示分类任务中有多类别。

多标签分类(Multilabelclassification)问题:给每个样本一系列的目标标签。

3)回归问题

了解更多机器学习回归算法:决策树模型、随机森林分类模型、GBDT模型、回归树模型、支持向量机模型等。

4)聚类问题

了解更多机器学习聚类算法:聚类算法。

5)降维问题

了解更多机器学习降维算法:PCA降维算法。

04

机器学习模型评估与选择

1)机器学习与数据拟合

机器学习最典型的监督学习为分类与回归问题。分类问题中,我们学习出来一条「决策边界」完成数据区分;在回归问题中,我们学习出拟合样本分布的曲线。

2)训练集与数据集

我们以房价预估为例,讲述一下涉及的概念。

训练集(TrainingSet):帮助训练模型,简单的说就是通过训练集的数据让确定拟合曲线的参数。

测试集(TestSet):为了测试已经训练好的模型的精确度。

当然,testset这并不能保证模型的正确性,只是说相似的数据用此模型会得出相似的结果。因为在训练模型的时候,参数全是根据现有训练集里的数据进行修正、拟合,有可能会出现过拟合的情况,即这个参数仅对训练集里的数据拟合比较准确,这个时候再有一个数据需要利用模型预测结果,准确率可能就会很差。

3)经验误差

在训练集的数据上进行学习。模型在训练集上的误差称为「经验误差」(EmpiricalError)。但是经验误差并不是越小越好,因为我们希望在新的没有见过的数据上,也能有好的预估结果。

4)过拟合

过拟合,指的是模型在训练集上表现的很好,但是在交叉验证集合测试集上表现一般,也就是说模型对未知样本的预测表现一般,泛化(Generalization)能力较差。

如何防止过拟合呢?一般的方法有EarlyStopping、数据集扩增(DataAugmentation)、正则化、Dropout等。

正则化:指的是在目标函数后面添加一个正则化项,一般有L1正则化与L2正则化。L1正则是基于L1范数,即在目标函数后面加上参数的L1范数和项,即参数绝对值和与参数的积项。

数据集扩增:即需要得到更多的符合要求的数据,即和已有的数据是独立同分布的,或者近似独立同分布的。一般方法有:从数据源头采集更多数据、复制原有数据并加上随机噪声、重采样、根据当前数据集估计数据分布参数,使用该分布产生更多数据等。

DropOut:通过修改神经网络本身结构来实现的。

5)偏差

偏差(Bias),它通常指的是模型拟合的偏差程度。给定无数套训练集而期望拟合出来的模型就是平均模型。偏差就是真实模型和平均模型的差异。

简单模型是一组直线,平均之后得到的平均模型是一条直的虚线,与真实模型曲线的差别较大(灰色阴影部分较大)。因此,简单模型通常高偏差。

复杂模型是一组起伏很大波浪线,平均之后最大值和最小组都会相互抵消,和真实模型的曲线差别较小,因此复杂模型通常低偏差(见黄色曲线和绿色虚线几乎重合)。

6)方差

方差(Variance),它通常指的是模型的平稳程度(简单程度)。简单模型的对应的函数如出一辙,都是水平直线,而且平均模型的函数也是一条水平直线,因此简单模型的方差很小,并且对数据的变动不敏感。

复杂模型的对应的函数千奇百怪,毫无任何规则,但平均模型的函数也是一条平滑的曲线,因此复杂模型的方差很大,并且对数据的变动很敏感。

7)偏差与方差的平衡

8)性能度量指标

性能度量是衡量模型泛化能力的数值评价标准,反映了当前问题(任务需求)。使用不同的性能度量可能会导致不同的评判结果。

(1)回归问题

关于模型「好坏」的判断,不仅取决于算法和数据,还取决于当前任务需求。回归问题常用的性能度量指标有:平均绝对误差、均方误差、均方根误差、R平方等。

平均绝对误差(MeanAbsoluteError,MAE),又叫平均绝对离差,是所有标签值与回归模型预测值的偏差的绝对值的平均。

平均绝对百分误差(MeanAbsolutePercentageError,MAPE)是对MAE的一种改进,考虑了绝对误差相对真实值的比例。

均方误差(MeanSquareError,MSE)相对于平均绝对误差而言,均方误差求的是所有标签值与回归模型预测值的偏差的平方的平均。

均方根误差(Root-Mean-SquareError,RMSE),也称标准误差,是在均方误差的基础上进行开方运算。RMSE会被用来衡量观测值同真值之间的偏差。

R平方,决定系数,反映因变量的全部变异能通过目前的回归模型被模型中的自变量解释的比例。比例越接近于1,表示当前的回归模型对数据的解释越好,越能精确描述数据的真实分布。

(2)分类问题

分类问题常用的性能度量指标包括错误率(ErrorRate)、精确率(Accuracy)、查准率(Precision)、查全率(Recall)、F1、ROC曲线、AUC曲线和R平方等。

错误率:分类错误的样本数占样本总数的比例。

精确率:分类正确的样本数占样本总数的比例。

查准率(也称准确率),即在检索后返回的结果中,真正正确的个数占你认为是正确的结果的比例。

查全率(也称召回率),即在检索结果中真正正确的个数,占整个数据集(检索到的和未检索到的)中真正正确个数的比例。

F1是一个综合考虑查准率与查全率的度量,其基于查准率与查全率的调和平均定义:即:F1度量的一般形式-Fβ,能让我们表达出对查准率、查全率的不同偏好。

ROC曲线(ReceiverOperatingCharacteristicCurve)全称是「受试者工作特性曲线」。综合考虑了概率预测排序的质量,体现了学习器在不同任务下的「期望泛化性能」的好坏。ROC曲线的纵轴是「真正例率」(TPR),横轴是「假正例率」(FPR)。

AUC(AreaUnderROCCurve)是ROC曲线下面积,代表了样本预测的排序质量。

从一个比较高的角度来认识AUC:仍然以异常用户的识别为例,高的AUC值意味着,模型在能够尽可能多地识别异常用户的情况下,仍然对正常用户有着一个较低的误判率(不会因为为了识别异常用户,而将大量的正常用户给误判为异常。

9)评估方法

我们手上没有未知的样本,如何可靠地评估?关键是要获得可靠的「测试集数据」(TestSet),即测试集(用于评估)应该与训练集(用于模型学习)「互斥」。

常见的评估方法有:留出法(Hold-out)、交叉验证法(CrossValidation)、自助法(Bootstrap)。

留出法(Hold-out)是机器学习中最常见的评估方法之一,它会从训练数据中保留出验证样本集,这部分数据不用于训练,而用于模型评估。

机器学习中,另外一种比较常见的评估方法是交叉验证法(CrossValidation)。k折交叉验证对k个不同分组训练的结果进行平均来减少方差,因此模型的性能对数据的划分就不那么敏感,对数据的使用也会更充分,模型评估结果更加稳定。

自助法(Bootstrap)是一种用小样本估计总体值的一种非参数方法,在进化和生态学研究中应用十分广泛。

Bootstrap通过有放回抽样生成大量的伪样本,通过对伪样本进行计算,获得统计量的分布,从而估计数据的整体分布。

10)模型调优与选择准则

我们希望找到对当前问题表达能力好,且模型复杂度较低的模型:

THE END
1.机器学习基础超全汇总!机器学习常用术语词汇表(建议收藏同样是监督学习算法,用于预测连续的数值,如预测股票价格、房价等。线性回归是最基本的回归算法之一。 聚类算法 无监督学习算法,将数据对象分成不同的簇,使得同一簇内的数据对象具有较高的相似性,而不同簇之间的相似性较低。例如 K-Means 聚类算法。 决策树 https://www.bilibili.com/read/cv39478871/
2.在线算法和离线算法的区别–PingCode什么是在线算法和离线算法,它们有哪些区别? 在线算法和离线算法都是常见的数据处理算法,但它们在应用场景和运行方式上存在一些区别。 在线算法是什么,它和离线算法有什么不同之处? 在线算法是一种实时处理数据的算法,它在数据到达时立即进行处理,即时的结果可以随时更新。在线算法适用于需要实时响应和动态更新的场景,如https://docs.pingcode.com/ask/202629.html
3.离线算法vs在线算法在计算机科学中,离线和在线算法的本质不同是:在处理数据流和资源使用方面 离线和在线不是具体的某种算法公式,而是一种思维模式,取决于在所给的问题背景下,数据资源是否能够通盘考虑,或是现实场景中不断地有新数据介入 离线算法(OfflineAlgorithm) 离线算法是指在开始处理数据之前,所有需要的输入数据都是已知的。算法https://blog.csdn.net/m0_61678439/article/details/141088418
4.在线算法离线算法在线算法与离线算法是计算机科学中两个重要的概念,它们之间的区别对于理解算法的性能和应用至关重要。在线算法和离线算法在处理问题的方式上存在本质差异。在线算法在运行过程中逐步接收输入,并根据当前已知信息做出决策。它必须做出即时的决策,且这些决策不可逆地影响后续步骤。举例来说,当你在社交媒体平台https://zhidao.baidu.com/question/693651552016535292.html
5.我想问一下不足月如何算月利息呢,具体的算法是什么?结论:如果贷款本身就是按日计息的,那计算月息的时候,不满一个月就是按实际借款天数来算 解析:比如某https://www.64365.com/ask/1926218.aspx
6.在对齐AI时,为什么在线方法总是优于离线方法?澎湃号·湃客根据现有的强化学习研究成果,在线比离线更好似乎是显而易见的结论。在线和离线强化学习算法之间的性能差距也已经被多项研究发现,所以这项研究给出了什么不一样的结论呢? 最重要的是,在线 RLHF 算法依赖于一个学习后的奖励模型,该奖励模型是使用与离线 RLHF 算法一样的成对偏好数据集训练得到的。这与常规强化学习https://www.thepaper.cn/newsDetail_forward_27434433
7.「事实核查」是啥?专题笔记已经整理好啦,直接背!事实核查的人工算法,集智能算法与专业编辑优势于一体,在智能算法抓取社交媒体上的相关信息后,由记者进一步核实信息。 三 社交媒体时代的事实核查的特点 田心说:此部分可在理解的基础上简单记忆。 在实践中,事实核查已成为近年来全球新闻业用以应对数字化浪潮冲击所尝试的最重要的创新项目之一。与海外新闻业相比,事实核https://www.douban.com/note/863236156/
8.在线学习平台常见问题解答——超星尔雅2、总成绩组成和算法 解答:总成绩 =视频成绩*视频考核比例+课堂测验作业的平均成绩*章节测验考核比例+考试成绩*考试考核比例,如果有访问的考核标准,需要加上访问的成绩*访问比例,可以登录后点开课程图片进入,点击导航栏【进度】,进入查看相关进度和分数的分配,如果学校没有特殊要求,总成绩已获得的分数达到60以上即为http://syxt.xjtu.edu.cn/info/1171/2038.htm
9.详解抖音算法:为啥百万粉丝的抖音号,直播时才几十个人在线?视频抖音的算法,就是抖音这款游戏的规则。 成立日期2021年06月04日 法定代表人王生 主营产品抖音小风车,蓝V开通,企业号认证,私信卡片,引流链接,橱窗,跳转微信,在线预约,KS小钥匙,立即预约,升黄金等级,二手车播,橱窗开通 ,二手车直播资质,信息咨询,定位修改,团购达人,电商执照,代办执照抖音团购,小店开通,虚拟号码改https://product.11467.com/info/11530048.htm
10.重建生态:价值与系统的力量——第七届中国教育创新年会11月启幕算法学习的课堂提问艺术 冯书伟(北京亦庄实验小学信息技术中心主任) 合作学习的管理策略 叶丹(武汉经济技术开发区洪山小学校长) 新冠疫情下的混合式学习经验 马鸣燕(美国普利西学校中学部创校老师) 个体学习的崛起对学校传统群体学习的冲击与改造 唐雅月(巴川中学精英班海外首席升学指导) 学生们如何在场馆式https://sghexport.shobserver.com/html/toutiao/2020/08/26/250533.html
11.从玄学走向科学:AB测试驱动的科学增长在这之后,AB实验渐渐普及开来,逐步成为数据驱动增长的经典手段,助力了大量互联网产品的迭代优化。今天,谷歌微软这些科技公司每年进行着数以万计的实验,覆盖了亿级的用户量,实验的内容涵盖了绝大多数产品特征的迭代优化,从产品命名到交互设计,从改变字体、弹窗效果、界面大小,到推荐算法、广告优化、用户增长等等。 https://www.51cto.com/article/745854.html
12.在线匹配问题研究进展:如何应对一般图以及顶点全在线的挑战?在STOC90会议中,Karp, Vazirani和Vazirani三位学者首次提出了在线二分图匹配模型:假设存在一个潜在的二分图 其中一侧顶点为离线顶点(直接给定),而另一侧顶点为在线顶点(逐步到达)。我们要求算法在任何一个在线顶点输入的时间点(此时与中顶点的边同时给出),即时地决定是否将与中某一相邻顶点匹配,并且决策不能反悔。https://www.orsc.org.cn/wechat/article/detail?id=760
13.2024年10款最佳RSS阅读器推荐(在线/软件+免费/付费)现在无论是在新闻媒体、社交平台还是在线视频软件,订阅或者说关注对大多数人来说是一个熟悉的词汇,比如知乎专栏的订阅,抖音的关注等等。为了获取更大懂得利润,很多平台不断地采用算法分析和收集用户数据,从而推荐你潜在可能感兴趣的内容和商品。这样导致你身边的信息具有同质化,让你看不到跟你不一样的观点、接收到https://www.extrabux.cn/chs/guide/6500762
14.算法基础与在线实践带目录完整pdf[31MB]电子书下载1.1 什么是算法 1.2 算法的时间复杂度 1.3 算法时间复杂度分析示例 1.4 PKU 0penJudge在线评测系统 1.5 本章小结 第2章 简单计算与模拟 2.1 基本思想 2.2 例题:鸡兔同笼(POJ 3237) 2.3 例题:校门外的树(POJ 2808) 2.4 例题:装箱问题(POJ 1017) https://www.jb51.net/books/679145.html
15.大数据流的在线HeavyHitters算法(上篇):基于计数器的方法Heavy Hitters(频繁项)以及它衍生出来的Top-K(前K最高频项)是大数据和流式计算领域非常经典的问题,并且在海量数据+内存有限+在线计算的前提下,传统的HashMap + Heap-Sort方式几乎不可行,需要利用更加高效的数据结构和算法来解决。好在大佬们对Heavy Hitters问题进行了深入的研究,并总结出了很多有效的方案,本文简要介https://www.jianshu.com/p/690432d7fc45
16.生物信息学简史1970年,Needleman和Wunsch 开发了第一个成对蛋白质序列比对的动态编程算法,80年代早期,做为Needleman-Wunsch算法的推广,第一个多序列比对(MSA)算法首次公布,但是这个算法并没有太大的价值。 多序列比对第一个真正成熟的算法由Da-Fei Feng和Russell F. Doolitle于1987年开发,流行的MSA软件 CLUSTAL 开发于1988年,作为https://www.biowolf.cn/m/view.php?aid=372
17.蚂蚁金服核心技术:百亿特征实时推荐算法揭秘阿里妹导读:本文来自蚂蚁金服人工智能部认知计算组的基础算法团队,文章提出一整套创新算法与架构,通过对TensorFlow底层的弹性改造,解决了在线学习的弹性特征伸缩和稳定性问题,并以GroupLasso和特征在线频次过滤等自研算法优化了模型稀疏性,在支付宝核心推荐业务获得了uvctr的显著提升,并较大地提升了链路效率。 https://maimai.cn/article/detail?fid=1010621115&efid=mIQCHnkj0zjxlpygUmo5mg