人工智能基礎(chǔ)通識(shí)教程第7章 機(jī)器學(xué)習(xí)及其應(yīng)用_第1頁(yè)
人工智能基礎(chǔ)通識(shí)教程第7章 機(jī)器學(xué)習(xí)及其應(yīng)用_第2頁(yè)
人工智能基礎(chǔ)通識(shí)教程第7章 機(jī)器學(xué)習(xí)及其應(yīng)用_第3頁(yè)
人工智能基礎(chǔ)通識(shí)教程第7章 機(jī)器學(xué)習(xí)及其應(yīng)用_第4頁(yè)
人工智能基礎(chǔ)通識(shí)教程第7章 機(jī)器學(xué)習(xí)及其應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

人工智能基礎(chǔ)通識(shí)教程(第7章機(jī)器學(xué)習(xí)及其應(yīng)用)配套電子工業(yè)出版社《人工智能基礎(chǔ)通識(shí)教程》教材本章目錄7.1機(jī)器學(xué)習(xí)概念與發(fā)展歷程7.2機(jī)器學(xué)習(xí)的分類7.3機(jī)器學(xué)習(xí)的模型訓(xùn)練7.4機(jī)器學(xué)習(xí)的典型應(yīng)用7.5聯(lián)邦學(xué)習(xí)及其應(yīng)用桂小林2計(jì)算+人工智能第7章機(jī)器學(xué)習(xí)及其應(yīng)用本章講解機(jī)器學(xué)習(xí)及其應(yīng)用,主要包括機(jī)器學(xué)習(xí)的定義和發(fā)展歷程、機(jī)器學(xué)習(xí)的分類、機(jī)器學(xué)習(xí)的模型訓(xùn)練過(guò)程、機(jī)器學(xué)習(xí)在二分類和多分類中的典型應(yīng)用、聯(lián)邦學(xué)習(xí)方法及其應(yīng)用等。桂小林37.1機(jī)器學(xué)習(xí)概念與發(fā)展歷程7.1.1機(jī)器學(xué)習(xí)的定義機(jī)器學(xué)習(xí)(MachineLearning)是人工智能的一個(gè)分支領(lǐng)域,它致力于研究如何通過(guò)計(jì)算機(jī)系統(tǒng)的學(xué)習(xí)和自動(dòng)化推理,使計(jì)算機(jī)能夠從數(shù)據(jù)中獲取知識(shí)和經(jīng)驗(yàn),并利用這些知識(shí)和經(jīng)驗(yàn)進(jìn)行模式識(shí)別、預(yù)測(cè)和決策。機(jī)器學(xué)習(xí)是通過(guò)一些讓計(jì)算機(jī)可以自動(dòng)“學(xué)習(xí)”的算法,并從數(shù)據(jù)中分析獲得規(guī)律,然后利用這些規(guī)律對(duì)新樣本進(jìn)行預(yù)測(cè)或決策的過(guò)程。其核心思想是使用數(shù)據(jù)來(lái)訓(xùn)練計(jì)算機(jī)算法,使其能夠自動(dòng)地從數(shù)據(jù)中學(xué)習(xí)并改進(jìn)自己的性能,而無(wú)需明確地編程。桂小林47.1.1機(jī)器學(xué)習(xí)的定義機(jī)器學(xué)習(xí)的主要特點(diǎn)包括:(1)數(shù)據(jù)驅(qū)動(dòng):機(jī)器學(xué)習(xí)算法通常依賴于大量的數(shù)據(jù)來(lái)訓(xùn)練模型,通過(guò)數(shù)據(jù)的模式識(shí)別和統(tǒng)計(jì)分析來(lái)實(shí)現(xiàn)智能行為。(2)模型多樣性:機(jī)器學(xué)習(xí)可以采用多種模型,如線性回歸、決策樹(shù)、支持向量機(jī)等,這些模型的結(jié)構(gòu)相對(duì)簡(jiǎn)單,易于理解和實(shí)現(xiàn)。(3)應(yīng)用廣泛:機(jī)器學(xué)習(xí)更多地應(yīng)用于那些需要從數(shù)據(jù)中學(xué)習(xí)和做出預(yù)測(cè)的場(chǎng)景,如圖像識(shí)別、語(yǔ)音識(shí)別、推薦系統(tǒng)等。桂小林57.1.2深度學(xué)習(xí)與機(jī)器學(xué)習(xí)的關(guān)系深度學(xué)習(xí)(DeepLearning)是機(jī)器學(xué)習(xí)的一個(gè)分支,它使用多層人工神經(jīng)網(wǎng)絡(luò)來(lái)精準(zhǔn)完成物體檢測(cè)、語(yǔ)音識(shí)別、語(yǔ)言翻譯等任務(wù)。深度學(xué)習(xí)的“深度”一詞表示用于識(shí)別數(shù)據(jù)模式的多層算法或神經(jīng)網(wǎng)絡(luò)。這些高度靈活的架構(gòu)可以直接從原始數(shù)據(jù)中學(xué)習(xí),類似于人腦的運(yùn)作方式。隨著獲取更多數(shù)據(jù),其預(yù)測(cè)準(zhǔn)確度也將隨之提升。深度學(xué)習(xí)算法有許多不同的變體,如人工神經(jīng)網(wǎng)絡(luò)(包括前饋人工神經(jīng)網(wǎng)絡(luò)和多層感知器MLP)、卷積神經(jīng)網(wǎng)絡(luò)(CNN)等深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種特殊形式,可以將其比作“子集”與“母集”的關(guān)系。桂小林67.1.3機(jī)器學(xué)習(xí)的發(fā)展歷程1、早期思想與理論基礎(chǔ)(1940s~1960s)圖靈測(cè)試:英國(guó)數(shù)學(xué)家和計(jì)算機(jī)科學(xué)家阿蘭·圖靈(AlanTuring)提出了圖靈測(cè)試,用來(lái)評(píng)估機(jī)器是否具有智能。這可以被看作是對(duì)機(jī)器學(xué)習(xí)和人工智能的早期思考之一。感知器模型:弗蘭克·羅森布拉特(FrankRosenblatt)提出了感知器(Perceptron)算法,這是最早的神經(jīng)網(wǎng)絡(luò)模型之一。感知器可以解決線性可分問(wèn)題,但后來(lái)被證明不能解決所有問(wèn)題,比如XOR問(wèn)題(非線性問(wèn)題)。2、知識(shí)工程與符號(hào)主義(1960s~1980s)專家系統(tǒng):這一時(shí)期的研究主要集中在基于規(guī)則的專家系統(tǒng)上,這些系統(tǒng)依賴于由專家構(gòu)建的明確規(guī)則,而不是從數(shù)據(jù)中學(xué)習(xí)。這類系統(tǒng)被稱為符號(hào)主義AI。經(jīng)典算法:許多經(jīng)典的機(jī)器學(xué)習(xí)算法在這一階段被提出,包括K最近鄰算法(KNN)、決策樹(shù)等。雖然這些算法仍然是現(xiàn)代機(jī)器學(xué)習(xí)的基礎(chǔ),但當(dāng)時(shí)數(shù)據(jù)和計(jì)算資源的限制使其應(yīng)用范圍有限。3、統(tǒng)計(jì)學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)的突破(1980s~1990s)反向傳播算法:1986年,DavidRumelhart等人提出了反向傳播(Backpropagation)算法,解決了多層神經(jīng)網(wǎng)絡(luò)中參數(shù)更新的問(wèn)題,使得多層感知器模型(MLP)能夠有效訓(xùn)練。這是神經(jīng)網(wǎng)絡(luò)研究的一個(gè)重要突破。支持向量機(jī):VladimirVapnik和他的同事提出了支持向量機(jī)(SupportVectorMachine,SVM),通過(guò)找到最優(yōu)的超平面來(lái)將數(shù)據(jù)點(diǎn)進(jìn)行分類。貝葉斯網(wǎng)絡(luò):貝葉斯網(wǎng)絡(luò)是一種用于表示變量之間的概率關(guān)系的模型,廣泛用于推理和決策問(wèn)題,尤其適用于不確定性處理。桂小林77.1.3機(jī)器學(xué)習(xí)的發(fā)展歷程4、數(shù)據(jù)驅(qū)動(dòng)與集成學(xué)習(xí)的興起(2000s)數(shù)據(jù)驅(qū)動(dòng)學(xué)習(xí):物聯(lián)網(wǎng)導(dǎo)致數(shù)據(jù)量呈現(xiàn)指數(shù)級(jí)增長(zhǎng)。這為機(jī)器學(xué)習(xí)提供了前所未有的訓(xùn)練數(shù)據(jù)。集成學(xué)習(xí):集成學(xué)習(xí)方法(如隨機(jī)森林、AdaBoost)得到廣泛應(yīng)用。非監(jiān)督學(xué)習(xí)方法:降維和聚類等非監(jiān)督學(xué)習(xí)方法也得到了發(fā)展。例如,主成分分析(PCA)、K-means聚類等技術(shù)在數(shù)據(jù)分析和特征提取中被廣泛使用。5、深度學(xué)習(xí)的崛起(2010s)ImageNet競(jìng)賽:2012年,AlexKrizhevsky、IlyaSutskever和GeoffreyHinton的團(tuán)隊(duì)使用卷積神經(jīng)網(wǎng)絡(luò)(

CNN)贏得了ImageNet競(jìng)賽,展示了深度學(xué)習(xí)在圖像分類任務(wù)中的巨大潛力。遞歸神經(jīng)網(wǎng)絡(luò):遞歸神經(jīng)網(wǎng)絡(luò)(RNN)被廣泛用于處理序列數(shù)據(jù),如自然語(yǔ)言處理中的文本和語(yǔ)音數(shù)據(jù)。LSTM作為一種改進(jìn)的RNN,解決了長(zhǎng)期依賴問(wèn)題,在語(yǔ)言翻譯、語(yǔ)音識(shí)別等任務(wù)中取得了顯著成果。生成對(duì)抗網(wǎng)絡(luò):IanGoodfellow等人提出了生成對(duì)抗網(wǎng)絡(luò)(GAN),這是生成模型領(lǐng)域的一個(gè)重大突破。GAN通過(guò)生成器和判別器之間的對(duì)抗訓(xùn)練生成逼真的圖像、文本等。強(qiáng)化學(xué)習(xí):強(qiáng)化學(xué)習(xí)(ReinforcementLearning)在游戲AI中取得了突破性進(jìn)展,特別是DeepMind的AlphaGo在圍棋中擊敗了人類世界冠軍,標(biāo)志著AI在復(fù)雜策略問(wèn)題上的能力。桂小林87.2機(jī)器學(xué)習(xí)的分類機(jī)器學(xué)習(xí)可以大致分為監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)等類型。具體如圖7-1所示。(1)監(jiān)督學(xué)習(xí)(SupervisedLearning):使用帶有標(biāo)簽的訓(xùn)練數(shù)據(jù)來(lái)訓(xùn)練模型,以預(yù)測(cè)新數(shù)據(jù)的標(biāo)簽或目標(biāo)值。適用于分類和回歸任務(wù)。(2)無(wú)監(jiān)督學(xué)習(xí)(UnsupervisedLearning):在沒(méi)有標(biāo)簽的情況下,從數(shù)據(jù)中發(fā)現(xiàn)隱藏的結(jié)構(gòu)和模式。廣泛應(yīng)用于聚類分析、關(guān)聯(lián)規(guī)則學(xué)習(xí)和降維等技術(shù)。(3)強(qiáng)化學(xué)習(xí)(ReinforcementLearning):通過(guò)與環(huán)境的交互學(xué)習(xí),以最大化累積獎(jiǎng)勵(lì)。智能體根據(jù)當(dāng)前環(huán)境狀態(tài)選擇動(dòng)作,并根據(jù)收到的即時(shí)反饋調(diào)整其行為策略。桂小林97.2.1無(wú)監(jiān)督學(xué)習(xí)的概念與特征無(wú)監(jiān)督學(xué)習(xí)(UnsupervisedLearning)是機(jī)器學(xué)習(xí)領(lǐng)域中的一種重要方法。無(wú)監(jiān)督學(xué)習(xí)是指無(wú)須在已標(biāo)記數(shù)據(jù)上訓(xùn)練模型,從數(shù)據(jù)中提取意義的機(jī)器學(xué)習(xí)算法,主要用于解決模式識(shí)別中訓(xùn)練樣本類別未知的問(wèn)題。它通過(guò)使用未標(biāo)注的數(shù)據(jù)來(lái)訓(xùn)練模型,從數(shù)據(jù)中發(fā)現(xiàn)隱藏的模式和結(jié)構(gòu),而不依賴于預(yù)定義的標(biāo)簽或結(jié)果。桂小林107.2.1無(wú)監(jiān)督學(xué)習(xí)的概念與特征1、無(wú)監(jiān)督學(xué)習(xí)的主要特征1)數(shù)據(jù)無(wú)標(biāo)簽:無(wú)監(jiān)督學(xué)習(xí)處理的數(shù)據(jù)集是未經(jīng)標(biāo)注的,即沒(méi)有明確的標(biāo)簽或類別信息。2)探索性數(shù)據(jù)分析:無(wú)監(jiān)督學(xué)習(xí)的主要目標(biāo)是發(fā)現(xiàn)數(shù)據(jù)中的內(nèi)在結(jié)構(gòu)和規(guī)律,如聚類結(jié)構(gòu)、降維后的低維表示以及異常點(diǎn)等。這種方法在處理大量未標(biāo)注數(shù)據(jù)時(shí)顯得尤為重要。3)多任務(wù)學(xué)習(xí):無(wú)監(jiān)督學(xué)習(xí)廣泛應(yīng)用于數(shù)據(jù)探索、聚類、降維、特征學(xué)習(xí)、異常檢測(cè)以及關(guān)聯(lián)規(guī)則學(xué)習(xí)等多個(gè)任務(wù)中。4)靈活性高:無(wú)監(jiān)督學(xué)習(xí)能夠靈活應(yīng)用于各種問(wèn)題,不需要依賴外部標(biāo)簽信息,而是直接從數(shù)據(jù)本身出發(fā)進(jìn)行學(xué)習(xí)和分析。這使得它能夠適應(yīng)不同的數(shù)據(jù)集和問(wèn)題場(chǎng)景。5)結(jié)果難以解釋和評(píng)估:由于無(wú)監(jiān)督學(xué)習(xí)的結(jié)果往往是隱式的或不可直接量化的(如聚類結(jié)果),因此難以用傳統(tǒng)的性能指標(biāo)來(lái)評(píng)估其效果。模型發(fā)現(xiàn)的模式可能不易理解,需要專業(yè)知識(shí)和經(jīng)驗(yàn)來(lái)進(jìn)行解釋和評(píng)估。6)參數(shù)選擇對(duì)結(jié)果有重要影響:許多無(wú)監(jiān)督學(xué)習(xí)算法依賴于參數(shù)選擇(如簇的數(shù)量),參數(shù)的選擇會(huì)直接影響算法的輸出結(jié)果和性能。因此,在進(jìn)行無(wú)監(jiān)督學(xué)習(xí)時(shí),需要仔細(xì)考慮和選擇合適的參數(shù)。桂小林117.2.1無(wú)監(jiān)督學(xué)習(xí)的概念與特征2、無(wú)監(jiān)督學(xué)習(xí)的典型應(yīng)用1)聚類分析:通過(guò)聚類分析,無(wú)監(jiān)督學(xué)習(xí)能夠?qū)?shù)據(jù)集中的數(shù)據(jù)點(diǎn)分成不同的群組,使得同一群組內(nèi)的數(shù)據(jù)點(diǎn)具有較高的相似性,而不同群組間的數(shù)據(jù)點(diǎn)則具有較大的差異。這種聚類結(jié)果對(duì)于理解數(shù)據(jù)的分布和特性、發(fā)現(xiàn)數(shù)據(jù)中的潛在模式具有重要意義。2)異常檢測(cè):無(wú)監(jiān)督學(xué)習(xí)可以用于識(shí)別數(shù)據(jù)集中的異常點(diǎn)或離群點(diǎn),幫助用戶及時(shí)發(fā)現(xiàn)并處理數(shù)據(jù)中的異常情況。這對(duì)于保障數(shù)據(jù)質(zhì)量和安全性具有重要意義。3)關(guān)聯(lián)規(guī)則學(xué)習(xí):在關(guān)聯(lián)規(guī)則學(xué)習(xí)中,無(wú)監(jiān)督學(xué)習(xí)能夠發(fā)現(xiàn)數(shù)據(jù)中的頻繁項(xiàng)集和關(guān)聯(lián)規(guī)則,為數(shù)據(jù)挖掘提供有力支持。這有助于揭示數(shù)據(jù)之間的潛在聯(lián)系和規(guī)律。桂小林127.2.2無(wú)監(jiān)督學(xué)習(xí)算法無(wú)監(jiān)督學(xué)習(xí)算法主要包括聚類算法(如K-means、層次聚類和DBSCAN)、降維算法(如主成分分析法、獨(dú)立成分分析法等)、關(guān)聯(lián)規(guī)則挖掘算法(如Apriori和FP-Growth等)和異常檢測(cè)算法(支持向量機(jī)、孤立森林和局部離群因子法)等。聚類算法是一類無(wú)監(jiān)督學(xué)習(xí)算法,其主要目的是將數(shù)據(jù)集劃分為多個(gè)組或簇(clusters),使得同一個(gè)簇中的數(shù)據(jù)點(diǎn)彼此相似,而不同簇中的數(shù)據(jù)點(diǎn)差異較大。聚類算法通常不需要事先定義標(biāo)簽或類別,而是根據(jù)數(shù)據(jù)本身的特性進(jìn)行分組。典型的聚類算法包括:K-means聚類、DBSCAN聚類、譜聚類等。桂小林131、K-means聚類算法K-means算法是一種廣泛使用的聚類算法,其目標(biāo)是將數(shù)據(jù)集劃分為K個(gè)簇,使得簇內(nèi)的點(diǎn)盡可能相似,而簇間的點(diǎn)盡可能不同。算法的核心思想是通過(guò)迭代的方式,不斷優(yōu)化簇的劃分和簇中心的位置,以達(dá)到使簇內(nèi)點(diǎn)的距離和(或稱為損失函數(shù))最小的目的。具體來(lái)說(shuō),K-means算法的原理包括以下幾個(gè)步驟:(1)初始化:從數(shù)據(jù)集中隨機(jī)選擇K個(gè)點(diǎn)作為初始的簇中心。(2)分配樣本:計(jì)算每個(gè)點(diǎn)到K個(gè)簇中心的距離,并將每個(gè)點(diǎn)分配到距離最近的簇中心所對(duì)應(yīng)的簇中。(3)更新簇中心:根據(jù)新的簇劃分,重新計(jì)算每個(gè)簇的中心點(diǎn),即簇內(nèi)所有點(diǎn)的均值。(4)迭代:重復(fù)步驟2和步驟3,直到簇中心的位置不再發(fā)生變化,或者達(dá)到預(yù)設(shè)的最大迭代次數(shù)。在算法實(shí)現(xiàn)中,常用的距離度量方法是歐氏距離,但也可以根據(jù)具體需求選擇其他距離度量方法,如曼哈頓距離或余弦相似度等。桂小林14K-means算法桂小林15:paramX:數(shù)據(jù)點(diǎn),格式為列表的列表,例如[[x1,y1],[x2,y2],...]:paramk:聚類的數(shù)量:parammax_iters:最大迭代次數(shù):return:聚類結(jié)果,格式為{簇編號(hào):[屬于該簇的數(shù)據(jù)點(diǎn)]}importrandomimportnumpyasnpdefkmeans(X,k,max_iters=100):#隨機(jī)初始化聚類中心

centroids=random.sample(X,k)clusters={i:[]foriinrange(k)}for_inrange(max_iters):#將每個(gè)數(shù)據(jù)點(diǎn)分配給最近的聚類中心

forpointinX:distances=[np.linalg.norm(np.array(point)-np.array(centroid))\forcentroidincentroids]closest_cluster=distances.index(min(distances))clusters[closest_cluster].append(point)#更新聚類中心為所屬簇內(nèi)所有點(diǎn)的均值

new_centroids=[]foriinrange(k):cluster_points=clusters[i]ifcluster_points:#防止空簇

new_centroid=np.mean(cluster_points,axis=0).tolist()new_centroids.append(new_centroid)else:#如果某個(gè)簇為空,則隨機(jī)選擇一個(gè)點(diǎn)作為新的聚類中心

new_centroids.append(random.choice(X))#檢查聚類中心是否不再變化

ifnew_centroids==centroids:breakcentroids=new_centroidsreturnclusters#示例數(shù)據(jù)data_points=[[1,2],[1,4],[1,0],[10,2],[10,4],[10,0]]#運(yùn)行K-means算法k=2#聚類數(shù)量clusters=kmeans(data_points,k)#打印結(jié)果fori,pointsinclusters.items():print(f"簇{i}:{points}")2、DBSCAN聚類算法DBSCAN(Density-BasedSpatialClusteringofApplicationswithNoise)算法是一種基于密度的空間聚類算法,它能夠發(fā)現(xiàn)任意形狀的簇,并且能夠有效處理噪聲數(shù)據(jù)。下面對(duì)DBSCAN算法中的一些基本概念。(1)ε鄰域:給定位置點(diǎn)p,所有距離該點(diǎn)半徑ε內(nèi)的區(qū)域稱為該位置點(diǎn)的ε鄰域。(2)MinPts:位置點(diǎn)要成為核心點(diǎn)所需要的ε鄰域的位置點(diǎn)數(shù)的閾值,也就是p點(diǎn)成為核心點(diǎn)時(shí)ε鄰域內(nèi)位置點(diǎn)的最小個(gè)數(shù)。(3)核心點(diǎn):如果位置點(diǎn)的ε鄰域內(nèi)至少包含最小數(shù)目MinPts的位置點(diǎn),則稱該點(diǎn)為核心點(diǎn)。(4)邊界點(diǎn):若位置點(diǎn)p不是一個(gè)核心點(diǎn),但落在某個(gè)核心點(diǎn)的鄰域內(nèi),則點(diǎn)p被稱為邊界點(diǎn)。(5)噪音點(diǎn):若位置點(diǎn)p既不是核心點(diǎn),也不是邊界點(diǎn),則點(diǎn)p被稱為噪聲點(diǎn)。(6)直接密度可達(dá):若位置點(diǎn)p在位置點(diǎn)q的ε鄰域內(nèi),并且點(diǎn)q是一個(gè)核心點(diǎn),則稱點(diǎn)p從點(diǎn)q出發(fā)是直接密度可達(dá)的。(7)密度可達(dá):對(duì)于點(diǎn)集P={p_1,p_3,?,p_n},若點(diǎn)p_i從點(diǎn)p_(i-1)直接密度可達(dá),則p_n從p_1密度可達(dá)。(8)密度相連:對(duì)于兩個(gè)點(diǎn)p和q,存在另外一個(gè)點(diǎn)o,使得點(diǎn)p和點(diǎn)q都從點(diǎn)o密度可達(dá),則認(rèn)為點(diǎn)p和點(diǎn)q密度相連。密度相連關(guān)系是對(duì)稱的。桂小林162、DBSCAN聚類算法(1)核心點(diǎn):從圖中可以看到m,p,o,r四個(gè)位置點(diǎn)的ε鄰域內(nèi)都至少包含3個(gè)點(diǎn),因此,它們都是核心點(diǎn)。(2)邊界點(diǎn):點(diǎn)q在點(diǎn)m的ε鄰域中,但點(diǎn)q不是核心點(diǎn),因此點(diǎn)q為邊界點(diǎn)。(3)噪音點(diǎn):點(diǎn)n既不是邊界點(diǎn)也不是核心點(diǎn),因此點(diǎn)n是噪音點(diǎn)。(4)直接密度可達(dá):點(diǎn)q從點(diǎn)m直接密度可達(dá),點(diǎn)m從點(diǎn)p直接密度可達(dá)。(5)密度可達(dá):點(diǎn)q,點(diǎn)s,點(diǎn)r分別從點(diǎn)p,點(diǎn)o,點(diǎn)o密度可達(dá)。桂小林172、DBSCAN聚類算法下面是DBSCAN算法的工作原理的幾個(gè)步驟:(1)初始化:為每個(gè)樣本點(diǎn)分配一個(gè)唯一的標(biāo)識(shí)(初始時(shí)可以是未訪問(wèn)狀態(tài))。(2)隨機(jī)選擇一個(gè)未訪問(wèn)的點(diǎn):將其作為當(dāng)前點(diǎn),并標(biāo)記為已訪問(wèn)。(3)檢查當(dāng)前點(diǎn):判斷當(dāng)前點(diǎn)是否為核心點(diǎn)。如果是核心點(diǎn),則創(chuàng)建一個(gè)新的簇,并將當(dāng)前點(diǎn)加入該簇中。如果不是核心點(diǎn),則將其標(biāo)記為噪聲點(diǎn)。(4)擴(kuò)展簇:對(duì)于當(dāng)前簇中的每個(gè)點(diǎn)(包括當(dāng)前點(diǎn)),檢查其ε-鄰域內(nèi)的所有點(diǎn)。如果某個(gè)鄰域點(diǎn)尚未被訪問(wèn)過(guò),則將其標(biāo)記為已訪問(wèn),并判斷其是否為核心點(diǎn)。如果是核心點(diǎn),則將其加入當(dāng)前簇中,并繼續(xù)檢查其ε-鄰域內(nèi)的點(diǎn)(遞歸進(jìn)行)。如果不是核心點(diǎn),則將其標(biāo)記為邊界點(diǎn)。(5)重復(fù)步驟2到步驟4,直到所有點(diǎn)都被訪問(wèn)過(guò)。桂小林187.2.3有監(jiān)督學(xué)習(xí)有監(jiān)督學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一種重要方法,它依賴于帶有標(biāo)簽或輸出值的數(shù)據(jù)集進(jìn)行訓(xùn)練。在有監(jiān)督學(xué)習(xí)中,算法通過(guò)比較模型的預(yù)測(cè)輸出與實(shí)際輸出之間的差異來(lái)不斷調(diào)整模型參數(shù),以最小化預(yù)測(cè)誤差。1、線性回歸線性回歸是一種用于建模兩個(gè)或多個(gè)變量之間關(guān)系的統(tǒng)計(jì)方法,其中一個(gè)變量(通常稱為因變量)被認(rèn)為是另一個(gè)變量(或一組變量,稱為自變量)的線性函數(shù)。簡(jiǎn)單來(lái)說(shuō),線性回歸試圖通過(guò)一條最佳擬合直線來(lái)描述自變量(X)和因變量(Y)之間的關(guān)系。桂小林197.2.3有監(jiān)督學(xué)習(xí)2、持向量機(jī)支持向量機(jī)(SupportVectorMachines,SVM)是一種廣泛應(yīng)用于模式識(shí)別和機(jī)器學(xué)習(xí)領(lǐng)域的監(jiān)督學(xué)習(xí)算法。SVM的核心思想是將數(shù)據(jù)映射到高維特征空間,通過(guò)構(gòu)建一個(gè)最優(yōu)超平面來(lái)實(shí)現(xiàn)數(shù)據(jù)的劃分或擬合。這個(gè)最優(yōu)超平面能夠最大化不同類別之間的間隔,從而提高分類器的準(zhǔn)確性和泛化能力。SVM算法最早由Vapnik和Cortes于1995年提出,并在之后幾十年里得到了廣泛的研究和發(fā)展。初始的SVM是針對(duì)線性可分問(wèn)題的,后來(lái)發(fā)展出了用于處理非線性問(wèn)題的核支持向量機(jī)。隨著計(jì)算能力的提高和算法改進(jìn),SVM逐漸成為機(jī)器學(xué)習(xí)領(lǐng)域中最受歡迎和成功的算法之一。3、決策樹(shù)決策樹(shù)(decisiontree)是一種模仿人類決策過(guò)程的機(jī)器學(xué)習(xí)算法,它通過(guò)學(xué)習(xí)簡(jiǎn)單的決策規(guī)則來(lái)預(yù)測(cè)目標(biāo)變量的值。決策樹(shù)模型由節(jié)點(diǎn)(包括內(nèi)部節(jié)點(diǎn)和葉子節(jié)點(diǎn))和邊組成,形成一個(gè)樹(shù)狀結(jié)構(gòu)。樹(shù)的每個(gè)內(nèi)部節(jié)點(diǎn)表示一個(gè)特征上的判斷,每個(gè)邊代表判斷的結(jié)果,而每個(gè)葉子節(jié)點(diǎn)代表一個(gè)類別或決策結(jié)果。桂小林207.2.3有監(jiān)督學(xué)習(xí)4、樸素貝葉斯樸素貝葉斯(naiveBayes)是一種基于貝葉斯定理并假設(shè)特征之間相互獨(dú)立的機(jī)器學(xué)習(xí)分類算法。樸素貝葉斯的名字“樸素”源于其假設(shè)的簡(jiǎn)單性,即假設(shè)所有特征都是相互獨(dú)立的。盡管這個(gè)假設(shè)在實(shí)際應(yīng)用中往往并不完全成立,但樸素貝葉斯在很多場(chǎng)景下仍然表現(xiàn)出了驚人的效果。該算法的目標(biāo)是基于給定的樣本特征x來(lái)預(yù)測(cè)樣本所屬的類別y,其核心在于利用貝葉斯定理計(jì)算后驗(yàn)概率,從而確定樣本的類別。5、神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)(neuralnetwork)是一種模擬人腦神經(jīng)元結(jié)構(gòu)和功能的計(jì)算模型,它通過(guò)學(xué)習(xí)和調(diào)整節(jié)點(diǎn)間權(quán)重來(lái)處理信息,解決復(fù)雜的模式識(shí)別和預(yù)測(cè)問(wèn)題。神經(jīng)網(wǎng)絡(luò)的基本原理是模擬人腦神經(jīng)系統(tǒng)的功能,通過(guò)多個(gè)節(jié)點(diǎn)(也叫神經(jīng)元)的連接和計(jì)算,實(shí)現(xiàn)非線性模型的組合和輸出。神經(jīng)網(wǎng)絡(luò)可以看作是一種由神經(jīng)元模型組成的復(fù)雜網(wǎng)絡(luò)系統(tǒng),每個(gè)神經(jīng)元都有一個(gè)激活函數(shù),用來(lái)增加網(wǎng)絡(luò)的非線性能力。神經(jīng)網(wǎng)絡(luò)采用參數(shù)權(quán)重,通過(guò)調(diào)整這些權(quán)重來(lái)實(shí)現(xiàn)自動(dòng)學(xué)習(xí)和模式識(shí)別。桂小林217.3機(jī)器學(xué)習(xí)的模型訓(xùn)練模型訓(xùn)練是機(jī)器學(xué)習(xí)中的一個(gè)核心環(huán)節(jié),它指的是使用帶有標(biāo)簽的數(shù)據(jù)集來(lái)調(diào)整和優(yōu)化機(jī)器學(xué)習(xí)模型的參數(shù),以便模型能夠準(zhǔn)確地對(duì)新數(shù)據(jù)進(jìn)行預(yù)測(cè)或分類。7.3.1模型訓(xùn)練的目的和方式在模型訓(xùn)練過(guò)程中,算法會(huì)反復(fù)地比較模型的預(yù)測(cè)結(jié)果與實(shí)際結(jié)果之間的差異,并據(jù)此更新模型的參數(shù),從而逐步減少預(yù)測(cè)誤差,提高模型的性能。1、模型訓(xùn)練的目的模型訓(xùn)練的目的是為了構(gòu)建一個(gè)能夠準(zhǔn)確地對(duì)新數(shù)據(jù)進(jìn)行預(yù)測(cè)或分類的機(jī)器學(xué)習(xí)模型。具體來(lái)說(shuō),模型訓(xùn)練的目標(biāo)包括以下幾個(gè)方面:模型通過(guò)訓(xùn)練學(xué)習(xí)數(shù)據(jù)的內(nèi)在規(guī)律和分布特征。在訓(xùn)練過(guò)程中,算法會(huì)不斷調(diào)整模型的參數(shù),以最小化預(yù)測(cè)誤差或最大化某種性能指標(biāo)(如準(zhǔn)確率、召回率等)。這些參數(shù)決定了模型如何處理輸入數(shù)據(jù)并產(chǎn)生輸出。除了在訓(xùn)練數(shù)據(jù)上表現(xiàn)良好外,模型還需要具備對(duì)新數(shù)據(jù)(即未見(jiàn)過(guò)的數(shù)據(jù))進(jìn)行準(zhǔn)確預(yù)測(cè)的能力。這被稱為模型的泛化能力。桂小林227.3.1模型訓(xùn)練的目的和方式2、模型訓(xùn)練主要方式按訓(xùn)練數(shù)據(jù)的處理方式可劃分為監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)。1)監(jiān)督學(xué)習(xí):使用帶有標(biāo)簽的數(shù)據(jù)集進(jìn)行訓(xùn)練,模型學(xué)習(xí)輸入特征與輸出標(biāo)簽之間的映射關(guān)系。主要應(yīng)用場(chǎng)景包括分類、回歸等任務(wù)。2)無(wú)監(jiān)督學(xué)習(xí):使用未標(biāo)注的數(shù)據(jù)集進(jìn)行訓(xùn)練,模型學(xué)習(xí)數(shù)據(jù)的內(nèi)在結(jié)構(gòu)和分布特征。主要應(yīng)用場(chǎng)景包括聚類、降維等任務(wù)。3)半監(jiān)督學(xué)習(xí):結(jié)合監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)的特點(diǎn),使用部分標(biāo)注的數(shù)據(jù)和部分未標(biāo)注的數(shù)據(jù)進(jìn)行訓(xùn)練。主要應(yīng)用場(chǎng)景為當(dāng)標(biāo)注數(shù)據(jù)稀缺時(shí),可以利用未標(biāo)注數(shù)據(jù)提高模型的性能。4)強(qiáng)化學(xué)習(xí):通過(guò)與環(huán)境進(jìn)行交互來(lái)學(xué)習(xí)策略,使模型在特定任務(wù)上獲得最大獎(jiǎng)勵(lì)。主要應(yīng)用場(chǎng)景為游戲、機(jī)器人控制等任務(wù)。桂小林237.3.2模型訓(xùn)練過(guò)程機(jī)器學(xué)習(xí)中的模型訓(xùn)練方法和過(guò)程是一個(gè)系統(tǒng)而精細(xì)的任務(wù),包括以下幾個(gè)關(guān)鍵步驟:1、數(shù)據(jù)準(zhǔn)備數(shù)據(jù)準(zhǔn)備是模型訓(xùn)練過(guò)程中的一個(gè)關(guān)鍵步驟,它直接關(guān)系到模型的訓(xùn)練效果和性能。首先需要明確模型訓(xùn)練的任務(wù)類型,如分類、回歸、聚類等;然后根據(jù)任務(wù)類型確定所需的數(shù)據(jù)類型,如文本、圖像、聲音等;其次進(jìn)行數(shù)據(jù)采集和清洗,將數(shù)據(jù)處理成模型能夠處理的格式,提高模型的訓(xùn)練效率和準(zhǔn)確性2、數(shù)據(jù)分割數(shù)據(jù)分割的目的是將數(shù)據(jù)集劃分為不同的部分,以便于模型的訓(xùn)練和評(píng)估。通過(guò)合理的數(shù)據(jù)分割,可以確保模型在訓(xùn)練過(guò)程中學(xué)習(xí)到數(shù)據(jù)的內(nèi)在規(guī)律,并在未見(jiàn)過(guò)的數(shù)據(jù)上表現(xiàn)出良好的泛化能力。3、算法選擇與參數(shù)設(shè)置在模型訓(xùn)練中,算法選擇與參數(shù)設(shè)置是兩個(gè)至關(guān)重要的環(huán)節(jié)。選擇算法時(shí)需要考慮算法的可解釋性。對(duì)于某些應(yīng)用場(chǎng)景,如金融風(fēng)控等受到強(qiáng)監(jiān)管的場(chǎng)景,算法的可解釋性非常重要。例如,邏輯回歸通過(guò)賦予特征的權(quán)重具有可解釋性,而K近鄰算法則通過(guò)特征重要性具有較高的可解釋性。桂小林247.3.2模型訓(xùn)練過(guò)程4、模型訓(xùn)練模型訓(xùn)練是指通過(guò)數(shù)據(jù)驅(qū)動(dòng)的方式,讓人工智能(AI)系統(tǒng)從經(jīng)驗(yàn)中學(xué)習(xí),以便在給定的任務(wù)上進(jìn)行預(yù)測(cè)、分類或生成等操作。這個(gè)過(guò)程通過(guò)優(yōu)化模型的參數(shù)(如神經(jīng)網(wǎng)絡(luò)的權(quán)重和偏置)來(lái)最小化預(yù)測(cè)誤差或損失,從而使模型能夠在新數(shù)據(jù)上做出準(zhǔn)確的判斷。5、模型評(píng)估與優(yōu)化模型評(píng)估與優(yōu)化是機(jī)器學(xué)習(xí)和深度學(xué)習(xí)領(lǐng)域中的關(guān)鍵環(huán)節(jié),旨在確保模型性能、找出潛在問(wèn)題并提升模型效果。6、模型部署與應(yīng)用模型部署與應(yīng)用是將訓(xùn)練好的機(jī)器學(xué)習(xí)模型集成到實(shí)際應(yīng)用場(chǎng)景中,使其能夠自動(dòng)處理數(shù)據(jù)并產(chǎn)生預(yù)測(cè)結(jié)果或執(zhí)行特定任務(wù)的過(guò)程。桂小林257.4機(jī)器學(xué)習(xí)的典型應(yīng)用機(jī)器學(xué)習(xí)的典型應(yīng)用涵蓋了多個(gè)領(lǐng)域,如用于解鎖手機(jī)、標(biāo)記照片、安全門(mén)禁等的人臉識(shí)別,應(yīng)用于銀行支票處理、郵政編碼識(shí)別等的手寫(xiě)數(shù)字識(shí)別,應(yīng)用于娛樂(lè)、藝術(shù)、廣告設(shè)計(jì)等領(lǐng)域的圖像生成與美化,應(yīng)用于機(jī)器翻譯、文本分類、語(yǔ)音識(shí)別的大語(yǔ)言模型及智能客服機(jī)器人等。本節(jié)僅講解手寫(xiě)數(shù)字識(shí)別和動(dòng)物識(shí)別兩個(gè)案例。桂小林267.4.1手寫(xiě)字識(shí)別手寫(xiě)體識(shí)別(HandWritingRecognition)是指將在手寫(xiě)設(shè)備上書(shū)寫(xiě)時(shí)產(chǎn)生的有序軌跡信息化轉(zhuǎn)化為文字的過(guò)程,實(shí)際上是手寫(xiě)軌跡的坐標(biāo)序列到文字內(nèi)碼的一個(gè)映射過(guò)程,是人機(jī)交互最自然、最方便的手段之一。隨著智能手機(jī)、掌上電腦等移動(dòng)信息工具的普及,手寫(xiě)體識(shí)別技術(shù)也進(jìn)入了規(guī)模應(yīng)用時(shí)代。用于手寫(xiě)輸入的設(shè)備有許多種,比如電磁感應(yīng)手寫(xiě)板、壓感式手寫(xiě)板、觸摸屏、觸控板、超聲波筆等。手寫(xiě)體識(shí)別屬于文字識(shí)別和模式識(shí)別范疇,從識(shí)別過(guò)程來(lái)說(shuō),手寫(xiě)體識(shí)別分成脫機(jī)識(shí)別(off-line)和聯(lián)機(jī)識(shí)別(on-line)兩大類。脫機(jī)手寫(xiě)識(shí)別涉及到將圖像中的文本自動(dòng)轉(zhuǎn)換成計(jì)算機(jī)可以使用的字符代碼,通常應(yīng)用在打印出來(lái)的文字識(shí)別上,這一過(guò)程比較困難,因?yàn)椴煌娜擞胁煌臅?shū)寫(xiě)風(fēng)格。而聯(lián)機(jī)手寫(xiě)識(shí)別則是指將在手寫(xiě)設(shè)備上書(shū)寫(xiě)時(shí)產(chǎn)生的有序軌跡信息轉(zhuǎn)化為文字內(nèi)碼的過(guò)程。桂小林277.4.1手寫(xiě)字識(shí)別1、手寫(xiě)體識(shí)別的主要方法基于模板匹配的方法:預(yù)先定義一組標(biāo)準(zhǔn)的手寫(xiě)體模板,然后將輸入的手寫(xiě)體與這些模板進(jìn)行匹配,找到最相似的模板作為識(shí)別結(jié)果?;谔卣魈崛〉姆椒ǎ簭氖謱?xiě)體中提取出具有區(qū)分性的特征(如筆畫(huà)形狀、方向、位置等),然后使用這些特征進(jìn)行識(shí)別。基于神經(jīng)網(wǎng)絡(luò)的方法:使用神經(jīng)網(wǎng)絡(luò)(如卷積神經(jīng)網(wǎng)絡(luò)CNN、循環(huán)神經(jīng)網(wǎng)絡(luò)RNN等)對(duì)手寫(xiě)體進(jìn)行識(shí)別。神經(jīng)網(wǎng)絡(luò)能夠自動(dòng)學(xué)習(xí)手寫(xiě)體的特征表示,并進(jìn)行分類?;谏疃葘W(xué)習(xí)的方法:深度學(xué)習(xí)是神經(jīng)網(wǎng)絡(luò)的一個(gè)分支,近年來(lái)在手寫(xiě)體識(shí)別領(lǐng)域取得了顯著的成果?;谏疃葘W(xué)習(xí)的方法通常使用大規(guī)模的標(biāo)注數(shù)據(jù)集進(jìn)行訓(xùn)練,通過(guò)多層神經(jīng)網(wǎng)絡(luò)自動(dòng)學(xué)習(xí)手寫(xiě)體的特征表示和分類規(guī)則。這種方法能夠處理復(fù)雜的手寫(xiě)體變形和噪聲,具有較高的識(shí)別準(zhǔn)確率和魯棒性。然而,深度學(xué)習(xí)模型通常需要大量的計(jì)算資源和時(shí)間進(jìn)行訓(xùn)練和調(diào)優(yōu)。桂小林287.4.1手寫(xiě)字識(shí)別2、手寫(xiě)體數(shù)字識(shí)別方法(1)數(shù)據(jù)預(yù)處理數(shù)據(jù)預(yù)處理包括數(shù)據(jù)收集、數(shù)據(jù)清洗和數(shù)據(jù)歸一化等。(2)特征提取從手寫(xiě)數(shù)字圖像中提取具有區(qū)分性的特征,這些特征可以是像素值、輪廓形狀、筆畫(huà)方向等。(3)模型訓(xùn)練選擇合適的機(jī)器學(xué)習(xí)算法,如K近鄰(KNN)、決策樹(shù)、支持向量機(jī)(SVM)、神經(jīng)網(wǎng)絡(luò)等。(4)模型評(píng)估與優(yōu)化使用測(cè)試數(shù)據(jù)集來(lái)評(píng)估模型的性能,如準(zhǔn)確率、召回率、F1分?jǐn)?shù)等。根據(jù)評(píng)估結(jié)果對(duì)模型進(jìn)行優(yōu)化,如調(diào)整模型參數(shù)、增加訓(xùn)練數(shù)據(jù)等。(5)識(shí)別將待識(shí)別的手寫(xiě)數(shù)字圖像輸入到訓(xùn)練好的模型中。模型會(huì)根據(jù)輸入圖像的特征進(jìn)行預(yù)測(cè),并輸出識(shí)別結(jié)果。桂小林297.4.1手寫(xiě)字識(shí)別3、手寫(xiě)體數(shù)字識(shí)別算法K近鄰(KNN):通過(guò)計(jì)算待識(shí)別樣本與訓(xùn)練樣本之間的距離,找到距離最近的K個(gè)訓(xùn)練樣本,并根據(jù)這些訓(xùn)練樣本的類別來(lái)預(yù)測(cè)待識(shí)別樣本的類別。決策樹(shù):通過(guò)一系列的判斷條件來(lái)構(gòu)建決策樹(shù),每個(gè)節(jié)點(diǎn)表示一個(gè)判斷條件,每個(gè)葉子節(jié)點(diǎn)表示一個(gè)類別。優(yōu)點(diǎn):易于理解和解釋,對(duì)于多分類問(wèn)題效果較好。支持向量機(jī)(SVM):通過(guò)找到一個(gè)超平面來(lái)將不同類別的樣本分開(kāi),并最大化不同類別樣本之間的間隔。神經(jīng)網(wǎng)絡(luò):通過(guò)多層神經(jīng)元之間的連接來(lái)構(gòu)建模型,能夠自動(dòng)學(xué)習(xí)數(shù)據(jù)的特征表示和分類規(guī)則。優(yōu)點(diǎn):具有強(qiáng)大的自學(xué)習(xí)能力和非線性映射能力,能夠處理復(fù)雜的手寫(xiě)數(shù)字識(shí)別任務(wù)。缺點(diǎn):需要大量的訓(xùn)練數(shù)據(jù)和計(jì)算資源;訓(xùn)練過(guò)程可能較為耗時(shí);容易陷入局部最優(yōu)解。卷積神經(jīng)網(wǎng)絡(luò)(CNN):一種特殊的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),通過(guò)卷積層、池化層、全連接層等結(jié)構(gòu)來(lái)提取圖像的特征并進(jìn)行分類。優(yōu)點(diǎn):能夠自動(dòng)學(xué)習(xí)圖像的特征表示,對(duì)于圖像識(shí)別任務(wù)效果較好;具有較強(qiáng)的泛化能力和魯棒性。缺點(diǎn):需要大量的訓(xùn)練數(shù)據(jù)和計(jì)算資源;模型結(jié)構(gòu)復(fù)雜,難以調(diào)優(yōu)。桂小林307.4.1手寫(xiě)字識(shí)別4、手寫(xiě)體數(shù)字識(shí)別案例以下是一個(gè)基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的手寫(xiě)體數(shù)字0-9識(shí)別的Python代碼示例。我們將使用TensorFlow和Keras庫(kù)來(lái)構(gòu)建和訓(xùn)練模型。數(shù)據(jù)將使用著名的MNIST數(shù)據(jù)集,該數(shù)據(jù)集包含60,000個(gè)訓(xùn)練樣本和10,000個(gè)測(cè)試樣本,每個(gè)樣本是28x28像素的灰度圖像。首先,確保你已經(jīng)安裝了TensorFlow。如果沒(méi)有安裝,可以使用pip進(jìn)行安裝:pipinstalltensorflow具體Python代碼見(jiàn)教材。桂小林317.4.2動(dòng)物貓狗識(shí)別利用計(jì)算機(jī)對(duì)動(dòng)物圖片中的貓和狗進(jìn)行識(shí)別和分類,主要依賴于人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)等技術(shù)。以下是進(jìn)行這種識(shí)別和分類的基本原理:1)人工智能(AI):AI是指模擬人類智能的計(jì)算機(jī)系統(tǒng),能夠通過(guò)算法分析大量數(shù)據(jù),從而進(jìn)行學(xué)習(xí)和判斷。在動(dòng)物圖片識(shí)別領(lǐng)域,AI技術(shù)能夠自動(dòng)提取圖片中的特征信息,并進(jìn)行分類和識(shí)別。2)機(jī)器學(xué)習(xí):機(jī)器學(xué)習(xí)允許計(jì)算機(jī)從數(shù)據(jù)中學(xué)習(xí)模式,通過(guò)訓(xùn)練數(shù)據(jù)集來(lái)建立識(shí)別模型。在貓和狗的識(shí)別中,機(jī)器學(xué)習(xí)算法能夠識(shí)別出圖片中貓和狗的特征差異,如體型、耳朵形狀、毛發(fā)等。3)深度學(xué)習(xí):深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)分支,通過(guò)構(gòu)建多層神經(jīng)網(wǎng)絡(luò)對(duì)數(shù)據(jù)進(jìn)行更復(fù)雜的分析和處理。在動(dòng)物圖片識(shí)別中,深度學(xué)習(xí)算法能夠自動(dòng)提取圖片中的高層特征,如紋理、形狀和顏色等,從而提高識(shí)別的準(zhǔn)確性。桂小林327.4.2動(dòng)物貓狗識(shí)別1、識(shí)別與分類流程數(shù)據(jù)收集與預(yù)處理:收集大量的貓和狗的圖片作為訓(xùn)練數(shù)據(jù)集,這些圖片應(yīng)涵蓋不同的品種、姿勢(shì)和光線條件。對(duì)圖片進(jìn)行預(yù)處理,如裁剪、縮放、歸一化等,以提高識(shí)別模型的泛化能力。特征提?。豪蒙疃葘W(xué)習(xí)算法(如卷積神經(jīng)網(wǎng)絡(luò)CNN)自動(dòng)提取圖片中的特征信息。這些特征信息包括圖片的紋理、形狀、顏色等高層特征,以及貓和狗之間的細(xì)微差異。模型訓(xùn)練:將提取的特征信息輸入到機(jī)器學(xué)習(xí)算法中,通過(guò)訓(xùn)練數(shù)據(jù)集來(lái)建立識(shí)別模型。在訓(xùn)練過(guò)程中,算法會(huì)不斷調(diào)整模型參數(shù),以提高識(shí)別的準(zhǔn)確性。分類與識(shí)別:利用訓(xùn)練好的識(shí)別模型對(duì)新的動(dòng)物圖片進(jìn)行分類和識(shí)別。模型會(huì)根據(jù)圖片中的特征信息判斷其屬于貓還是狗,并給出相應(yīng)的分類結(jié)果。桂小林337.4.2動(dòng)物貓狗識(shí)別3、應(yīng)用案例下面是一個(gè)利用卷積神經(jīng)網(wǎng)絡(luò)(CNN)對(duì)貓和狗進(jìn)行識(shí)別的簡(jiǎn)單案例。我們將使用Keras(一個(gè)高層神經(jīng)網(wǎng)絡(luò)API,以TensorFlow為后端)來(lái)構(gòu)建和訓(xùn)練這個(gè)模型。這個(gè)案例假設(shè)已經(jīng)有一個(gè)包含貓和狗圖片的數(shù)據(jù)集,并且這些圖片已經(jīng)被正確地分類在名為cats和dogs的文件夾中。1)數(shù)據(jù)準(zhǔn)備首先,你需要將你的數(shù)據(jù)集組織成以下結(jié)構(gòu):桂小林347.4.2動(dòng)物貓狗識(shí)別2)Python代碼以下是一個(gè)完整的Python腳本,用于構(gòu)建、訓(xùn)練和評(píng)估一個(gè)CNN模型來(lái)識(shí)別貓和狗。桂小林35importosimporttensorflowastffromtensorflow.keras.preprocessing.imageimportImageDataGeneratorfromtensorflow.keras.modelsimportSequentialfromtensorflow.keras.layersimportConv2D,MaxPooling2D,Flatten,Dense,Dropoutfromtensorflow.keras.optimizersimportAdam#設(shè)置數(shù)據(jù)路徑train_dir='dataset/train'validation_dir='dataset/validation'#數(shù)據(jù)增強(qiáng)和預(yù)處理train_datagen=ImageDataGenerator(rescale=1./255,shear_range=0.2,zoom_range=0.2,horizontal_flip=True)test_datagen=ImageDataGenerator(rescale=1./255)train_generator=train_datagen.flow_from_directory(train_dir,target_size=(150,150),batch_size=20,class_mode='binary')validation_generator=test_datagen.flow_from_directory(validation_dir,target_size=(150,150),batch_size=20,class_mode='binary')7.4.2動(dòng)物貓狗識(shí)別桂小林36#構(gòu)建CNN模型model=Sequential([Conv2D(32,(3,3),activation='relu',input_shape=(150,150,3)),MaxPooling2D(pool_size=(2,2)),Conv2D(64,(3,3),activation='relu'),MaxPooling2D(pool_size=(2,2)),Conv2D(128,(3,3),activation='relu'),MaxPooling2D(pool_size=(2,2)),Conv2D(128,(3,3),activation='relu'),MaxPooling2D(pool_size=(2,2)),Flatten(),Dropout(0.5),Dense(512,activation='relu'),Dense(1,activation='sigmoid')])#編譯模型pile(loss='binary_crossentropy',optimizer=Adam(lr=1e-4),metrics=['accuracy'])#訓(xùn)練模型history=model.fit(train_generator,steps_per_epoch=100,#這里需要根據(jù)你的數(shù)據(jù)集大小調(diào)整

epochs=30,validation_data=validation_generator,validation_steps=50#這里需要根據(jù)你的數(shù)據(jù)集大小調(diào)整)#評(píng)估模型loss,accuracy=model.evaluate(validation_generator,steps=50)print(f'Validationloss:{loss}')print(f'Validationaccuracy:{accuracy}')#保存模型model.save('cats_and_dogs_classifier.h5')7.5聯(lián)邦學(xué)習(xí)及其應(yīng)用聯(lián)邦學(xué)習(xí)(FederatedLearning,F(xiàn)L)是一種新興且前景廣闊的機(jī)器學(xué)習(xí)方法,它允許多個(gè)設(shè)備或計(jì)算節(jié)點(diǎn)在不共享原始數(shù)據(jù)的情況下進(jìn)行模型訓(xùn)練。本節(jié)介紹聯(lián)邦學(xué)習(xí)的概念、工作過(guò)程和模型聚合方法。桂小林377.5.1聯(lián)邦學(xué)習(xí)的概念與分類聯(lián)邦學(xué)習(xí)是一種帶有隱私保護(hù)、安全加密技術(shù)的分布式機(jī)器學(xué)習(xí)框架,旨在讓分散的各參與方在滿足不向其他參與者披露隱私數(shù)據(jù)的前提下,協(xié)作進(jìn)行機(jī)器學(xué)習(xí)的模型訓(xùn)練。聯(lián)邦學(xué)習(xí)的主要特征包括:1)參與方:聯(lián)邦學(xué)習(xí)涉及兩個(gè)或兩個(gè)以上的參與方,這些參與方的數(shù)據(jù)具有一定的互補(bǔ)性,并共同構(gòu)建機(jī)器學(xué)習(xí)模型。2)數(shù)據(jù)不出域:在模型訓(xùn)練過(guò)程中,每個(gè)參與方的數(shù)據(jù)都不會(huì)離開(kāi)本地,即各自的原始樣本不會(huì)離開(kāi)本地存儲(chǔ)位置。3)平臺(tái)跨域部署:聯(lián)邦學(xué)習(xí)的分布式平臺(tái)將計(jì)算資源獨(dú)立部署到各個(gè)參與方的機(jī)房里,無(wú)需將各方數(shù)據(jù)集中到一個(gè)地方進(jìn)行聯(lián)合訓(xùn)練。4)安全加密:模型的相關(guān)信息以加密方式傳輸。在模型訓(xùn)練時(shí),需要傳遞梯度等中間結(jié)果,這些中間結(jié)果是通過(guò)加密方式進(jìn)行傳輸?shù)?,以保證任何參與方都不能推斷出其他方的原始數(shù)據(jù),包括模型的參數(shù)和標(biāo)簽。桂小林387.5.1聯(lián)邦學(xué)習(xí)的概念與分類聯(lián)邦學(xué)習(xí)主要分為以下三類:1)橫向聯(lián)邦學(xué)習(xí)(HorizontalFederatedLearning,HFL):適用于數(shù)據(jù)集特征相同但樣本不同的場(chǎng)景。在這種模式下,各個(gè)參與方的數(shù)據(jù)集在特征空間上是相同的,但樣本空間有所不同。例如,兩家業(yè)務(wù)相同但分布在不同地區(qū)的銀行,它們的用戶群體來(lái)自各自所在的地區(qū),交集很小,但記錄的用戶特征相同。2)縱向聯(lián)邦學(xué)習(xí)(VerticalFederatedLearning,VFL):適用于數(shù)據(jù)集特征不同但樣本相同的場(chǎng)景。在這種模式下,各個(gè)參與方的數(shù)據(jù)集在樣本空間上是相同的,但特征空間有所不同。例如,銀行和電商可能擁有相

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論