作為ICT的從業(yè)人員,大家都知道有兩個(gè)公司是有點(diǎn)臭名昭著,因?yàn)樗麄兒蚐UN Micro公司不一樣,好IT公司養(yǎng)工程師,“壞”公司養(yǎng)律師。Qualcomm和Oracle都是以律師而著名。最近特別是Oracle,更加不養(yǎng)中國(guó)的工程師了。
在memory界,也有一個(gè)公司有類似的名氣,那就是Rambus。在2019年的Memory+的會(huì)議上,他們居然吃了豹子膽,給自己挖了一個(gè)深深的坑,《Big Data, AI and the future of Memory》。對(duì)于AI來講,目前從應(yīng)用,到框架,再到底層語言和硬件,這是一個(gè)百家爭(zhēng)鳴的時(shí)代。Nvidia在鞏固了自己在訓(xùn)練上的地位之后,向推理進(jìn)攻,各家初創(chuàng)公司在利用開源框架,占領(lǐng)推理市場(chǎng),并伺機(jī)向訓(xùn)練進(jìn)攻。[1]
因此,對(duì)于任何一種神經(jīng)網(wǎng)絡(luò)來講,實(shí)現(xiàn)對(duì)于資源的需求的影響還是比較大的,一個(gè)神經(jīng)網(wǎng)絡(luò)在不同的框架(Caffe/Pytroch/TensorFlow)上,在不同的硬件平臺(tái)上(CPU/GPU/FPGA/ASIC)的需求都多多少少不同。更不要講有成千上萬的AI煉丹師在各種調(diào)參,生成各種定制的網(wǎng)絡(luò),因此Rambus這種行為和我今天一樣都是一種“無知者無畏”的行動(dòng)。
從2015年的Resnet之后,大家都認(rèn)為在神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)方面,特別是標(biāo)桿性的ImageNet的上,大家沒有太明顯的進(jìn)展了。[2]
因此從2012年以來的ImageNet優(yōu)勝網(wǎng)絡(luò)模型來看,大家的趨勢(shì)很明顯,Top-5的錯(cuò)誤率逐年下降,網(wǎng)絡(luò)的層數(shù)也越來越厚。當(dāng)然還有就是網(wǎng)絡(luò)的parameter,也就是weight和bias 也越來越多。
計(jì)算和I/O是目前占主導(dǎo)地位的馮氏體系的核心,和之前在2018年流行的爭(zhēng)論一樣,“深度學(xué)習(xí)的進(jìn)步是(看上圖,YannLeCun的10位數(shù)識(shí)別是1998)因?yàn)?a href="http://m.xsypw.cn/v/tag/2562/" target="_blank">算法的進(jìn)步,還是算力的進(jìn)步”,計(jì)算和I/O的那個(gè)作用大也是一個(gè)“雞蛋問題”。
很有意思的是,很多東西拋開現(xiàn)象看本質(zhì)會(huì)有一個(gè)別樣的視角。舉個(gè)上周學(xué)習(xí)到觀點(diǎn),對(duì)于數(shù)據(jù)庫(kù)領(lǐng)域來講,目前workload就是OLTP和OLAP。OLTP的交易的本質(zhì)就是數(shù)據(jù)的I/O,對(duì)!就是把你的軟妹幣從你口袋中搬運(yùn)到淘寶賣家的口袋中去。OLAP的本質(zhì)就是計(jì)算,在知道你買了尿布,奶粉之后算出來應(yīng)該給你推送嬰兒車的廣告。
那對(duì)于目前比較流行的深度學(xué)習(xí)來講,也可以從同樣的話來總結(jié)。基于卷積計(jì)算的CNN,他的本質(zhì)就是計(jì)算,也算出你到底有多少個(gè)預(yù)先訓(xùn)練好的元素,這些元素包含形狀,顏色等等。比如,如果你有一個(gè)嘴巴,兩個(gè)眼睛,和一個(gè)鼻子,那就是一個(gè)人臉。
還有一種是RNN,RNN的本質(zhì)也是計(jì)算和I/O,和CNN的計(jì)算上線文無關(guān),RNN的具體的表現(xiàn)形式為網(wǎng)絡(luò)會(huì)對(duì)前面的信息進(jìn)行記憶并應(yīng)用于當(dāng)前輸出的計(jì)算中。當(dāng)初,Google不顧版權(quán)協(xié)會(huì)的反對(duì),數(shù)字化人類的書籍,本質(zhì)上就是理解大家的語言。比如在天朝,如果有一個(gè)名詞,開始是“歷害”,大家肯定知道下一個(gè)就是“國(guó)”了。
因此,不過CNN和RNN,大家都是需要參數(shù)了,也就是“Weights” 和“Bias” 。兩者對(duì)于這些參數(shù)的share的方式也很大不同。
CNN是在空間上共享,RNN在時(shí)間上共享。因此,問題就來了,這些參數(shù)是怎么出來的呢?他們的大小和性能的要求是多少呢?
先來講對(duì)于大小的要求。這里就要從最基本的CNN網(wǎng)絡(luò) Alexnet說起。
仔細(xì)介紹每一層的東西:(對(duì)于stride 和padding不熟的,請(qǐng)看CS231n,不知道CS231n的,請(qǐng)打賞,并到此為止)
input:彩色的圖片 227X227X3
Conv-1:第一層的卷積有96個(gè)kernel。kernel的大小是11X11,卷積的stride是4,padding是0
MaxPool-1 :第一層卷積的最大值。Pooling的size是3X3,stride是2
Conv-2:256個(gè)kernel,kernel的size是5X5,stride是1,padding是2.
MaxPool-2:第二層卷積的最大值,Pooling是3X3, stride是2
Conv-3: 384個(gè)kernel。kernel大小是3X3, stride是1 ,padding是1.
Conv-4:和第三層類似。384 個(gè)kernel。3X3,strdie和padding是1.
Conv-5:256個(gè)kernel。kernel size 3X3,stride和padding是1.
MaxPool-3:第五層卷積的最大值,Pooling是3X3, stride是2
FC-1:第一個(gè)全連接層,有4096個(gè)神經(jīng)元
FC-2:第二個(gè)全連接,有4096個(gè)神經(jīng)元
FC-3: 第三個(gè)全連接層,有1000個(gè)神經(jīng)元
對(duì)于CNN來講,上一層的輸出是這一層的輸入。因此需要把每一層的輸出算清楚。從上面看,每一層的網(wǎng)絡(luò)類型有Input,Conv,Maxpool和FC四類,因此下面的計(jì)算也是按四類開始的。
O=(I-K+2P)/S+1
其中:O是輸出的寬度,I是輸入的寬度,K是Kernel的寬度,N是Kernel的數(shù)量,S是stride, P是Padding。N是kernel的數(shù)量。
因此,輸出的image的size就是OXOXN
Output的規(guī)模的計(jì)算:
Conv 層的計(jì)算:定義如下:
作死用中文解釋一下,就是一個(gè)227X277的圖上,我用11X11的小方案從左到右,從上到小描紅一邊。這個(gè)描紅,這個(gè)11X11小框子每次跳4格,如果跳到邊上沒對(duì)齊的話,我用多一行的0來補(bǔ)齊。因此227X227X3的第一層卷積的輸出就是:(227-11+2X0)/4+1=55. image size=55X55X96
MaxPool 的計(jì)算:定義如下:
O=(I-ps)/S+1
其中:O是輸出的寬度,I是輸入的寬度, S是stride,ps是Pool size
因此,對(duì)于第一層卷積的Maxpooling就是(55-3)/2+1=27 , image就是27X27X96
FC的計(jì)算:一個(gè)全連接層的輸出就是一個(gè)向量,這個(gè)向量的單元數(shù)是它神經(jīng)元的數(shù)量。比如FC-1就是一個(gè)4096的向量。
因此,對(duì)于一個(gè)包含227X227X3的圖片,它的歷程如下:
一開始是227X227X3,過了第一層卷積,就是55X55X96, 之后的MaxPool就是27X27X96. 第二次卷積之后是27X27X256,之后的MaxPooling就是 13X13X256,第三層卷積是13X13X384,之后的第4和5 卷積變成:27X27X256,第3個(gè)Maxpooling 變成 6X6X256,之后的FC-1就是4096X1,F(xiàn)C-2不變,最后就是一個(gè)1000X1 的向量了。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4812瀏覽量
103206 -
大數(shù)據(jù)
+關(guān)注
關(guān)注
64文章
8953瀏覽量
139813
原文標(biāo)題:大數(shù)據(jù)、AI和存儲(chǔ)芯片的未來
文章出處:【微信號(hào):SSDFans,微信公眾號(hào):SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
半導(dǎo)體存儲(chǔ)芯片核心解析
劃片機(jī)在存儲(chǔ)芯片制造中的應(yīng)用

DeepSeek與存儲(chǔ)芯片為AI眼鏡注入新動(dòng)能
劃片機(jī)在存儲(chǔ)芯片切割中的應(yīng)用優(yōu)勢(shì)

英偉達(dá)加速認(rèn)證三星新型AI存儲(chǔ)芯片

如何格式化貼片式SD卡/貼片式TF卡(SD NAND)#電路知識(shí) #pcb設(shè)計(jì) #芯片 #存儲(chǔ)芯片 #嵌入式
存儲(chǔ)芯片的基礎(chǔ)知識(shí)

一文帶你了解什么是SD NAND存儲(chǔ)芯片
存儲(chǔ)芯片的TBW和MTBF:關(guān)鍵指標(biāo)解析與提升策略

UV三防漆:存儲(chǔ)芯片的隱形盔甲

評(píng)論