本周 Github 精選:13 款煉丹利器,有開源工具包也有超大數據集
在碎片化閱讀充斥眼球的時代,越來越少的人會去關注每篇論文背後的探索和思考。 在這個欄目里,你會快速 get 每篇精選論文的亮點和痛點,時刻緊跟 AI 前沿成果。 點擊即刻加入社區,查看更多最新論文推薦。
#Swift for TensorFlow
Swift for TensorFlow 為 TensorFlow 提供了一種新的編程模型,將 TensorFlow 計算圖與 Eager Execution 的靈活性和表達能力結合在了一起,同時還注重提高整個軟體架構每一層的可用性。
本項目的設計基礎是 Graph Program Extraction 演算法,它可以讓你用 Eager Execution 式的編程模型來輕鬆地實現代碼,同時還保留 TensorFlow 計算圖的高性能優勢。此外,本項目還將高級的自動微分功能直接集成在了 Swift 語言和編譯器裡面。
https://github.com/tensorflow/swift (二維碼自動識別)
項目鏈接:https://github.com/tensorflow/swift
#可視化降維Python工具包
HyperTools 是一個具有可視化功能的降維工具包,其基本流程是輸入高維數據,調用降維函數,同時進行繪圖。
▲ 效果展示
https://github.com/ContextLab/hypertools (二維碼自動識別)
項目鏈接:https://github.com/ContextLab/hypertools
GluonNLP
#NLP深度學習工具包
GluonNLP 提供了 NLP 方向的頂尖深度學習模型實現,並且構建了文本數據管道和模型的模塊。它專門面向工程師、研究人員和學者設計,大家可以基於這些模型快速實現研究思路,做出產品原型。
該項目具有如下特徵:
1. 訓練腳本來重現論文中的 state-of-the-art 結果;
2. 針對常見 NLP 任務的預訓練模型;
3. 精心設計的 API,可以極大減少實現的複雜性;
4. 中文社區支持。
▲ 案例展示
https://github.com/dmlc/gluon-nlp (二維碼自動識別)
項目鏈接:https://github.com/dmlc/gluon-nlp
GluonCV
#CV深度學習工具包
GluonCV 提供了 CV 方向的頂尖深度學習模型實現。該項目能幫助工程師、研究人員和學者快速打造產品原型、驗證新思路以及學習計算機視覺。
該工具包提供如下功能:
1. 近年重要論文的復現;
2. 詳細文檔提供使用說明和代碼講解;
3. 提供預訓練的模型可以直接使用;
4. 性能評測,方便大家在不同模型之間做取捨;
5. 每個模型實現和介面盡量保證一致性,降低使用新模型的學習門檻;
6. 定時做重新訓練保證代碼正確性;
7. 中文社區支持。
▲ 案例展示
https://github.com/dmlc/gluon-cv (二維碼自動識別)
項目鏈接:https://github.com/dmlc/gluon-cv
PyTorch Summary
#PyTorch版Keras API: model.summary()
Keras 框架有一個用於模型可視化的簡潔 API —— model.summary(),本項目實現了用於 PyTorch 框架中的 model.summary() 功能,用於輸出模型各層的詳細參數。
▲ 效果展示
https://github.com/sksq96/pytorch-summary (二維碼自動識別)
項目鏈接:https://github.com/sksq96/pytorch-summary
NCRF++
#基於PyTorch的Neural版本CRF++
本項目是基於 PyTorch 的神經網路序列標註開源庫,包含了幾種最先進的神經網路序列標註模型(LSTMCRF, CNNCRF 等),算是神經網路版的 CRF++。它可以讓用戶快速重現論文中的模型(如 Ma et. al ACL 2016; Lample et. al NAACL2016)。
該項目具有以下幾個特點:
1. 無需寫代碼:只要通過修改配置文件就可以對模型的結構進行配置,無需任何代碼工作;
2. 自由添加特徵:該項目不僅集成了幾種經典的特徵結構(如 char-lstm, char-gru, char-cnn)還可以添加自定義的特徵並初始化特徵向量;
3. 高效準確:利用該開源庫可以輕鬆重現之前的多篇論文的結果,大部分情況下會得到比論文更高的精度。同時該項目時完全基於 batch 計算實現的,因此計算速度很快(2000 句/秒);
4. Nbest 輸出:其 CRF 結構支持輸出 top-n 個最優 label 序列,並給出對應的序列概率。
▲ 結構設計
https://github.com/jiesutd/NCRFpp (二維碼自動識別)
項目鏈接:https://github.com/jiesutd/NCRFpp
Adversarial Robustness Toolbox
#IBM開源對抗機器學習庫
Adversarial Robustness Toolbox 是由 IBM 團隊開源的對抗機器學習庫,其主要用於檢測模型及對抗攻擊,為開發人員加強 AI 模型被誤導的防禦性,讓 AI 系統變得更加安全。
本項目實現了以下分類器攻防方法:
攻擊:
- Deep Fool (Moosavi-Dezfooli et al., 2015)
- Fast Gradient Method (Goodfellow et al., 2014)
- Jacobian Saliency Map (Papernot et al., 2016)
- Universal Perturbation (Moosavi-Dezfooli et al., 2016)
- Virtual Adversarial Method (Moosavi-Dezfooli et al., 2015)
- C&W Attack (Carlini and Wagner, 2016)
- NewtonFool (Jang et al., 2017)
防禦:
- Feature squeezing (Xu et al., 2017)
- Spatial smoothing (Xu et al., 2017)
- Label smoothing (Warde-Farley and Goodfellow, 2016)
- Adversarial training (Szegedy et al., 2013)
- Virtual adversarial training (Miyato et al., 2017)
https://github.com/IBM/adversarial-robustness-toolbox (二維碼自動識別)
項目鏈接:https://github.com/IBM/adversarial-robustness-toolbox
Chatbot
#可以進行訓練的聊天機器人
本項目是一個可以自己進行訓練的聊天機器人,可以根據自己的語料訓練出想要的對話機器人。本次訓練的語料是從互聯網上找到的 shooter 訓練語料,語料質量很差勁,僅作為演示代碼來用,大家可以使用自己的語料。
https://github.com/zhaoyingjun/chatbot (二維碼自動識別)
項目鏈接:https://github.com/zhaoyingjun/chatbot
SparkFlow
#基於Spark平台的TensorFlow實現
SparkFlow 是一個基於 Spark 平台的 TensorFlow 實現,讓用戶更方便在 Spark 上部署 TensorFlow 程序,更好地利用分散式平台進行深度學習模型的訓練。
▲ MNIST深度學習示例
https://github.com/lifeomic/sparkflow (二維碼自動識別)
項目鏈接:https://github.com/lifeomic/sparkflow
Tweet Generator
#模擬任何Twitter用戶發推文
Tweet Generator 是一個模擬 Twitter 用戶風格生成推文的工具。本項目基於 textgenrnn,並使用上下文標籤對網路進行訓練以獲得更好的推文合成。
textgenrnn 是一個基於 Keras 和 TensorFlow 的 Python 3 模塊,只需幾行代碼即可訓練文本生成網路。
▲ 效果展示
https://github.com/minimaxir/tweet-generator (二維碼自動識別)
項目鏈接:https://github.com/minimaxir/tweet-generator
DL Project Template
#深度學習工程模板
本項目是由美圖雲事業部開源的深度學習工程模板,簡化載入數據、構建網路、訓練模型和預測樣本的流程。
▲ 框架圖
▲ 文件夾結構
https://github.com/SpikeKing/DL-Project-Template (二維碼自動識別)
項目鏈接:https://github.com/SpikeKing/DL-Project-Template
STAIR Actions
#用於動作識別的大規模視頻數據集
STAIR Actions 是一個用於動作識別的大規模視頻數據集,包含 100 類諸如吃飯、喝水、洗手、扔垃圾等人類日常行為,每一類動作有 1000 個左右的視頻。作者保留了 10% 的數據用於後續比賽。
▲ 數據集規模
▲ 100種行為列表
https://github.com/STAIR-Lab-CIT/STAIR-actions (二維碼自動識別)
項目鏈接:https://github.com/STAIR-Lab-CIT/STAIR-actions
Moonlight Optical Music Recognition
#基於TensorFlow的光學樂譜識別工具
本項目是一個基於 TensorFlow 的光學樂譜識別工具,它通過讀取包含樂譜的 PNG 圖像來輸出 MusicXML 格式樂譜或 NoteSequence 消息。
https://github.com/tensorflow/moonlight (二維碼自動識別)
項目鏈接:https://github.com/tensorflow/moonlight
本文由 AI 學術社區 PaperWeekly 精選推薦,社區目前已覆蓋自然語言處理、計算機視覺、人工智慧、機器學習、數據挖掘和信息檢索等研究方向,點擊即刻加入社區!
關於PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智慧前沿論文成果的學術平台。如果你研究或從事 AI 領域,歡迎在公眾號後台點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
微信公眾號:PaperWeekly
新浪微博:@PaperWeekly
推薦閱讀:
※FluentValidation驗證組件
※機器學習組件Accord.NET
※開源周報第1期:GitHub Trending 丁酉年叱吒開源項目風雲榜
※碼雲推薦 | 五花八門的驗證碼程序,你遇到過哪些?