如今,人們期望AI程式設計師掌握多種語言,因為AI的開發者們是在跨學科環境中工作而不是在一個孤島上。在AI項目中更多的是涉及Python,R,Java,Lisp,Prolog,Julia等語言的綜合使用。沒有一種單獨的「 AI語言」可以被視為最佳程式語言。
因此,讓我們討論一些流行的語言,這些語言正在全球AI項目中流行和使用。了解這些可以幫助你儘快成為更專業的AI工程師。
在AI,ML和數據分析的所有其他語言中,Python排名第一。建議你在需要快速編碼時使用。
Python是最優先的選擇的原因:
•它擁有一個很棒的語言庫生態環境。一些常用的庫有SciKit-learn處理基本的ML算法,Pandas用於高級數據結構和分析,Keras和TensorFlow用於深度學習,Matplotlib用於可視化。如今,大多數AI工程師都使用Keras和TensorFlow。
•對於AI開發人員而言,學習曲線要簡單的多。
•Python語言靈活,可以減少出錯的可能性,而且可以隨時將Python與其他語言結合使用。
•由於python與平臺無關,因此節省了在不同平臺上進行測試的時間。它使你在一個平臺上開發的程序到處都可以運行,這點和java的JVM相似。
Lisp是在構建AI項目中解決歸納邏輯問題時最喜歡使用的語言。快速原型製作和宏等功能在創建AI中非常有用。LISP是一種使複雜任務變得簡單的語言。強大的面向對象系統使LISP成為人工智慧最流行的程式語言之一
Lisp用於AI的原因如下:
•支持符號編程。
•不區分數據和代碼,這使語言更加強大。
•比其他程式語言可擴展。
•Read-Eval-Print Loop簡化了交互式編程。
•它具有良好的環境支撐如調試,增量編譯等。
Prolog具有獨特的功能,例如模式匹配和自動回溯。此功能在AI開發中經常用於高級解決方案。它具有強大而靈活的框架,通常廣泛用於非數值編程,定理證明,自然語言處理,專家系統創建和人工智慧等領域 ;其作為一種高級邏輯程式語言而受到AI程式設計師們的廣泛青睞。
因此,prolog可以分析行為、聲明和條件之間的關係,這對人工智慧開發很有幫助。
在實現複雜的數學運算時經常會用到Matlab。Matlab提供AI功能,例如Caffe和TensorFlow。它使你可以將AI集成到完整的工作流程中。在某種程度上,藉助MATLAB,即使沒有機器學習經驗,你也可以開始使用AI。
近日,在知乎等社交網絡上,有哈工大學生表示收到了正版軟體取消激活的通知,而在與 MATLAB 開發公司 MathWorks 交涉之後,被告知由於美國政府實體名單的原因,相關授權已被中止。
這意味著在中國的matlab商用這塊,很可能以後都會被卡住咽喉,雖然matlab是一個非常優秀的AI工具,但是也不是沒有替代品,看如下AI界流傳的公式:
python+NumPy+Scipy+matplotlib = Matlab
AI工程師建議將其用於搜尋引擎,計算機AI遊戲,構建神經網絡等項目,因為它有助於更快地執行複雜算法。由於C ++基於繼承和數據隱藏等特性使其支持程序的重用,因此節省了時間和成本。
使用C ++的理由:
•可以輕鬆找到複雜的AI問題的解決方案
•豐富的庫函數和編程工具
•它支持面向對象的特徵,可用於很好的獲取和組織數據
Java經常用於神經網絡的構建,並可與搜索算法很好地配合使用。它可以用於大型的AI項目。
Java的一些好的特性包括:
•易於使用
•易於調試
• Packag 包服務
•數據的圖形表示
•更好的用戶交互
•具有Swing和Standard Widget Toolkit等標準組件庫構成的複雜圖形和界面
因此,每種語言都具有特定的功能和優點。作為AI開發工程師,你必須選擇一個理想的程式語言作為主語言深入精通,並同時熟悉和了解其它的AI語言。
因為你要理解:AI本身是一個跨多個學科的生態,而每一個語言的存在都有其解決具體AI場景的優勢,即所謂的存在即合理。所以,沒有一個最好的通用AI語言,只有最合適的AI語言。
為了了解AI與程式語言之間的聯繫,讓我們看一下AI歷史上最重要的事件。
一切始於1939年,當時機器人Electro出現在世界博覽會上。下一個機器人是由Edmund Berkeley於1951年製造的。
機器人羅比(Robbie)建於1956年。不幸的是,沒有關於其設計的信息。1958年,LISP程式語言被發明。儘管該語言是60年前發明的,但它至今仍然是許多人工智慧程序的主要語言。
1961年,它由UNIMATE建造。這是第一個批量生產的工業機器人。該機器人已在通用汽車上用於生產線的工作。為了生產UNIMATE,科學家使用了可變彙編器Val。該語言由簡單的短語,監視命令和無需編譯的指令組成。
Dendral人工智慧系統建於1965年。它有助於輕鬆確定有機化合物的分子結構。該系統是用Lispa編寫的。
1966年,Weizenbaum創建了第一個虛擬對話合作夥伴Eliza。其引用的著名模型場景是醫生對話機器人,它通過與病人的交互診斷心理問題;其是通過比較技術樣本實現的。Elisa的第一個版本是用SLIP編寫的,語言列表是由Weizenbaum開發的。後來,其版本之一在Lispa中進行了重寫。
在Lispa中編程的第一個移動機器人是Sheki。在墊圈和傳感器程序的幫助下,頸部移動,打開和關閉燈,上下移動,打開門,關閉門,推動物體並移動東西。Sheki 以每小時5公裡的速度移動。
在接下來的15年中,世界看到了許多驚人的發明:Denning的看狗機器人,LMI Lambda,Omnibot 2000,MQ-1 Predator Unmanned,Ferby,AIBO 機器狗和Honda ASYMO等。
2003年,iRobot發明了Roomba機器人吸塵器。它是在Lispa中開發的一種獨立的真空吸塵器,它使用特定的算法來清洗地板,並能檢測並繞過障礙物。