進入人工智慧領域,為什麼必須學習Python!

來源:互聯網
上載者:User

標籤:ima   解決   src   ++   資料流圖   其它   實驗   graphs   安裝   

如果你想進入人工智慧這一領域,你應該首先學習Python。

儘管人工智慧領域還支援其它很多語言,但 Python 是應用範圍最廣而且最簡單的一個。但是為什麼要選擇 Python 呢——畢竟 Python 速度這麼慢?因為大多數的庫都使用的是符號式語言(symbolic language)方法而非命令式語言(imperative language)方法。解釋一下也就是說:不是一條接一條地執行你的指令,而是根據你給出的所有指令建立一個計算圖(computing graph)。這個圖被內部最佳化和編譯成可執行檔 C++ 代碼。這樣你就能同時利用上兩個世界的最優之處:Python 帶來的開發速度和 C++ 帶來的執行速度。

我常聽到人們談論深度學習和人工智慧——我該從哪裡開始呢?TensorFlow 是現在最流行的吧?我聽說 Caffe 很常用,但會不會太難了?在 BEEVA Labs,我們常常需要應對許多不同的深度學習庫,所以我希望能夠將我們的發現和感想分享出來,協助那些剛剛進入深度學習和人工智慧領域的人。

首先說幾個常用的深度學習語言。

TensorFlow

TensorFlow 是一個使用資料流圖(data flow graphs)進行數值計算的開源軟體庫。TensorFlow是Google Brain的第二代機器學習系統,已經開源。TensorFlow在很多地方可以應用,如語音辨識,自然語言理解,電腦視覺,廣告等等。TensorFlow是一個非常靈活的架構,它能夠運行在個人電腦或者伺服器的單個或多個CPU和GPU上,甚至是行動裝置上。

TensorFlow 支援 Python 和 C++,也允許在 CPU 和 GPU 上的計算分布,甚至支援使用 gRPC 進行水平擴充。

Caffe

Caffe 不只是最老牌的架構之一,而是老牌中的老牌。起初的時候它並不是一個通用架構,而僅僅關注電腦視覺,但它具有非常好的通用性。在我們實驗室的實驗中,CaffeNet 架構的訓練時間在 Caffe 中比在 Keras 中(使用了 Theano 後端)少 5 倍。Caffe 的缺點是它不夠靈活。如果你想給它來一點新改變,那你就需要使用 C++ 和 CUDA 編程,不過你也可以使用 Python 或 Matlab 介面進行一些小改變。

Caffe 的文檔非常貧乏。你需要花大量時間檢查代碼才能理解它(Xavier 初始化有什麼用?Glorot 是什嗎?)。Caffe 的最大缺點之一是它的安裝。它需要解決大量的依賴包……

MXNet

mxnet 是一個支援大多數程式設計語言的架構之一,包括 Python,R,C++,Julia 等。但我覺得使用 R 語言的開發人員會特別偏愛 mxnet,因為至今為止還是 Python 以不可置疑的態勢稱霸深度學習語言的。我對多 GPU 的擴充能力有點疑慮並且我很原意去瞭解這樣實驗的更多細節,但目前我還是對 mxnet 持懷疑態度。

那麼,python為什麼適合人工智慧?

Google的TensorFlow基本上所有的代碼都是C++和Python,其他語言一般只有幾千行 。如果講運行速度的部分,用C++,如果講開發效率,用Python,誰會用Java這種高不成低不就的語言搞人工智慧呢?Python雖然是指令碼語言,但是因為容易學,迅速成為科學家的工具(MATLAB也能搞科學計算,但是軟體要錢,且很貴),從而積累了大量的工具庫、架構,人工智慧涉及大量的資料計算,用Python是很自然的,簡單高效。現在大部分深度學習架構都支援Python,不用Python用誰?Python有非常多優秀的深度學習庫可用,人生苦短,就用Python。

如何讓自己使用Python開發的機器學習模型快捷低成本的跑起來,深度相容TensorFlow?你可以學習下Google的AIY Projects 項目。它也正在通過“AIY項目”這樣的計劃來促進開發人員和DIY社區對人工智慧的興趣,這些計劃本身代表了人工智慧。Google的目標是讓AI實現真正的平民化,讓人工智慧無處不在,人人都可以學習。

進入人工智慧領域,為什麼必須學習Python!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.