是否有必要學習像Lisp,Perl,Ruby等編程語言(無論需要)在AI中執行項目?
我知道C,C++,Java很好,是否足以繼續我的AI項目?執行AI項目所需的語言?
回答
您可以用任何語言編寫。 Lisp已經完成了大量的AI工作,但您並不需要使用它來實現您的項目。關鍵是對算法有深刻的理解。
您可能會發現,很大程度上依賴於遞歸的算法在不支持尾遞歸的Java語言中更爲困難優化。
每種語言都「支持」尾遞歸。相同的語言實現在優化它們時比其他實現更好。某些語言(例如Scheme)甚至指定該語言的符合實現必須應用TCO--尾部呼叫優化。令人驚訝的是,GCC將許多TCO應用於C – jmg
我相信沒有這樣的東西可以作爲「AI的良好編程語言」。編程語言是工具,它確實取決於你的AI項目是關於什麼的:只需爲它選擇最合適的一個。例如,如果您要使用語義Web和本體,那麼Java可能是一個不錯的選擇,因爲該領域有很多優秀的Java庫和工具。相反,我知道很多從事機器學習的人使用R,因爲它是一個強大的統計計算環境。另外,如果你的AI項目是關於邏輯編程或計算語言的,那麼你應該看看Prolog。
總之,它的確取決於你的AI項目是什麼。告訴我們更多關於它的信息,你可能會得到更準確的答案。
取決於你在做什麼 - 選擇最適合的工具。
如果你在做經典的AI(自然語言處理,專家系統等),那麼像Lisp和Prolog這樣的語言非常適合(這種語言有利於簡單開發),但是如果你在做模糊邏輯,神經網絡那麼Java/C++將是更好的選擇。
幾年前,作爲一名本科生,我在Prolog中編寫了一些NLP和專家系統,然後在C++中重複練習,Prolog版本大小約爲三分之一,花了大約一半的時間來開發。我寫了幾個模糊邏輯和神經網絡在C++中,但從來沒有想象重寫他們的Prolog(我肯定會相當痛苦)=)
一個不錯的,功能的神經網絡豐富的Java框架Encog
- 1. malloc.c「sYSMALLOC:斷言」與C++項目執行
- 2. 從Java項目運行Arduino語言
- 3. 彙編語言項目源
- 4. 更改navigationdrawer項目語言
- 5. perl語言的並行執行
- 6. 根據所需語言檢索文件
- 7. 執行決策樹的語言
- 8. Visual Studio中的多語言項目
- 9. github如何找出項目的語言?
- 10. 檢測項目語言中的cmake
- 11. 更改sitecore項目(樹)的語言?
- 12. 釣魚爲一個項目的語言
- 13. 大型codeigniter項目中的語言包
- 14. Sitecore創建項目的默認語言
- 15. 更改Xcode項目的單一語言
- 16. PHP和SQL語言的項目
- 17. 獲取sitecore項目的語言列表
- 18. NetBeans:執行所有項目的所有單元測試1 go
- 19. 語言庫是否可以處理所需的語法情況?
- 20. 2使用imagebutton在多語言網站中更改語言所需的回傳
- 21. dll通過kinect語音識別所需的C++項目
- 22. 編譯執行和編程語言
- 23. jQuery不執行語言更改
- 24. 用D語言測量執行時間
- 25. 執行WPF多國語言界面
- 26. 類語言::翻譯而執行
- 27. Java建模語言是否可執行?
- 28. 編程語言項目使用方案
- 29. D語言,Eclipse,編譯跨項目
- 30. 如何組織多語言zend項目
通常當你問這個問題時,它會涉及到你最有成效和最精通的。 – dcousens