2019年5月五大機器學習Github庫

No1: InterpretML by Microsoft Machine Learning Interpretability

地址:https://github.com/microsoft/interpret


2019年5月五大機器學習Github庫


可解釋性是目前機器學習中的一個重要問題。能夠理解模型如何產生它所輸出的內容,這是每個機器學習項目的關鍵。

Interpretml是微軟的一個開源軟件包,用於訓練可解釋模型和解釋黑盒系統。微軟在解釋為什麼解釋性是必要的時候說得非常好:

  • 模型調試:為什麼我的模型犯了這個錯誤?
  • 檢測偏差:我的模型有區別嗎?
  • 人工智能合作:我如何理解和信任模型的決策?
  • 法規遵從性:我的模型是否滿足法律要求?
  • 高風險應用:醫療、金融、司法等。

從過去的經驗看,最容易理解的模型不是很準確,而最準確的模型是不可理解的。隨著複雜性的增加,解釋機器學習模型的內部工作變得更加困難。於是,MicrosoftResearch開發了一種稱為可解釋增強機(EBM)*的算法,該算法具有高精度和可理解性。EBM使用現代機器學習技術,如 bagging 和boosting,為傳統的GAM模型注入新的活力。這使它們像隨機森林和梯度提升樹一樣準確,並且還增強了它們的可理解性和可編輯性。

此外,該算法不僅限於使用EBM,它還支持LIME、線性模型、決策樹等算法。比較模型併為我們的項目挑選最好的模型從未如此簡單!

而Interpretml的安裝也很簡單,僅需要如下幾行代碼:

pip install numpy scipy pyscaffold
pip install -U interpret

No2:Tensor2Robot (T2R) by Google Research

地址:https://github.com/google-research/tensor2robot


2019年5月五大機器學習Github庫


Google Research再次出現在我們推薦的Github系列項目中。因為他們擁有業務中最強大的計算能力,且他們正在將它用於機器學習。


Google最新發布了名為Tensor2Robot(T2R)的開源項目。 T2R是用於大規模深度神經網絡訓練、評估和推理的庫。,此存儲庫包含分佈式機器學習和強化學習基礎結構。它在Alphabet內部使用,開源的目的是使Robotics @ Google的研究對於更廣泛的機器人和計算機視覺社區更具可重複性。

以下是使用Tensor2Robot實現的幾個項目:

  • QT-Opt(https://arxiv.org/abs/1806.10293
  • Grasp2Vec(https://github.com/google-research/tensor2robot/blob/master/research/grasp2vec)

No3:Generative Models in TensorFlow 2

地址:https://github.com/timsainb/tensorflow2-generative-models


2019年5月五大機器學習Github庫


這是一個在Tensorflow 2中實現大量生成模型的小項目。(TensorFlow 2.0是今年最受期待的TensorFlow版本,於不久前正式推出。)圖層和優化器都是使用Keras。這些模型是針對兩個數據集實現的:fashion MNIST和NSYNTH。編寫網絡的目的是儘可能簡單和一致,同時具有可讀性。因為每個網絡都是自包含在notebook中的,所以它們應該可以在colab會話中輕鬆運行。

該存儲庫包含多個生成模型的TF實現,包括:

  • 生成對抗網絡(GAN)
  • 自動編碼器
  • 變分自動編碼器(VAE)
  • VAE-GAN等。

No4:STUMPY – Time Series Data Mining

地址:https://github.com/TDAmeritrade/stumpy


2019年5月五大機器學習Github庫


STUMPY是一個功能強大且可擴展的庫,可幫助我們執行時間序列數據挖掘任務。 STUMPY旨在計算矩陣輪廓,矩陣輪廓是一個向量,它存儲時間序列中任何子序列與其最近鄰居之間的 z-normalized 歐幾里德距離。

以下是此矩陣配置文件幫助我們執行的一些時間序列數據挖掘任務:

  • 異常發現
  • 語義分割
  • 密度估計
  • 時間序列鏈(時序有序的子序列模式集)

使用以下代碼可以通過pip直接安裝STUMPY:

pip install stumpy

No5:MeshCNN in PyTorch

地址:https://github.com/ranahanocka/MeshCNN


MeshCNN是用於3D三角網格的通用深度神經網絡。這些網格可用於3D形狀分類或分割等任務。MeshCNN框架包括直接應用於網格邊緣的卷積,池化和解除層:

2019年5月五大機器學習Github庫

卷積神經網絡(CNN)非常適合處理圖像和視覺數據。 CNN近年來風靡一時,隨著圖像相關應用的湧現而興起:物體檢測、圖像分割、圖像分類等,隨著CNN的進步,這些都變成了可能。

而最近3D深度學習吸引了業界的興趣,包括機器人和自動駕駛等領域。3D形狀的問題在於它們本質上是不規則的。這使得像卷積這樣的操作變得很困難。這也是MeshCNN發揮作用的地方。它是是用於3D三角網格的通用深度神經網絡:網格是頂點,邊和麵的列表,它們共同定義3D對象的形狀。

相關推薦

推薦中...