02.27 如何學習編寫人工智能軟件?

M子姐姐


這是一個非常好的問題,作為一名IT從業者,我來回答一下這個問題。

如果當前要想編寫人工智能軟件,通常有兩種路線,一種路線是自己完成人工智能算法的設計和實現,同時完成最終的軟件編寫(場景落地)過程。以開發機器學習的落地應用軟件為例,開發者可以自己完成數據收集、算法設計、算法實現、算法訓練、算法驗證等一系列步驟,然後最終完成算法應用。這種開發路線對於開發人員的要求相對比較高,而且開發週期也相對比較長,好處是可以根據應用場景進行更加靈活地調整。

另一條開發路線是基於已有的人工智能平臺來完成人工智能軟件開發,採用這種方式對於開發人員的要求相對低一些,開發人員只需要根據場景的要求把相應的功能集成到軟件中就可以了,這種開發方式也會有相對比較短的開發週期。在生產環境下,採用基於人工智能平臺進行軟件開發是比較現實的選擇,也會快速推動人工智能技術的落地應用。

對於基礎比較薄弱的初學者來說,要想快速掌握人工智能軟件的編寫,可以先從學習人工智能平臺開始。當前大型科技公司紛紛開放了自己的人工智能平臺,這些人工智能平臺大多基於計算機視覺和自然語言處理技術打造的,相關技術也有大量的落地應用案例可以參考。

學習基於人工智能平臺的開發,可以按照三個階段來組織學習計劃,首先要學習編程語言,目前從Python語言開始學起是不錯的選擇;其次是學習人工智能平臺的體系結構和功能(API);最後是進行場景實踐練習。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續寫一些關於互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收穫。

如果有互聯網、大數據、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區留言,或者私信我!


IT人劉俊明


我是學軟件開發專業的,方向基本也就確定了,要麼前端,要麼後端,或者大數據。

首先,編程這個問題問的領域比較大,為什麼說大?如我上述,學軟件開發,要麼前端,要麼後端,也是編程,大數據,也是編程,人工智能一樣也是編程……

所以,沒有明確一個具體的方向。

編程世界,有一門古老的語言叫做C語言,它是C++和JAVA的祖先,一切語言的基礎都來自它,所以,你不妨與它先認識。

但是,現在因為人工智能的火起來的python語言,就有很多人學習它,也有很多人說它語法簡單,易學易上手,這個說法沒錯。也有人說它是新手學習最好的語言。確實,沒有嚴謹的語法,可以說是“為所欲為”。JAVA寫100行代碼,它可能只需要寫20行。

只不過,我還是說說我想說的主角吧!它是C語言,為什麼是它的,因為你只有學會它,再學C++和JAVA就容易得多,可以說很快帶你成為一名程序員。當然,不是絕對的。

而學習python也並非不可,只是它不同與C/C++和JAVA。學會以後,再回頭看C,感覺不是一個世界的。

現在大學都是以C語言為專業基礎語言,你不妨可以先從它下手。

希望這份答案能對你有幫助。


雲攝夢影


首先問題就有理解偏差,人工智能不是軟件,而是一項功能,或者說是能力。你要做的軟件是通過人工智能的技術能力在一個特定的場景下完成某項任務。

 

至於如何學習,首先要掌握基礎編程語言,以下任選其一要熟練掌握:

Python:被認為是所有AI開發語言列表中的第一位。Python相對簡單易學,可以很容易地學習。此外python有很多AI相關的庫,便於在機器學習等方面快速上手。

C++:已經非常成熟了,而且是最快的計算機語言,如果你的項目開發時間有限,那麼C++是很好的選擇,它提供更快的執行時間和更快的響應時間,老司機優勢顯現無疑,遊戲開發大部分都是用C++語言。

C ++適用於機器學習和神經網絡。

Java:也是計算機語言的老司機之一,雖然褒貶不一,但是在各種項目的開發中,Java都是常用語言之一,它不僅適用於NLP(自然語言處理)和搜索算法,還適用於神經網絡。

Lisp:相當古老的語言,差不多是在人工智能火起來之後才又回到眾人眼中。有人認為Lisp是最好的人工智能編程語言,因為它為開發人員提供了自由。在人工智能中使用Lisp,因其靈活性可以快速進行原型設計和實驗,當然這也反過來促進Lisp在AI開發中的發展,例如,Lisp有一個獨特的宏系統,有助於開發和實現不同級別的智能。

但同時也因為它的古老,掌握的人不是大多數。

 

Python的課程是現在最火爆的,很多網課,從零開始學到高級課程全都有。對自學沒有信心的話也可以參加社會上的線下培訓班。一定要堅持下去。但總體來說市場上的課程還是有些亂,要邊學便自己梳理知識體系。

 

其次要找好方向:

計算機視覺CV、自然語言處理NLP、機器學習ML這三個方向是最火的,但其中也涉及了很多更深的知識,比如神經網絡、深度學習、強化學習等。

所以要有一定的數學基礎:微積分、概論、線性代數;

其次是算法與模型,這也是重中之重,算法模型學不好以後會很痛苦,甚至有些方面完全不能理解。

 

此外,還要深入瞭解一些框架:

谷歌的Tensorflow:

TensorFlow是一個開源軟件庫,可以描述一幅數據計算的數據流圖(data flow graph),用於各種感知和語言理解任務的機器學習。當前被50個團隊用於研究和生產許多Google商業產品,如語音識別、Gmail、Google 相冊和搜索。

Facebook 的 PyTorch:

與TensorFlow抗衡的學習框架,由 Facebook 的團隊開發,並於 2017 年在 GitHub 上開源。

TensorFlow 和PyTorch的關鍵差異是它們執行代碼的方式。這兩個框架都基於基礎數據類型張量(tensor)而工作。TensorFlow更像是一種語言,而PyTorch與Python結合的更緊密。

TensorFlow 是一種非常強大和成熟的深度學習庫,具有很強的可視化功能和多個用於高級模型開發的選項。它有面向生產部署的選項,並且支持移動平臺。另一方面,PyTorch 框架還很年輕,擁有更強的社區動員,而且它對 Python 友好。

所以如果你想更快速地開發和構建 AI 相關產品,TensorFlow 是很好的選擇。建議研究型開發者使用 PyTorch,因為它支持快速和動態的訓練。

兩者還有很多差異,各有優缺點,可以在實踐中慢慢摸索。


大王小王聊什麼


人工智能系統是一個相對複雜的智能化系統,一個具有特定任務的智能化系統通常由若干個子系統組成,同時又是一個多領域、多專業、多團隊或人員相互協作的系統工程。單就軟件系統建設而言,以編程為例,一個智能化系統的軟件系統,除了要有控制整個系統協調工作的系統程序外(如操作系統,數據庫系統等),還需要對相關的硬件(如機械手,或流水線等邏輯部件或設備)實施控制程序編程,通常是一些實現某個特殊功能的專用控制程序。作為一個智能化系統的團隊成員之一,掌握一門或兩門計算機軟件的基礎理論和編程技巧是必須的。如果你能熟練掌握ASM和C(例如C++),想必你就能成為一個智能化系統建設團隊中的中梁砥柱。祝你成功!


哲理見聞


首先,明確你要解決的問題,並選擇合適的算法,可能傳統機器學習算法就可以,也可能需要藉助當下最火的神經網絡算法。

其次,根據需求和算法,選擇合適的技術平臺。並蒐集數據進行算法訓練。

最後,當算法訓練達到預期效果後,開始應用,同時持續運營維護,通過新的實際數據再進行不斷的算法訓練。


努力做點事


好好學習python,學習深度學習算法,勤加以練習,最好參加一些項目實踐,掌握sciklearn等


sunnyshark


首先你得會一門編程語言,C語言或者Java都行。


分享到:


相關文章: