精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:人工智能行業動態 → 正文

最適合人工智能的框架和庫,大公司都在用

責任編輯:editor006 作者:田曉旭 |來源:企業網D1Net  2018-01-23 16:14:35 本文摘自:it168網站

在很長一段時間內,人工智能都被認為是陽春白雪的科技技術,只有搞學術的和天才才會研究,但是近年來,隨著各種框架和庫的發展,人工智能領域開始變得友好,更多的技術人才開始進入到這個領域。

本文將著重為大家介紹10個人工智能領域高質量的框架和庫,分析它們的特點,對比它們的優缺點,幫助更多技術人加入人工智能的圈子中。

1. TensorFlow

“使用數據流圖進行可伸縮機器學習的計算。”

  語言:C ++或Python。

一腳踏入人工智能領域時,你聽到的第一個框架可能就是Google的TensorFlow。

TensorFlow是一個使用數據流圖進行數值計算的開源軟件。據悉,這個框架允許在任何CPU或GPU上進行計算,無論是臺式機、服務器還是移動設備都支持。

TensorFlow通過稱為節點的數據層進行排序,并根據所得到的信息進行決策。

  優點:

使用易于學習的語言(Python)。

使用計算圖抽象。

可使用TensorBoard可視化。

缺點:

由于Python不是最快的編程語言,所以它速度會很慢;

預先訓練的模型十分缺乏。

不是完全開源。

2.微軟的CNTK

“開源的深度學習工具包”

  語言:C ++。

CNTK,我們可以稱之為是微軟對Google TensorFlow的回應。

微軟的Computational Network ToolKit是一個提高模塊化和維護分離計算網絡,提供學習算法和模型描述的庫。

CNTK還可以同時利用多臺服務器,據說它的功能與Google TensorFlow相近,但是速度卻要更快。

  優點:

非常靈活;

允許分布式訓練;

支持C ++、C#、Java和Python。

缺點:

它是用一種新的語言——Network Description Language (NDL)來實現的;

缺乏可視化;

3. Theano

“數值計算庫”

  語言:Python。

作為TensorFlow的強大競爭對手,Theano是一個強大的Python庫,允許使用高效率的多維數組進行數值操作。

該庫使用GPU來執行數據密集型計算,因此操作效率很高。也同樣是因為這個原因,在10年的時間里,Theano都被用于為大規模的計算密集型操作提供動力。

2017年9月,Theano的開發與維護者之一 Pascal Lamblin 貼出了一封郵件:Yoshua Bengio 宣布在發布Theano 1.0版本之后,終止Theano的開發和維護。當然,這并不意味著Theano是個不強大的庫。

  優點:

正確優化CPU和GPU。

高效的數值計算任務。

缺點:

與其他庫相比,原始的Theano有點低級。

需要與其他庫一起使用以獲得較高的抽象級別。

在AWS上有點小麻煩。

4.Caffe

“快速,開放的深度學習框架”

語言:C ++。

Caffe是一個強大的深度學習框架。與文中的其它框架一樣,深度學習的速度非??臁?/p>

借助Caffe,可以非常輕松地構建用于圖像分類的卷積神經網絡(CNN)。另外Caffe在GPU上也可以良好運行,這有助于在運行期間提高速度。

Caffe main classes:

優點:

Python和MATLAB的綁定可用;

性能表現優異;

無需編寫代碼即可進行模型的訓練。

缺點:

對于遞歸網絡支持不好;

對于新架構的支持不太友好;

5.Keras

對人類的深度學習

語言:Python。

Keras是一個用Python編寫的開源的神經網絡庫。

與TensorFlow,CNTK和Theano不同,Keras并不是一個端到端的機器學習框架。相反,它是作為一個接口,提供高層次的抽象,讓神經網絡的配置變得簡單。目前Google TensorFlow已經支持Keras作為后端,不久之后,微軟 CNTK也會支持。

  優點:

用戶友好;

易于擴展;

在CPU和GPU上無縫運行;

與Theano和TensorFlow無縫合作。

缺點:

不能作為獨立框架有效使用。

6.Torch

“一個開源的機器學習庫”

語言:C.

Torch是一個用于科學和數值的開源機器學習庫。它是基于Lua的庫,通過提供大量的算法,更易于深入學習研究,提高了效率和速度。它有一個強大的n維數組,有助于切片和索引之類的操作。除此之外,還提供了線性代數程序和神經網絡模型。

  優點:

非常靈活。

速度快,效率高。

大量的預先訓練的模型可用。

缺點:

文檔不清晰;

沒有立即使用的即插即用代碼。

基于一種不那么流行的語言Lua。

7. Accord.NET

“機器學習,計算機視覺,統計和.NET通用科學計算”。

語言:C#。

這是為C#程序員準備的。

Accord.NET框架是一個.NET機器學習框架,使得音頻和圖像處理變得簡單。

這個框架可以有效地處理數值優化、人工神經網絡,甚至是可視化。除此之外,Accord.NET對計算機視覺和信號處理功能非常強大,同時也使得算法的實現變得簡單。

  優點:

它擁有一個龐大而活躍的開發團隊;

非常有據可查的框架;

可視化質量高。

缺點:

不是一個非常流行的框架;

速度比TensorFlow慢。

8. Spark MLlib

“可擴展的機器學習庫”

語言:Scala

Apache Spark MLlib是一個可擴展的機器學習庫,適用于Java、Scala、Python、R語言等多種語言。因為可以與Python庫和R庫中的numpy進行互操作,所以非常高效。

MLlib可以輕松插入到Hadoop工作流程中,提供了機器學習算法,如分類,回歸和聚類。

這個強大的庫在處理大型數據時非??焖佟?/p>

  優點:

對于大規模數據處理非??焖佟?/p>

支持多種語言。

缺點:

陡峭的學習曲線。

即插即用僅適用于Hadoop。

9. Sci-kit Learn

“Python中的機器學習”

語言:Python。

Sci-kit Learn是一個非常強大的機器學習Python庫,主要用于構建模型。

它使用其他庫(如numpy、SciPy和matplotlib)構建,對于統計建模技術(如分類、回歸和集群)非常有效。Sci-kit Learn的特性包括監督學習算法、無監督學習算法和交叉驗證

優點:

許多主要算法的可用性。

高效的數據挖掘。

缺點:

不是最好的構建模型。

GPU效率不高。

10. MLPack

“可擴展的C ++機器學習庫”

語言:C ++。

MLPack是一個用C ++實現的可擴展的機器學習庫。因為它是用C ++編寫的,所以我們可以合理猜測它對內存管理是非常好的。

MLPack以極快的速度運行,因為高質量的機器學習算法與庫一起運行,而且它對于新手是非常友好的,并且提供了一個簡單的API使用。

  優點:

可擴展;

Python和C ++綁定可用。

缺點:

文檔不是很友好。

寫在最后

本文推薦的庫都是經得起時間檢驗的,像是Facebook、Google、Apple和Microsoft等一些大公司都在他們的深度學習和機器學習項目中應用這些庫,所以你還有什么道理不抓緊時間來學習呢?

如果你有經常使用并且感覺還不錯的庫,也歡迎在下方評論中與我們分享!

關鍵字:Python機器學習學習算法

本文摘自:it168網站

x 最適合人工智能的框架和庫,大公司都在用 掃一掃
分享本文到朋友圈
當前位置:人工智能行業動態 → 正文

最適合人工智能的框架和庫,大公司都在用

責任編輯:editor006 作者:田曉旭 |來源:企業網D1Net  2018-01-23 16:14:35 本文摘自:it168網站

在很長一段時間內,人工智能都被認為是陽春白雪的科技技術,只有搞學術的和天才才會研究,但是近年來,隨著各種框架和庫的發展,人工智能領域開始變得友好,更多的技術人才開始進入到這個領域。

本文將著重為大家介紹10個人工智能領域高質量的框架和庫,分析它們的特點,對比它們的優缺點,幫助更多技術人加入人工智能的圈子中。

1. TensorFlow

“使用數據流圖進行可伸縮機器學習的計算。”

  語言:C ++或Python。

一腳踏入人工智能領域時,你聽到的第一個框架可能就是Google的TensorFlow。

TensorFlow是一個使用數據流圖進行數值計算的開源軟件。據悉,這個框架允許在任何CPU或GPU上進行計算,無論是臺式機、服務器還是移動設備都支持。

TensorFlow通過稱為節點的數據層進行排序,并根據所得到的信息進行決策。

  優點:

使用易于學習的語言(Python)。

使用計算圖抽象。

可使用TensorBoard可視化。

缺點:

由于Python不是最快的編程語言,所以它速度會很慢;

預先訓練的模型十分缺乏。

不是完全開源。

2.微軟的CNTK

“開源的深度學習工具包”

  語言:C ++。

CNTK,我們可以稱之為是微軟對Google TensorFlow的回應。

微軟的Computational Network ToolKit是一個提高模塊化和維護分離計算網絡,提供學習算法和模型描述的庫。

CNTK還可以同時利用多臺服務器,據說它的功能與Google TensorFlow相近,但是速度卻要更快。

  優點:

非常靈活;

允許分布式訓練;

支持C ++、C#、Java和Python。

缺點:

它是用一種新的語言——Network Description Language (NDL)來實現的;

缺乏可視化;

3. Theano

“數值計算庫”

  語言:Python。

作為TensorFlow的強大競爭對手,Theano是一個強大的Python庫,允許使用高效率的多維數組進行數值操作。

該庫使用GPU來執行數據密集型計算,因此操作效率很高。也同樣是因為這個原因,在10年的時間里,Theano都被用于為大規模的計算密集型操作提供動力。

2017年9月,Theano的開發與維護者之一 Pascal Lamblin 貼出了一封郵件:Yoshua Bengio 宣布在發布Theano 1.0版本之后,終止Theano的開發和維護。當然,這并不意味著Theano是個不強大的庫。

  優點:

正確優化CPU和GPU。

高效的數值計算任務。

缺點:

與其他庫相比,原始的Theano有點低級。

需要與其他庫一起使用以獲得較高的抽象級別。

在AWS上有點小麻煩。

4.Caffe

“快速,開放的深度學習框架”

語言:C ++。

Caffe是一個強大的深度學習框架。與文中的其它框架一樣,深度學習的速度非常快。

借助Caffe,可以非常輕松地構建用于圖像分類的卷積神經網絡(CNN)。另外Caffe在GPU上也可以良好運行,這有助于在運行期間提高速度。

Caffe main classes:

優點:

Python和MATLAB的綁定可用;

性能表現優異;

無需編寫代碼即可進行模型的訓練。

缺點:

對于遞歸網絡支持不好;

對于新架構的支持不太友好;

5.Keras

對人類的深度學習

語言:Python。

Keras是一個用Python編寫的開源的神經網絡庫。

與TensorFlow,CNTK和Theano不同,Keras并不是一個端到端的機器學習框架。相反,它是作為一個接口,提供高層次的抽象,讓神經網絡的配置變得簡單。目前Google TensorFlow已經支持Keras作為后端,不久之后,微軟 CNTK也會支持。

  優點:

用戶友好;

易于擴展;

在CPU和GPU上無縫運行;

與Theano和TensorFlow無縫合作。

缺點:

不能作為獨立框架有效使用。

6.Torch

“一個開源的機器學習庫”

語言:C.

Torch是一個用于科學和數值的開源機器學習庫。它是基于Lua的庫,通過提供大量的算法,更易于深入學習研究,提高了效率和速度。它有一個強大的n維數組,有助于切片和索引之類的操作。除此之外,還提供了線性代數程序和神經網絡模型。

  優點:

非常靈活。

速度快,效率高。

大量的預先訓練的模型可用。

缺點:

文檔不清晰;

沒有立即使用的即插即用代碼。

基于一種不那么流行的語言Lua。

7. Accord.NET

“機器學習,計算機視覺,統計和.NET通用科學計算”。

語言:C#。

這是為C#程序員準備的。

Accord.NET框架是一個.NET機器學習框架,使得音頻和圖像處理變得簡單。

這個框架可以有效地處理數值優化、人工神經網絡,甚至是可視化。除此之外,Accord.NET對計算機視覺和信號處理功能非常強大,同時也使得算法的實現變得簡單。

  優點:

它擁有一個龐大而活躍的開發團隊;

非常有據可查的框架;

可視化質量高。

缺點:

不是一個非常流行的框架;

速度比TensorFlow慢。

8. Spark MLlib

“可擴展的機器學習庫”

語言:Scala

Apache Spark MLlib是一個可擴展的機器學習庫,適用于Java、Scala、Python、R語言等多種語言。因為可以與Python庫和R庫中的numpy進行互操作,所以非常高效。

MLlib可以輕松插入到Hadoop工作流程中,提供了機器學習算法,如分類,回歸和聚類。

這個強大的庫在處理大型數據時非??焖佟?/p>

  優點:

對于大規模數據處理非常快速。

支持多種語言。

缺點:

陡峭的學習曲線。

即插即用僅適用于Hadoop。

9. Sci-kit Learn

“Python中的機器學習”

語言:Python。

Sci-kit Learn是一個非常強大的機器學習Python庫,主要用于構建模型。

它使用其他庫(如numpy、SciPy和matplotlib)構建,對于統計建模技術(如分類、回歸和集群)非常有效。Sci-kit Learn的特性包括監督學習算法、無監督學習算法和交叉驗證

優點:

許多主要算法的可用性。

高效的數據挖掘。

缺點:

不是最好的構建模型。

GPU效率不高。

10. MLPack

“可擴展的C ++機器學習庫”

語言:C ++。

MLPack是一個用C ++實現的可擴展的機器學習庫。因為它是用C ++編寫的,所以我們可以合理猜測它對內存管理是非常好的。

MLPack以極快的速度運行,因為高質量的機器學習算法與庫一起運行,而且它對于新手是非常友好的,并且提供了一個簡單的API使用。

  優點:

可擴展;

Python和C ++綁定可用。

缺點:

文檔不是很友好。

寫在最后

本文推薦的庫都是經得起時間檢驗的,像是Facebook、Google、Apple和Microsoft等一些大公司都在他們的深度學習和機器學習項目中應用這些庫,所以你還有什么道理不抓緊時間來學習呢?

如果你有經常使用并且感覺還不錯的庫,也歡迎在下方評論中與我們分享!

關鍵字:Python機器學習學習算法

本文摘自:it168網站

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 昭觉县| 疏附县| 林周县| 卫辉市| 滦南县| 大兴区| 息烽县| 孟村| 策勒县| 阿尔山市| 沽源县| 云南省| 清丰县| 梨树县| 黑水县| 蚌埠市| 万宁市| 阳原县| 奉新县| 岳阳县| 九寨沟县| 遵化市| 抚顺县| 玉环县| 南通市| 泸定县| 柘城县| 宿松县| 肇州县| 花莲县| 高碑店市| 阿巴嘎旗| 班玛县| 东源县| 稷山县| 陆川县| 永川市| 华蓥市| 曲水县| 吕梁市| 开化县|