2018-12-21 22:00
機(jī)器學(xué)習(xí)(Machine Learning),人工智能的核心,是使計(jì)算機(jī)具有智能的根本途徑,其應(yīng)用遍及人工智能的各個(gè)領(lǐng)域,主要使用歸納、綜合而不是演繹的方法研究計(jì)算機(jī)怎樣模擬或?qū)崿F(xiàn)人類(lèi)的學(xué)習(xí)行為,以獲取新的知識(shí)或技能,重新組織已有的知識(shí)結(jié)構(gòu)使之不斷改善自身的性能。機(jī)器學(xué)習(xí)是一門(mén)多領(lǐng)域的交叉學(xué)科,涉及到概率論、統(tǒng)計(jì)學(xué)、逼近論、凸分析、算法復(fù)雜度理論和計(jì)算機(jī)科學(xué)等諸多學(xué)科。
機(jī)器學(xué)習(xí)(摘自互聯(lián)網(wǎng))
機(jī)器學(xué)習(xí)計(jì)算(Machine Learning Computing)主要設(shè)計(jì)和分析一些讓計(jì)算機(jī)可以自動(dòng)“學(xué)習(xí)”的算法,是一類(lèi)從數(shù)據(jù)中自動(dòng)分析獲得規(guī)律、利用規(guī)律,對(duì)未來(lái)數(shù)據(jù)進(jìn)行分類(lèi)、聚類(lèi)和預(yù)測(cè)等的一類(lèi)算法。因?yàn)闄C(jī)器學(xué)習(xí)計(jì)算中涉及了大量的統(tǒng)計(jì)學(xué)理論,機(jī)器學(xué)習(xí)與統(tǒng)計(jì)推斷的聯(lián)系尤為密切,也被稱(chēng)為統(tǒng)計(jì)學(xué)習(xí)理論。算法設(shè)計(jì)方面,機(jī)器學(xué)習(xí)計(jì)算關(guān)注可以實(shí)現(xiàn)的、行之有效的學(xué)習(xí)算法,很多推論問(wèn)題具有無(wú)程序可循的難度,所以部分的機(jī)器學(xué)習(xí)研究是開(kāi)發(fā)簡(jiǎn)單、處理容易的近似算法。
機(jī)器學(xué)習(xí)已經(jīng)得到了十分廣泛的應(yīng)用,如數(shù)據(jù)挖掘、計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理、生物特征識(shí)別、搜索引擎、醫(yī)學(xué)診斷、檢測(cè)信用卡、證券市場(chǎng)分析、DNA序列測(cè)序、語(yǔ)音和手寫(xiě)識(shí)別、戰(zhàn)略游戲和機(jī)器人運(yùn)用等。
從更廣泛的意義上來(lái)看,機(jī)器學(xué)習(xí)是人工智能的一個(gè)子集。人工智能旨在使計(jì)算機(jī)更加智能化,而機(jī)器學(xué)習(xí)已經(jīng)證明如何做到這一點(diǎn)。簡(jiǎn)而言之,機(jī)器學(xué)習(xí)是人工智能的應(yīng)用,通過(guò)應(yīng)用從數(shù)據(jù)中反復(fù)學(xué)習(xí)得到算法,可以改進(jìn)計(jì)算機(jī)的功能,而無(wú)需進(jìn)行明確的編程。
在給出機(jī)器學(xué)習(xí)計(jì)算各種算法之前,最好是先研究一下什么是機(jī)器學(xué)習(xí)和如何對(duì)機(jī)器學(xué)習(xí)進(jìn)行分類(lèi),才能更好的理解和掌握一些具體的機(jī)器學(xué)習(xí)算法并將其用于實(shí)際問(wèn)題的計(jì)算和處理。
學(xué)習(xí)是人類(lèi)具有的一種重要智能行為,但究竟什么是學(xué)習(xí),長(zhǎng)期以來(lái)卻眾說(shuō)紛紜。社會(huì)學(xué)家、邏輯學(xué)家和心理學(xué)家都各有自己不同的看法和說(shuō)法。比如,有人定義機(jī)器學(xué)習(xí)是一門(mén)人工智能的科學(xué),該領(lǐng)域的主要研究對(duì)象是人工智能,特別是如何從經(jīng)驗(yàn)學(xué)習(xí)中改善具體算法的性能,也有人認(rèn)為機(jī)器學(xué)習(xí)是對(duì)能通過(guò)經(jīng)驗(yàn)自動(dòng)改進(jìn)計(jì)算機(jī)算法的研究,還有人認(rèn)為機(jī)器學(xué)習(xí)是用數(shù)據(jù)或以往的經(jīng)驗(yàn),以此優(yōu)化計(jì)算機(jī)程序的性能標(biāo)準(zhǔn)等等。盡管如此,為了便于進(jìn)行討論和推進(jìn)機(jī)器學(xué)習(xí)學(xué)科的進(jìn)展,有必要對(duì)機(jī)器學(xué)習(xí)給出定義,即使這種定義是不完全、不完整和不充分的并存在諸多爭(zhēng)議的。
顧名思義,機(jī)器學(xué)習(xí)是研究如何使用機(jī)器來(lái)模擬人類(lèi)學(xué)習(xí)活動(dòng)的一門(mén)學(xué)科。稍為嚴(yán)格的提法是:機(jī)器學(xué)習(xí)是一門(mén)研究機(jī)器獲取新知識(shí)、新技能并識(shí)別現(xiàn)有知識(shí)的學(xué)問(wèn)。這里所說(shuō)的“機(jī)器”,當(dāng)然指的是計(jì)算機(jī);現(xiàn)在是電子計(jì)算機(jī),將來(lái)還可能是中子計(jì)算機(jī)、光子計(jì)算機(jī)或神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)。
計(jì)算機(jī)能否象人類(lèi)一樣能具有學(xué)習(xí)的能力,特別是機(jī)器的學(xué)習(xí)能力是否能超過(guò)人類(lèi),確有許多不同的想法和看法,爭(zhēng)議頗多。持否定意見(jiàn)人的一個(gè)主要論據(jù)是:機(jī)器是人造的,其性能和動(dòng)作完全是由設(shè)計(jì)者規(guī)定的,因此無(wú)論如何其能力也不會(huì)超過(guò)設(shè)計(jì)者本人。這種意見(jiàn)對(duì)不具備學(xué)習(xí)能力的計(jì)算機(jī)來(lái)說(shuō)的確是對(duì)的,可是對(duì)具備了學(xué)習(xí)能力的計(jì)算機(jī)就值得考慮了,因?yàn)檫@種計(jì)算機(jī)的能力通過(guò)學(xué)習(xí)和實(shí)際應(yīng)用會(huì)不斷提高和增強(qiáng),過(guò)了一段時(shí)間之后,設(shè)計(jì)者本人也不知它的能力達(dá)到了什么水平、是否超過(guò)了自己。
對(duì)機(jī)器學(xué)習(xí)可按照不同的標(biāo)準(zhǔn)和方法進(jìn)行分類(lèi),下面簡(jiǎn)單介紹兩種常見(jiàn)的分類(lèi)方法。
(1)基于學(xué)習(xí)策略的分類(lèi) 學(xué)習(xí)策略是指學(xué)習(xí)過(guò)程中系統(tǒng)所采用的推理策略。一個(gè)學(xué)習(xí)系統(tǒng)總是由學(xué)習(xí)和環(huán)境兩部分組成。由環(huán)境(如書(shū)本或教師)提供信息,學(xué)習(xí)部分則實(shí)現(xiàn)信息轉(zhuǎn)換,用能夠理解的形式記憶下來(lái),并從中獲取有用的信息。學(xué)習(xí)策略的分類(lèi)標(biāo)準(zhǔn)就是根據(jù)學(xué)生實(shí)現(xiàn)信息轉(zhuǎn)換所需的推理多少和難易程度來(lái)分類(lèi)的,依照從簡(jiǎn)到繁、從少到多的次序分為以下六種基本類(lèi)型:
1)機(jī)械學(xué)習(xí) 學(xué)習(xí)者無(wú)需任何推理或其它的知識(shí)轉(zhuǎn)換,直接吸取環(huán)境所提供的信息,主要考慮如何索引存貯知識(shí)并加以利用。系統(tǒng)的學(xué)習(xí)方法是直接通過(guò)事先編好、構(gòu)造好的程序來(lái)學(xué)習(xí),學(xué)習(xí)者不作任何工作,或者是通過(guò)直接接收既定的事實(shí)和數(shù)據(jù)進(jìn)行學(xué)習(xí),對(duì)輸入信息不作任何的推理。
2)示教學(xué)習(xí) 學(xué)生從環(huán)境中獲取信息,把知識(shí)轉(zhuǎn)換成內(nèi)部可使用的表示形式,并將新的知識(shí)和原有知識(shí)有機(jī)地結(jié)合為一體。所以要求學(xué)生有一定程度的推理能力,但環(huán)境仍要做大量的工作。教師以某種形式提出和組織知識(shí),以使學(xué)生擁有的知識(shí)可以不斷的增加。這種學(xué)習(xí)方法和人類(lèi)社會(huì)的學(xué)校教學(xué)方式有點(diǎn)相似,學(xué)習(xí)的任務(wù)就是建立一個(gè)系統(tǒng),使它能接受教導(dǎo)和建議,并有效地存貯和應(yīng)用學(xué)到的知識(shí)。目前,不少專(zhuān)家系統(tǒng)在建立知識(shí)庫(kù)時(shí)就使用這種方法以實(shí)現(xiàn)知識(shí)獲取。
3)演繹學(xué)習(xí) 學(xué)生所用的推理形式為演繹推理,從公理出發(fā),經(jīng)過(guò)邏輯變換推導(dǎo)出結(jié)論。這種推理是”保真”變換和特化的過(guò)程,使學(xué)生在推理過(guò)程中可以獲取有用的知識(shí)。這種學(xué)習(xí)方法包含宏操作學(xué)習(xí)、知識(shí)編輯和組塊技術(shù)。
4)類(lèi)比學(xué)習(xí) 利用源域和目標(biāo)域二個(gè)不同領(lǐng)域中的知識(shí)相似性,通過(guò)類(lèi)比從源域的知識(shí)推導(dǎo)出目標(biāo)域的相應(yīng)知識(shí),從而實(shí)現(xiàn)學(xué)習(xí)。類(lèi)比學(xué)習(xí)系統(tǒng)可以使一個(gè)已有的計(jì)算機(jī)應(yīng)用系統(tǒng)轉(zhuǎn)變?yōu)檫m應(yīng)于新的領(lǐng)域,來(lái)完成原先沒(méi)有設(shè)計(jì)出來(lái)的類(lèi)似功能。類(lèi)比學(xué)習(xí)需要比上述三種學(xué)習(xí)方式更多的推理,一般要求先從知識(shí)源中檢索出可用的知識(shí),再將其轉(zhuǎn)換成新的形式,用到新的狀態(tài)中去。
5)解釋學(xué)習(xí) 學(xué)生根據(jù)教師提供的目標(biāo)概念、該概念的一個(gè)例子、領(lǐng)域理論及可操作準(zhǔn)則,首先構(gòu)造一個(gè)解釋來(lái)說(shuō)明為什么該例子滿足目標(biāo)概念,然后將解釋推廣為目標(biāo)概念的一個(gè)滿足可操作準(zhǔn)則的充分條件。
6)歸納學(xué)習(xí) 歸納學(xué)習(xí)是由教師或環(huán)境提供某些概念的一些實(shí)例或反例,讓學(xué)生通過(guò)歸納推理得出該概念的一般描述。這種學(xué)習(xí)的推理工作量遠(yuǎn)多于示教學(xué)習(xí)和演繹學(xué)習(xí),因?yàn)榄h(huán)境并不提供一般性概念描述。歸納學(xué)習(xí)是最基本的、發(fā)展較為成熟的一類(lèi)學(xué)習(xí)方法,在人工智能領(lǐng)域中已經(jīng)得到廣泛的研究和應(yīng)用。
(2)基于學(xué)習(xí)方式的分類(lèi) 機(jī)器學(xué)習(xí)算法按照學(xué)習(xí)方式的不同可以分為五種類(lèi)型:有監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí)和深度學(xué)習(xí)。
1)有監(jiān)督學(xué)習(xí) 輸入的數(shù)據(jù)為訓(xùn)練數(shù)據(jù),并且每一個(gè)數(shù)據(jù)都會(huì)帶有標(biāo)簽或類(lèi)別。通過(guò)訓(xùn)練過(guò)程建模,模型需要作出預(yù)測(cè),如果預(yù)測(cè)出錯(cuò)會(huì)被修正,直到模型輸出準(zhǔn)確的訓(xùn)練結(jié)果,訓(xùn)練過(guò)程會(huì)一直持續(xù)。常用于解決的問(wèn)題有分類(lèi)和回歸,常用的算法包括分類(lèi)、邏輯回歸和BP神經(jīng)網(wǎng)絡(luò)。
2)無(wú)監(jiān)督學(xué)習(xí) 輸入數(shù)據(jù)沒(méi)有標(biāo)簽或類(lèi)別,輸出沒(méi)有標(biāo)準(zhǔn)答案,就是一系列的樣本。無(wú)監(jiān)督學(xué)習(xí)通過(guò)推斷輸入數(shù)據(jù)中的結(jié)構(gòu)建模,可能是提取一般規(guī)律,可以是通過(guò)數(shù)學(xué)處理系統(tǒng)以減少冗雜,或者根據(jù)相似性組織數(shù)據(jù)。常用于解決的問(wèn)題有聚類(lèi),降維和關(guān)聯(lián)規(guī)則的學(xué)習(xí)。常用的算法包括了Apriori算法和K均值算法等。
3)半監(jiān)督學(xué)習(xí) 半監(jiān)督學(xué)習(xí)可以看做無(wú)監(jiān)督學(xué)習(xí)的延伸,介于有監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)二者之間,其輸入數(shù)據(jù)包含標(biāo)簽和不帶標(biāo)簽的樣本。常用于解決的問(wèn)題是分類(lèi)和回歸,常用的算法是對(duì)所有的無(wú)標(biāo)簽的數(shù)據(jù)建模進(jìn)行的預(yù)測(cè)算法。
4)強(qiáng)化學(xué)習(xí) 強(qiáng)化學(xué)習(xí)是一個(gè)連續(xù)決策的過(guò)程,每次預(yù)測(cè)都有一定形式的反饋,但是沒(méi)有精確的標(biāo)簽或者錯(cuò)誤信息。
5) 深度學(xué)習(xí) 深度學(xué)習(xí)并不是一種獨(dú)立的學(xué)習(xí)方法,其本身也會(huì)用到有監(jiān)督和無(wú)監(jiān)督的學(xué)習(xí),由于近幾年該領(lǐng)域發(fā)展迅猛,一些特有的學(xué)習(xí)手段和算法相繼提出,因此將其看作一種單獨(dú)的學(xué)習(xí)方法。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)研究中的一個(gè)新的領(lǐng)域,目的在于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),模仿人腦的機(jī)制來(lái)解釋數(shù)據(jù),如圖像、聲音和文本等多媒體數(shù)據(jù)。深度學(xué)習(xí)是無(wú)監(jiān)督學(xué)習(xí)的一種,其概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,含有多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過(guò)組合低層特征形成更加抽象的高層表示其屬性類(lèi)別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征?;谏钚哦染W(wǎng)絡(luò)提出非監(jiān)督逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來(lái)了希望,隨后提出多層自動(dòng)編碼器深層結(jié)構(gòu)。此外提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個(gè)真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對(duì)關(guān)系減少參數(shù)數(shù)目以提高訓(xùn)練性能。
目前,機(jī)器學(xué)習(xí)領(lǐng)域的研究工作主要圍繞在以下三個(gè)方面:
1)任務(wù)研析 對(duì)一組預(yù)定任務(wù)的學(xué)習(xí)系統(tǒng)進(jìn)行研究,改進(jìn)執(zhí)行性能并提高其有效性;
2)模型研發(fā) 研究人類(lèi)學(xué)習(xí)過(guò)程并進(jìn)行計(jì)算機(jī)模擬和分析,改進(jìn)現(xiàn)有模型,提出新的更加有效的模型;
3)理論分析 從理論上探索各種可能的機(jī)器學(xué)習(xí)方法,給出獨(dú)立于應(yīng)用領(lǐng)域的高效算法。
機(jī)器學(xué)習(xí)算法的功能可粗略的分為四大類(lèi),即分類(lèi)、聚類(lèi)、預(yù)測(cè)和降維,可用的機(jī)器學(xué)習(xí)算法不下數(shù)百種,包括回歸分析、判別分析、聚類(lèi)分析、因子分析和主成分分析、貝葉斯分類(lèi)、決策樹(shù)、支持向量機(jī)、EM、Adaboost、人工神經(jīng)網(wǎng)絡(luò)及它們之間的一些集成算法等。其中的回歸分析、判別分析、聚類(lèi)分析等已在統(tǒng)計(jì)計(jì)算里進(jìn)行了介紹,神經(jīng)網(wǎng)絡(luò)計(jì)算也在上一篇文章中進(jìn)行了較多的討論,下面僅對(duì)機(jī)器學(xué)習(xí)中最常用的一些特有算法,如決策樹(shù)算法、支持向量機(jī)算法、樸素貝葉斯算法、最大期望算法、KNN算法和K均值算法等,進(jìn)行一些思考性、原理性的簡(jiǎn)單介紹。
1)決策樹(shù)(Decision Trees)算法
決策樹(shù)是一個(gè)預(yù)測(cè)模型,代表的是對(duì)象屬性與對(duì)象值之間的一種映射關(guān)系。樹(shù)中每個(gè)節(jié)點(diǎn)表示某個(gè)對(duì)象,而每個(gè)分叉路徑則代表的某個(gè)可能的屬性值,而每個(gè)葉結(jié)點(diǎn)則對(duì)應(yīng)從根節(jié)點(diǎn)到該葉節(jié)點(diǎn)所經(jīng)歷的路徑所表示的對(duì)象的值。決策樹(shù)僅有單一輸出,若想有多個(gè)輸出,可以建立獨(dú)立的決策樹(shù)以處理不同輸出。
一個(gè)決策樹(shù)包含三種類(lèi)型的節(jié)點(diǎn),即決策節(jié)點(diǎn),機(jī)會(huì)節(jié)點(diǎn)和終結(jié)點(diǎn)。這里,每個(gè)決策樹(shù)都表述了一種樹(shù)型結(jié)構(gòu),由它的分支來(lái)對(duì)該類(lèi)型的對(duì)象依靠屬性進(jìn)行分類(lèi)。每個(gè)決策樹(shù)可以依靠對(duì)源數(shù)據(jù)庫(kù)的分割進(jìn)行數(shù)據(jù)測(cè)試。這個(gè)過(guò)程可以遞歸式的對(duì)樹(shù)進(jìn)行修剪。當(dāng)不能再進(jìn)行分割或一個(gè)單獨(dú)的類(lèi)可以被應(yīng)用于某一分支時(shí),遞歸過(guò)程完成。
決策樹(shù)算法根據(jù)數(shù)據(jù)的屬性采用樹(shù)狀結(jié)構(gòu)建立決策模型,常常用來(lái)解決分類(lèi)和預(yù)測(cè)問(wèn)題。常見(jiàn)的算法有分類(lèi)及回歸樹(shù),ID3,C4.5,隨機(jī)森林,多元樣條回歸等實(shí)際可用的一些算法。
2)支持向量機(jī)(Support Vector Machine,SVM)算法
SVM是一種監(jiān)督式學(xué)習(xí)算法,廣泛用于統(tǒng)計(jì)分類(lèi)以及預(yù)測(cè)分析計(jì)算中。
SVM屬于一般化線性分類(lèi)器。這類(lèi)分類(lèi)器的特點(diǎn)是他們能夠同時(shí)最小化經(jīng)驗(yàn)誤差與最大化幾何邊緣區(qū),因此支持向量機(jī)也被稱(chēng)為最大邊緣區(qū)分類(lèi)器。
SVM的主要思想可以概括為兩點(diǎn):① 針對(duì)線性可分情況進(jìn)行分析,對(duì)于線性不可分的情況,通過(guò)使用非線性映射算法將低維輸入空間線性不可分的樣本轉(zhuǎn)化為高維特征空間使其線性可分,從而使得高維特征空間采用線性算法對(duì)樣本的非線性特征進(jìn)行線性分析成為可能;② 基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化理論,在特征空間中建構(gòu)最優(yōu)分割超平面,使得學(xué)習(xí)器得到全局最優(yōu)化,并且在整個(gè)樣本空間的期望風(fēng)險(xiǎn)以某個(gè)概率滿足一定的上界。
3)樸素貝葉斯分類(lèi)(Na?ve Bayesian classification)算法
樸素貝葉斯是一種基于貝葉斯定理與特征條件獨(dú)立假設(shè)的概率分類(lèi)算法,通過(guò)對(duì)象的先驗(yàn)概率,利用貝葉斯公式
其中P(A|B)是后驗(yàn)概率,P(B|A)是似然概率,P(A)是先驗(yàn)概率,P(B)是預(yù)測(cè)先驗(yàn)概率。
根據(jù)上述公式計(jì)算出其后驗(yàn)概率,即該對(duì)象屬于某一類(lèi)的概率,選擇具有最大后驗(yàn)概率的類(lèi)別作為該對(duì)象所屬的類(lèi)別。樸素貝葉斯算法簡(jiǎn)單,快速,具有較小的出錯(cuò)率,對(duì)結(jié)果解釋容易理解。
4)最大期望(Expectation–Maximization,EM)算法
在統(tǒng)計(jì)計(jì)算中,最大期望算法是在概率模型中尋找參數(shù)最大似然估計(jì)的算法,其中概率模型依賴(lài)于無(wú)法觀測(cè)的隱藏變量,經(jīng)常用在機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺(jué)的數(shù)據(jù)集聚領(lǐng)域。最大期望算法經(jīng)過(guò)兩個(gè)步驟交替進(jìn)行計(jì)算,第一步是計(jì)算期望(E),也就是將隱藏變量象能夠觀測(cè)到的一樣包含在內(nèi)從而計(jì)算最大似然的期望值;第二步是最大化(M),也就是最大化在E步上找到的最大似然的期望值從而計(jì)算參數(shù)的最大似然估計(jì)。M步上找到的參數(shù)然后用于另外一個(gè)E步計(jì)算,這個(gè)過(guò)程不斷交替進(jìn)行,進(jìn)行改進(jìn),以尋求漸近最優(yōu)結(jié)果。
5)K最近鄰(k-Nearest Neighbor,KNN)分類(lèi)算法
KNN分類(lèi)算法,是一個(gè)理論上比較成熟的方法,也是最簡(jiǎn)單的機(jī)器學(xué)習(xí)算法之一。該方法的思路是:如果一個(gè)樣本在特征空間中的k個(gè)最相似的樣本中的大多數(shù)屬于某一個(gè)類(lèi)別,則該樣本也屬于這個(gè)類(lèi)別。KNN算法中,所選擇的鄰居都是已經(jīng)正確分類(lèi)的對(duì)象。該方法在定類(lèi)決策上只依據(jù)最鄰近的一個(gè)或者幾個(gè)樣本的類(lèi)別來(lái)決定待分樣本所屬的類(lèi)別。
KNN方法雖然從原理上依賴(lài)于極限定理,但在類(lèi)別決策時(shí),只與極少量的相鄰樣本有關(guān)。由于KNN方法主要靠周?chē)邢薜泥徑臉颖?,而不是靠判別類(lèi)域的方法來(lái)確定所屬類(lèi)別的,因此對(duì)于類(lèi)域的交叉或重疊較多的待分樣本集來(lái)說(shuō),KNN方法較其他方法更為適合。
KNN算法不僅可以用于分類(lèi),還可以用于回歸。通過(guò)找出一個(gè)樣本的k個(gè)最近鄰居,將這些鄰居的屬性的平均值賦給該樣本,就可以得到該樣本的屬性。
K-近鄰算法的思想如下:首先,計(jì)算新樣本與訓(xùn)練樣本之間的距離,找到距離最近的K個(gè)鄰居;然后,根據(jù)這些鄰居所屬的類(lèi)別來(lái)判定新樣本的類(lèi)別,如果它們都屬于同一個(gè)類(lèi)別,那么新樣本也屬于這個(gè)類(lèi);否則,對(duì)每個(gè)后選類(lèi)別進(jìn)行評(píng)分,按照某種規(guī)則確定新樣本的類(lèi)別。
6)K-均值(K-means)算法
K-均值算法是輸入聚類(lèi)個(gè)數(shù)k,以及包含 n個(gè)數(shù)據(jù)對(duì)象的數(shù)據(jù)庫(kù),輸出滿足方差最小標(biāo)準(zhǔn) k(k
k-means 算法的工作過(guò)程說(shuō)明如下:首先從n個(gè)數(shù)據(jù)對(duì)象任意選擇 k 個(gè)對(duì)象作為初始聚類(lèi)中心,而對(duì)于所剩下其它對(duì)象,則根據(jù)它們與這些聚類(lèi)中心的相似度(距離),分別將它們分配給與其最相似的聚類(lèi),然后再計(jì)算每個(gè)所獲新聚類(lèi)的聚類(lèi)中心(該聚類(lèi)中所有對(duì)象的均值);不斷重復(fù)這一過(guò)程直到標(biāo)準(zhǔn)測(cè)度函數(shù)開(kāi)始收斂為止。一般都采用均方差作為標(biāo)準(zhǔn)測(cè)度函數(shù). k個(gè)聚類(lèi)具有以下特點(diǎn):各聚類(lèi)本身盡可能的緊湊,而各聚類(lèi)之間盡可能的分開(kāi)。
從算法的表現(xiàn)上來(lái)說(shuō),它并不保證一定得到全局最優(yōu)解,最終解的質(zhì)量很大程度上取決于初始化的分組。由于該算法的速度快,因此常用的一種方法是多次運(yùn)行k平均算法,選擇最優(yōu)解。
機(jī)器學(xué)習(xí)是繼神經(jīng)網(wǎng)絡(luò)系統(tǒng)之后人工智能應(yīng)用的又一重要研究領(lǐng)域,也是人工智能和神經(jīng)網(wǎng)絡(luò)計(jì)算的核心研究課題。對(duì)機(jī)器學(xué)習(xí)的研究及其進(jìn)展,必將促使人工智能和整個(gè)科學(xué)技術(shù)的進(jìn)一步發(fā)展。
聯(lián)系客服