深度學習圖像識別技術——基於TenseorFlow Object Detection API和Open VINO工具套件
讀書總結
1.1什麼是人工智慧
人工智慧是研究用於模擬、延伸、和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。人工智慧是計算機科學的一個分支,它企圖了解人工智慧的實質,並生產出一種新的與人類智能相似的方式作出反應的智能機器,該領域的研究包括機器人、語音識別、圖像識別、自然語言處理和專家系統等。其中,在語音識別方面有語音助手、翻譯機及智能音箱等應用;在圖像識別方面有智能駕駛、人臉識別和醫學影像識別等應用。
1.2人工智慧發展的現狀
20世紀80年代處,「專家系統」開始風靡人工智慧的領先國家,AI專家系統具體指一種程序,能夠依據一組從專門知識中推演出的邏輯規則在某一特定領域回答或解決問題。雖然其設計簡單,易於實現,但是由於AI系統維護費用居高不下,加上其操作複雜、太局限於經驗知識和規則,難以構築有效的系統,所以專家系統以失敗告終。
2006年,被稱為「神經網絡之父」和「深度學習鼻祖」的Geoffrey Hinton在Science發文指出:「多隱層神經網絡具有更為優異的特徵學習能力,並且其在訓練上的複雜程度可以通過逐層初始化來有效緩解」,讓人們看到了人工智慧同故宮深度學習技術超越人類的希望,2006年也被稱為深度學習元年。
在GPU加速和大數據的加持下,深度學習發展如火如荼。
2012年,Geoffrey Hinton及其學生創造了一個「大型的深度卷積神經網絡(CNN)」,即現在的AlexNet,贏得了當年的ImageNet圖像分類比賽的冠軍,首次實現了Top5誤差率從25.8%下降到15.4%。
2016年,Google子公司DeepMind開發的基於深度神經網絡的人工智慧圍棋程序AlphaGo以4:1戰勝了棋王李世石,以深度學習技術為代表的人工智慧再次火爆全球。
2017年,我國發布《新一代人工智慧發展規劃》,拉開了我國從國家層面支持和發展人工智慧產業的序幕。
目前,AI已在金融、醫療及安防領域實現了技術落地,而且應用場景也會越來越豐富,引發了各個行業的深刻變革。未來AI的發展將是技術與產業的結合,實現AI技術賦能各行各業,解決痛點、創造價值、降本增效。在這個趨勢下,作為AI工程師,應該更能多地從應用價值切入,推動AI項目落地,而不是僅僅停留在AI模型調優上。
1.3人工智慧和深度學習的關係
當前的人工智慧的大爆發是由於深度學習引起的,所以各種媒體文章上,人工智慧和深度學習兩個概念經常被混用。從技術層面上來說,深度學習是機器學習諸多算法中的一種,而機器學習又是人工智慧的一個子集。
AI的概念多面向公眾,深度學習多面向技術人員。
深度學習就是用深度神經網絡來自動學習對象特徵,然後讓深度神經網絡具備識別對象的能力。
2.1神經網絡
神經網絡就是多個神經元的堆疊。神經元構成的網狀的拓撲結構具備一定的智慧能力(分類能力),所以給他起了一個通俗易懂的名字——神經網絡。
2.2神經元
神經網絡由神經元堆疊而成,神經網絡的基本組件就是神經元。
以小學數學的視角看,神經元就是簡單的四則混合運算:神經元輸入「x」與權重「w」想成,再求和得「u」,所得的和「u」再經過激活函數「f()」處理,得到神經元輸出「y」,也就是下一級神經元的輸入,如圖所示。
每個神經元的基本運算是乘法和加法,即乘加運算:多個神經元堆疊起來,就是多個乘加運算,這個特點非常適合具有大量(上千個)乘加硬體計算單元的GPU來計算,這也是GPU比CPU計算神經網絡更快的原因。
輸入經過本級級神經元處理的搭配輸出並傳入下一級神經元的計算過程稱為前饋計算。
2.3深度神經網絡
最基本的神經網絡有三層,第一層是輸入層、第二層是隱藏層、第三層是輸出層。若隱藏層的層數很多,那麼神經網絡就是有很多層神經網絡,簡稱多層神經網絡。
研究表明,神經網絡的層數越多,其表達能力越強。所以深度神經網絡有很強的信息表達能力。
2.4深度卷積神經網絡
深度卷積神經網絡(CNN)中的深度二字常被省略,簡稱為卷積神經網絡(CNN),表達的意思是具備多個卷積計算層的神經網絡。
卷積神經網絡強大的自動提取特徵的能力和極高的圖像分類準確率深受業界認可,越來越多的在計算機視覺領域的圖像分類、檢測和分割應用中大顯身手。
3.1什麼是目標檢測
目標檢測(Object Detection),又稱為物體檢測。目標檢測在許多領域都有廣泛的應用,包括排計算機視覺、自動駕駛、人機互動、基於內容的圖像檢索、智能視頻監控和增強現實等。
目標檢測的任務是確定在給定的圖像中是否存在期望的物體(如人、車、自行車、貓和狗等),如果有,返回每個物體的類別、位置(邊界框)和置信度(Confidence),相當於完成了圖像分類+圖像定位的工作。
對於應用者來說,可以把目標檢測算法理解為一個黑盒子,輸入時圖像,輸出是圖像中物體的類別、置信度和位置。
3.2深度學習目標檢測算法
進入深度學習時代,深度學習目標檢測應用的典型開發流程變為收集圖片、標註圖片、訓練模型和部署模型這四部。
與傳統目標檢測算法相比,深度學習目標檢測算法是通用化的目標檢測算法,而非定製化的目標檢測算法,所以只要掌握了深度學習算法開發工具的人,都可以訓練出自己想要的目標檢測模型。
4.1訓練深度學習模型依賴大數據
深度卷積神經網絡具有極高的分類精度,同時也具有極多的參數需要訓練,例如,著名的AlexNet有57,000,000個參數需要訓練。要將如此多的參數訓練出來,需要上萬甚至十萬百萬以上的數據,即大學數。另外,還需要與之相匹配的超強算力,即雲計算。
AI必備三要素:深度學習算法+雲計算+大數據,三者互相促進不斷迭代,引發了AI的第三次高潮。
4.2大數據造成的問題
(1)大數據帶來的第一個問題是:收集數據非常困難。
(2)大數據帶來的第二個問題是:標註數據非常耗時。
(3)大數據帶來的第三個問題是:訓練模型非常耗時。
是否有方法可以解決上述的問題嗎?遷移學習就是一個非常好的辦法。
4.3遷移學習
遷移學習是指加入有一個已經在大規模數據集上訓練好的模型,將該模型學習到的知識遷移到另一個模型,即保留特徵提取器不變,在具有相似特徵的新的數據集上重新訓練分類器。
用比較直白的話來說,就是先下載別人已經訓練好的模型,然後基於這個模型做深度學習訓練。
驅動深度學習商業成功的兩大動力,一是監督學習,二是遷移學習。
由此,在商業落地上,AI分為兩個類別:
(1)第一類是雲計算+大數據能力+AI科學家+AI算法工程師的巨頭公司,他們很容易收集到數據,並且可以很容易收集到數據,並且可以僱傭成千上萬的人做數據標註,他們能夠基於監督學習,從頭設計研發並訓練有巨大商業價值潛力的模型。
(2)第二類是廣大的中小企業和非AI行業從業者,他們無法擁有雲計算,沒有足夠的經費僱傭高水平的AI算法工程師和大量做數據標註的人。他們紮根細分行業,基於遷移學習,做著巨頭公司不願意做的定製化項目。這些定製項目的商業價值都不巨大,不值得巨頭去投入,但數量驚人,各行各業都有。
微信號|domkin-gogogo
QQ號|3289270752
文章來源:domkin戰隊高鴻志
責任編輯:domkin戰隊宮美琪
作者博客地址:https://blog.csdn.net/qq_45779334