10大熱門人工智能開源工具(框架)


10大熱門人工智能開源工具(框架)


摘要: 本文講了10個熱門的人工智能開源工具/框架。

下面是我們今天要講的10個熱門的人工智能開源工具/框架。

1.TensorFlow

10大熱門人工智能開源工具(框架)

TensorFlow™是一個開源軟件庫,最初由Google Brain Team的研究人員和工程師開發。TensorFlow使用數據流圖進行數值計算。圖中的節點表示數學運算,邊表示它們之間通信的多維數據數組(張量)。其架構靈活,你可以使用單個API將計算部署到桌面、服務器或移動設備中的一個或多個CPU或GPU。

TensorFlow提供了多種API。最低級別的API——TensorFlow Core——提供了完整的編程控制。高級API則建立在TensorFlow Core的頂部。這些更高級別的API通常比TensorFlow Core更容易學習和使用。此外,更高級別的API使得重復性的任務在不同的用戶之間變得更容易、更一致。一個高級API就像tf.estimator,可以幫助您管理數據集、評估器、訓練和推理。

TensorFlow中的數據中心單位是張量。一個張量由一組形成任意數量維數組的原始值組成。張量的階就是它的維數。

一些使用Tensorflow的Google應用有:

1.RankBrain:在www.google.com上大規模部署用於搜索排名的深度神經網絡。

2.Inception圖像分類模型:基准模型和對高度精確的計算機視覺模型的后續研究,它是在獲得2014年Imagenet圖像分類挑戰賽的模型基礎之上進行構建的。

3.SmartReply:可自動生成電子郵件響應的Deep LSTM模型。

4.Massively Multitask Networks for Drug Discovery:Google與斯坦福大學合作的識別有效候選葯的的深度神經網絡模型。

5.用於OCR的設備級計算機視覺:基於設備級的計算機視覺模型實現光學字符識別,進行實時翻譯。

2.Apache SystemML

利用大數據進行機器學習的最佳開源工具。

10大熱門人工智能開源工具(框架)

SystemML是由IBM創建的機器學習技術,是Apache中的頂級項目之一,它是一個靈活、可擴展的機器學習系統。SystemML的重要特點如下:

1.使用類R和類Python語言定制算法。

2.有多種執行模式,包括Spark MLContext、Spark Batch、Hadoop Batch、Standalone和JMLC(Java機器學習連接器)。

3.基於數據和聚類特性的自動優化,保證了算法的高效率和可擴展性。

4.將SystemML視為機器學習的結構化查詢語言SQL。SystemML的最新版本(1.0.0)支持:Java 8+、Scala 2.11+、Python 2.7/3.5+、Hadoop 2.6+以及Spark 2.1+。

5.可在Apache Spark上運行,在Apache Spark上,SystemML通過逐行查看代碼,確保代碼是否能夠在Apache Spark聚類上運行。

未來對SystemML的開發將包括:使用GPU進行額外的深度學習,例如導入和運行神經網絡架構以及用於訓練的預訓練模型。

SystemML的Java機器學習連接器(JMLC)

Java機器學習連接器(JMLC)API是一種編程接口,它在嵌入式時與SystemML進行交互。JMLC的主要目的是作為一個評分API,其中,評分函數是用SystemML的DML語言表示的。除了評分外,嵌入式SystemML還可在一台機器上運行的更大的應用程序的上下文中,執行聚類等無監督學習任務。

3.Caffe

Caffe是一種清晰而高效的深度學習框架。

10大熱門人工智能開源工具(框架)

Caffe最初由楊慶佳在加州大學伯克利分校讀博期間發起,后來由伯克利AI研究公司(BAIR)和社區貢獻者聯合開發。它主要專注於用於計算機視覺應用的卷積神經網絡。對於計算機視覺相關的任務來說,Caffe是一個不錯且較為流行的選擇,您可以在Caffe Model Zoo上注冊,下載很多已經成功建模的模型,直接用於開發。

優點

1.Expressive架構鼓勵實用和創新。用配置定義的模型和優化,而不需要硬編碼。通過設置單個標志在GPU機器上進行訓練,然后部署聚類或移動設備,實現CPU和GPU之間的切換。

2.可擴展代碼更有助於開發。在Caffe開發好的的第一年,就有1,000多個開發者分享了出去,對其做了重大貢獻。

3.Caffe的高速使理論實驗和實際應用得到了完美的結合。Caffe使用單個NVIDIA K40 GPU每天可處理超過6000萬張圖像。

4.社區:Caffe已經為視覺、語音和多媒體領域的學術研究項目,啟動原型,甚至大規模工業應用提供支持。

4.Apache Mahout

Apache Mahout是一個分布式線性代數框架,提供了一些經典的機器學習算法。

10大熱門人工智能開源工具(框架)

Mahout旨在幫助開發人員方便快捷的實現自己的算法。Apache Spark是一種即拿即用的分布式后台,或者也可以將其擴展到其他分布式后台。其特點如下:

1.數學表達Scala DSL。

2.支持多種分布式后端(包括Apache Spark)。

3.包含用於CPU / GPU / CUDA加速的模塊化本地求解器。

4.Apache Mahout應用的領域包括:協作過濾(CF),聚類和分類。

功能

1.Taste CF.Taste 是 Sean Owen 在 SourceForge 上發起的一個針對協同過濾(CF)的開源項目,並在 2008 年被贈予 Mahout。

2.支持 Map-Reduce 的集群實現包括 :k-Means、模糊 k-Means、Canopy、Dirichlet 和 Mean-Shift算法等。

3.分布式朴素貝葉斯和互補朴素貝葉斯的分類實現。

4.用於進化編程的分布式適應度函數。

5.矩陣和矢量庫。

5.OpenNN

OpenNN是一個用c++編寫的開源類庫,它實現了神經網絡建模。

Opennn (開放神經網絡圖書館)以前被稱為Flood,它是以R. Lopez在2008年泰羅尼亞技術大學的博士論文《在工程變分問題的神經網絡》為基礎開發的。

10大熱門人工智能開源工具(框架)

Opennn使用一組函數實現了數據挖掘,並且,可以使用一個API將這些函數嵌入到其他軟件工具中,使軟件工具和預測分析任務之間進行交互。Opennn的主要優點就是它的高性能。由於采用c++開發,因此它有更好的內存管理和更高的處理速度,並利用 OpenMP 和 GPU 加速度(CUDA)實現 CPU 並行化。

Opennn包中含有單元測試、許多示例和大量文檔。為神經網絡算法和應用的研究開發提供了一個有效的框架。神經網絡設計是一個基於OpenNN的專業預測分析工具,這就意味着神經網絡設計的神經引擎是基於 OpenNN 建立的。

OpenNN旨在從數據集和數學模型中進行學習。

數據集

特征回歸

模式識別

時間序列預測

數學模型

最佳控制

最佳形狀設計

數據集和數學模型

反向問題

6.Torch

Torch是一個開源機器學習庫、科學計算框架和基於Lua編程語言的腳本語言。

10大熱門人工智能開源工具(框架)

功能

1.一個強大的 n 維數組

2.有很多索引、切片、轉換的程序。

3.可使用 LuaJIT編寫簡單的C擴展。

4.線性代數程序

5.神經網絡和基於能量的模型

6.數字優化程序

7.GPU支持,更加快速和高效

8.可嵌入,帶有 iOS 和 Android 的后台端口

Torch供 Facebook 人工智能研究小組、 IBM、 Yandex 和 Idiap 研究所使用。現在,它已經擴展到 Android 和 iOS系統上,研究人員也使用Torch來構建硬件實現數據流。

Pytorch是一個Python的開源機器學習庫,用於自然語言處理等應用,主要由 Facebook 的人工智能研究小組開發,Uber 的概率編程軟件"Pyro"就是在Pytorch上創建的。

7.Neuroph

Neuroph是一種用 Java 編寫的面向對象的神經網絡框架。

10大熱門人工智能開源工具(框架)

Neuroph可用於在Java程序中創建和訓練神經網絡,它提供了Java類庫以及用於創建和訓練神經網絡的GUI工具easyNeurons。Neuroph是一個輕量級的Java神經網絡框架,可用於開發常見的神經網絡架構。它包含一個設計良好的開源Java庫,其中包含少量與基本神經網絡概念對應的基礎類。它還有一個很好的GUI神經網絡編輯器來快速創建Java神經網絡組件。目前,已經在Apache 2.0許可下作為開源發布出來。

Neuroph的核心類與人工神經元、神經元層、神經元連接、權重、傳遞函數、輸入函數和學習規則等基本神經網絡概念對應。Neuroph支持常見的神經網絡體系結構,例如具有反向傳播,Kohonen和Hopfield網絡的多層感知器。所有的這些類都可以進行擴展和定制,以自定義創建神經網絡和學習規則。Neuroph同時也支持圖像識別。

8.Deeplearning4j

Deeplearning4j是第一個為Java和Scala編寫的商業級開源分布式深度學習庫。

Deeplearning4j旨在成為頂尖的即拿即用設備,而不是只是做一些配置,這使得非專業人員也能夠快速的構建模型。

DL4J可以通過Keras(包括TensorFlow,Caffe和Theano)從大多數主要框架中導入神經網絡模型,它為數據科學家、數據工程師和DevOps提供了跨團隊工具包,彌合了Python生態系統和JVM之間的障礙。現在,Keras是Deeplearning4j的Python API。

功能

1.分布式 cpu 和 gpu

2.Java, Scala and Python APIs

3.適用於微服務體系結構

4.通過降低迭代次數進行並行訓練

5.在Hadoop 上可伸縮

6.在AWS擴展上提供Gpu 支持

1.Deeplearning4J: 神經網絡平台

2.ND4J: Numpy for the JVM

3.DataVec:機器學習ETL操作的工具

4.JavaCPP:Java和C ++之間的橋梁

5.Arbiter:機器學習算法的評估工具

6.RL4J:JVM的深度增強學習

9.Mycroft

Mycroft聲稱是世界上第一個開源助手,適用於從科學項目到企業軟件應用程序的任何事情。

10大熱門人工智能開源工具(框架)

Mycroft可以在任何地方運行——台式計算機上、在汽車內或在樹莓派上運行。這是可以自由混合、自由擴展和改進的開源軟件。

10.OpenCog

OpenCog是一個旨在構建開源人工智能框架的項目。

10大熱門人工智能開源工具(框架)

OpenCog是認知算法的多元化組合,每種組合都體現了它們的創新之處。但是,認真遵守認知協同原則才是OpenCog整體架構強大的原因。OpenCog最初是基於2008年“Novamente Cognition Engine”(NCE)發布的源代碼。

1.一個圖表數據庫,它包含術語、原子公式、句子和關系作為超圖。

2.一個模理論解算器,作為通用圖形查詢引擎的一部分,用於執行圖和超圖模式匹配。

3.一種稱為元優化語義進化搜索的概率遺傳程序(MOSES),最初由在Google工作的Moshe Looks開發。

4.有一個基於 OpenPsi 和 Unity 的虛擬世界中的交互學習應用體系。

5.有一個由Link Grammar和RelEx組成的自然語言輸入系統,它們都采用類AtomSpace來表示語義和句法的關系。

6.有一個稱為SegSim的自然語言生成系統,它實現NLGen和NLGen2。

7.Psi 理論的實現,用於處理情緒狀態、驅動和沖動,稱為 OpenPsi。

本文為雲棲社區原創內容.

https://blog.csdn.net/zhangbijun1230/article/details/80714032


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM