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

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

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

CNN的一些基本的概念解讀

lviY_AI_shequ ? 2017-12-04 18:24 ? 次閱讀

終于要開 CNN(卷積神經(jīng)網(wǎng)絡(luò))這個(gè)神坑了。不過之所以說它神坑,是因?yàn)檫@里面牽扯到的數(shù)學(xué)概念相當(dāng)相當(dāng)多、導(dǎo)致如果只用 Numpy、從頭來實(shí)現(xiàn)的話會(huì)非常繁瑣。然而,如果只是理解它的直觀并且單純地實(shí)現(xiàn)它的話,由于有偉大的 tensorflow 框架、CNN 被極大地簡(jiǎn)化成了一個(gè)平凡的東西

我打算在不帶星號(hào)的章節(jié)中說明如何運(yùn)用 tensorflow 框架將 CNN 整合進(jìn)我們之前實(shí)現(xiàn)的神經(jīng)網(wǎng)絡(luò)框架中、并在帶星號(hào)的章節(jié)中說明如何使用純 Numpy 從頭實(shí)現(xiàn)一個(gè) CNN 框架。CNN 坑就坑在帶星號(hào)的章節(jié),所以觀眾老爺們大可帶著輕松愉悅的心情食用不帶星號(hào)的章節(jié) ( σ'ω')σ

這一章主要講 CNN 的一些非?;镜母拍?。首先我想指出的是:從結(jié)構(gòu)上來說,樸素的 CNN 和樸素的 NN 沒有任何區(qū)別(當(dāng)然,復(fù)雜的 CNN 會(huì)和 NN 有著比較大的區(qū)別)。這意味著樸素的 CNN 包含且只包含下列兩個(gè)東西:

單獨(dú)的層級(jí)結(jié)構(gòu) Layer

將 Layer 整合在一起的網(wǎng)絡(luò)結(jié)構(gòu)

所以在實(shí)現(xiàn)算法時(shí)我們要做的、無非就是把之前實(shí)現(xiàn)的 NN 相應(yīng)的部分進(jìn)行分情況討論

知道了結(jié)構(gòu)后,我們就要來看 CNN 的思想了??偟膩碚f可以把它概括成以下兩點(diǎn):

局部連接(Sparse Connectivity)

權(quán)值共享(Shared Weights)

它們有很好直觀。舉個(gè)栗子,我們平時(shí)四處看風(fēng)景時(shí),都是“一塊一塊”來看的、信息也都是“一塊一塊”地接收的(所謂的【局部感受野】)。在這個(gè)過程中,我們的思想在看的過程中通常是不怎么變的、而在看完后可能會(huì)發(fā)出“啊這風(fēng)景好美”的感慨、然后可能會(huì)根據(jù)這個(gè)感慨來調(diào)整我們的思想。在這個(gè)栗子中,那“一塊一塊”的風(fēng)景就是局部連接,我們的思想就是權(quán)值。我們?cè)诳达L(fēng)景時(shí)用的都是自己的思想,這就是權(quán)值共享的生物學(xué)意義(注:這個(gè)栗子是我開腦洞開出來的、完全不能保證其學(xué)術(shù)嚴(yán)謹(jǐn)性、還請(qǐng)各位觀眾老爺們帶著批判的眼光去看待它……如果有這方面專長(zhǎng)的觀眾老爺發(fā)現(xiàn)我完全就在瞎扯淡、還望不吝指出 ( σ'ω')σ)

光用文字?jǐn)⑹隹赡苓€是有些懵懂,我來畫張圖(參考了一張被引用爛了的圖;但由于原圖有一定的誤導(dǎo)性、所以還是打算自己畫一個(gè))(雖然很丑):

這張圖比較了 NN 和 CNN 的思想差別。左圖為 NN,可以看到它在處理輸入時(shí)是全連接的、亦即它采用的是全局感受野,同時(shí)各個(gè)神經(jīng)元又是相對(duì)獨(dú)立的、這直接導(dǎo)致它難以將原數(shù)據(jù)樣本翻譯成一個(gè)“視野”。而正如上面所說,CNN 采用的是局部感受野 + 共享權(quán)值,這在右圖中的表現(xiàn)為它的神經(jīng)元可以看成是“一整塊”的“視野”,這塊視野的每一個(gè)組成部分都是共享的權(quán)值(右圖中那些又粗又長(zhǎng)的綠線)在原數(shù)據(jù)樣本的某一個(gè)局部上“看到”的東西

接下來就粗略地講講怎么實(shí)現(xiàn)這種思想、亦即如何實(shí)現(xiàn) CNN 里面的前傳算法。具體的定義會(huì)在數(shù)學(xué)系列里面進(jìn)行說明,這里就只放代碼核心了(Again,tensorflow 大法好?。?/p>

def _conv(self, x, w): return tf.nn.conv2d(x, w, strides=[self._stride] * 4, padding=self._pad_flag)def _activate(self, x, w, bias, predict): res = self._conv(x, w) + bias return layer._activate(self, res, predict)

這里面涉及到一些以后會(huì)說明的東西,但如果知道概念的話、代碼應(yīng)該還是相當(dāng)可讀的

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

    關(guān)注

    3

    文章

    349

    瀏覽量

    21968
  • Layer
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    6627

原文標(biāo)題:從零開始學(xué)人工智能(8)--Python · 神經(jīng)網(wǎng)絡(luò)(七)· CNN

文章出處:【微信號(hào):AI_shequ,微信公眾號(hào):人工智能愛好者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    關(guān)于開關(guān)電源的一些概念

    今天分享開關(guān)電源的一些概念。
    發(fā)表于 09-20 09:28 ?969次閱讀

    時(shí)序分析中的一些基本概念

    時(shí)序分析是FPGA設(shè)計(jì)中永恒的話題,也是FPGA開發(fā)人員設(shè)計(jì)進(jìn)階的必由之路。慢慢來,先介紹時(shí)序分析中的一些基本概念。
    發(fā)表于 10-21 09:28 ?1830次閱讀

    有關(guān)一些電路常識(shí)性概念須知

    有關(guān)一些電路常識(shí)性概念須知
    發(fā)表于 06-08 06:50

    介紹藍(lán)牙的一些概念

    . 聲明本專欄文章我們會(huì)以連載的方式持續(xù)更新,本專欄計(jì)劃更新內(nèi)容如下:第篇:藍(lán)牙綜合介紹 ,主要介紹藍(lán)牙的一些概念,產(chǎn)生背景,發(fā)展軌跡,市面藍(lán)牙介紹,以及藍(lán)牙開發(fā)板介紹。第二篇
    發(fā)表于 07-22 06:03

    文詳解CNN

    神經(jīng)學(xué)原理支撐:個(gè)神經(jīng)元并非接收其它所有神經(jīng)元傳來的刺激都產(chǎn)生反應(yīng),它首先會(huì)將其相鄰神經(jīng)元傳來的刺激進(jìn)行積累,到定時(shí)候產(chǎn)生自己的刺激并傳遞給一些與它相鄰的神經(jīng)元。這個(gè)相鄰就是局部感知的概念
    發(fā)表于 08-18 06:56

    實(shí)時(shí)多任務(wù)系統(tǒng)中的一些基本概念

    本文主要講述了實(shí)時(shí)多任務(wù)系統(tǒng)中的一些基本概念
    發(fā)表于 04-22 16:17 ?15次下載

    關(guān)于單片機(jī)的一些基本概念

    關(guān)于單片機(jī)的一些基本概念  隨著電子技術(shù)的迅速發(fā)展,計(jì)算機(jī)已深入地滲透到我們的生活中,許多電子愛好者開始學(xué)習(xí)單片機(jī)知識(shí),但單片機(jī)的內(nèi)容比較抽象,相
    發(fā)表于 03-18 16:54 ?1081次閱讀

    電路的一些基本概念

    電子專業(yè)單片機(jī)相關(guān)知識(shí)學(xué)習(xí)教材資料——電路的一些基本概念
    發(fā)表于 08-22 16:18 ?0次下載

    電路的一些基本概念

    電子專業(yè)單片機(jī)相關(guān)知識(shí)學(xué)習(xí)教材資料——電路的一些基本概念
    發(fā)表于 10-10 14:17 ?0次下載

    時(shí)序分析中的一些基本概念

    時(shí)序分析時(shí)FPGA設(shè)計(jì)中永恒的話題,也是FPGA開發(fā)人員設(shè)計(jì)進(jìn)階的必由之路。慢慢來,先介紹時(shí)序分析中的一些基本概念。
    發(fā)表于 02-11 19:08 ?4166次閱讀
    時(shí)序分析中的<b class='flag-5'>一些</b>基本<b class='flag-5'>概念</b>

    邏輯電平的一些基本概念詳細(xì)說明

    本篇為邏輯電平系列文章中的第篇,主要介紹邏輯電平相關(guān)的一些基本概念。后續(xù)將會(huì)介紹常見的單端邏輯電平(針對(duì)CMOS的閂鎖效應(yīng)進(jìn)行詳細(xì)介紹)、差分邏輯電平、單端邏輯電平的互連、差分邏輯電平的互連、
    發(fā)表于 01-06 17:40 ?16次下載
    邏輯電平的<b class='flag-5'>一些</b>基本<b class='flag-5'>概念</b>詳細(xì)說明

    模電基礎(chǔ):概念一些電路原理資料下載

    電子發(fā)燒友網(wǎng)為你提供模電基礎(chǔ):概念一些電路原理資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-01 08:43 ?24次下載
    模電基礎(chǔ):<b class='flag-5'>概念</b>和<b class='flag-5'>一些</b>電路原理資料下載

    阻抗控制相關(guān)的一些基本概念資料下載

    電子發(fā)燒友網(wǎng)為你提供阻抗控制相關(guān)的一些基本概念資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-04 08:55 ?39次下載
    阻抗控制相關(guān)的<b class='flag-5'>一些</b>基本<b class='flag-5'>概念</b>資料下載

    verilog的一些基本概念

    FPGA各位和數(shù)字IC設(shè)計(jì)崗位面試時(shí)常常會(huì)問下verilog的一些基本概念,做了下整理,面試時(shí)定用得上!
    的頭像 發(fā)表于 07-07 09:51 ?1427次閱讀

    介紹一些大功率IGBT模塊應(yīng)用中的一些技術(shù)

    PPT主要介紹了大功率IGBT模塊應(yīng)用中的一些技術(shù),包括參數(shù)解讀、器件選型、驅(qū)動(dòng)技術(shù)、保護(hù)方法以及失效分析等。
    發(fā)表于 09-05 11:36 ?721次閱讀