999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Julia云平臺的交互式深度學習模式

2016-04-15 09:52:24唐舸軒黨云龍張常有周藝華
太原理工大學學報 2016年1期
關鍵詞:交互式深度學習

唐舸軒,黨云龍,張常有,周藝華

(1.北京工業大學 計算機科學與技術學院,北京 100124;

2.中國科學院軟件所并行軟件與計算科學實驗室,北京 100190;

3.石家莊鐵道大學 信息科學與技術學院,石家莊 050043)

?

基于Julia云平臺的交互式深度學習模式

唐舸軒1,2,黨云龍3,張常有2,周藝華1

(1.北京工業大學 計算機科學與技術學院,北京 100124;

2.中國科學院軟件所并行軟件與計算科學實驗室,北京 100190;

3.石家莊鐵道大學 信息科學與技術學院,石家莊 050043)

摘要:為降低深度學習程序的開發難度,提出了一種基于Julia云平臺的交互式深度學習模式。設計了一套深度學習原語,用Julia實現原語,為Julia程序員提供調用接口,構建交互分析系統;并提供GPU/CPU實現接口,由云端系統根據用戶情形自動優選;最后實現了基于深度學習的圖像交互分析案例,驗證原語體系的完備性和Julia云平臺的交互支持能力。實驗結果表明,GPU的運行速度比CPU快近30倍。Julia程序員只需通過調用原語,設置相關參數,就可以使用并行化的算法。

關鍵詞:Julia;高性能云;交互式;深度學習

近年來在人工智能領域的研究中,深度學習成為了熱點。自2006年GEOFFERY,et al在Science雜志發表那篇著名的論文開始[1],深度學習的熱潮從學術界席卷到工業界。放眼國外,“谷歌大腦(Google Brain)”項目用1.6萬個CPU核的并行計算平臺訓練深度神經網絡(Deep Neural Networks,DNN)的機器學習模型,在語音和圖像識別等領域取得了巨大的成功。國內方面,百度深度學習研究院將深度學習技術運用到廣告系統、網頁搜索、圖像識別等領域,也取得了很大成就。

從近年來國內公司實踐來看,深度學習主要擁有如下三個方面的優勢[2]。深度學習符合大數據的發展潮流。它集中體現了機器學習算法的三個大趨勢:用較為復雜的模型降低偏差,用大數據提升統計估計的準確度,用可擴展的梯度下降算法求解大規模優化問題。深度學習是一個端到端的學習系統。直接作用于原始數據,自動逐層進行特征學習,最終得到正確的答案。深度學習是一個建模框架,其內部的特征并非全然不可知。利用這種框架,可以表達數據內在的豐富關系和結構,比如可以用遞歸神經網絡(Recurrent Neural Network,RNN)處理自然語言等數據的時序問題,用卷積處理圖像中的二維空間結構,解決圖像識別中的問題。

如何充分利用深度學習的優勢,使用戶更加方便的處理深度學習領域的問題,成為了關注的方向。Julia云平臺提供了一種有效的解決方法。

Julia從語言上支持并行和分布式計算,易編程,是一種動態高性能的高級編程語言,適合科學和數值計算,性能可與傳統靜態類型語言媲美。Julia語言基于消息傳遞機制為多處理器或多核環境提供并行計算環境,程序能夠運行于分布式存儲的集群。不同于MPI的消息傳遞機制,Julia采用“單邊”通信機制。程序員只需在程序中顯示控制多個處理器,調用高層操作實現協同計算。

Julia語言支持并行和分布式計算,很好地適應了深度學習在大數據環境下的應用需求。基于Julia云平臺的深度學習模式具有如下優勢:1)將深度學習模型封裝成簡單原語,方便了程序員對深度學習模型的使用。程序員不需要關注深度學習模型的具體實現細節,只需簡單的原語操作就可實現深度學習模型的訓練、測試等過程。2)基于Julia云平臺的深度學習模式,不需要程序員在本機上配置模型運行環境,減輕了程序員使用深度學習模型的困難。3)該模式支持CPU和GPU兩種方案,程序員可以通過簡單的參數設置,使用不同的深度學習模型,同時平臺根據用戶情況自動優選CPU或GPU的運行方式。

1相關工作

傳統的深度學習模型包括受限制玻爾茲曼機、深度置信網絡、遞歸神經網絡、卷積神經網絡。不同的模型在處理各自領域的問題時都取得了成功。在圖像識別領域中,卷積神經網絡的發展相對成熟。

1.1卷積神經網絡

卷積神經網絡(Convolutional Neural Networks,CNNs)是一個權值共享的網絡結構,這種結構降低了網絡模型的復雜程度,有效的減少了權值的數量,避免了傳統識別算法當中復雜的特征提取和數據重建過程,從而能夠直接使用原始圖片,因而在圖像識別領域得到了廣泛運用。

1962年,Hubel和Wiesel提出了基于貓視覺皮層的結構模型[3],同時提出了感受野的概念。1984年,日本學者Fukushima提出了基于感受野的神經認知機[4],這是感受野概念第一次在人工神經網絡領域出現,也可以認為是卷積神經網絡的第一個實現網絡。隨后,Lecun,et al[5-6]基于誤差梯度算法設計并訓練出了卷積神經網絡,并且在一些模式識別任務中展現出了相對于當時其他方法的領先性能。

卷積神經網絡通過3個方法來實現識別位移、縮放和扭曲不變性:局部感受野、權值共享和次抽樣。局部感受野指的是每一個網絡層的神經元只與上一層的小領域內的神經單元連接,通過局部感受野,每個神經元可以提取初級的視覺特證,如方向線段、端點、角點等。權值共享使得卷積神經網絡具有更小的參數。次抽樣可以減少特征的分辨率,實現對位移、縮放和其他形式扭曲的不變性。一般來說,卷積層緊接一個次抽樣層,以此減少計算時間和建立空間結構的不變性。

卷積神經網絡的的迅速發展,出現了一些比較著名的基于卷積神經網絡的深度模型框架,其中最有名的是Caffe深度學習框架。

1.2Caffe深度學習模型

Caffe是一個清晰、高效并且模塊化的深度學習框架,由Berkeley Vision and Learning Center (BVLC)開發。

Caffe深度學習模型的優勢主要體現在:強大的表達能力,Caffe所有的模型定義、優化設置、以及預訓練的權重等都是以文本而非代碼的形式給出。速度快,Caffe能夠運行各種優秀的模型并且處理海量的數據。Caffe可以在一個NVIDIA K40 GPU基礎上,每天處理60 MB的圖像,訓練一張圖片只需要4 ms。高度模塊化,Caffe模塊化的設計,使之能夠非常方便的擴展到新任務和設置上。開源與社區,Caffe發布之初便參與到了BSD的社區討論之中,Caffe的源碼可以在github上直接下載。

1.3Julia云平臺

面向高性能計算的云平臺包括三個子系統:用戶編程環境(UPE),支持用戶編寫、修訂、調試Julia程序;消息通信傳遞系統(MPS,Message Passing System),在編程環境和運行環境之間傳遞源碼程序和資源參數的消息傳遞系統;高性能計算環境(HCE)。各系統之間的關系如圖1所示。在Julia云平臺上使用深度學習模式,程序員可以更加關注任務的實現,不需知道深度學習實現的具體方法,甚至不用安裝Julia編程環境和深度學習模型運行環境,這為程序員的編程提供了極大的便利。

圖1 編程環境圖體系結構Fig.1 The architecture of programming environment

1.4基于云平臺的深度學習

目前,深度學習各種模型存在較為分散,少有針對深度學習模式的統一庫。本文基于云平臺,利用Julia語言,將不同深度學習模型封裝成庫供用戶使用,簡化了用戶操作。以卷及神經網絡為例,用戶如果需要使用卷及神經網絡模型,需要在本機上安裝配置相應環境,而利用Julia語言將其封裝成基本原語之后,可以將運行過程移至后端服務器,用戶不必關心不同模型需要的不同環境。Caffe深度學習框架提供了Matlab等對外接口,在此基礎上,利用Julia語言提供一套簡潔的原語對外使用,充分利用Julia語言支持并行和分布式計算的特點,提高數據預處理過程的效率,進而提高深度學習模型的訓練和測試效率。

2案例研究

在Julia云平臺的交互式深度學習模式中,各種深度學習模型對用戶來說是透明的,用戶不需要去了解深度學習模型是如何實現的,只需要專注大粒度任務。

通過調整參數選擇不同的深度學習模型,平臺根據用戶情形自動優選CPU或GPU運行策略。

實現深度神經網絡一般包括如下過程:模型的定義、數據的預處理、訓練、測試等。將這些過程提取為基本原語并提供給Julia云平臺,用戶在云平臺環境下,只需輸入簡單的Julia命令,調整參數,就可以實現這些過程。利用Caffe深度學習框架,以單個圖像的識別分類為案例,說明Julia云平臺和深度學習模型是如何協同工作。

測試案例用到的主要函數為test-images(const char* model-filename,const char* weights-filename,const char* image-filename,float* output-result-ptr,int nSize);

其中model-filename為深度學習模型文件;weights-filename為與模型文件對應的權值文件;image-filename為需要測試的圖片;output-result-ptr為輸出參數,返回一個大小為nSize的分類結果數組。用戶可以將不同的模型賦值給model-filename實現多個深度學習模型的使用,案例中我們選擇ImageNet競賽模型。

測試案例實現步驟如下:

1) 圖片規則化:將輸入圖片統一處理為固定大小,保證長寬比例為1∶1;

2) 子圖抽樣:依次從圖的左上、右上、左下、右下,中間抽樣,并對抽樣的子圖翻轉,得到10張輸入數據。保證識別內容在抽樣子圖中;

3) 裝載庫:調用test-images函數,將圖片數據輸入模型,得到分類結果;

4) 對分類結果進行加權投票統計,得票最高的即為這張測試圖片的最終分類;

5) 測試結果可視化。

測試流程見圖2所示:

圖2 測試案例流程Fig.2 Test case procedure

3深度學習原語封裝

3.1基本原語

為深度學習模型設計了一套基本原語,供Julia云平臺使用。程序員通過基本原語操作,即可調用不同的深度學習模型。同時還能根據用戶具體情況,最優化的選擇CPU/GPU的運行策略,減輕了用戶編寫并行程序的負擔,本文列舉了深度學習常用原語,見表1。

表1 深度學習常用原語

3.2函數庫層次結構

為Julia云平臺提供了一個深度學習模式庫。模式庫從結構上分為模型層、接口層、優化策略層、原語層,如圖3所示。

1) 模型層:包含深度學習領域的各種基本模型,為更上層接口提供深度學習方法;

2) 接口層:基本原語的底層實現源碼,為Julia平臺提供API接口,根據用戶需求,同一原語包含不同實現,而具體實現方法由接口層提供。由優化策略層自行調度;

3) 優化策略層:對于相同原語的不同實現,平臺按照最優化的策略選擇最佳性能的實現方式提供給用戶,同樣該策略允許根據用戶的不同偏好指定函數實現;

4) 原語層:原語層直接面向用戶,為Julia程序員提供接口。對用戶來說,優化策略層、接口層、模型層是完全透明的。

4實驗結果

實驗平臺參數為:CPU Intel(R),E5-2620,2.10 GHZ*24核心,Matrox GPU,操作系統為Ubuntu14.04,Julia版本為Julia3.0.7,采用ImageNet競賽的深度學習模型VGG-CNN-S-deploy.prototxt[11]。本文選擇10張圖片作為測試數據如圖4所示。

對于每一張圖,進行抽樣預處理,將預處理后的圖輸入模型,得到分類結果,如圖5所示。

圖4 10張測試數據Fig.4 10 test images

圖5 單張圖片的抽樣提取Fig.5 The sample sub-image of a single image

以lion為例,抽樣子圖所屬類別的概率分布如圖6所示,其中橫坐標表示1000個分類結果,縱坐標表示所屬某個類別的概率。從圖中可以清晰的看到,分類到lion類別的概率明顯高于其他類別概率。

圖6 抽樣子圖所屬類別概率分布Fig.6 The classification probabillity of sub-image

最終,對抽樣的10張圖片進行加權求值,并統計得票數,可知該測試圖片屬于lion類別的得票最高,如圖7所示。

圖7 投票結果Fig.7 Classification resule

在用來測試的10張圖片當中,9張圖片正確分類。用戶不需要理解深度學習模型的工作過程,只需要選擇測試所用的模型,就可以準確完成圖片分類工作,從而減少了編程負擔。

5性能分析

從實驗結果可知,Julia云平臺上的深度學習模式具有準確性、靈活高效性、易操作的優點。用戶不必了解深度學習模型具體實現過程,就可以使用深度學習領域的模型。

5.1準確性

深度學習在處理圖像分類問題中具有明顯優勢,案例結果表明,在測試的圖片當中,只有一張分類錯誤。深度學習在MNIST手寫體數字識別上的準確率高達99%,本文案例所用模型在ImageNet數據集上的Top-5錯誤率也只有13.1%。

5.2靈活高效性

Julia云平臺的深度學習支持CPU和GPU兩種模式,在調用原語時只需將model設置為GPU,就可以使用并行化的深度學習模型,減少了編寫并行程序的麻煩。以MNIST數據集測試為例,數據訓練集包含60 000張手寫體數字圖片。在訓練一個神經網絡過程中,GPU運行時間比CPU運行時間快近30倍;而在測試過程中,隨著迭代次數的增加,GPU的加速效果愈發明顯,如圖8所示。

圖8 CPU與GPU運行時間對比Fig.8 The comparison of CPU and GPU running time

5.3易操作

Julia語言可以通過ccall語法直接調用動態庫中的函數,在云平臺當中,Julia對用戶提供的接口都是已封裝好的基本原語,深度學習模型的實現對用戶來說是完全透明的,這樣用戶只需關心大粒度的任務。在本文案例中,只需編寫簡單的Julia語句,就可以實現單張圖片的分類測試,如圖9所示。這使得用戶在使用深度學習模型時更加方便,提高了開發效率。同時,深度學習模式支持CPU和GPU兩種實現,用戶使用GPU的深度學習模型,只需將參數mode設置為GPU即可,使之更方便。

mode_file=model.prototxt

weight_file=weight.caffemodel

jinit(mode_file) #初始化深度學習模型

jtrain(model_file,data,GPU)

#訓練神經網絡模型

img=imresize(original, new_size)

#進行圖像規范尺寸變換 cutedImg=prepare_image(img) #子圖抽樣

jtest(model_file,weight_file,cutedImg,GPU)

#調用測試圖片過程 vplot() #可視化操作

圖9Julia測試所用源碼

Fig.9The source code of Julia Language test

6結論

為Julia云平臺設計了一套深度學習模型原語,并封裝成動態庫,供Julia程序員調用,構建了Julia與深度學習模式的交互式分析系統。同時提供了GPU/CPU兩種實現方案,用戶通過設置接口參數即可實現不同深度學習模型的使用,系統根據用戶情況自動優選CPU/GPU實現方案。為用戶使用深度學習模型提供了便捷,同時減少了編寫并行化深度學習程序的繁瑣。

筆者今后將更加注重原語的提取與開發,滿足用戶使用深度學習的多種要求,讓用戶使用模型時更加方便靈活。同時,也將充分利用Julia支持并行化的特點,在諸如圖像預處理過程中,采用并行化的策略,提高效率與程序運行速度。

參考文獻:

[1]GEOFFERY E H,RUSLAN R S.Reducing the dimensionality of data with neural networks[J].Science,2006,313(5786):504-507.

[2]都大龍,余軼男,羅恒.基于深度學習的圖像識別進展:百度的若干實踐[J].中國計算機學會通訊,2015,11(4):11-16.

[3]HUBEL D H,WIESEL T N.Recptive fields,binocular interaction,and functional architecture in the cat’s visual cortex[J].Journal of Physiology,1962,160(1):106-154.

[4]FUKUSHIMA K.Neocognition:a self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in postion[J].Biological Cybernetics,1980,36(4):193-202.

[5]LECUN Y,BOTTOU L,HAFFNER P.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.

[6]LECUN Y,Boser B,Denker J S,et al.Backpropagation applied to handwritten zip code recognition[J].Neural Computation,1989, 1(4):541-551.

[7]CHATFIELD K,SIMONYAN K,VEDALDI A,et al.Return of the devil in the details:delving deep into convolutional nets[C]∥Machine Vision Conference,British:Eprint Arxiv,2014.

(編輯:劉笑達)

An Interactive Deep Learning Model Based on Julia Cloud Platform

TANG Gexuan1,2,DANG Yunlong3,ZHANG Changyou2,ZHOU Yihua1

(1.SchoolofComputerScienceandTechnology,BeijingUniversityofTechnology,Beijing100124,China;2.StateKeyLaboratoryofComputingScience,theChineseAcademyofSciences,Beijing100190,China;3.InformationScienceandTechnology,ShijiazhuangTiedaoUniversity,ShijiazhuangHebei050043,China)

Abstract:In order to simplify the program development based on deep learning model,an interactive deep learning model based on Julia Cloud Platform is introduced in this paper. The content of our study includes:Design a deep learning primitive function: Implement primitive function in Julia language, supply interface for Julia programmer and construct interactive analysis system. Implement both GPU and CPU interfaces,which can be automatically selected by the Cloud Platform according to whichever situation the clients are in. Implement image interactive analysis case based on deep learning and verify the completeness of primitive function and interactive support ability of Julia Cloud Platform. The experiment result shows that running speed of GPU case is up to 30 times faster than that of CPU case.Julia programmer only needs to call primitive function and set some parameters to use the parallel algorithm.

Key words:julia;high-performance cloud;interactive;deep learning

中圖分類號:TP312.1

文獻標識碼:A

DOI:10.16355/j.cnki.issn1007-9432tyut.2016.01.017

作者簡介:唐舸軒(1992-),男,湖南湘潭人,碩士生,主要從事深度學習、并行與分布式計算研究,(E-mail)Charlietong 515@163.com通訊作者:張常有,教授,博士,主要從事并行與分布式計算、協同計算等研究,(E-mail)changyou@iscas.ac.cn

基金項目:國家自然科學基金:項目資助“面向企業創新計算的高性能云服務平臺”(61379048)

收稿日期:2015-05-26

文章編號:1007-9432(2016)01-0085-06

猜你喜歡
交互式深度學習
有體驗的學習才是有意義的學習
電子商務中基于深度學習的虛假交易識別研究
現代情報(2016年10期)2016-12-15 11:50:53
探析高中物理教學中運用交互式電子白板的實踐應用
考試周刊(2016年94期)2016-12-12 13:34:00
MOOC與翻轉課堂融合的深度學習場域建構
ASP技術在交互式網頁設計中的應用
人間(2016年30期)2016-12-03 23:06:54
大數據技術在反恐怖主義中的應用展望
淺談交互式電子白板在中學英語課堂的有效應用
南北橋(2016年10期)2016-11-10 16:35:15
深度學習算法應用于巖石圖像處理的可行性研究
軟件導刊(2016年9期)2016-11-07 22:20:49
基于深度卷積網絡的人臉年齡分析算法與實現
軟件工程(2016年8期)2016-10-25 15:47:34
試論“交互式”課堂模式在初中英語閱讀教學中的運用
考試周刊(2016年76期)2016-10-09 09:24:38
主站蜘蛛池模板: 91亚洲视频下载| 国产福利免费视频| 亚洲国产中文精品va在线播放| 久久香蕉国产线| 免费人成在线观看视频色| 亚洲无码视频一区二区三区 | 国产精品永久在线| 国产在线观看第二页| 欧美黄色a| 91无码国产视频| 久久久久人妻一区精品色奶水| 国产玖玖视频| 精品撒尿视频一区二区三区| 黄色片中文字幕| 精品欧美日韩国产日漫一区不卡| 宅男噜噜噜66国产在线观看| 午夜一区二区三区| 国产免费网址| 婷婷开心中文字幕| 国产原创演绎剧情有字幕的| 色婷婷电影网| 亚洲精品桃花岛av在线| 欧美人在线一区二区三区| 国产爽爽视频| 日韩精品毛片| 中文字幕有乳无码| 91麻豆精品国产高清在线 | 国产精品自在线拍国产电影| 波多野结衣久久高清免费| 性做久久久久久久免费看| 无码中文字幕精品推荐| 天天做天天爱天天爽综合区| 2020久久国产综合精品swag| 欧美特黄一级大黄录像| 人妻一本久道久久综合久久鬼色| 久久99精品国产麻豆宅宅| 大乳丰满人妻中文字幕日本| 美女扒开下面流白浆在线试听| 国产网站免费| 日韩中文精品亚洲第三区| 久久久久久久久久国产精品| 国产视频a| 欧美福利在线| 久久性视频| 亚洲综合婷婷激情| 国产精品真实对白精彩久久| 欧日韩在线不卡视频| 黑色丝袜高跟国产在线91| 久久久久国色AV免费观看性色| 无码精品国产dvd在线观看9久| 国产成人欧美| 这里只有精品在线播放| 久久成人免费| 人妻91无码色偷偷色噜噜噜| 成人精品免费视频| 久久国产免费观看| 草逼视频国产| 97色伦色在线综合视频| 无码国产偷倩在线播放老年人| 国产特级毛片aaaaaa| 国产真实乱了在线播放| 无码高潮喷水专区久久| 波多野结衣一二三| 91青青视频| 亚洲天堂伊人| 免费一级毛片| 67194在线午夜亚洲| 2018日日摸夜夜添狠狠躁| 亚洲区欧美区| 国产一区二区三区在线无码| 亚洲人成网线在线播放va| 欧美国产视频| 久久国产精品无码hdav| 久久精品欧美一区二区| 福利一区在线| 国产成人免费| 成人日韩欧美| 国产一级毛片高清完整视频版| 九色在线视频导航91| 国产精品主播| 国产成人精品一区二区三在线观看| 国产成人综合网在线观看|