❶ 谷歌開源了TensorFlow,世界就要馬上被改變了嗎
Google 開源了其第二代深度學習技術 TensorFlow——被使用在 Google
搜索、圖像識別以及郵箱的深度學習框架。這在相關媒體圈、工程師圈、人工智慧公司、人工智慧研究團隊里有了一些討論。比較有趣的是,微軟亞洲研究院立刻向
媒體發郵件表示,我們發布了開源分布式機器學習工具包(DMTK)。
對於大眾來說,這件事讓人
「困惑」。從 「深度學習」 到 「分布式系統」,太多概念大眾一知半解,現今給出的資料又讓人難以理解。而對於 「Google 開源
TensorFlow」 這一事件,各個公司、團隊、學術權威也是眾說紛紜。因此,出門問問為大家 「破霧」,並講一講這次開源意味著什麼。
什麼是深度學習?
深
度學習系統是什麼?深度學習理論於 2006年 被提出,它通過模擬 「人腦的神經網路」
來解釋圖像、聲音和文本等數據。但是目前的計算機還達不到模擬人腦數量龐大的神經元(千億級),因此便有了用到成千上萬大型計算機(計算平台集群)來吸收
數據對其進行自動分類的 「分布式深度學習系統」。
TensorFlow 的起源和此次開源事件
Google
將自家研發的深度學習系統命名為 「DistBelief」,它使得 Google
能夠同時處理成千上萬台大型計算機的數據,構建更大型的神經網路和大規模訓練。Google
的搜索、圖像識別及郵箱等均採用了該技術。一般情況下,深度學習系統都需要先設定好 feature(特徵),再學習如何分辨。但
Google DistBelief 神奇的地方在於,「Google Brain」 開發團隊 「XLab」 曾用它在未事先獲取 「貓的特徵描述」
信息的情況下,從大量 YouTube 視頻中區分出了哪些是貓的視頻。這意味著深度學習系統 「DistBelief」 自行總結出了貓的
feature(特徵)!雖然這個案例的識別范圍、識別率有待提高(81.7%),但作為人工智慧最經典案例之一,為人工智慧翻開了新的篇章。而 「貓」
的事件,也讓曾經的 Google Brain 開發團隊 「XLab」 的核心人員、現在被李彥宏挖到網路的吳恩達得到了
「Google Brain」 之父的美譽。不過,時代總是進步,而 「DistBelief」 有缺陷。
Google
稱,雖然 DistBelief 非常成功,但它僅僅以神經網路為目的、十分局限,而且很難進行配置。另外,DistBelief 牢牢綁定在
Google 的內部基礎設施上,幾乎不可能將代碼與外界共享。因此,本文的主角,Google 的第二代深度學習系統 「TensorFlow」
橫空出世了。
Google 表示,TensorFlow
在設計上尤其針對克服 DistBelief 的短板,靈活、更通用、易使用、更快,而且完全開源。TensorFlow
可以被架設在智能手機這樣小的設備上,甚至僅一塊電路板上,更靈活; TensorFlow
可以被使用在很多計算平台,無論是智能手機還是大型計算機、單個 CPU / GPU 計算機還是成百上千 GPU 卡組成的分布式系統,ARM 的還是
X86 的構架,更通用;TensorFlow 支持多種編程語言,提供了很多深度學習模型庫,易使用;在很多指標上,TensorFlow 要比
DistBelief 要快一倍,更快。但是,學術界和工程界的一些朋友並不喜歡這個 「剛剛闖入」 開源界的 「小夥子」,判了它 「意義不大」
的死刑。「TensorFlow」 之所以 「開源」 卻不討好,是因為 TensorFlow 不是第一個被開源的深度學習系統,並且目前只開源了
「單機版」,而非能夠識別貓的 「分布式版本」。除了並非第一以及只開源了單機版代碼這兩點外,Google 開源 TensorFlow
這件事最被人詬病的地方在於,在 「用事實」、「用數據」 說話的學術界、工程界,Google 並未用 「數據對比」 證明 TensorFlow 的
「靈活、更通用、易使用」。
對於 TensorFlow,出門問問的看法是,TensorFlow 對學術界意義不大,但是對工程界意義挺大。
TensorFlow 對工程界有意義:其它開源工具雖然眾多 但對工程界很難有效使用
Google
這次開源的 TensorFlow 是一種人工智慧(更具體的說是深度學習)編程語言或計算框架,學術界從來都不缺少類似的開源工具,尤其是
「單機版工具包」 有很多。但是學術界的工具往往更多專注在核心演算法上,在系統和工程方面比較欠缺,工業界很難直接有效的使用,而 Google 的
TensorFlow 在架構設計,跨平台可移植性,演算法可擴展性等等偏工程方面會做的比較好。所以,TensorFlow
對學術界的幫助比較小,但對工業界的幫助有很大潛在可能性。比如語音識別、自然語言理解、計算機視覺、廣告等等都可以應用這種深度學習演算法,Google
也因為深度學習系統的應用使得 Google 語音識別水平提高 25%。
有意義歸有意義,意義的大小
是另一回事了。在這個信息交流頻繁的時代,沒有公司能隨便製造一個具有超大意義的事件或者跨時代的黑科技產品。對於工程界,TensorFlow
有意義但又不是神乎其神的東西,尤其是 Google 目前開源的 「單機版」 的 TensorFlow
意義要小一些。因為在工程界里,若要完成一整件事,如識別語音,TensorFlow
這種通用深度學習框架的存在更多是錦上添花,而非決定根本。比如說在一個可以應用的語音識別系統里, 除了深度學習演算法外,還有很多工作是專業領域相關的
演算法以及海量數據收集和工程系統架構的搭建。
其實,對於中國來說,TensorFlow
還有一個意義。在人工智慧大潮下許多人和公司想入局,但大都沒有能力理解並開發一個與國際同步的深度學習系統,而 TensorFlow
的存在會大大降低深度學習在各個行業中的應用難度。至於弄懂 TensorFlow 要花費大量時間的問題,就像很多公司用 Linux 或者
hadoop(一種分布式系統基礎架構)但很少有公司弄懂了所有源代碼一樣,可以把 TensorFlow
當成一個黑盒,先快速用起來,之後再根據數據和專業領域知識來調整。
總的來說,如果 Google 按照其所說的那樣,在未來完全開源 TensorFlow——包括其 「分布式版本」,那麼 TensorFlow 對工程界的影響會更明顯些——尤其對中國創業公司來說。
❷ 學習tensorflow需要什麼基礎
編程基礎 ——python
數學基礎——概率論;統計學;微積分
❸ 使用TensorFlow可以做什麼有意思的事情
能做很多有意思的事情,比如說搜索、翻譯、交流等等,你可以通過TensorFlow來獲取更多的知識,進一步擴展你的見識。
❹ 有沒有tensorflow的編譯器
有沒有tensorflow的編譯器
(其中.config的內容是在make menuconfig的時候,通過Kconfig文檔配置的結果)
在linux2.6.x/Documentation/kbuild目錄下有詳細的介版紹有關kernel makefile的知識。權
最後舉個例子:
假設想把自己寫的一個flash的驅動程式載入到工程中,而且能夠通過menuconfig配置內核時選擇該驅動該怎麼辦呢?能夠分三步:
第一:將您寫的flashtest.c 文檔添加到/driver/mtd/maps/ 目錄下。
第二:修改/driver/mtd/maps目錄下的kconfig文檔:
config MTD_flashtest
tristate 「ap71 flash"
這樣當make menuconfig時 ,將會出現 ap71 flash選項。
❺ 學習tensorflow需要掌握哪些基礎知識
會點python就行了。
❻ tensorflow 調試時,怎麼看下面的參數的裡面內容
程序員要深度習 深度習本身非龐知識體系本文更想程序員視角發讓家觀察深度習程序員意味著及我何利用高速發展科幫助程序員提升軟體發能力
❼ 利用tensorflow做圖像識別需要對python掌握到什麼程度,我現在python沒有學完
當然可以了,這些就足夠了,哪怕以後用到更高級的東西,現學都行。
因為你永遠不可能准備的100%,搞tf所需的Py知識,你已經拿到了七七八八了。
現在不搞,更待何時?
❽ tensorflow中哪些函數可以重新載入參數
程序員為什麼要學復深度學習制? 深度學習本身是一個非常龐大的知識體系。本文更多想從程序員的視角出發,讓大家觀察一下深度學習對程序員意味著什麼,以及我們如何利用這樣一個高速發展的學科,來幫助程序員提升開發的能力。
❾ tensorflow需要什麼基礎
深度學習框架Tensorflow學習與應用(視頻教程)網頁鏈接