在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于TensorFlow和Keras的圖像識別

穎脈Imgtec ? 2024-01-13 08:27 ? 次閱讀

來源:深度學(xué)習(xí)愛好者


簡介

TensorFlow和Keras最常見的用途之一是圖像識別/分類。通過本文,您將了解如何使用Keras達(dá)到這一目的。


定義

如果您不了解圖像識別的基本概念,將很難完全理解本文的內(nèi)容。因此在正文開始之前,讓我們先花點(diǎn)時(shí)間來了解一些術(shù)語。

TensorFlow/Keras

TensorFlow是Google Brain團(tuán)隊(duì)創(chuàng)建的一個(gè)Python開源庫,它包含許多算法和模型,能夠?qū)崿F(xiàn)深度神經(jīng)網(wǎng)絡(luò),用于圖像識別/分類和自然語言處理等場景。TensorFlow是一個(gè)功能強(qiáng)大的框架,通過實(shí)現(xiàn)一系列處理節(jié)點(diǎn)來運(yùn)行,每個(gè)節(jié)點(diǎn)代表一個(gè)數(shù)學(xué)運(yùn)算,整個(gè)系列節(jié)點(diǎn)被稱為“圖”。Keras是一個(gè)高級API(應(yīng)用程序編程接口),支持TensorFlow(以及像Theano等其他ML庫)。其設(shè)計(jì)原則旨在用戶友好和模塊化,盡可能地簡化TensorFlow的強(qiáng)大功能,在Python下使用無需過多的修改和配置圖像識別(分類)

圖像識別是指將圖像作為輸入傳入神經(jīng)網(wǎng)絡(luò)并輸出該圖像的某類標(biāo)簽。該標(biāo)簽對應(yīng)一個(gè)預(yù)定義的類。圖像可以標(biāo)記為多個(gè)類或一個(gè)類。如果只有一個(gè)類,則應(yīng)使用術(shù)語“識別”,而多類識別的任務(wù)通常稱為“分類”。

圖像分類的子集是對象檢測,對象的特定實(shí)例被識別為某個(gè)類如動物,車輛或者人類等。

特征提取

為了實(shí)現(xiàn)圖像識別/分類,神經(jīng)網(wǎng)絡(luò)必須進(jìn)行特征提取。特征作為數(shù)據(jù)元素將通過網(wǎng)絡(luò)進(jìn)行反饋。在圖像識別的特定場景下,特征是某個(gè)對象的一組像素,如邊緣和角點(diǎn),網(wǎng)絡(luò)將通過分析它們來進(jìn)行模式識別。

特征識別(或特征提?。┦菑妮斎雸D像中拉取相關(guān)特征以便分析的過程。許多圖像包含相應(yīng)的注解和元數(shù)據(jù),有助于神經(jīng)網(wǎng)絡(luò)獲取相關(guān)特征。


神經(jīng)網(wǎng)絡(luò)如何學(xué)習(xí)識別圖像

直觀地了解神經(jīng)網(wǎng)絡(luò)如何識別圖像將有助于實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)模型,因此在接下來的幾節(jié)中將簡要介紹圖像識別過程。

使用濾波器進(jìn)行特征提取

9065a0ae-b1aa-11ee-aa22-92fbcf53809c.jpg

圖片來源:commons.wikimedia.org

神經(jīng)網(wǎng)絡(luò)的第一層接收圖像的所有像素。當(dāng)所有的數(shù)據(jù)傳入網(wǎng)絡(luò)后,將不同的濾波器應(yīng)用于圖像,構(gòu)成圖像不同部分的表示。這是特征提取,它創(chuàng)建了“特征映射”。

從圖像中提取特征的過程是通過“卷積層”完成的,并且卷積只是形成圖像的部分表示。由卷積的概念延伸出卷積神經(jīng)網(wǎng)絡(luò)(CNN)這一術(shù)語,它是圖像分類/識別中最常用的神經(jīng)網(wǎng)絡(luò)類型。

如果您無法想象特征映射是如何創(chuàng)建的,可以試想將手電筒照在暗室圖片的景象。當(dāng)光束滑過圖片時(shí),您正在學(xué)習(xí)圖像的特征。在這個(gè)比喻中,手電筒發(fā)射的光束就是濾波器,它被網(wǎng)絡(luò)用于形成圖像的表示。

光束的寬度控制著一次掃過的圖像的區(qū)域大小,神經(jīng)網(wǎng)絡(luò)具有類似的參數(shù),即濾波器的大小。它影響一次掃過的圖像的像素?cái)?shù)。CNN中常見的濾波器尺寸為3,這包括高度和寬度,因此所掃描的像素區(qū)域大小為3×3。

9073d2b4-b1aa-11ee-aa22-92fbcf53809c.jpg圖片來源:commons.wikimedia.org

雖然濾波器的尺寸覆蓋其高度和寬度,同時(shí)也需要明確濾波器的深度。

2D圖像如何具有深度?

數(shù)字圖像被渲染為高度、寬度和一些定義像素顏色的RGB值,因此被跟蹤的“深度”是圖像具有的顏色通道的數(shù)量?;叶龋ǚ遣噬﹫D像僅包含1個(gè)顏色通道,而彩色圖像包含3個(gè)顏色通道。

這意味著對于應(yīng)用于全彩色圖像的尺寸為3的濾波器,其規(guī)模為3×3×3。對于該濾波器覆蓋的每個(gè)像素,神經(jīng)網(wǎng)絡(luò)將濾波器的值和像素本身的值相乘以獲取像素的數(shù)值表示。然后,對整個(gè)圖像完成上述過程以實(shí)現(xiàn)完整的表示。根據(jù)參數(shù)“步幅”,濾波器在圖像的其余部分滑動。該參數(shù)定義了在計(jì)算當(dāng)前位置的值之后,濾波器要滑動的像素?cái)?shù)。CNN的默認(rèn)步幅取值為2。

通過上述計(jì)算,最終將獲取特征映射。此過程通常由多個(gè)濾波器完成,這有助于保持圖像的復(fù)雜性。

激活函數(shù)

當(dāng)圖像的特征映射創(chuàng)建完成之后,表示圖像的值將通過激活函數(shù)或激活層進(jìn)行傳遞。受卷積層的影響,激活函數(shù)獲取的表示圖像的值呈線性,并且由于圖像本身是非線性的,因此也增加了該值的非線性。

盡管偶爾會使用一些其他的激活函數(shù),線性整流函數(shù)(Rectified Linear Unit, ReLU)是最常用的。

池化層

當(dāng)數(shù)據(jù)被激活之后,它們將被發(fā)送到池化層。池化對圖像進(jìn)行下采樣,即獲取圖像信息并壓縮,使其變小。池化過程使網(wǎng)絡(luò)更加靈活,更擅長基于相關(guān)特征來識別對象/圖像。

當(dāng)觀察圖像時(shí),我們通常不關(guān)心背景信息,只關(guān)注我們關(guān)心的特征,例如人類或動物。

類似地,CNN的池化層將抽象出圖像不必要的部分,僅保留相關(guān)部分。這由池化層指定的大小進(jìn)行控制。

由于池化層需要決定圖像中最相關(guān)的部分,所以希望神經(jīng)網(wǎng)絡(luò)只學(xué)習(xí)真正表示所討論對象的部分圖像。這有助于防止過度擬合,即神經(jīng)網(wǎng)絡(luò)很好地學(xué)習(xí)了訓(xùn)練案例,并無法類推到新數(shù)據(jù)。

907f8db6-b1aa-11ee-aa22-92fbcf53809c.jpg

池化值的方式有多種,最大池化(max pooling)是最常用的。最大池化獲取單個(gè)濾波器中像素的最大值。假設(shè)使用卷積核大小為2×2的濾波器,將會丟失3/4的信息。
使用像素的最大值以便考慮可能的圖像失真,并且減小圖像的參數(shù)/尺寸以便控制過度擬合。還有一些其他的池化類型,如均值池化(average pooling)和求和池化(sum pooling),但這些并不常用,因?yàn)樽畲蟪鼗_度更高。

壓平(Flattening)

CNN的最后一層,即稠密層,要求數(shù)據(jù)采用要處理的矢量形式。因此,數(shù)據(jù)必須“壓平”。值將被壓縮成向量或按順序排列的列。

全連接層

CNN的最后一層是稠密層,或人工神經(jīng)網(wǎng)絡(luò)(ANN)。ANN主要用于分析輸入特征并將其組合成有助于分類的不同屬性。這些層基本上形成了代表所討論對象的不同部分的神經(jīng)元集合,并且這些集合可能代表狗松軟的耳朵或者蘋果的紅色。當(dāng)足夠的神經(jīng)元被激活用于響應(yīng)輸入圖像時(shí),該圖像將被分類為某個(gè)對象。

908a855e-b1aa-11ee-aa22-92fbcf53809c.jpg

圖片來源:commons.wikimedia.org

數(shù)據(jù)集中計(jì)算值和期望值之間的誤差由ANN進(jìn)行計(jì)算。然后網(wǎng)絡(luò)經(jīng)過反向傳播,計(jì)算給定神經(jīng)元對下一層神經(jīng)元的影響并對其進(jìn)行調(diào)整。如此可以優(yōu)化模型的性能,然后一遍又一遍地重復(fù)該過程。以上就是神經(jīng)網(wǎng)絡(luò)如何訓(xùn)練數(shù)據(jù)并學(xué)習(xí)輸入特征和輸出類之間的關(guān)聯(lián)。
中間的全連接層的神經(jīng)元將輸出與可能的類相關(guān)的二進(jìn)制值。如果有四個(gè)不同的類(例如狗,汽車,房子以及人),神經(jīng)元對于圖像代表的類賦“1”,對其他類賦“0”。最終的全連接層將接收之前層的輸出,并傳遞每個(gè)類的概率,總和為1。如果“狗”這一類別的值為0.75,則表示該圖像是狗的確定性為75%。至此圖像分類器已得到訓(xùn)練,并且可以將圖像傳入CNN,CNN將輸出關(guān)于該圖像內(nèi)容的猜想。


機(jī)器學(xué)習(xí)的工作流

在開始訓(xùn)練圖像分類器的示例之前,讓我們先來了解一下機(jī)器學(xué)習(xí)的工作流程。訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的過程是相當(dāng)標(biāo)準(zhǔn)的,可以分為四個(gè)不同的階段。

數(shù)據(jù)準(zhǔn)備

首先,需要收集數(shù)據(jù)并將其放入網(wǎng)絡(luò)可以訓(xùn)練的表中。這涉及收集圖像并標(biāo)記它們。即使下載了其他人準(zhǔn)備好的數(shù)據(jù)集,也可能需要進(jìn)行預(yù)處理,然后才能用于訓(xùn)練。數(shù)據(jù)準(zhǔn)備本身就是一門藝術(shù),包括處理缺失值,數(shù)據(jù)損壞,格式錯(cuò)誤的數(shù)據(jù),不正確的標(biāo)簽等。

創(chuàng)建模型

創(chuàng)建神經(jīng)網(wǎng)絡(luò)模型涉及各種參數(shù)和超參數(shù)的選擇。需要確定所用模型的層數(shù),層輸入和輸出的大小,所用激活函數(shù)的類型,以及是否使用dropout等。

訓(xùn)練模型

創(chuàng)建模型后,只需創(chuàng)建模型實(shí)例并將其與訓(xùn)練數(shù)據(jù)相匹配即可。訓(xùn)練模型時(shí),一個(gè)重要的因素即訓(xùn)練所需時(shí)間。您可以通過指定訓(xùn)練的epoch數(shù)目來指定網(wǎng)絡(luò)的訓(xùn)練時(shí)長。時(shí)間越長,其性能就越高,但是epoch次數(shù)過多將存在過度擬合的風(fēng)險(xiǎn)。

您可以適當(dāng)?shù)卦O(shè)置訓(xùn)練時(shí)的epoch數(shù)目,并且通常會保存訓(xùn)練周期之間的網(wǎng)絡(luò)權(quán)重,這樣一旦在訓(xùn)練網(wǎng)絡(luò)方面取得進(jìn)展時(shí),就無需重新開始了。

模型評估

評估模型有多個(gè)步驟。評估模型的第一步是將模型與驗(yàn)證數(shù)據(jù)集進(jìn)行比較,該數(shù)據(jù)集未經(jīng)模型訓(xùn)練過,可以通過不同的指標(biāo)分析其性能。評估神經(jīng)網(wǎng)絡(luò)模型的性能有各種指標(biāo),最常見的指標(biāo)是“準(zhǔn)確率”,即正確分類的圖像數(shù)量除以數(shù)據(jù)集中的圖像總和。在了解模型性能在驗(yàn)證數(shù)據(jù)集上的準(zhǔn)確率后,通常會微調(diào)參數(shù)并再次進(jìn)行訓(xùn)練,因?yàn)槭状斡?xùn)練的結(jié)果大多不盡人意,重復(fù)上述過程直到對準(zhǔn)確率感到滿意為止。

最后,您將在測試集上測試網(wǎng)絡(luò)的性能。該測試集是模型從未用過的數(shù)據(jù)。

也許您在想:為什么要用測試集呢?如果想了解模型的準(zhǔn)確率,采用驗(yàn)證數(shù)據(jù)集不就可以了嗎?

采用網(wǎng)絡(luò)從未訓(xùn)練過的一批數(shù)據(jù)進(jìn)行測試是有必要的。因?yàn)樗袇?shù)的調(diào)整,結(jié)合對驗(yàn)證集的重新測試,都意味著網(wǎng)絡(luò)可能已經(jīng)學(xué)會了驗(yàn)證集的某些特征,這將導(dǎo)致無法推廣到樣本外的數(shù)據(jù)。

因此,測試集的目的是為了檢測過度擬合等問題,并且使模型更具實(shí)際的應(yīng)用價(jià)值。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像識別
    +關(guān)注

    關(guān)注

    9

    文章

    526

    瀏覽量

    38928
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4825

    瀏覽量

    86268
  • tensorflow
    +關(guān)注

    關(guān)注

    13

    文章

    330

    瀏覽量

    61049
收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    AI圖像識別攝像機(jī)

    隨著科技的迅猛發(fā)展,人工智能(AI)在各個(gè)領(lǐng)域的應(yīng)用越來越廣泛,其中圖像識別技術(shù)尤為引人注目。AI圖像識別攝像機(jī)作為這一技術(shù)的重要應(yīng)用之一,正在逐步改變我們的生活和工作方式。什么是AI圖像識別攝像機(jī)
    的頭像 發(fā)表于 11-08 10:38 ?782次閱讀
    AI<b class='flag-5'>圖像識別</b>攝像機(jī)

    圖像識別算法有哪幾種

    圖像識別算法是計(jì)算機(jī)視覺領(lǐng)域的核心技術(shù)之一,它通過分析和處理圖像數(shù)據(jù),實(shí)現(xiàn)對圖像中的目標(biāo)、場景和物體的識別和分類。 圖像識別算法的發(fā)展歷程
    的頭像 發(fā)表于 07-16 11:22 ?2323次閱讀

    圖像檢測和圖像識別的原理、方法及應(yīng)用場景

    圖像檢測和圖像識別是計(jì)算機(jī)視覺領(lǐng)域的兩個(gè)重要概念,它們在許多應(yīng)用場景中發(fā)揮著關(guān)鍵作用。 1. 定義 1.1 圖像檢測 圖像檢測(Object Detection)是指在
    的頭像 發(fā)表于 07-16 11:19 ?6672次閱讀

    圖像識別算法都有哪些方法

    圖像識別算法是計(jì)算機(jī)視覺領(lǐng)域的核心任務(wù)之一,它涉及到從圖像中提取特征并進(jìn)行分類、識別和分析的過程。隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,圖像識別算法已經(jīng)取得了顯著的進(jìn)展。本文將介紹
    的頭像 發(fā)表于 07-16 11:14 ?7225次閱讀

    圖像識別算法的提升有哪些

    引言 圖像識別是計(jì)算機(jī)視覺領(lǐng)域的核心任務(wù)之一,旨在使計(jì)算機(jī)能夠自動地識別和理解圖像中的內(nèi)容。隨著計(jì)算機(jī)硬件的發(fā)展和深度學(xué)習(xí)技術(shù)的突破,圖像識別算法的性能得到了顯著提升。本文將介紹
    的頭像 發(fā)表于 07-16 11:12 ?1002次閱讀

    圖像識別算法的優(yōu)缺點(diǎn)有哪些

    圖像識別算法是一種利用計(jì)算機(jī)視覺技術(shù)對圖像進(jìn)行分析和理解的方法,它在許多領(lǐng)域都有廣泛的應(yīng)用,如自動駕駛、醫(yī)療診斷、安全監(jiān)控等。然而,圖像識別算法也存在一些優(yōu)缺點(diǎn)。 一、圖像識別算法的優(yōu)
    的頭像 發(fā)表于 07-16 11:09 ?2936次閱讀

    圖像識別算法的核心技術(shù)是什么

    圖像識別算法是計(jì)算機(jī)視覺領(lǐng)域的一個(gè)重要研究方向,其目標(biāo)是使計(jì)算機(jī)能夠像人類一樣理解和識別圖像中的內(nèi)容。圖像識別算法的核心技術(shù)包括以下幾個(gè)方面: 特征提取 特征提取是
    的頭像 發(fā)表于 07-16 11:02 ?1199次閱讀

    圖像識別技術(shù)包括自然語言處理嗎

    圖像識別技術(shù)與自然語言處理是人工智能領(lǐng)域的兩個(gè)重要分支,它們在很多方面有著密切的聯(lián)系,但也存在一些區(qū)別。 一、圖像識別技術(shù)與自然語言處理的關(guān)系 1.1 圖像識別技術(shù)的定義 圖像識別技術(shù)
    的頭像 發(fā)表于 07-16 10:54 ?1383次閱讀

    圖像識別技術(shù)在醫(yī)療領(lǐng)域的應(yīng)用

    一、引言 圖像識別技術(shù)是一種利用計(jì)算機(jī)視覺技術(shù)對圖像進(jìn)行分析和處理的技術(shù)。隨著計(jì)算機(jī)技術(shù)、人工智能技術(shù)、大數(shù)據(jù)技術(shù)等的發(fā)展,圖像識別技術(shù)在各個(gè)領(lǐng)域的應(yīng)用越來越廣泛。在醫(yī)療領(lǐng)域,圖像識別
    的頭像 發(fā)表于 07-16 10:48 ?1923次閱讀

    圖像識別技術(shù)的原理是什么

    圖像識別技術(shù)是一種利用計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)技術(shù)對圖像進(jìn)行分析和理解的技術(shù)。它可以幫助計(jì)算機(jī)識別和理解圖像中的對象、場景和活動。 圖像預(yù)處理
    的頭像 發(fā)表于 07-16 10:46 ?2359次閱讀

    圖像識別屬于人工智能嗎

    屬于。圖像識別是人工智能(Artificial Intelligence, AI)領(lǐng)域的一個(gè)重要分支。 一、圖像識別概述 1.1 定義 圖像識別是指利用計(jì)算機(jī)技術(shù)對圖像中的內(nèi)容進(jìn)行分析
    的頭像 發(fā)表于 07-16 10:44 ?1899次閱讀

    opencv圖像識別有什么算法

    圖像識別算法: 邊緣檢測 :邊緣檢測是圖像識別中的基本步驟之一,用于識別圖像中的邊緣。常見的邊緣檢測算法有Canny邊緣檢測器、Sobel邊緣檢測器和Laplacian邊緣檢測器。 特
    的頭像 發(fā)表于 07-16 10:40 ?1774次閱讀

    keras模型轉(zhuǎn)tensorflow session

    在這篇文章中,我們將討論如何將Keras模型轉(zhuǎn)換為TensorFlow session。 KerasTensorFlow簡介 Keras
    的頭像 發(fā)表于 07-05 09:36 ?812次閱讀

    如何利用CNN實(shí)現(xiàn)圖像識別

    卷積神經(jīng)網(wǎng)絡(luò)(CNN)是深度學(xué)習(xí)領(lǐng)域中一種特別適用于圖像識別任務(wù)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。它通過模擬人類視覺系統(tǒng)的處理方式,利用卷積、池化等操作,自動提取圖像中的特征,進(jìn)而實(shí)現(xiàn)高效的圖像識別。本文將從CNN的基本原理、構(gòu)建過程、訓(xùn)練策略以
    的頭像 發(fā)表于 07-03 16:16 ?2543次閱讀

    神經(jīng)網(wǎng)絡(luò)在圖像識別中的應(yīng)用

    隨著人工智能技術(shù)的飛速發(fā)展,神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域的應(yīng)用日益廣泛。神經(jīng)網(wǎng)絡(luò)以其強(qiáng)大的特征提取和分類能力,為圖像識別帶來了革命性的進(jìn)步。本文將詳細(xì)介紹神經(jīng)網(wǎng)絡(luò)在圖像識別中的應(yīng)用案例,包括卷積神經(jīng)網(wǎng)絡(luò)(CNN)在面部
    的頭像 發(fā)表于 07-01 14:19 ?1118次閱讀
    主站蜘蛛池模板: 年下攻高h好涨 | 欧美一级黄色片视频 | 永久在线 | 手机在线黄色网址 | 我爱操| 国产黄色三级三级三级 | 国产成人亚洲精品77 | 天天射狠狠干 | 欧洲性开放大片免费观看视频 | www.男人| 国产精品入口免费视频 | 天天干夜夜做 | 国产香蕉视频在线 | 综合欧美亚洲 | 色多多www网站 | 九九热视频免费在线观看 | 女人张腿让男桶免费视频观看 | 亚洲人成综合网站在线 | 天天做夜夜做 | 夜夜爽www | 免费观看一区二区 | 18美女扒开尿口无遮挡 | 日日摸夜夜爽 | 精品国产污网站在线观看15 | 高h乱肉辣文辣书阁 | 色综合欧美综合天天综合 | 欧美亚洲在线 | 四虎影像| 四虎最新免费网址 | 四月激情网 | 婷婷丁香色综合狠狠色 | 欧美综合网站 | 中文字幕精品一区影音先锋 | 欧美午夜寂寞影院安卓列表 | 日本丝瓜着色视频 | 成人三级在线播放线观看 | 三级欧美视频 | jk黑色丝袜美腿老师啪啪 | 色色色色色色色色色色色色 | 91人成网站色www免费 | 69久久夜色精品国产69小说 |