軟件開發人眼中的AI智能,你瞭解麼?

因爲 AlphaGo 的出現,過去的 2016 年可謂是人工智能元年。記得當時我們正在蘇州封閉研發 The Platform,工作之餘討論到人機對戰的真正意義,並不在於技術上的突破,而在於對人們固有知識的影響,人工智能的應用會如雨後春筍般誕生,以後沒有人工智能的軟件以後你都不好意思開口了。

大家都在問,自己的工作與人工智能有什麼關係,如何在自己的工作中應用人工智能,如何在軟件中植入人工智能的基因,使用人工智能應該從何處入手,學習人工智能應該從哪裏開始,更深層次的問題是人工智能能否代替人類,作爲一個程序員,人工智能是否會代替人類寫程序。這裏根據我們團隊的實踐介紹一下如何在軟件中應用人工智能。
在這裏插入圖片描述
人工智能並不是一個新概念,40 年代維納的《控制論——關於在動物和機器中控制和通訊的科學》就是人工智能。但早年的人工智能受限於計算能力,更多在解決模型的計算速度和精度上存在着諸多問題。近年來隨着雲計算技術的發展,計算機的計算能力提高了,同時隨着大數據的發展,更復雜的計算問題可以用更多的數據進行修正,人工智能的可用性大大提高。

但是我們從目前人工智能應用的情況可以看到,人工智能並不能替代人類,例如在圖像識別、語音識別等方面的突破,僅僅是讓機器更加聰明而已,還遠遠沒有達到人類的程度,作爲人類的智能助手更加合適。

與 AI 相關的幾個概念

把人工智能的方法應用到軟件中,我們先梳理清楚幾個概念之間的關係:

人工智能(Artificial Intelligence)是一個大的概念,是讓機器像人一樣思考甚至超越人類;
機器學習(Mechine Learning)是實現人工智能的一種方法,機器學習最基本的做法,是使用算法來解析數據、從中學習,然後對真實世界中的事件做出決策和預測;
深度學習(Deep learning)又是機器學習的一種實現方式,他是模擬人神經網絡的方式,用更多的層數,更多的神經元,然後給系統輸入海量的數據,來訓練網絡;
統計學是機器學習和神經網絡的一種基礎知識,從傳統分工來看,統計學一般是數學、統計等專業研究的方向,而機器學習是計算機科學的研究方向,但是目前大家的研究成果越來越殊途同歸,有統計學的大師就認爲統計實際上一直在從事機器學習的工作。

對於深度學習、統計的專家來說,他們更加關注於模型、算法等等,找到可以普適性解決問題的辦法。而對於我們應用來說,具體的算法實現不需要我們考慮太多,而是找到適合的場景、合適的模型、匹配的算法,所以應用人工智能實際上是一個計算機、統計、知識工程、行業知識的一個交叉應用。

在經常涉及到的應用中,我一般在處理結構化、半結構化數據時優先考慮傳統統計學的方法,例如分類、數據相關性、迴歸等,而處理非結構化數據時(例如圖像、視頻、文本)優先考慮深度學習的方法,但這些方法也需要有統計學知識。所以,需要補課:線性代數、數理統計、Python,我覺得《機器學習實戰》這書入門不錯,上述幾方面知識都介紹了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章