當(dāng)前位置:首頁(yè) > IT技術(shù) > 編程語(yǔ)言 > 正文

??KNN算法?? 算法圖解:第十章:K最近鄰算法
2022-04-29 14:08:12


??KNN算法?? 算法圖解:第十章:K最近鄰算法_自動(dòng)識(shí)別


Hello,大家好我叫是Dream呀,一個(gè)有趣的Python博主,小白一枚,多多關(guān)照 ?

入門須知:這片樂園從不缺乏天才,努力才是你的最終入場(chǎng)券!

最后,愿我們都能在看不到的地方閃閃發(fā)光,一起加油進(jìn)步

“一萬次悲傷,依然會(huì)有Dream,我一直在最溫暖的地方等你”,唱的就是我!哈哈哈~



第十章:K最近鄰算法

10.1橙子還是柚子

如何知道一個(gè)水果到底是柚子還是橙子呢?我知道,通常柚子比橙子更大、更紅。

一般而言,柚子更大更紅。這個(gè)水果又大又紅,很可能是柚子。但是下面的這樣的水果呢???KNN算法?? 算法圖解:第十章:K最近鄰算法_原力計(jì)劃_02

如何判斷這個(gè)水果是柚子還是橙子?一種方法是看它的鄰居。來看看離它最近的三個(gè)鄰居。

在這三個(gè)鄰居中,橙子比柚子多,因此這個(gè)水果很可能是橙子。祝賀你,你剛才是用的就是K最近鄰(KNN)算法進(jìn)行了分類!

KNN算法雖然簡(jiǎn)單但是卻很有用!要對(duì)東西進(jìn)行分類時(shí),可首先嘗試這種算法。例如:電影推薦系統(tǒng)。

10.2創(chuàng)建推薦系統(tǒng)

假如你要給用戶創(chuàng)建一個(gè)電影推薦系統(tǒng),從本質(zhì)上來說,這類似于前面的水果問題!你可以將所有用戶都放在一個(gè)圖表中。

這些用戶在圖表中的位置取決于其喜好,因此喜好相近的用戶距離較近。假如你想要給Alex推薦電影,可以找出五位與他最接近的用戶。

假如在電影的喜好方面,Justin、JC、Joey、Lance和Chris都和Alex差不多,因此他們喜歡的電影,很可能Alex也很喜歡。

但是還有一個(gè)重要的問題,怎么確定他們之間的相似程度呢?

10.2.1

在前面的水果示例中,你根據(jù)個(gè)頭和顏色來比較水果,換而言之,你比較的是個(gè)頭和顏色?,F(xiàn)在假設(shè)有三個(gè)水果,你可抽取它們的特征。

再根據(jù)這些特征繪圖:

??KNN算法?? 算法圖解:第十章:K最近鄰算法_自動(dòng)識(shí)別_03

這樣我們就可以來計(jì)算任意兩種物品之間的直線距離。

10.2.2

假設(shè)你不僅要為Alex推薦電影,還要預(yù)測(cè)她將給這部電影打多少分。為此,先找出與她最近的五個(gè)人。

順便說一句,我老說最近的五個(gè)人,其實(shí)并非一定要選擇5個(gè)最近的鄰居。這就是所說的K最近鄰。

假如你要預(yù)測(cè)Alex給電影打多少分,你可以參考另外五個(gè)人的打分,對(duì)其求平均值,這就是回歸!

你將使用KNN來做兩項(xiàng)基本工作——分類和回歸

  1. 分類就是編組;
  2. 回歸就是預(yù)測(cè)結(jié)果。

10.3機(jī)器學(xué)習(xí)簡(jiǎn)介

10.3.1

OCR指的是光學(xué)字符識(shí)別,這意味著你可拍攝印刷頁(yè)面的照片,計(jì)算機(jī)將自動(dòng)識(shí)別出其中的文字。

如何識(shí)別出這個(gè)數(shù)字是什么呢?可使用KNN。

  1. 瀏覽大量的數(shù)字圖像,將這些數(shù)字的特征提取出來。
  2. 遇到新的圖像時(shí),你提取該圖像的特征,再找出它最近的鄰居都是誰(shuí)!

與前面的水果實(shí)例相比,OCR中的特征提取要復(fù)雜得多,但再?gòu)?fù)雜的技術(shù)也是基于KNN等簡(jiǎn)單理念的。這些理念也可用于語(yǔ)音識(shí)別和人臉識(shí)別。你將照片上傳到Facebook時(shí),它有時(shí)候能夠自動(dòng)標(biāo)出照片中的人物,這是機(jī)器學(xué)習(xí)在發(fā)揮作用!

OCR的第一步是查看大量的數(shù)字圖像并提取特征,這被稱為訓(xùn)練!大多數(shù)機(jī)器學(xué)習(xí)算法都包含訓(xùn)練的步驟:要讓計(jì)算機(jī)完成任務(wù),必須先訓(xùn)練它。

10.4小結(jié)

1.KNN用于分類和回歸,需要考慮最近的鄰居。

2.分類就是編組。

3.回歸就是預(yù)測(cè)結(jié)果(如數(shù)字)。

4.特征抽取意味著將物品轉(zhuǎn)換成一系列可以比較的數(shù)字。

5.能否挑選出合適的特征事關(guān)KNN算法的成敗。

最后的福利

??????最后一點(diǎn)小福利帶給大家:如果想快速上手python的小伙伴們,這個(gè)詳細(xì)整理PPT可以迅速幫助大家打牢python基礎(chǔ),需要的小伙伴們可以下載一下 Python入門基礎(chǔ)教程全套+小白速成+學(xué)不會(huì)來找我!

還有自制表白神器,需要自?。?/p>

Python表白神器,源碼+解析+各種完美配置+浪漫新穎

??KNN算法?? 算法圖解:第十章:K最近鄰算法_原力計(jì)劃_04

好啦,這就是今天要給大家分享的全部?jī)?nèi)容了

如果你喜歡的話,就不要吝惜你的一鍵三連了~??KNN算法?? 算法圖解:第十章:K最近鄰算法_推薦系統(tǒng)_05



本文摘自 :https://blog.51cto.com/u

開通會(huì)員,享受整站包年服務(wù)立即開通 >