1. 程式人生 > >熟讀高數才能理解機器學習?不,初中數學就夠了

熟讀高數才能理解機器學習?不,初中數學就夠了

做的 如果 核心 tar 獲得 人工智能 邏輯 進行 之間

  • 導讀
  • 誰說理解機器學習必須要熟讀高數?

    近日,數據科學Kyle在Medium發布博客表示,理解機器學習在做的事情,有初中數學知識足矣。

    這篇博客簡潔易懂、幽默風趣,在Medium上幾天內獲得600多贊。量子位將文章翻譯整理如下,與大家分享:

    當下理解我們人工智能的方式通常比較極端,要麽通過媒體,越來越聳人聽聞的觀點讓人難以想象。要麽通過文獻,充滿晦澀語言和特定術語的論文讓人難以理解。

    理解AI的正確姿勢應該在兩個極端之間,這就需要你在新聞或文獻之外理性判斷,對於一般人來說,至少應該知道AI是什麽。

    這幾乎是沒有門檻的,我認為理解AI,中學數學知識就足夠了。這篇文章我將簡化人工智能中的數學,帶你撥開雲霧看本質。

    在這裏給大家推薦一個python系統學習q群:250933691有免費開發工具以及初學資料,(數據分析,爬蟲,AI, 機器學習,神經網絡)每天有老師給大家免費授課,歡迎一起交流學習

    1. 簡單版AI和機器學習概念

    能模仿人類的智慧,這是最具代表性的AI的定義。

    AI可以有多重“形態”,從虛擬遊戲裏的機器人、谷歌DeepMind開發的下圍棋程序AlphaGo,到現實世界裏索菲亞這樣的人型機器人,這都是AI“寄生”的場所。

    那AI和相關報道中經常提到的機器學習和深度學習是什麽關系,請看下面這張圖:

    人工智能(AI):泛指任何可以讓計算機模擬人類智慧的技術,可以通過邏輯、if-then等規則、決策樹和機器學習(包括深度學習)等方法實現。

    機器學習:AI的一個子分類,讓機器通過真實世界的數據去“學習”,而非單調執行預先設定的規則。

    深度學習:機器學習的子類,包含一系列算法。機器通過多層神經網絡去處理數據,自己學習去執行任務。在語言和圖像識別等任務中經常看到。

    發現了麽,機器學習的最大特色之一,就是它的“學習”方式不同了。這裏的“學習”,其實也沒有看起來那樣有未來感,你在初中可能就已經接觸過了。

    如果你看過《黑鏡》裏類似的橋段,就比較容易將現在AI可視化成一個有意識的實體,一個有思想、感覺、可以做出復雜決策的物體。

    在媒體的報道中這種觀念更為普遍,甚至經常會把AI人格化,然後將其與電影《終結者》裏的天網(Skynet)和《***帝國》裏的Matrix相提並論。

    實際上這都不是真的。在現階段AI就是數學。有時是高難度的數學,有時需要擴展到計算機科學、統計學等其他領域的知識。但AI的核心是一種數學函數。

    也就是說,機器學習可以從y=mx+b這個方程式來理解。如下圖所示,我們已經知道了x值y值,此時需要讓一臺計算機通過輸入(x)和輸出(y)去思考兩者之間的關系,推斷出m和b的值。

    這個公式推斷起來不難吧,y=1x+1,小學生也會做。就是這樣,我們創造一個公式來描述所給的數據,這大體上也是機器學習在做的事情。

    這之間最有趣的部分就是,怎樣教機器選擇最適合這些數據的公式。一旦找到這其中的關聯,你還可以將它用圖表的形式表現出來。

    1. 你不懂的數學,拿給機器去做吧

    y=1x+1是個非常簡單的例子,我們需要機器學習最主要的原因是,人類無法在數百萬量級的數據點中找到合適的公式,這就是計算機要去做的事了。

    無論如何,必須有足夠多的數據才能找到正確的公式。如果我們僅僅有x=1和y=2兩個數據點,輸出的函數也是千變萬化的,可能是y=2x,可能是y=x+1,,也可能是y=([x+1]*5–9)? + 1等等。

    根據少量數據構建公式,然後把它用到更多數據上,這個公式可能會出現大量錯誤。

    並且,現實世界總不可能一直這麽完美。在下面這個動圖中可以看到,機器會在一堆數據中進行取舍,探索怎樣最大化去滿足這些數據,進而才去創造公式。

    和數學課上那些規律輸入和輸出值不同,真實世界的數據更不可預測,也更“參差不齊”。

    △ 最佳公式

    當面對一堆變量時,人類找出合適公式的可能性更小了。只有x和y很容易,但如果y受x的1次方、2次方、100次方的影響呢?

    人類就hold不住了,但計算機可以。

    1. 現實生活中的機器學習和AI

    來看一個現實生活中的例子。我在制藥領域工作,就舉個×××相關數據集的例子好了。

    這個數據集中有兩個關於腫瘤大小的輸入變量,即半徑和周長,以及兩個潛在的輸出,即良性腫瘤和惡性腫瘤。用我們上述思路來考慮,這事就是這樣的:

    y:診斷結果,可以是0(良性)或1(惡性)

    x1:半徑

    x2:周長

    每個x都有一個位置的m,先稱之為“某數”吧

    b:依然是一個未知數

    那麽這個線性方程長什麽樣?其實和上面的例子也沒什麽太大區別:

    診斷結果=(某數1×半徑)+(某數2×周長)+b

    這樣看來,這道題已經脫離了人類能力的範圍了,所以不用費時間去找這麽多變量與結果的關系了,我們可以讓機器去做,這之間就是機器學習!

    在這裏給大家推薦一個python系統學習q群:250933691有免費開發工具以及初學資料,(數據分析,爬蟲,AI, 機器學習,神經網絡)每天有老師給大家免費授課,歡迎一起交流學習

    熟讀高數才能理解機器學習?不,初中數學就夠了