02.29 人工智能和python一樣嗎?有什麼區別與聯繫?

lsj15098875732


不一樣


區別

簡單的概括:人工智能是一種模糊的概念,是系列研究和應用方向的統稱;Python是一種編程語言一種實現工具。

人工智能(Artificial Intelligence,AI)這幾年被炒得非常火熱,可謂是全民都在談人工智能,但是很少人真正理解AI的功能和作用,下面先來看一下AI的定義。

它是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。

提煉幾個關鍵字,

  • 模擬、延伸、擴展

  • 理論、方法、應用系統

  • 技術科學

可能會有很多人覺得很繞、很模糊,的確,人工智能這個概念本身就是一個統稱,簡單的說就是模擬人們行為的一種智能技術。例如,當下AI研究比較人們的兩個領域分別是,

  • 計算機視覺

  • 自然語言

其中計算機視覺相當於模擬人們的眼睛,去讓一個機器學會“看”或者“識別”事物。而自然語言研究的更廣一些,相當於模擬人的眼睛和耳朵,讓機器不僅能夠直接理解一段話所表達的含義,還能夠從一段語音中識別人們所表達的內容。

回過來再說Python。

Python是一種編程語言,和Java、C++、Go、JS這些居於同等地位,是用於實現一項技術的工具。

例如,我們想要寫一個數據分析工具,寫一個爬蟲工具,這時候我們就需要使用Python進行編碼,然後通過解釋器讓計算機能夠理解,然後計算機去執行代碼所表達的內容。

總結一下,Python就相當於我們人類世界的漢語、英語、法語、日語這些語言一樣,當我們要讓另外一個人理解我們的想法時,我們需要用語言表達出來,然後傳遞給他。

如果說漢語是人與人之間的一種傳遞媒介,那麼Python就是我們人與電腦之間的一種傳遞媒介。

聯繫

很多人容易把Python和人工智能弄混淆,自然有他的原因,如果二者之間沒有任何關聯,我想誰也不會把二者混為一談。

人工智能與Python之間的關聯用一句話概括:Python是實現人工智能的工具。

前面 已經介紹,人工智能是模擬人類的一種技術,當人們提出一種CNN模型、一種自然語言模型,這時候需要讓計算機按照人們的算法去執行。例如,我們需要告訴計算機做下面幾件事情,

  • 數據預處理

  • 特徵提取

  • 訓練

我們用嘴直接說,計算機當然是無法理解的,這時候我們就需要使用Python把我們的“思路”實現出來,告訴計算機要去做數據處理、特徵提取、訓練模型。

這就是二者之間的關聯,我想讀到這裡應該已經明白了二者之間的關係了。


Jackpop


人工智能和Python肯定是不一樣的。

人工智能就是根據對環境的感知,做出合理的行動,並獲得最大收益的計算機程序。Python是一種跨平臺的計算機程序設計語言。

Python和人工智能的關係就像織布機和布一樣,程序員通過python語言加工成人工智能程序。只不是Python語言只是織布機中的一種,而人工智能是通過不同織布機生產出的布的統稱。

對於人工智能來說,目前最重要的就是理論和算法的研究,Python在設計上堅持了清晰劃一的風格,這使得Python成為一門簡單、易學、易讀、易維護的程序語言,在國外用Python做科學計算的研究機構日益增多。眾多開源的科學計算軟件包都提供了Python的調用接口,例如著名的計算機視覺庫OpenCV、三維可視化庫VTK、醫學圖像處理庫ITK。而Python專用的科學計算擴展庫就更多了,例如如下3個十分經典的科學計算擴展庫:NumPy、SciPy和matplotlib,它們分別為Python提供了快速數組處理、數值運算以及繪圖功能。因此Python語言及其眾多的擴展庫所構成的開發環境十分適合工程技術、科研人員處理實驗數據、製作圖表,甚至開發科學計算應用程序。所以python語言越來越多的被用在人工智能研究和開發上。


簡讀AI


提到人工智能就一定會提到Python,有的初學者甚至認為人工智能和Python是劃等號的,其實Python是一種計算機程序設計語言。是一種動態的、面向對象的腳本語言,開始時是用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越來越多被用於獨立的、大型項目的開發。而人工智能通俗講就是人為的通過嵌入式技術把程序寫入機器中使其實現智能化。顯然人工智能和Python是兩個不同的概念。

人工智能和Python的淵源在於。就像我們統計數據或選擇用excel製作表格時,因為在需要用到加減乘除或者、函數等時,只需要套用公司就可以。因為SUM、AVERAGE等這樣的函數運行的背後,是C++/C#等語言已經編寫好了代碼,所以Excel只是工具和展現形式並不是它做計算。同理在學習人工智能時Python只是用來操作深度學習框架的工具,實際負責運算的主要模塊並不依靠Python,真正起作用的是也是一大堆複雜的C++ / CUDA程序。

深度學習人工智能時,自己計算太複雜,還要寫C++代碼操作,這時程序員就想要不搞一套類似複雜的Excel配置表,直接搭建神經網絡、填參數、導入數據,一點按鈕就直接開始訓練模型、得出結果。這個方法簡單實用可是神經網絡搭建起來太複雜,需要填寫的參數太多,各種五花八門的選項也很難做成直觀的圖形工具。只能用一個類似Python的相對好用的語言,通過簡化的程序代碼來搭建神經網絡、填寫參數、導入數據,並調用執行函數進行訓練。通過這種語言來描述模型、傳遞參數、轉換好輸入數據,然後扔到複雜的深度學習框架裡面去計算。那麼為什麼會選擇Python?

科學家們很早就喜歡用Python實驗算法,也善於使用numpy做科學計算,用pyplot畫數據圖。恰好Google內部用Python也非常多,所以採用Python也是必然的。除Python外,實際上TensorFlow框架還支持JavaScript、c++、Java、GO、等語言。按說人工智能算法用這些也可以。但是官方說了,除Python之外的語言不一定承諾API穩定性。所以人工智能和Python就密不可分了。

單說人工智能的核心算法,那是是完全依賴於C/C++的,因為是計算密集型,需要非常精細的優化,還需要GPU、專用硬件之類的接口,這些都只有C/C++能做到。所以某種意義上其實C/C++才是人工智能領域最重要的語言。Python是這些庫的API binding,要開發一個其他語言到C/C++的跨語言接口,Python是最容易的,比其他語言的ffi門檻要低不少,CPython的C API是雙向融合的,可以直接對外暴露封裝過的Python對象,還可以允許用戶通過繼承這些自定義對象來引入新特性,甚至可以從C代碼當中再調用Python的函數。

Python一直都是科學計算和數據分析的重要工具,Python是這些庫的API binding,要開發一個其他語言到C/C++的跨語言接口,Python是最容易的,比其他語言的ffi門檻要低不少,CPython的C API是雙向融合的,可以直接對外暴露封裝過的Python對象,還可以允許用戶通過繼承這些自定義對象來引入新特性,甚至可以從C代碼當中再調用Python的函數。都說時勢造英雄,也可以說是人工智能和Python互相之間成就者對方,人工智能算法促進Python的發展,而Python也讓算法更加簡單。


大熊阿


要搞清二者的區別和聯繫,首先需要明確二者各自的定義。

人工智能

人工智能(英語:Artificial Intelligence,縮寫為AI)亦稱智械、機器智能,指由人制造出來的機器所表現出來的智能,通常人工智能是指通過普通計算機程序來呈現人類智能的技術。也指一個系統正確解釋外部數據,從這些數據中學習,並利用這些知識通過靈活適應實現特定目標和任務的能力。

通過上述定義不難得出人工智能是一個研究方向,專門研究如何利用計算機實現自主地解決某些特定問題,其中自主就是脫離人的具體指令,機器自己本身做出決策!那麼研究出來的讓計算機自主的方法就是人工智能算法。


Python

Python是一種廣泛使用的解釋型、高級編程、通用型編程語言,由吉多·範羅蘇姆創造。可以視之為一種改良(加入一些其他編程語言的優點,如面向對象)的LISP。相比於C++或Java,Python讓開發者能夠用更少的代碼表達想法。不管是小型還是大型程序,該語言都試圖讓程序的結構清晰明瞭。與Ruby、Perl等動態類型編程語言一樣,Python擁有動態類型系統和垃圾回收功能,能夠自動管理內存使用,並且支持多種編程範式,包括面向對象、命令式、函數式和過程式編程。其本身擁有一個巨大而廣泛的標準庫。

Python是一門編程語言,所謂編程語言就是計算機可以接受的一種人向機器傳達指令的語言是人機“溝通”的媒介。


二者區別與聯繫

  • 區別

人工智能是一個研究方向,研究的是讓機器變聰明的方法;Python是一門程序設計語言,是現實具體方法的一種溝通媒介。一種人工智能的算法可以用不同的程序設計語言實現,既可以是Python也可以是C\\C++、Java等,只不過由於各種程序語言的特點和設計用途不一樣,實現相應算法付出的時間成本、難易程度不一樣!
  • 聯繫

當前大部分人工智能算法都是使用Python實現的,所以有很多優秀的類庫--即造好的輪子。既然已經有很多的輪子了,人們也不需要重複造輪子,就這樣Python的類庫越來越豐富,促使人們更加願意使用Python實現人工智能相關算法。久而久之人工智能和Python走得越來越近,漸漸地提到人工智能就Python,提到Python就人工智能了~



大份抄手加蛋


先說答案:不一樣。

人工智能是計算機科學的一個領域,它研究的是如何教會計算機像人類一樣思考,擁有人類去選擇判斷的智能。

Python是一門計算機編程語言。是可以編寫它作為 python程序,完成我們想要的功能。

區別就是他們不是一個維度的東西。一個是研究領域,這個領域包羅萬象。一個是一種語言工具。

而聯繫,就是由於Python的一系列特點和形成研究人工智能的程序生態方面好多工具和方法都是以Python語言展示的。所以看起來它倆經常出現在一起。其實不同。

人工智能可以使用很多語言和工具實現,Python也可以幹很多事情,不止人工智能的實現。

舉個例子:假如一種菜系大多銅鍋做菜。但其實這個菜系並不等於銅鍋。因為很多鍋都可以做。銅鍋也可以做很多菜系。


八叔閒談


不一樣的。

通俗的說,人工智能——AI(Artificial Intelligence)是結果,python是實現人工智能的一種技術語言。

那人工智能是什麼樣的結果呢,這個短語其實缺少一個主語,那就是機器,也就是機器人工智能,幻想一下,機器可以像人一樣思考,很奇妙,也很可怕。

我想舉個例子,在很多網站都見過驗證碼,這個驗證碼是幹什麼的呢?其中一個功能就是區別人和機器(可能是個程序腳本)的。對於人,識別驗證碼很簡單,無論你加了多少水印,重度模糊,色彩混合,線條幹擾,都可以快速地看懂一個圖片裡歪歪扭扭的數字;對於機器,這個圖片就是一大堆圖像數據,它要從水印、模糊、線條種挑出數字,很難。AI就是可以解決這種問題,大量的數據運算,深度學習,它就可以挑出數字。

再來說一下Python,是編程語言的一種,有強大的AI算法庫,現在的AI領域,Python語言是領頭羊,以至於講到AI就必須順嘴說一下Python表示很懂的樣子。而且Python也已經在不少地方寫入教材。那麼人工智能為什麼選擇了Python呢,因為簡單。至於為什麼簡單,可以自行了解一下。


BillM


很高興能解答你的問題:

 

首先人工智能是一種技術,Python是一門程序員的工具語言,兩者屬於不同類型。

我來說說為什麼人工智能選擇了Python:

A、Python被大家稱為是一種“說人話”的語言,所謂“說人話”,是指這種語言:(1)開發者不需要關注底層;(2)語法簡單直觀;(3)表達形式一致

對於人工智能程序員來說:如果不是想成為代碼詩人,或者語言大師,只是想用盡量簡單直接的方法,把事情做了,首選語言確實是Python。

B、強大的AI支持庫,NumPy由數據科學家Travis Oliphant創作,支持維度數組與矩陣運算。結合Python內置的math和random庫,堪稱AI數據神器!有了它們,就可以放心大膽玩矩陣了!

 

希望您的問題能得到解答。


智慧銀行新媒體IT男


不一樣。

人工智能是計算機科學的一個分支,它企圖瞭解智能的實質,並生產出一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統等。而python是一種計算機程序設計語言。


氚思琶醍


人工智能廣義上可以看做是算法集群,Python只是一種程序語言,用來實現算法,並且能實現人工智能的算法不止一種語言。


傳說中的黃島主


不一樣,只不過python語言的有很多人工智能領域的模塊包,生態好


分享到:


相關文章: