摘要:距做出決定,在整個研究機(jī)構(gòu)中使用已將近一年。安裝請確保你擁有版本的至少為版,如果版本過舊,請遵循以下步驟安裝如果你想使用,請在安裝時急活你的,或跳過此步驟配置頭文件首先復(fù)制和的源代碼作為一個子模塊然后使用你可以在配置期間選擇建議的默認(rèn)值。
距 DeepMind 做出決定,在整個研究機(jī)構(gòu)中使用 TensorFlow(TF) 已將近一年。事實證明這是一個明智的選擇——較之以往,我們很多模型的學(xué)習(xí)速度變得更快,而分布式訓(xùn)練中的嵌入式特征極大地簡化了我們的代碼。同時,我們發(fā)現(xiàn) TensorFlow 的靈活性和自適應(yīng)性使得為特定目的構(gòu)建更高級的框架成為可能,DeepMind 內(nèi)部已經(jīng)開發(fā)了一個框架來用 TF 快速構(gòu)建神經(jīng)網(wǎng)絡(luò)模塊。我們正積極開發(fā)的這個代碼庫以讓它更好地滿足我們的研究需求,今天我們很高興宣布今天它已開源化。我們把這個框架命名為 Sonnet。
自從 2015 年 11 月首次推出以來,圍繞 TensorFlow 出現(xiàn)了許多更高級的庫,使得很多常用任務(wù)得以更快實現(xiàn)。除了和現(xiàn)存的一些神經(jīng)網(wǎng)絡(luò)庫具有許多相似性外,Sonnet 還具有一些根據(jù) DeepMind 的研究需求設(shè)計的特性。和我們 Learning to learn 論文一同發(fā)布的代碼是 Sonnet 的初級版本,其它即將發(fā)布的代碼則基于我們今天發(fā)布的完整庫而完成。
將 Sonnet 開源化使其它在 DeepMind 內(nèi)創(chuàng)建的模型得以在社區(qū)中共享,我們也希望社區(qū)能使用 Sonnet 將他們的研究向前推進(jìn)。在最近幾個月,我們也將自己的旗艦平臺 DeepMind Lab 開源化了,并且正和暴雪一同工作來開發(fā)一個開源 API 以支持《星際爭霸 2》中的人工智能研究。還有更多的發(fā)布版即將到來,并且它們將出現(xiàn)在我們新的開源頁面:
https://deepmind.com/research/open-source/
與 Torch/NN 類似,Sonnet 庫使用面向?qū)ο蟮姆椒ǎ试S創(chuàng)建定義一些前向傳導(dǎo)計算的模塊。模塊用一些輸入 Tensor 調(diào)用,添加操作到圖里并返回輸出 Tensor。其中一種設(shè)計選擇是通過在隨后調(diào)用相同的模塊時自動重用變量來確保變量分享被透明化處理。
在各類文獻(xiàn)中,很多模型都可以被視為分層形式,如可微分神經(jīng)計算機(jī)可能包含 LSTM 控制器,可以實現(xiàn)為包含標(biāo)準(zhǔn)線性層。我們已經(jīng)發(fā)現(xiàn),編寫明確表示子模塊的代碼可以輕松實現(xiàn)代碼重用和快速實驗——Sonnet 可以在內(nèi)部聲明其他子模塊的編寫模塊,或在構(gòu)建時傳遞其他模塊。
我們發(fā)現(xiàn)最有意義的技術(shù)是允許某些模塊在任意嵌套的 Tensors 組中進(jìn)行操作。循環(huán)神經(jīng)網(wǎng)絡(luò)的較佳表現(xiàn)形式通常是一些異構(gòu) Tensor 的集合,如果表示為一個平面列表則會容易出錯。Sonnet 提供了用于處理這些層次結(jié)構(gòu)的實用工具,這樣在你需要更換另一種 RNN 的時候就不需要繁瑣的代碼更改了。我們已經(jīng)對 TensorFlow 內(nèi)核進(jìn)行了更改,對這種用例增加了更多支持。
Sonnet 專為 TensorFlow 設(shè)計,因此它不會阻止你訪問 Tensor 和 variable_scope 這樣的底層細(xì)節(jié)。用 Sonnet 編寫的模型可以與原始 TensorFlow 代碼,及其他高級庫中的代碼自由融合。
Sonnet 的發(fā)布不是一次性的,我們將持續(xù)更新 Github 以使其符合 DeepMind 的內(nèi)部版本。我們對目前 Sonnet 的功能還有很多想法,它們將陸續(xù)成為現(xiàn)實。我們非常感謝來自開源社區(qū)的貢獻(xiàn)。
GitHub 鏈接:https://github.com/deepmind/sonnet
安裝步驟
若想安裝 Sonnet,你需要使用 bazel 依靠 TensorFlow 頭文件對這個庫進(jìn)行編譯。請按照指定步驟安裝 TensorFlow:
https://www.tensorflow.org/install/
該庫兼容 Linux/Mac OS X 和 Python 2.7。TensorFlow 的版本必須至少為 1.0.1。Sonnet 支持 TensorFlow 的 virtualenv 安裝模式,以及 nativ pip 安裝。
安裝 BAZEL
請確保你擁有版本的 bazel(至少為 0.4.5 版),如果版本過舊,請遵循以下步驟:
https://bazel.build/versions/master/docs/install.html
Virtualenv TensorFlow 安裝
如果你想使用 virtualenv,請在安裝時急活你的 virtualenv,或跳過此步驟:
$ source $VIRTUALENV_PATH/bin/activate # bash, sh, ksh, or zsh
$ source $VIRTUALENV_PATH/bin/activate.csh # csh or tcsh
配置 TensorFlow 頭文件
首先復(fù)制 Sonnet 和 TensorFlow 的源代碼作為一個子模塊:
$ git clone --recursive https://github.com/deepmind/sonnet
然后使用 configure:
$ cd sonnet/tensorflow
$ ./configure
$ cd ../
你可以在 TensorFlow 配置期間選擇建議的默認(rèn)值。注意:這不會修改你現(xiàn)有的 TensorFlow 安裝。這一步是讓 Sonnet 構(gòu)建于 TensorFlow 頭文件上的必要步驟。
構(gòu)建和運(yùn)行安裝程序
運(yùn)行安裝腳本,在臨時目錄中創(chuàng)建一個 wheel file:
$ mkdir /tmp/sonnet
$ bazel build --config=opt :install
$ ./bazel-bin/install /tmp/sonnet
pip install 生成的 wheel file:
$ pip install /tmp/sonnet/*.whl
如果已安裝 Sonnet,卸載 wheel file 上之前的 pip install :
$ pip uninstall sonnet
你可以通過嘗試重采樣(resampler op)這樣的操作來驗證 Sonnet 是否安裝成功:
$ cd ~/
$ python>>> import sonnet as snt>>> import tensorflow as tf>>> snt.resampler(tf.constant([0.]), tf.constant([0.]))
預(yù)計的輸出應(yīng)該是:
當(dāng)然,如果引入了 ImportError,C++組件未找到時,請確保你沒有導(dǎo)入復(fù)制的源代碼(即在復(fù)制的資源庫外調(diào)用 Python),并在安裝 wheel file 前卸載 Sonnet。?
原文鏈接:https://deepmind.com/blog/open-sourcing-sonnet/
歡迎加入本站公開興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價值的辦法,實際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉庫,數(shù)據(jù)挖掘工具,報表系統(tǒng)等全方位知識
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/4506.html
摘要:我們對種用于數(shù)據(jù)科學(xué)的開源深度學(xué)習(xí)庫作了排名。于年月發(fā)布了第名,已經(jīng)躋身于深度學(xué)習(xí)庫的上半部分。是最流行的深度學(xué)習(xí)前端第位是排名較高的非框架庫。頗受對數(shù)據(jù)集使用深度學(xué)習(xí)的數(shù)據(jù)科學(xué)家的青睞。深度學(xué)習(xí)庫的完整列表來自幾個來源。 我們對23種用于數(shù)據(jù)科學(xué)的開源深度學(xué)習(xí)庫作了排名。這番排名基于權(quán)重一樣大小的三個指標(biāo):Github上的活動、Stack Overflow上的活動以及谷歌搜索結(jié)果。排名結(jié)果...
摘要:神經(jīng)網(wǎng)絡(luò)的注意機(jī)制已經(jīng)引起了廣泛關(guān)注。什么是通俗地說,神經(jīng)網(wǎng)絡(luò)注意機(jī)制是具備能專注于其輸入或特征的神經(jīng)網(wǎng)絡(luò),它能選擇特定的輸入。在實踐中,它們可以被一維高斯函數(shù)向量實現(xiàn)。 神經(jīng)網(wǎng)絡(luò)的注意機(jī)制(Attention Mechanisms)已經(jīng)引起了廣泛關(guān)注。在這篇文章中,我將嘗試找到不同機(jī)制的共同點和用例,講解兩種soft visual attention的原理和實現(xiàn)。什么是attention?...
摘要:現(xiàn)場宣布全球領(lǐng)先的深度學(xué)習(xí)開源框架正式對外發(fā)布版本,并保證的本次發(fā)布版本的接口滿足生產(chǎn)環(huán)境穩(wěn)定性要求。有趣的應(yīng)用案例皮膚癌圖像分類皮膚癌在全世界范圍內(nèi)影響深遠(yuǎn),患病人數(shù)眾多,嚴(yán)重威脅身體機(jī)能。 前言本文屬于介紹性文章,其中會介紹許多TensorFlow的新feature和summit上介紹的一些有意思的案例,文章比較長,可能會花費(fèi)30分鐘到一個小時Google于2017年2月16日(北京時間...
閱讀 3739·2021-11-24 09:39
閱讀 2624·2019-08-30 15:54
閱讀 1167·2019-08-30 13:01
閱讀 3445·2019-08-28 18:30
閱讀 1637·2019-08-26 17:44
閱讀 3607·2019-08-26 11:31
閱讀 2431·2019-08-26 10:40
閱讀 1262·2019-08-26 10:27