Deeplearning4j分布式深度學習庫
Deeplearning4j(簡稱DL4J)是為Java和Scala編寫的首個商業(yè)級開源分布式深度學習庫。DL4J與Hadoop和Spark集成,為商業(yè)環(huán)境(而非研究工具目的)所設計。Skymind是DL4J的商業(yè)支持機構。
Deeplearning4j技術先進,以即插即用為目標,通過更多預設的使用,避免太多配置,讓非研究人員也能夠進行快速的原型制作。DL4J同時可以規(guī)?;ㄖ?。DL4J遵循Apache 2.0許可協(xié)議,一切以其為基礎的衍生作品均屬于衍生作品的作者。
神經(jīng)網(wǎng)絡使用情景
-
人臉/圖像識別
-
語音搜索
-
文本到語音(轉錄)
-
垃圾郵件篩選(異常情況探測)
-
欺詐探測
-
推薦系統(tǒng)(客戶關系管理、廣告技術、避免用戶流失)
-
回歸分析
為何選擇Deeplearning4j?
-
功能多樣的N維數(shù)組類,為Java和Scala設計
-
與GPU集合
-
可在Hadoop、Spark上實現(xiàn)擴縮
-
Canova:機器學習庫的通用向量化工具
-
ND4J:線性代數(shù)庫,較Numpy快一倍
Deeplearning4j包括了分布式、多線程的深度學習框架,以及普通的單線程深度學習框架。定型過程以集群進行,也就是說,Deeplearning4j可以快速處理大量數(shù)據(jù)。神經(jīng)網(wǎng)絡可通過[迭代化簡]平行定型,與Java、Scala和Clojure均兼容。Deeplearning4j在開放堆棧中作為模塊組件的功能,使之成為首個為微服務架構打造的深度學習框架。
DL4J神經(jīng)網(wǎng)絡
-
卷積網(wǎng)絡 (圖像)
-
遞歸網(wǎng)絡/LSTMs(時間序列和傳感器數(shù)據(jù))
-
深度自動編碼器(問-答/數(shù)據(jù)壓縮)
-
遞歸神經(jīng)傳感器網(wǎng)絡(場景、分析)
-
更多用途請參見《如何選擇神經(jīng)網(wǎng)絡》
深度神經(jīng)網(wǎng)絡能夠?qū)崿F(xiàn)前所未有的準確度。對神經(jīng)網(wǎng)絡的簡介請參見概覽頁。簡而言之,Deeplearning4j能夠讓你從各類淺層網(wǎng)絡(其中每一層在英文中被稱為layer)出發(fā),設計深層神經(jīng)網(wǎng)絡。這一靈活性使用戶可以根據(jù)所需,在分布式、生產(chǎn)級、能夠在分布式CPU或GPU的基礎上與Spark和Hadoop協(xié)同工作的框架內(nèi),整合受限玻爾茲曼機、其他自動編碼器、卷積網(wǎng)絡或遞歸網(wǎng)絡。
此處為我們已經(jīng)建立的各個庫及其在系統(tǒng)整體中的所處位置:
在定型深度學習網(wǎng)絡的過程中,有許多可供調(diào)節(jié)的參數(shù)。我們已盡可能對這些參數(shù)進行解釋,從而使Deeplearning4j能夠成為Java、Scala和Clojure編程人員的DIY工具。
