常见的机(jī)器学习算(suàn)法
诞生于1956年的人工智能,由于受到智(zhì)能算法、计算速(sù)度、存储水平等因素的影响,在六十多年的发展(zhǎn)过程中经历了多次(cì)高潮(cháo)和低谷(gǔ)。最近几年,得益于数据量的上涨、运算力的(de)提(tí)升,特别是机器学习新算法的出现,人工(gōng)智能迎来了大爆发的(de)时代(dài)。
提到(dào)机器学习这个词时,有(yǒu)些人首先(xiān)想到(dào)的可能是科幻电影里的(de)机器人。事(shì)实上,机器学(xué)习是一门(mén)多领域(yù)交叉(chā)学(xué)科,涉及概率论、统计学、算法(fǎ)复杂(zá)度理论等多(duō)门学科(kē)。专门研究计算(suàn)机(jī)如何模拟或实现(xiàn)人类的学习行为,利用数据或(huò)以往的经验,以此优化计算机程(chéng)序的性能标准。
根(gēn)据(jù)学习任(rèn)务的不同,我们可以将机器学习分(fèn)为监督学(xué)习、非监督学习、强(qiáng)化学习三种类(lèi)型,而每种类型又(yòu)对应着(zhe)一些算法。
各种算法(fǎ)以及对应的任务类型
接下来就(jiù)简单介(jiè)绍几种常(cháng)用(yòng)的机器学习算法及其(qí)应(yīng)用场景,通过本篇文章大家可以对机器学习的常用算法有个常(cháng)识性(xìng)的认(rèn)识。
一(yī)、监督(dū)学习
(1)支(zhī)持向(xiàng)量机(Support Vector Machine,SVM):是一类按监督学习方(fāng)式对数据进行(háng)二元分(fèn)类(lèi)的广义线性分类器,其决策边(biān)界是对学习(xí)样本求解的最大边(biān)距超平面(miàn)。例如,在(zài)纸上有两类线性可分的点,支持向量机会寻(xún)找一条(tiáo)直线将这两(liǎng)类点(diǎn)区分开来,并且与这些点的距离都尽(jìn)可能远(yuǎn)。
优点:泛化错误(wù)率低(dī),结(jié)果易解释。
缺点:对大规模训(xùn)练样(yàng)本难以实施,解(jiě)决多(duō)分类问题存在困难,对参数调节和核(hé)函数(shù)的选(xuǎn)择(zé)敏感。
应(yīng)用场景(jǐng):文本分类、人(rén)像识别、医学诊断等。
(2)决策树(Decision Tree):是一个(gè)预测模型,代(dài)表的(de)是(shì)对象属性与对象值之间的一(yī)种(zhǒng)映射关系。下图是(shì)如何(hé)在决策树中建模的简(jiǎn)单示例:
优点:易于(yú)理(lǐ)解和解(jiě)释(shì),可以(yǐ)可视化分析,容易提取出规(guī)则;能(néng)够处(chù)理不相关的特征。
缺点:对缺失(shī)数(shù)据处(chù)理比较困难。
应用场景:在决(jué)策过程应(yīng)用较多(duō)。
(3)朴素贝叶斯分类(Naive Bayesian classification):对(duì)于给出的待分类项,求解此项出现(xiàn)的(de)条件下各个类别(bié)出(chū)现的概(gài)率,哪个最大,就认为此待分(fèn)类属(shǔ)于哪个类别(bié)。贝(bèi)叶斯公式为(wéi):p(A|B)= p(B|A)*p(A/p(B),其中P(A|B)表示后验概率,P(B|A)是似然值,P(A)是类别的先验概率,P(B)代表预(yù)测器的(de)先验概率(lǜ)。
优(yōu)点:在数据较少(shǎo)的(de)情况(kuàng)下仍然有效(xiào),可以处理多类别问题。
缺点(diǎn):对输入数据的准备方式较(jiào)为敏感。
应用场景:文本分(fèn)类、人脸识(shí)别(bié)、欺诈检测(cè)。
(4)k-近邻算法(fǎ)(K-Nearest Neighbor,KNN):是一种基于实例的学(xué)习(xí),采用(yòng)测量不同(tóng)特征(zhēng)值之间的(de)距离方法进行分类。其基(jī)本思路(lù)是:给(gěi)定一个训练(liàn)样本集,然后输入没有标签的新(xīn)数据,将新数据的(de)每个特征(zhēng)与样本集中数据对(duì)应的(de)特征(zhēng)进(jìn)行比(bǐ)较,找到最(zuì)邻近的k个(通常是(shì)不大于20的整(zhěng)数)实例,这k个实(shí)例的多数属于某个类,就把该输入实例分类(lèi)到这(zhè)个类中。
优点:简单(dān)、易于(yú)理解、易于(yú)实现,无需(xū)估计参数(shù)。此外,与(yǔ)朴(pǔ)素贝叶斯(sī)之类的算法比,无数据输入假定、准确度高、对异(yì)常数据(jù)值不(bú)敏感。
缺点:对于训练数据(jù)依赖程(chéng)度比(bǐ)较大,并(bìng)且(qiě)缺少训练阶段,无法应对多样本。
应用场(chǎng)景:字符识别(bié)、文本(běn)分类、图像识(shí)别(bié)等领域(yù)。
二、非监督学习(xí)
(1)主成分分析(Principal Component Analysis,PCA):是一种统计方法。其主要思(sī)想是将(jiāng)n维特征映射到k维(wéi)上,这k维是全新的正交(jiāo)特征也被称为(wéi)主(zhǔ)成分,是在原有n维特征的基础上重新(xīn)构造出(chū)来(lái)的k维特征。
优点:降低数(shù)据的复杂性,识别最重要的多个特征。
缺点:主(zhǔ)成分(fèn)各个特征维度(dù)的含义具有一定(dìng)的(de)模糊性,不(bú)如原始样本特(tè)征的(de)解释性(xìng)强(qiáng);有可(kě)能损(sǔn)失有用的信息。
应用场(chǎng)景(jǐng):语音、图像(xiàng)、通(tōng)信的分析(xī)处理。
(2)奇异值分解(jiě)(Singular Value Decomposition,SVD):可以将一个比较复杂的(de)矩阵用更小更简单(dān)的(de)几个子矩阵的(de)相乘来表示,这些小(xiǎo)矩阵描述的(de)是矩阵的重要的特(tè)性。
优点(diǎn):简(jiǎn)化(huà)数据,去除噪声点(diǎn),提高算法的结果(guǒ)。
缺点(diǎn):数据的转换可能难以理解(jiě)。
应用场(chǎng)景:推荐(jiàn)系统、图片压(yā)缩等。
(3)K-均值聚类(K-Means):是一种迭代求(qiú)解的聚(jù)类分析算法,采用距离作为相(xiàng)似(sì)性指标(biāo)。其工作(zuò)流程是随机确定(dìng)K个对象作为初始的聚类(lèi)中心,然后计算每个对象与各个种子聚类中心之(zhī)间的(de)距离,把每个对象(xiàng)分配给距离它最(zuì)近的聚类中心。
优(yōu)点:算法简单(dān)容易实(shí)现。
缺点:可能收敛到局部最小值(zhí),在(zài)大规模数据集上收敛(liǎn)较(jiào)慢。
应用场景(jǐng):图像(xiàng)处理、数据分析以及市场研究等(děng)。
三、强化学习
Q-learning:是一个基(jī)于值(zhí)的(de)强化学(xué)习(xí)算法,它根据动作(zuò)值函数评(píng)估应该选(xuǎn)择哪(nǎ)个动(dòng)作,这个函(hán)数决定了处于某一个(gè)特定(dìng)状态以及在(zài)该(gāi)状态下采取特定动作的奖(jiǎng)励期望值。
优(yōu)点:可以(yǐ)接收(shōu)更广的数(shù)据范围。
缺(quē)点:缺乏通用性。
应用场景:游戏(xì)开发。
以上(shàng)就(jiù)是文章的(de)全部(bù)内容,相信大家对常用的机器(qì)学习(xí)算(suàn)法应该有了大致的了(le)解。
现如今,我们越(yuè)来越多(duō)地(dì)看到机(jī)器学习(xí)算法为人类带来(lái)的实际价值,如它们提供(gòng)了(le)关键(jiàn)的洞察(chá)力和信息(xī)来(lái)报(bào)告战略决策(cè)。可以肯定的是(shì),随着机(jī)器学(xué)习越来越流行,未(wèi)来还将出现越来越多能很好地(dì)处理任务的算法(fǎ)。