1. 搞神經網路和深度學習,用python好還是用R好
這兩個現在半斤八兩吧,R更強一些,但是Python也差不多了,推薦用Python中的sklearn和tensorflow第三方模塊
何為統計軟體?一般初學者都使用Matlab神經網路工具箱進行建模模擬。
MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。是由美國mathworks發布的主要面對科學計算、可視化以及互動式程序設計的高科技計算環境。它將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和模擬等諸多強大功能集成在一個易於使用的視窗環境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,並在很大程度上擺脫了傳統非互動式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟體的先進水平。
3. 深度神經網路演算法用什麼軟體處理
微軟介紹,這種新型語音識別軟體採用了名為「深度神經網路」的技術,使得該軟體處理人類語音的過程與人腦相似。對此微軟必應(Bing)搜索業務部門主管斯特凡·維茨(Stefan Weitz)在本周一表示:「我們試圖復制人腦聆聽和處理人類語音的方式。」
微軟還表示,與原有WP手機語音識別技術相比,新型技術的語音識別准確性提高了15%,且創建相應文本及搜索關鍵詞的速度也更快。如此一來,必應返回相應搜索結果所用時間比以前快了兩倍。
微軟語音處理技術部門高級項目經理邁克爾·特加爾夫(Michael Tjalve)也表示:「通過我們最新的語音識別器,你不但得到的結果更好,而且速度更快。」
微軟已面向美國市場的Windows Phone手機用戶發布了這項技術。用戶通過這項新技術,將更容易使用語音命令來創建簡訊、進行網路搜索等活動。
4. 深度學慣用什麼軟體最好
深度學習最主要的還是項目,以項目來帶動知識點
5. 百度Paddle會和Python一樣,成為最流行的深度學習引擎嗎
摘要:PaddlePaddle的負責人徐偉認為,沒有一家公司能夠完全主導這個領域,要單一公司的深度學習框架完全主導該領域,就等同於用同一種程序語言開發所有的軟體,未來深度學習的生態系統會因使用場景有最佳的框架使用。
PaddlePaddle會和Python一樣流行嗎?
深度學習引擎最近經歷了開源熱。2013年Caffe開源,很快成為了深度學習在圖像處理中的主要框架,但那時候的開源框架還不多。隨著越來越多的開發者開始關注人工智慧,AI 巨頭們紛紛選擇了開源的道路:2015年9月Facebook開源了用於在Torch上更快速地訓練神經網路的模塊,11月Google開源 TensorFlow,2016年1月微軟開源CNTK。最近,網路也宣布開源深度學習引擎 PaddlePaddle。
在這場深度學習的框架之爭中,究竟哪家能夠勝出?PaddlePaddle的負責人徐偉認為,沒有一家公司能夠完全主導這個領域,要單一公司的深度學習框架完全主導該領域,就等同於用同一種程序語言開發所有的軟體,未來深度學習的生態系統會因使用場景有最佳的框架使用。
話雖如此,對於程序員來說,如果選擇了更為流行的編程語言,就會有更多可使用的庫,也能更輕松的做出好的產品。而緊跟程序語言的發展歷史,我們發現最終最為流行的,總是最容易上手的。
Python是非常好的例子,在編程語言排行榜上,2014年Python只有第六名。但隨著大量年輕程序員的湧入,他們更願意選擇簡單、易學、文檔好的Python作為優先的學習對象,很快C、C++程序員很多也開始使用Python編程了。
而今天發生在深度學習框架上的競爭,似乎也在重演編程語言的歷史。
去年TensorFlow發布的時候,對於它的質疑聲不絕於耳。首先是對單機版TensorFlow的質疑,認為它在和Caffe、Torch和 Theano相比並沒有優勢。而在Google開源了分布式版本後,人們說它比Caffe慢,比Torch臃腫,而且不能進行太大調整。但如今在HackerNews上關於最受歡迎深度學習工具的投票,TensorFlow獲得第一,得票率是第二名的接近2.6倍。
程序員Vonnik解釋了這個現象:使用TensorFlow的大部分都是來自Udacity課程的學生,他們大部分都沒什麼經驗。但正是這些學生和初學者,而非那些經驗豐富的資深人士,把Python變成了全球最流行的語言,也把TensorFlow推到了排名第一的位置。
從Python和TensorFlow的歷史來看,我們有理由認為,最為簡單、易用的深度學習框架,將會在未來的競爭勝出。
網路 PaddlePaddle
在和幾款最常用的深度學習框架TensorFlow、Torch、Caffe比較之前,我們先重點介紹新出現的PaddlePaddle。
Paddle其實已經有多年歷史了。早在 2013 年,網路就察覺到傳統的基於單GPU的訓練平台,已經無法滿足深度神經網路在搜索、廣告、文本、語音、圖像等領域的訓練需求,於是在徐偉的帶領下開始搭建Paddle——一個多機並行的CPU/GPU混布的異構計算平台。Paddle從最早的開發到如今的開源,就一直以大規模數據處理和工業化的要求不斷改進。我們可以看到PaddlePaddle有很多優異的特性。
Github上介紹,PaddlePaddle有以下特點:
· 靈活
PaddlePaddle支持大量的神經網路架構和優化演算法,支持任意復雜RNNs結構,高效處理batch,無需數據填充。簡單書寫配置文件即可實現復雜模型,比如擁有注意力(Attention)機制、外圍記憶層(External Memory)或者用於神經機器翻譯模型的深度時序快進網路。
· 高效
為了利用異構計算資源的能力,PaddlePaddle中的每一級都會進行優化,其中包括計算、內存、架構和通信。以下是幾個例子:
1.使用SSE/AVX內聯函數、BLAS資料庫(例如MKL、ATLAS、cuBLAS)和定製化的CPU/GPU Kernal來優化數學運算。
2.高度優化RNNs網路,在沒有Padding的情況下,也能處理不同長度的序列。
3.優化的本地和分布式訓練,同時支持高緯稀疏模型。
· 可擴展
有了PaddlePaddle,使用多個CPU和GPU以及機器來加速訓練可以變得很輕松。 PaddlePaddle能通過優化通信,獲得高吞吐量和性能。
· 與產品的連接
PaddlePaddle的部署也很簡單。在網路,PaddlePaddle已經被用於產品和服務中,擁有大量用戶。應用場景包括預估外賣的出餐時間、預判網盤故障時間點、精準推薦用戶所需信息、海量圖像識別分類、字元識別(OCR)、病毒和垃圾信息檢測、機器翻譯和自動駕駛等等。
在PaddlePaddle簡單、可擴展的邏輯下,徐偉評價說:「這將使工程師們能夠快速、輕松地將深度學習技術應用到他們的產品當中,我們想讓更多的人使用人工智慧,人工智慧對於我們的未來生活是非常重要的。」
深度學習框架對比
PaddlePaddle最主要的類比對象,來自UC伯克利的賈揚清開發的Caffe和Google的 TensorFlow。
這是一張來自Spark Summit 2016的圖,PaddlePaddle在開源前就在頂級的行業會議中進行了展示。
總的來說
1)Caffe具有出色的CNN實現功能的開發語言,在計算機視覺領域,Caffe仍然是最流行的工具包。Caffe的開發語言支持C++和Cuda,速度很快,但是由於一些歷史性的遺留架構問題,它的靈活性不夠強。而且對遞歸網路和語言建模的支持很差。Caffe支持所有主流開發系統,上手難度屬於中等水平。
2)TensorFlow是一個理想的RNN API實現,它使用了向量運算的符號圖方法,使得開發的速度可以很快。TensorFlow支持的比較好的系統只有各種Linux系統和OSX,不過其對語言的支持比較全面,包含了Python、C++和Cuda等,開發者文檔寫得沒有Caffe那麼全面,所以上手比較難,在性能方面,也不如Caffe及PaddlePaddle。
3)Torch沒有跟隨Python的潮流,反而選擇了C語言實現,用Lua語言進行封裝。Torch對卷積網路的支持非常好,運行在C++、C#和Jave等工業語言的速度較快,也不需要額外的編譯。但是它的上手難度也很高,對初學者缺乏規范的例子,而且需要先邁過Lua的門檻,這對初學者是很大的障礙。
4)而此次網路的PaddlePaddle性能優先並兼顧靈活,通過使用GPU異構計算來提升每台機器的數據處理能力,獲得了業內「相當簡潔、設計干凈、穩定,速度較快,顯存佔用較小」等好評。
而在關鍵的進入門檻上,相比Google TensorFlow和Facebook Torch,PaddlePaddle的上手難度低得多,且擁有非常優秀的業界特徵,包括NLP和推薦等應用場景、對RNN很好的支持、高質量代碼、以及分布式訓練等,已經足以滿足大多數AI場景的需求。且PaddlePaddle更加務實,可解決實際問題。
據徐偉介紹,PaddlePaddle將在本月底發布最新版本,全面支持Mac操作系統、以及Cuda8.0和GCC5.4,同時進一步優化了安裝過程,可以幫助更多開放者更好地「上手」。
所以我們可以初步下一個結論,在中國的開發環境下,Google TensorFlow和Facebook Torch的上手難度都比較高,TensorFlow最好的訓練環境Google Cloud也難以在中國獲得支持。而Caffe雖然已經有了多年的積累,但是畢竟目前只是在視覺領域有比較好的發展,而且相比網路能提供的產業鏈支持,在資源投入上可能會有比較大的局限。相比之下,坐擁中國的本土市場,上手難度低得多的PaddlePaddle,將會有更好的技術和生態的環境。也許不久的將來,PaddlePaddle就會和Python在編程語言中所做的事情一樣,成為最流行的深度學習引擎。
6. lt;深度神經網路>具體是怎樣工作的
微軟介紹種新型語音識別軟體採用名深度神經中國絡技術使該軟體處理類語音程與腦相似微軟必應(Bing)搜索業務部門主管斯特凡·維茨(Stefan Weitz)本周表示:我試圖復制腦聆聽處理類語音式 微軟表示與原WP手機語音識別技術相比新型技術語音識別准確性提高一5%且創建相應文本及搜索關鍵詞速度更快必應返相應搜索結所用間比前快兩倍 微軟語音處理技術部門高級項目經理邁克爾·特加爾夫(Michael Tjalve)表示:通我新語音識別器結更且速度更快 微軟已面向美市場Windows Phone手機用戶發布項技術用戶通項新技術更容易使用語音命令創建簡訊、進行中國絡搜索
7. 除了MATLAB能做BP神經網路,還有其他什麼軟體能做
在我看來bp神經網路是一種演算法,只要是演算法就可以用任何軟體工具(只要編譯器或者解釋器支持,c,c++,python,matlab......)來進行實現,只是實現時的復雜程度有區別而已
8. 如何用Python和深度神經網路尋找相似圖像
代碼
首先,讀入TuriCreate軟體包
import turicreate as tc
我們指定圖像所在的文件夾image,讓TuriCreate讀取所有的圖像文件,並且存儲到data數據框
data = tc.image_analysis.load_images('./image/')
我們來看看,data數據框的內容:
data
data包含兩列信息,第一列是圖片的地址,第二列是圖片的長寬描述。
下面我們要求TuriCreate給數據框中每一行添加一個行號。這將作為圖片的標記,方便後面查找圖片時使用,並輸出查看data。
data = data.add_row_number()
data
下面,是重頭戲。我們讓TuriCreate根據輸入的圖片集合,建立圖像相似度判別模型。
model = tc.image_similarity.create(data)
這個語句執行起來,可能需要一些時間。如果你是第一次使用TuriCreate,它可能還需要從網上下載一些數據。請耐心等待。
經過或長或短的等待,模型已經成功建立。
下面,我們來嘗試給模型一張圖片,讓TuriCreate幫我們從目前的圖片集合里,挑出最為相似的10張來。
為了方便,我們就選擇第一張圖片作為查詢輸入。
我們利用show()函數展示一下這張圖片。
tc.Image(data[0]['path']).show()
下面我們來查詢,我們讓模型尋找出與這張圖片最相似的10張。
similar_images = model.query(data[0:1], k=10)
我們把結果存儲在了similar_images變數裡面,下面我們來看看其中都有哪些圖片。
similar_images
返回的結果一共有10行。跟我們的要求一致。
每一行數據,包含4列。分別是:
查詢圖片的標記
獲得結果的標記
結果圖片與查詢圖片的距離
結果圖片與查詢圖片近似程度排序值
有了這些信息,我們就可以查看到底哪些圖片與輸入查詢圖片最為相似了。
注意其中的第一張結果圖片,其實就是我們的輸入圖片本身。考慮它沒有意義。
我們提取全部結果圖片的標記(索引)值,忽略掉第一張(自身)。
similar_image_index = similar_images['reference_label'][1:]
把上面9張圖片的標記在所有圖片的索引列表中過濾出來:
filtered_index = data['id'].apply(lambda x : x in similar_image_index)
filtered_index
驗證完畢以後,請執行以下語句。我們再次調用TuriCreate的explore()函數,展現相似度查詢結果圖片。
data[filtered_index].explore()
9. 如何選擇深度學習框架 TensorFlow/Torch/Mxnet/Theano
深度學習目前的應用領域很多,主要是計算機視覺和自然語言處理,以及各種預測等。對於計算機視覺,可以做圖像分類、目標檢測、視頻中的目標檢測等,對於自然語言處理,可以做語音識別、語音合成、對話系統、機器翻譯、文章摘要、情感分析等。
對於剛入行深度學習,想從事人工智慧工業應用和研發的小白來說,選擇一個適合自己的深度學習框架顯得尤為重要。那麼在選擇深度學習框架的時候,要注意哪些內容呢?
通常我們在選擇框架時要考慮易用性、性能、社區、平台支持等問題。初學者應該考慮容易上手的框架,偏工業應用的開發者可以考慮使用穩定性高、性能好的框架,偏研究性的開發者,一般選擇易用而且有領先的模型基線的框架。
目前這個階段,TensorFlow因為背靠谷歌公司這座靠山,再加上擁有龐大的開發者群體,而且採用了稱為「可執行的偽代碼」的Python語言,成為最受歡迎的主流框架之一。一些外圍的第三方庫(如Keras、TFLearn)也基於它實現了很多成果,Keras還得到TensorFlow官方的支持。TensorFlow支持的上層語言也在逐漸擴大,對於不同工程背景的人轉入的門檻正在降低。
因此,對於剛入行深度學習的小白,TensorFlow是一個非常好的選擇,掌握TensorFlow對以後的求職發展很有幫助。
為了讓大家更快地掌握深度學習技術,成為人工智慧領域高端人才,中公教育聯合中科院自動化研究所專家,強力推出人工智慧《深度學習》,讓大家學有所成、真正掌握機器學習模型以及演算法背後的原理。