3句話告訴你學習的方法論

3句話告訴你學習的方法論

來自專欄 Python與演算法之美1 人贊了文章

文章摘要

本文統籌人類學習和機器學習的特點,提出了學習的一般化定義:學習是指一個目的系統從數據中提取模型,並用模型進行決策的過程。

基於這一學習定義,提出了提升學習效率的3條關鍵方法論,並對其具體使用進行了詳細說明。

1,用自我提問強化元認知。

2,用內容輸出優化認知結構。

3,用科學推理探究非結構問題。


當我們談論學習時,我們究竟談論的是什麼呢?

教育心理學中認為,狹義的學習指的是:通過閱讀、聽講、思考、研究、實踐等途徑獲得知識或技能的過程。

而廣義的學習指的是:人和動物在生活過程中通過經驗而產生的行為或行為潛能相對持久的變化。

然而,上述定義沒有深入概括「學習」行為的本質。至少它們不能解釋當下火熱的「機器學習」現象:計算機程序可以學習駕駛汽車,識別語音圖像,下圍棋打遊戲……

為了更具有一般性,我對學習這一概念定義如下:學習是指一個目的系統從數據中提取模型,並用模型進行決策的過程。

這個定義中有幾個關鍵詞。第一個是目的系統,第二個是數據,第三個是模型,第四個是決策。

例如以小明學習投籃為例。小明即一個目的系統,其目的是提高投籃命中率。數據即無數次投籃練習中各種各樣的投籃方式與其對應的投籃結果,對於人類的學習一般可以稱之為經驗。模型即小明習得的投籃技能,不同投籃位置對應的最適宜投擲力度和方向等。決策即小明根據習得的投籃技能進行下一次投籃方式的選擇。

又例如以AlphaGo學習下圍棋為例。AlphaGo即一個目的系統,其目的是提高棋局勝率。數據即AlphaGo無數次左右互搏中各種落子方式與其對應的棋局結果。模型即AlphaGo背後的判斷棋局形勢和決定落子位置的機器學習演算法。決策即AlphaGo依據訓練後的模型進行下一次落子位置的選擇。

「一個目的系統從數據中提取模型,並用模型進行決策的過程」作為學習的概念定義,我們可以比較自然地引出如下3條學習的核心方法論。

1,用自我提問強化元認知。

2,用內容輸出優化認知結構。

3,用科學推理探究非結構問題。


一,用自我提問強化元認知

學習的定義中的第一個關鍵詞是目的系統。如果一個系統具有負反饋機制,那麼這個系統就是一個目的系統。所謂負反饋機制,就是不斷地將當前狀態與理想狀態進行對比,並調整當前狀態以縮小二者差異的機制。

而元認知,正是在學習過程中扮演了負反饋機制的作用。所謂元認知,就是對自身認知的認知。"元認知"是美國心理學家弗拉維爾在20世紀70年代提出來的。元認知屬於一種反思性的智慧。

元認知通常以自我提問的技術形式發揮作用。以下是為舉例。

首先是確定學習目標,例如入門Python。可以問自己,我學習Python對我的職業規劃有什麼幫助呢?學習Python後主要想用它幹什麼呢?我目前的基礎是否能夠學會呢?

然後擬定學習計劃。可以問自己,可以去哪裡找到好的Python入門學習資源呢?我應該優先學習哪個呢?我計劃花費多久的時間去學習它呢?

接著實施學習計劃。在學習過程中,可以問自己,當前學習的這部分內容是否掌握了呢?如果沒有掌握,具體哪個概念或者代碼範例沒有搞懂?可不可以通過百度搜索或者請教老師同學把它搞懂?

最後進行學習評價。擬定的學習目標Python入門是否達成?是否做了學習筆記或學習資料整理等留痕工作?如果遺忘了是否能重新通過學習留痕快速拾起?


二,用內容輸出優化認知結構

學習的定義中的第二個,第三個,和第四個關鍵詞分別是數據,模型和決策。數據是輸入,決策是輸出,模型是輸入和輸出之間的轉換路徑。對於人類的學習,決定輸入到輸出之間轉換路徑的是人的認知結構。認知結構的優劣,決定了輸入到輸出的轉換是否合理高效。

美國著名的心理學家布魯納提出了認知結構學習理論。學習的實質是主動地形成認知結構。認知結構是指由過去對外界事物進行感知、概括或經驗構成的觀念結構。學習者是通過把新獲得的知識和已有的認知結構聯繫起來構建其知識體系的。

良好的認知結構通常有兩大特點:一是具有結構清晰的概念體系,二是具有豐富多元可供模仿的代表範例。

概念體系相對抽象,能夠確保習得的模型具有一定的泛化能力,防止過擬合。而代表範例非常具體,能夠確保習得的模型充分保留一些細節信息,防止欠擬合。

結構清晰的概念體系是一棵"決策樹"模型。根據演算法理論,樹模型的搜索效率是很高的,時間複雜度近似為O(log(n)),n為樹模型子節點的個數。而結構混亂的概念體系彷彿是一片"決策雲",不同的概念子節點之間沒有建立聯繫,根據"決策雲"來決策,其搜索效率很低,只能嘗試遍歷全部子節點,時間複雜度近似為O(n)。

為了建立良好的認知結構,有一種特別有效的方法,叫做以教為學,這其實是一種用輸出倒逼輸入的學習方法。費曼非常推崇這種學習方法,因此也稱之為費曼學習法,具體做法如下: 1,先學習某個知識 2,想像自己在向別人教授某個知識 3,教授的不順暢、卡住的地方,就停下來,查閱相關資料解決問題 4, 再次重複2-3,直至完全講清楚。

當然,不可能我們每個人為了學習Python都去編寫一部十萬字的Python教程,或者找來一個Python小白做自己的徒弟直到把他教會。你不必走的那麼遠,但是你絕對應該朝著這個方向去努力:

1,你可以用一張思維導圖整理出Python裡面基礎的概念體系。一張圖要概括最核心的全部內容,並且要層次清晰,讓人能很快背下來。

就像這樣:

2,你可以整理出一份自己的簡短Python教程。確保裡面的每一個範例你都寫過代碼並且是完全理解的。

就像這樣:

沉靜中的流年:3小時Python入門?

zhuanlan.zhihu.com圖標


三,用科學推理探究非結構化問題

學習的定義中第三個和第四個關鍵詞分別是模型和決策。對於機器學習模型,其決策通常只針對特定的一系列相似的問題。而人類認知結構模型,則常常面對一些迥然不同的陌生問題。這些看起來不能夠直接應用現有認知結構立即進行決策的問題構成了教學心理學範疇中真正的問題。

在教育心理學中,問題被定義為給定信息和要達到的目標之間存在著某些障礙需要被克服的刺激情境。問題解決是指應用一系列的認知操作,從問題的起始狀態到達目標狀態的過程。問題解決是高級形式的學習活動,它是檢驗認知結構的試金石,是強化認知結構的雕刻刀,同時還是促進元認知能力提高的催化劑。

從某種程度上說,人類學習的的終極目的就是為了解決問題。解決問題的能力依賴於認知結構和元認知水平。同時解決問題的訓練促進認知結構的完善和元認知水平的提高。元認知、認知結構和問題解決形成了一個交互影響的方法論三角。

在問題解決的過程中,元認知的參與是非常重要的。嘗試自問自答以下一些問題非常有幫助:這個問題具體有哪些困難點?有什麼還沒有嘗試的方法可以克服某個困難點?是否可以把這個問題轉化成熟悉的問題?是否還有相關的資源可以用來幫助克服困難?這個困難可能的解決途徑是怎麼樣的?為了解決這個困難我現有的認知結構是否完備?

人類的文明史,從火的發明到宇宙飛船上天,都是一部問題解決史。每個人在生活中也會遇到各種問題,例如普通的電腦宕機問題、複雜的代碼bug問題、銀行卡餘額不足問題,以及晚上被自己帥得睡不著等問題。所有的這些問題,都可以歸類為有結構的問題和結構不良的問題。

有結構的問題指的是給定的條件和要達到的目標都非常的清晰,與解決問題相關的知識經驗都非常的明確的問題。或者說,對有結構的問題,解決問題可能用到的操作符是一個有限集。例如,普通的電腦宕機問題就屬於有結構的問題。可用到的操作符包括重啟,按F8進入安全模式還原系統設定,重裝系統,以及更換硬體。有結構的問題的解決通常是相對容易的,只要參照過往解決類似問題的經驗,在可能用到的操作符集合中選定合適的操作符組合成序列並依次作用通常就能夠解決問題。

而結構不良的問題往往具有給定的條件和要達到的目標都比較模糊,問題情境不明確,相關的影響因素不穩定,問題本身具有一定的特殊性,一般性知識和過去的經驗不一定適用,可能用到的操作符是一個無窮集合等特點。一些複雜的代碼bug問題、銀行卡餘額不足問題、以及晚上被自己帥的睡不著等生活中遇到的大部分問題都屬於結構不良的問題。

對於結構不良的問題,一般要分3步走去解決問題。第1步是什麼,第2步為什麼,第3步怎麼辦。是什麼即理解問題情境,明確當前給定狀態和理想目標狀態,通過對相關要素的梳理儘可能將問題朝著結構化的方向去轉換,用簡單的語言把問題關鍵點說清楚,並嘗試通過一些可視化的方法呈現問題。為什麼即診斷問題原因,通過猜想驗證的方式找到產生當前狀態的主要原因。怎麼辦即尋找解決路徑,在理解問題情境和診斷問題原因的基礎上,嘗試找到可能的切入點並規劃解決路徑。

在嘗試解決非結構問題的過程中,結構化技術與可視化技術會極大地幫助我們簡化問題的表現形式,給予我們諸多啟發。但對於真正困難的問題,起主導作用的往往是一種叫做科學推理的思維技術。

有些問題是如此的困難,以至於我們無法順暢地診斷問題原因和設計出可行的解決路徑。那麼我們還可以做什麼呢?我們還可以做的就是猜想,就是假設。並進一步根據這個假設去演繹推論,通過驗證推論來證偽這個假設,或者增加這個假設的可信度。

這種從假設出發切入複雜問題的技術擁有如此巨大的威力,以至於隨處可見其身影。科學家通過理論猜想與實驗檢驗來發現自然規律,數學家通過反證法來證明數學命題,統計學家通過假設檢驗來判別統計觀點,偵探專家通過懷疑與舉證來尋找案件兇手,而程序員們則通過截取可疑代碼單獨運行來排查bug......

推薦閱讀:

中國道教思維方式探析
除了逃跑和戰鬥,你還有其他選擇嗎?| 圈外孫圈圈
職場中最可怕的「對立思維」
技術思維、管理思維與機關思維
《華衫講透孫子兵法》思維拓展

TAG:思維方式 | 學習方法 | 方法論 |