乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      刷臉支付、AI修圖靠的是什么?本文幫你解答

       孟溪ProbeT連山 2019-02-07

      作者——Alyson Brown

      你有沒有好奇過為什么刷臉就可以給手機解鎖?或者與朋友自拍時,系統(tǒng)自動給你適配濾鏡?你是否知道這些很酷的功能是通過一個奇妙的神經(jīng)網(wǎng)絡實現(xiàn)的,它不僅可以識別出照片中的人臉,還可以識別出一些具體特征(比如,耳朵,嘴巴等等)的位置。從某種意義上說,你的手機可以'看到'你,它甚至可以知道你的樣子!

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      幫助計算機'看到'的技術(shù)被稱為'computer vision'。近年來,由于計算能力的爆炸式增長,使得深度學習模型更好、更可行,計算機視覺應用正變得越來越普遍。亞馬遜,谷歌,特斯拉,F(xiàn)acebook和微軟等許多公司都在大力投資這項技術(shù)及其應用。

      計算機視覺任務

      我們專注于兩個主要的計算機視覺任務 - 圖像分類和對象檢測。

      1. 圖像分類專注于將圖像分組為預定義的類別。為了實現(xiàn)這一點,我們需要擁有我們感興趣類的多個圖像,并訓練計算機將像素數(shù)轉(zhuǎn)換為符號。

      2. 對象檢測利用圖像分類器來確定圖像中存在的內(nèi)容和位置。通過使用卷積神經(jīng)網(wǎng)絡(CNN)使這些任務變得更容易,這使得在一次圖像的傳遞中檢測多個類成為可能。

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      計算機視覺很酷!

      考慮到未來許多有趣的數(shù)據(jù)科學應用程序?qū)⑸婕疤幚韴D像,我們新興數(shù)據(jù)科學家團隊和我決定嘗試在Kaggle上舉辦的Google AI Open Image挑戰(zhàn)(https://www./c/google-ai-open-images-object-detection-track)。我們認為這是一個絕佳的機會,讓我們來接觸神經(jīng)網(wǎng)絡和卷積,并可能會給我們的教授和同學留下深刻的印象。這一挑戰(zhàn)為我們提供了170萬個圖像,其中包含500個對象類的1200個邊界框注釋(它們相對于圖像的X和Y坐標)。你可以在這里找到數(shù)據(jù)(https://www./dataset/open-images-annotated-with-bounding-boxes/)。

      我們強烈建議任何想要閱讀有關(guān)CNN的人閱讀吳恩達關(guān)于卷積神經(jīng)網(wǎng)絡的Coursera課程(https://www./learn/convolutional-neural-networks/home/welcome)。

      讓我們實踐!

      探索性數(shù)據(jù)分析——與所有數(shù)據(jù)分析一樣,我們開始探索我們擁有的圖像以及我們需要檢測的對象類型。

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      訓練數(shù)據(jù)集中的類頻率

      快速瀏覽一下這些訓練圖像,會發(fā)現(xiàn)某些物體在出現(xiàn)的次數(shù)方面比其他物體更多。上圖顯示了前43個類的分布情況。很明顯,存在著巨大的差異。我們需要解決這些問題。為了節(jié)省時間和金錢(GPU成本很高),我們選擇了前面提到的43個對象類和帶有這些對象的300K圖像的子集。我們在訓練數(shù)據(jù)中為每個對象類提供了大約400個圖像。

      選擇目標檢測算法

      我們考慮了各種對象檢測算法,包括VGG、Inception和YOLO,但最終選擇了YOLO算法,因為它的速度、計算能力和豐富的在線文章可以指導我們完成整個過程。面對計算和時間限制,我們做出了兩個關(guān)鍵決定:

      1. 使用經(jīng)過訓練識別某些物體的YOLO v2模型。

      2. 利用遷移學習訓練最后一個卷積層,以識別以前不可見的物體,如吉他、房子、男人/女人、鳥等。

      YOLO的輸入

      YOLO算法需要一些特定的輸入:

      1. 輸入圖像大小——YOLO網(wǎng)絡設計用于處理特定的輸入圖像大小。我們發(fā)送了大小為608 * 608的圖像。

      2. 類的數(shù)量——43。這是定義YOLO輸出的維度所必需的。

      3. Anchor box——要使用的錨框的數(shù)量和尺寸。

      4. Confidence和IoU thresholds——用于定義選擇哪些錨框以及如何在錨框之間進行選擇的閾值。

      5. 帶有邊界框信息的圖像名稱——對于每個圖像,我們需要以特定格式為YOLO提供其中的內(nèi)容,如下所示

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      YOLO的示例輸入

      以下是YOLO輸入的代碼段:

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      YOLO v2架構(gòu)

      該體系架構(gòu)如下所示——它有23個卷積層,每個卷層都有自己的批量標準化、Leaky RELU激活和最大池化。

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      代表實際的YOLO v2架構(gòu)

      這些層試圖從圖像中提取多個重要特征,以便可以檢測各種類。出于對象檢測的目的,YOLO算法將輸入圖像劃分為19 * 19網(wǎng)格,每個網(wǎng)格具有5個不同的錨框。然后,它嘗試檢測每個網(wǎng)格單元中的類,并將對象分配給每個網(wǎng)格單元的5個錨框之一。錨框的形狀不同,旨在為每個網(wǎng)格單元捕獲不同形狀的對象。

      YOLO算法為每個定義的錨框輸出一個矩陣(如下所示)

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      鑒于我們必須訓練43個類的算法,我們得到的輸出尺寸為:

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      這些矩陣為我們提供了觀察每個錨框的對象的概率,以及該對象的類的概率。要過濾掉沒有任何類或與其他框相同的對象的錨框,我們使用兩個閾值,IoU閾值來過濾掉捕獲相同對象的錨框和置信度閾值,以過濾掉不包含錨框的任何一個類。

      下面是YOLO v2架構(gòu)最后幾層的說明:

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      遷移學習

      遷移學習的概念是獲得一個神經(jīng)網(wǎng)絡,該神經(jīng)網(wǎng)絡已經(jīng)經(jīng)過訓練來對圖像進行分類并將其用于我們的特定目的。這節(jié)省了我們的計算時間,因為我們不需要訓練大量的權(quán)重——例如,我們使用的YOLO v2模型有大約5000萬個權(quán)重——訓練可能需要4-5天的時間。

      為了成功實現(xiàn)遷移學習,我們不得不對我們的模型進行一些更新:

      · 輸入圖像大小——我們下載的模型使用大小為416 * 416的輸入圖像。由于我們訓練的一些物體非常小,我們不想那么大地壓縮輸入圖像。出于這個原因,我們使用了大小為608 * 608的輸入圖像。

      · 網(wǎng)格大小——我們更改了網(wǎng)格大小的尺寸,以便將圖像劃分為19 * 19網(wǎng)格單元而不是13 * 13,這是我們下載的模型的默認值。

      · 輸出層——由于我們在不同數(shù)量的類43上進行訓練,而不是在原始模型的類80上進行訓練,因此輸出層被更改為輸出矩陣維度,如前所述。

      我們重新初始化了YOLO最后一個卷積層的權(quán)重,以便在我們的數(shù)據(jù)集上訓練它,最終幫助我們識別出獨特的類。以下是相同的代碼片段:

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      重新初始化YOLO的最后一個卷積層

      成本函數(shù)

      在任何對象檢測問題中,我們希望在圖像中具有高置信度的正確位置識別正確的對象。成本函數(shù)有三個主要組成部分(https:///pdf/1506.02640.pdf):

      1. 分類損失:如果檢測到對象,則為類條件概率的平方誤差。因此,只有當網(wǎng)格單元中存在對象時,損失函數(shù)才會懲罰分類錯誤。

      2. 定位損失:如果真值框負責檢測對象,則是預測邊界框位置和大小與地面實況框的平方誤差。為了懲罰邊界框坐標預測的損失,我們使用正則化參數(shù)(?coord)。此外,為了確保較大框中的小偏差小于較小框中的小偏差,算法使用邊界框?qū)挾群透叨鹊钠椒礁?/p>

      3. 置信度損失:它是邊界框置信度得分的平方誤差。大多數(shù)錨盒不負責檢測物體,因此方程式分為兩部分,一部分用于檢測物體的錨盒,另一部分用于其它錨盒。將正則化項λnoobj(默認值:0.5)應用于后一部分以權(quán)衡未檢測到對象的框。

      請隨時參考原始的YOlO(https:///pdf/1506.02640.pdf),了解成本函數(shù)的詳細信息。

      YOLO的優(yōu)點在于它使用易于使用優(yōu)化函數(shù)進行優(yōu)化的誤差,例如隨機梯度下降(SGD),帶動量的SGD或Adam等。下面的代碼片段顯示了我們用于優(yōu)化成本函數(shù)的參數(shù)。

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      YOLO訓練算法(Adam optimizer)

      輸出精度——平均精確度(mAP分數(shù)):

      在對象檢測中評估模型有許多度量標準,對于我們的項目,我們決定使用mAP分數(shù),它是不同召回值在所有IoU閾值上最大精度的平均值。為了理解mAP,我們將快速回顧精度,召回和IoU(交叉結(jié)合)。

      精確和召回

      精確度衡量正確預測的百分比。召回是所有可能結(jié)果中真陽性的比例。這兩個值是反向相關(guān)的,也取決于你為模型設置的模型得分閾值(在我們的例子中,它是置信度得分)。數(shù)學定義如下:

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      交叉口聯(lián)合(IoU)

      IoU測量兩個區(qū)域之間有多少重疊,也就是聯(lián)合區(qū)域上的重疊面積。這可以衡量你的預測(來自你的物體探測器)與地面實況(真實物體邊界)的對比情況。總而言之,mAP分數(shù)是所有IoU閾值的平均AP。

      結(jié)果

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      刷臉支付、AI修圖靠的是什么?本文幫你解答

      結(jié)論

      對象檢測不同于其他計算機視覺任務。你可以使用預先訓練的模型并根據(jù)需要進行編輯以滿足你的需求。你將需要GCP或其他允許更高計算能力的平臺。

      經(jīng)驗教訓

      最初,我們發(fā)現(xiàn)該模型無法預測許多類,因為其中很多類只有少量的訓練圖像,這導致了數(shù)據(jù)集訓練不平衡。因此,我們決定只使用最受歡迎的43個類,這不是一個完美的方法,但每個類至少有500個圖像。然而,我們預測的置信度仍然很低。為了解決這個問題,我們選擇了包含目標類的圖像。

      對象檢測是一個非常具有挑戰(zhàn)性的主題,但不要害怕,嘗試盡可能多地從各種開源來學習,如Coursera,YouTube教學視頻,GitHub和Medium。所有這些免費的智慧可以幫助你在這個神奇的領(lǐng)域取得成功!

      刷臉支付、AI修圖靠的是什么?本文幫你解答

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多