FB宣布開源Caffe2:可在手機與樹莓派上訓練和部署模型
選自Caffe2.ai
機器之心編譯
在今年的 F8 開發者大會上,Facebook 正式宣布開源其全新深度學習框架 Caffe2。據 Caffe2 官方博客介紹,該框架可以用在 iOS、Android 和樹莓派上訓練和部署模型;而且 Facebook 已經與英偉達、高通、英特爾、亞馬遜和微軟等公司展開了合作來實現對移動端的優化。機器之心在此對這一開源項目進行了介紹。
為了有效地訓練和部署人工智慧模型,我們往往會用到大型數據中心或超級計算機。為了能夠大規模地連續處理、創建和提升各種各樣的信息(圖像、視頻、文本和音頻)之上的模型,我們需要的計算能力不可小覷。如果我們要在移動設備上部署這些模型,那麼它們就必須要非常快而且輕量,但這也同樣十分困難。要克服這些難題,我們需要一種穩健的、靈活的和攜帶型的深度學習框架。
Facebook 一直以來都在和開源社區的其他開發者合作一起打造這樣一款框架。今天,Facebook 宣布開源了第一版生產可用的 Caffe2 版本,這是一個輕量級的、模塊化的深度學習框架,並且在強調了便攜性的同時保持了可擴展性和性能。
我們致力於為社區提供高性能的機器學習工具,以便人人都能創造智能的應用和服務。與 Caffe2 一同發布的還有相關的一些教程和案例,其中包括在一台機器上使用多個 GPU 的大規模學習和使用一個或多個 GPU 的在多台機器上的大規模學習、學習在 iOS、Android 和樹莓派上訓練和部署模型。另外,你只需要編寫幾行代碼就能調用來自 Caffe2 Model Zoo 的預訓練模型。
Caffe2 部署在 Facebook 之中以幫助研發人員訓練大型機器學習模型,並為手機用戶提供人工智慧驅動的良好體驗。現在,開發者可以訪問很多相同的工具,允許他們運行大規模分布式訓練方案,並創建手機端的機器學習應用。我們已與英偉達、 高通、英特爾、亞馬遜和微軟展開密切合作,從而在雲端和手機端優化 Caffe2。這些合作將允許機器學習社區快速完成使用更複雜模型的實驗過程,並部署下一代人工智慧增強型應用和服務。
你可以在 caffe2.ai 上查看 Caffe2 文檔和教程,並在 GitHub 查看源代碼。如果你考慮使用 Caffe2,我們很樂意了解你的具體需求。請參與我們的調查。我們將向你發送有關新版本和特殊的開發者活動/網路研討會的信息。
主頁:http://caffe2.ai
GitHub: https://github.com/caffe2/caffe2
調查:https://www.surveymonkey.com/r/caffe2
以下是 Caffe2 在 GitHub 上開源項目的介紹:
Caffe2 是一個兼具表現力、速度和模塊性的深度學習框架,是 Caffe 的實驗性重構,能以更靈活的方式組織計算。
許可
Caffe2 的發布許可許可 :https://github.com/Yangqing/caffe2/blob/master/LICENSE
建立 Caffe2
詳細的構建矩陣:
git clone --recursive https://github.com/caffe2/caffe2.git
cd caffe2
OS X
brew install automake protobuf
mkdir build && cd build
cmake ..
make
Ubuntu
可運行版本:
Ubuntu 14.04
Ubuntu 16.06
需要的依賴包
sudo apt-get update
sudo apt-get install -y --no-install-recommends
build-essential
cmake
git
libgoogle-glog-dev
libprotobuf-dev
protobuf-compiler
python-dev
python-pip
sudo pip install numpy protobuf
可選擇 GPU 支持
如果你計劃使用 GPU,而不只是使用 CPU,那你應該安裝 NVIDIA CUDA 和 cuDNN,這是一個面向深度神經網路的 GPU 加速庫。英偉達在官方博客中詳細介紹了安裝指南,或者可以嘗試下面的快速安裝指令。首先,一定要升級你的圖顯驅動!否則你可能遭受錯誤診斷的極大困難。
安裝 Ubuntu 14.04
sudo apt-get update && sudo apt-get install wget -y --no-install-recommends
wget "http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.61-1_amd64.deb"
sudo dpkg -i cuda-repo-ubuntu1404_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
安裝 Ubuntu 16.04
sudo apt-get update && sudo apt-get install wget -y --no-install-recommends
wget "http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb"
sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
安裝 cuDNN(所有都是 Ubuntu 版本)
CUDNN_URL="http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz"
wget ${CUDNN_URL}
sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local
rm cudnn-8.0-linux-x64-v5.1.tgz && sudo ldconfig
可選擇的依賴項
注意,Ubuntu 14.04 使用 libgflags2。Ubuntu 16.04 使用 libgflags-dev。
# for Ubuntu 14.04
sudo apt-get install -y --no-install-recommends libgflags2
# for Ubuntu 16.04
sudo apt-get install -y --no-install-recommends libgflags-dev
# for both Ubuntu 14.04 and 16.04
sudo apt-get install -y --no-install-recommends
libgtest-dev
libiomp-dev
libleveldb-dev
liblmdb-dev
libopencv-dev
libopenmpi-dev
libsnappy-dev
openmpi-bin
openmpi-doc
python-pydot
檢查下面的 Python 部分,並在建立 Caffe2 之前安裝可選擇的程序包。
mkdir build && cd build
cmake ..
make
安卓和 iOS
我們使用 CMake 的安卓和 iOS 埠構建原始二進位文件,然後就能將其集成到安卓或 XCode 項目中。查看腳本/build_android.sh 和/build_ios.sh 獲得具體信息。
對於安卓系統,我們可以使用 gradle 通過 Android Studio 直接構建 Caffe2。這裡是一個示例項目:https://github.com/bwasti/AICamera。注意,你可能需要配置 Android Studio,這樣你編寫代碼的 SDK 和 NDK 版本才會正確。
樹莓派
對於 Raspbian 系統,只需要在樹莓派上運行腳本/build_raspbian.sh 就行了。
Tegra X1
為了在英偉達的 Tegra X1 平台上安裝 Caffe2,需要使用 NVidia JetPack 安裝器簡單地安裝最新版本的系統,然後再在 Tegra 設備上運行腳本/build_tegra_x1.sh。
Python 支持
為了進行下面的教程,Python 環境需要安裝 ipython-notebooks 和 matplotlib,在 OS X 系統中可以通過以下方法安裝:
brew install matplotlib --with-python3
pip install ipython notebook
你會發現下面的 Python 庫同樣在具體的教程和案例中是必需的,所以你可以運行下面的命令行一次性安裝所有的要求庫:
sudo pip install
flask
graphviz
hypothesis
jupyter
matplotlib
pydot python-nvd3
pyyaml
requests
scikit-image
scipy
setuptools
tornado
構建環境(已知能運行)
※招商局創投領投,氪信科技完成 B 輪融資
※TensorFlow中的命令式編程
※Kaggle 上機器學習的八個步驟
TAG:機器之心 |
※Ben Affleck 為《蝙蝠俠》開始體能訓練?
※Super Junior圭賢陸軍訓練所近照公開
※詹姆斯賽前訓練上腳LeBron Soldier 11 PE
※Facebook公布SGD,可在1小時內訓練ImageNet
※後肩訓練:繩索麵拉Face Pull
※SteveCook最新肩部+手臂訓練計劃
※John Wall曬訓練照,上腳PG1「斷鉤」
※Ad Rater:YouTube 廣告投放 AI 背後的訓練人員
※Multicam的勝利?FBI SWAT密爾沃基分局訓練照
※FB開源人工智慧框架ParlAI:可輕鬆訓練評估對話模型
※馬拉松訓練的首選——亞瑟士Gel-DS Trainer 22
※Adidas x Kith Ace Tango 17訓練鞋曝光
※庫里訓練中上腳白金配色Curry 4 Low
※Lawrence Ballenger塑造飽滿肩部訓練計劃
※科技早報:Google推出人類與AI研究項目;DeepMind正使用AI訓練模擬小人執行類人運動
※終於露臉!詹姆斯訓練中上腳兩款LeBron 14 Low
※FB新研究:大批量SGD準確訓練ImageNet僅需1小時
※NUE Sailing—腰腹訓練 I
※Nike 全新 VaporMax Trainer 訓練鞋諜照流出