漫話人工智慧原理

漫話人工智能原理

  1. 先提一個小問題:

“你是通過什麼瞭解這個世界的?”

當一輛汽車從你身邊疾馳而過,你是通過哪些信息知道那是一輛汽車?

“它的材質,速度,發動機的聲響,還是什麼?”

你可能說不清所以然,但是當你看到下圖時,你會第一時間反應出來,“噢,車! ”

漫話人工智能原理

為什麼你能猜對它?

“輪廓”!

——對,我給你看了它的輪廓。

再給你一些七七八八、大小不一的圖片,你總能猜對一些。

你是怎樣做到的?

很簡單

你讀了一張圖片 → 找到了圖片的特徵 → 進而對圖片做出了分類

漫話人工智能原理

漫話人工智能原理

漫話人工智能原理

如果是一張黑白圖片,我們看到的,是這個樣子的:

漫話人工智能原理

而在計算機的眼裡,它看到的,是這個樣子的:

漫話人工智能原理

漫話人工智能原理

好沒有情趣……

漫話人工智能原理

這些數字是哪裡來的?

因為圖片是由一個又一個的像素點構成。(當你將圖片無限放大,你能看到那些像素點)

漫話人工智能原理

而每一個像素點,都是由一個0~255的數字組成。

漫話人工智能原理

所以,在計算機“看”來,一張圖片,就是一個又一個的數字。

漫話人工智能原理

所以,我們第一步的工作,是將左上圖的那隻小狗,轉換成右上圖的那一行行數字。

幸運的是,目前在python中,很多第三方庫,諸如PIL/Matplotlib等,都可以實現這種轉換,我們需要了解的是,後面的所有運算過程,都是基於右上圖

來完成的,至於具體的轉換過程,不需要我們費心來做。

漫話人工智能原理

在文章開篇的例子中,我們知道,在識別一輛汽車的時候,可以將它的輪廓提取出來,從而判斷出那是一輛車。

同樣的,CNNs在識別圖片時,也需要提取圖像的特徵。

在CNNs中,完成這一工作的小夥叫“卷積”。(希望你不要糾結這個極具個性的名字,懂得它的原理就OK)

“卷積”在每次工作時,手裡都會握著幾把“過濾器”。

漫話人工智能原理

過濾器的作用是:尋找圖片的特徵。

仍以小狗為例,過濾器會在圖片上從頭到尾“滑過”一遍

漫話人工智能原理

每滑到一個地方,就將該地方的圖像特徵提取出來。

那它是怎樣提取的呢?

別忘了,在計算機的眼裡,世界是這個樣子的:

漫話人工智能原理

(為了簡化問題,這裡將像素值僅用0和1表示)

假設過濾器是這個樣子的:

漫話人工智能原理

當橘色的過濾器在綠色矩形框中,緩慢滑過時,

我們用橘色過濾器中的每一個值,與綠色矩形框中的對應值相乘、再相加

有點兒拗口,直接看圖:

漫話人工智能原理

結果“4”,就是我們從第一個橘色方框中,提取出的特徵。

如果我們每次將橘色過濾器,向右、向下移動1格,則提取出的特徵為:

漫話人工智能原理

漫話人工智能原理

你可能會問:

我知道綠色矩陣代表一張圖片,是計算機“眼中”圖片的樣子。

漫話人工智能原理

但是,

經過橘色過濾器提取特徵後,得到的粉色矩陣,那是什麼?

我們從人類的視角,再重新審視一遍。

這次,我們回到之前的例子中。

仍以這張萌狗為例,它經過“過濾器”提取特徵後,得到的是一張……哦,好吧……看起來有點兒模糊的圖。

漫話人工智能原理

漫話人工智能原理

雖然圖片模糊了,但是圖片中的主要特徵,已經被過濾器全部提取出來,單憑這麼一張模糊的圖,作為人類的我們,足以對它做出判斷了。(誰敢說它是一隻貓?!)

漫話人工智能原理

漫話人工智能原理

下面,我們再換幾個過濾器試試。

這些就是經過過濾器提取後,得到的不同“特徵圖片”。

由此我們可以看出,採用不同的“過濾器”,能夠提取出不同的圖片特徵。

你可能又會問:

那過濾器裡的數值,該如何確定呢?

漫話人工智能原理

漫話人工智能原理

4種過濾器-效果.png (116.6 KB)

漫話人工智能原理

4種過濾器.png (21.42 KB)

漫話人工智能原理

dog-黑白.jpg (41.25 KB)

更多資料獲取請私信我


分享到:


相關文章: