機器視覺中的特徵提取【0】:什麼是特徵提取,特徵提取有什麼作用?

1.什麼是特徵提取?

特徵提取的英文叫做feature extractor,它是將一些原始的輸入的數據維度減少或者將原始的特徵進行重新組合以便於後續的使用。簡單來說有兩個作用:減少數據維度,整理已有的數據特徵。

這裏我給一個例子來解釋特徵提取的第二個作用。那就是我們很熟悉的獎學金評定,我們知道學生的文化課成績,道德分數,以及各種其他競賽的成績。擺在獎學金評定委員會面前的任務就是如何知道一個學生是否具有獲得獎學金的特徵呢?最簡單的來看,假如我們道德成績不好,比如考試抄襲,我們對此無法容忍,所以已經發現道德成績不好就有一票否決權。但是對於其他特徵就沒那麼好辦了。

這個時候我們就會遇到總分或者加權分等。而這個過程就是特徵提取的過程。簡單來說,我們就是要通過學生的很多維特徵,然後得到一個新的特徵,最後的特徵是爲了讓獎學金評定委員會做決定,該授予哪些學生獎學金名額。

對於第一個作用——減少數據維度,我們可以這麼理解:我們知道有的時候原始數據的特徵很多,而且有的高度相關,有的卻又和最終的目的沒有關係。比如說上面這個獎學金評定的例子中,我們不僅有學生的文化課成績,還有學生的身高,去圖書館的次數,年齡,以及家庭環境等等。那麼這些數據是否和我們的獎學金評定相關呢?比如說大學中有國家勵志獎學金,這類獎學金對家庭收入偏下的同學有傾斜,這時候我們就無法忽略家庭背景。

此外,我麼知道有些數據特別巨大,比如等會要講的圖像,每個圖像有很多數據,這時候如果直接拿這些原始數據去計算則會非常緩慢,這對我們實時運行沒有好處。

2.特徵提取有什麼作用?

以上就說到特徵提取的兩個作用,這裏重點標出:
1. 減少數據維度
2. 提取或整理出有效的特徵供後續使用

3.機器視覺中的特徵提取?

本篇博客實際上主要爲了機器視覺中的特徵提取做準備,後續博客將會系統的介紹機器視覺中的特徵提取方法,特別是圖像和深度學習相關的特徵提取方法

我們知道我們對圖像或者視頻會做很多的應用,比如分類——判斷一個圖像屬於哪一類,比如給一張包含有貓或者狗的照片,機器要告訴我們這裏面是狗還是貓。實際上我們前面的獎學金評定的例子就是一個分類問題,給定學生的相關信息,然後將他們分爲授予獎學金的一類和不授予獎學金的一類。但是圖像中數據要比獎學金評定中的多得多。

這個時候有人就會問,一個特徵怎麼表示呢?這也是我這個轉專業的人在剛開始比較不懂的問題。實際上特徵就是數,如果非要用數學語言表示的話,我們可以理解成兩個向量空間。一個向量空間是我們熟悉的有實際意義的空間,比如(數學成績,英語成績,發表論文數量,發表論文質量等等),另一個向量空間就是數字,比如(92,100,5,1.0等)
在這裏插入圖片描述
實際上,我們在計算的時候就是用那些數字去計算某個學生的特徵。所以,特徵可以理解成數字。而且還可以認爲數值越大,特徵越強烈(一般我們這麼規定)。想象一下在獎學金評定時,你的總分是全校最高的,那麼你也就是第一個被選爲授予獎學金的人。

但是我們圖像領域則沒有這麼好理解的特徵的實際含義。我們很難知道一個圖像中貓有怎樣的特徵,而且特徵可能是變化的。因此我們的機器視覺中的任務就是如何去找到一個合適的不變的特徵,來衡量我們的目標判斷結果。

但是我們機器視覺中的特徵提取則有類似的道理,那就是特徵就是數字,數值越大,特徵越強烈
簡單來看,機器視覺領域是這樣的一個過程,如下圖:
在這裏插入圖片描述
**一張貓的圖片作爲輸入,然後得到新的特徵,然後我們根據這些新的特徵計算是否屬於貓。**至於怎麼根據新的特徵計算,那就可以和我們之前獎學金評定一樣,可以使用加權平均,或者直接使用平均,雖然可能方法不同,但上層的概念就是一樣的。

4.博客後續

我們理解到這裏,是剛剛開始機器視覺的第一步,這裏我要先拋出一些問題供大家思考,當作拋磚引玉:

  1. 爲何圖像的特徵很難提取,它存在着哪些問題和哪些挑戰?
  2. 這些特徵需要滿足什麼條件,也就是說特徵的特徵是怎樣的?
  3. 卷積神經網絡作爲特徵提取的基本原理是什麼?
  4. 卷積神經網絡的各個版本在改進的過程中遵循了怎樣的基本規律?面對如此多的卷積神經網絡,我們該何選擇?

另外,這裏也說一下自己個人感受,由於鄙人是換了專業的,直接到了機器視覺和深度學習領域,因此對圖像的基本知識不是那麼瞭解。但是這裏也告知後來者(據說轉AI方向的人很多),瞭解深度學習需要一定的各個專業的基礎知識。在機器視覺領域,我們想要了解卷積神經網絡,則最好理解圖像中的各種濾波原理,如邊緣提取提取等。

至於怎麼去了解這些專業基礎知識,我想就不能簡單的回答了。但是作爲一個換專業的人,或者半路出家的人,毫無疑問,我們必然要花費比那些專業出身的人花更多的精力去了解。我個人認爲,系統性的方法並不一定就是最好的方法,相反,一定的查漏補缺是學習過程中十分必要的方法。

歡迎訂閱本博客的後續博客。後續博客將主要着眼於卷積神經網絡在特徵提取中的發展過程及其基本原理,也就是理論部分。

5.後續論文列表:

1 AlexNet, ZFNet - ImageNet Classification with Deep Convolutional Neural Networks - Visualizing and Understanding Convolutional Networks
2 GoogleNet (Inception, Inception v2-v3) - Going Deeper with Convolutions - Rethinking the Inception Architecture for Computer Vision
3 VGGNet Very deep convolutional networks for large-scale image recognition
4 ResNet Deep Residual Learning for Image Recognition
5 Inception v4, Inception-ResNet Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning
6 PolyNet PolyNet: A Pursuit of Structural Diversity in Very Deep Networks
7 ResNeXt Aggregated Residual Transformations for Deep Neural Networks
8 Residual Attention Net Residual Attention Network for Image Classification
9 DenseNet Densely Connected Convolutional Networks
10 FractalNet FractalNet: Ultra-deep neural networks without residuals
11 DualPath Net Dual Path Networks
12 SENet Squeeze-and-Excitation Networks
13 FPNet Feature Pyramid Networks for Object Detection
14 NASNet, PNASNet - Learning Transferable Architectures for Scalable Image Recognition - Progressive Neural Architecture Search
15 Dilated Convolutions Dilated Residual Networks
16 Deformable Convolutions Deformable Convolutional Networks
17 DiCENet DiCENet: Dimension-wise Convolutions for Efficient Networks
18 XceptionNet
19 ShuffleNet
20 MobileNets

爲何要點贊?

如果本文解決了你的困惑,不妨點個贊鼓勵一下。
不管你信不信,也不管你同不同意,實際上,你的每一次點贊都標誌着你自身的進步。而打賞乃是點讚的高級形式
曾經有無數個點讚的機會,但是我都沒有好好珍惜,假如時光可以倒流,我一定爲他們也爲自己點贊。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章