2018年度盤點:機器學習開源項目及框架(附鏈接)
【新智元導讀】2018年馬上就要結束了,我們來回顧一下過去的這一年中,機器學習領域有哪些有趣的事情吧!
我們先來看看Mybridge AI 中排名靠前的頂級開源項目,再聊聊機器學習今年都有哪些發展,最後探尋下新的一年中會有哪些有值得我們期待的事情。
頂級的開源項目
BERT
BERT,全稱為Bidirectional Encoder Representations from Transformers,是一種基於TensorFlow解決自然語言處理的新方法,且性能更好。我們可以使用BERT中的 預訓練模型解決問題,該模型在性能上具有很大優勢,比如可以識別句子中的上下文。在Github中非常受歡迎,有8848個星,完整學術論文請訪問這裡。
https://github.com/google-research/bert
https://arxiv.org/abs/1810.04805
DeepCreamPy
DeepCreamPy是一個深度學習工具,可以像Photoshop一樣重建圖像中被刪除的區域。我們使用圖像編輯工具(比如PS)將刪減的區域填充為綠色,神經網路可以對其進行復原。該項目在Github中有6365顆星。
https://github.com/deeppomf/DeepCreamPy
TRFL
TRFL項目可用於編寫TensorFlow中的強化學習代理,具體的操作文檔在這裡。
https://github.com/deepmind
https://github.com/deepmind/trfl/blob/master/docs/index.md
Horizon
Horizon是一個基於PyTorch構建的強化學習平台,並使用Caffe2為模型提供服務。Horizon的主要優勢在於,設計者在設計這一平台的時候,考慮了生產用例。想要了解更多詳細內容,請查看FacebookResearch官方文檔。另外,如果你想使用Horizon,可查看該使用文檔。
https://github.com/facebookresearch/Horizon?
https://heartbeat.fritz.ai/introduction-to-pytorch-for-deep-learning-5b437cea90ac
https://github.com/facebookresearch/Horizon/blob/master/docs/usage.md
DeOldify
DeOldify是一個用於著色和恢復舊圖像的深度學習庫。開發者結合了幾種不同的方法,來實現這一目標,其中的幾種方法包括:帶自注意力機制的生成對抗網路(Self-Attention GenerativeAdversarial Networks),Progressive Growing of GANs,以及TTUR( TwoTime-Scale Update Rule)。
https://github.com/jantic/DeOldify
https://arxiv.org/abs/1805.08318
https://arxiv.org/abs/1710.10196
https://arxiv.org/abs/1706.08500
AdaNet
AdaNet是一個基於TensorFlow的庫,它可以自動學習模型,且不需要很多的技術人員參與,該項目基於AdaNet演算法。訪問AdaNet的官方文檔,請點擊這裡。
https://github.com/tensorflow/adanet
http://proceedings.mlr.press/v70/cortes17a.html
https://adanet.readthedocs.io/
Graph Nets
Graph Nets是用於構建Sonnet和TensorFlow的DeepMind庫。Graph 網路輸入一個圖形,輸出也是一個圖形。
https://github.com/deepmind/graph_nets
Maskrcnn-benchmark
Maskrcnn-benchmark項目可以幫助我們在Pytorch中構建對象檢測和分割工具。這個庫的優勢在於速度快、內存效率高,可以進行多個GPU訓練和推斷,且為推斷提供CPU支持。
https://github.com/facebookresearch/maskrcnn-benchmark
PocketFlow
PocketFlow項目是一個加速和壓縮深度學習模型的框架。它解決了大多數深度學習模型的計算費用問題。該項目最初由騰訊AI實驗室的研究人員開發,了解其實現及官方文檔請點擊這裡。
https://github.com/Tencent/PocketFlow
https://pocketflow.github.io/
MAMEToolkit
MAMEToolKit是一個訓練街機遊戲強化學習演算法的庫,使用該工具可以跟蹤遊戲狀態,同時也可以接收遊戲幀數據。
https://github.com/M-J-Murray/MAMEToolkit
機器學習框架的主要發展
PyTorch 1.0
在今年10月份舉辦的PyTorch會議期間,Facebook發布了PyTorch 1.0預覽版。PyTorch 1.0解決了以下問題:訓練耗時長、聯網問題、緩慢的可擴展性以及Python編程語言帶來的一些不靈活性。
PyTorch 1.0引入了一組編譯工具Torch.jit,這將彌補生產和研究之間的差距。Torch.jit中包含Python中的Torch Script語言,在PyTorch 1.0中,我們可以使用圖形模式構建模型,這在開發高性能和低延遲的應用程序中非常有用。
Auto-Keras
你或許聽過自動化機器學習(automated machine learning),即自動化搜索機器學習模型的最佳參數。除Auto-Keras之外,還有其他的自動化機器學習模型,比如Google的AutoML。Auto-Keras是基於Keras和ENAS編寫的,其中,ENAS是神經網路結構搜索的最新版本。
https://cloud.google.com/automl/
https://autokeras.com/
https://keras.io/
https://arxiv.org/abs/1802.03268
https://en.wikipedia.org/wiki/Neural_architecture_search
TensorFlow Serving
使用TensorFlow Serving系統,我們能更加輕鬆的將TensorFlow模型部署到生產環境中。雖然TensorFlow Serving在2017年就已經發布,但是今年更加註重將模型應用到生產環境環節。
https://www.tensorflow.org/serving/
Machine Learning Javascript
現在已經有一些可以允許開發人員在瀏覽器上運行模型的Javascript框架,比如TensorFlow.js和Keras.js。其模型實現與使用的方法,與Keras或TensorFlow等常規框架非常相似。
https://js.tensorflow.org/
https://github.com/transcranial/keras-js
展望未來
2019年馬上就要到了,隨著Auto-Keras等自動化工具的發展,開發人員的工作有望變得更加輕鬆。除此以外,我們還擁有先進的研究以及優秀的社區,各類機器學習框架的性能還會更上一層樓。
※圖解2018年領先的兩大NLP模型:BERT和ELMo
※明日之爭:中國會成為下一個晶元帝國嗎?
TAG:新智元 |