你真的会学习吗?从结构化思维说起
作者 | 涉江
來源|阿里巴巴云原生公眾號
導讀:學習是我們從呱呱墜地開始就在進行的事,從簡單的模仿,到系統的訓練,學習對我們而言似乎已經習以為常。然而,我們真的學會學習了嗎?學習的終極目標是什么?技術性學習思維又有什么不同?本文從結構化思維說起,分享學習如何學習的方法。
前言
試想,接手一個新的業務方向,業務方的訴求是要求你能快速熟悉并投入,你會如何去應對這樣的挑戰呢?再試想,作為一名風控技術的新人,你需要在原先的防控策略上引入新的圖計算技術,又該如何快速學習新的技術,從而達成業務目標?
如何你恰好聽說過 XY 問題的理論,你就會知道,上述問題其實都是筆者拋出來的 Y 問題,X 問題是我們到底應該如何快速去學習一項新的課題。
XY 問題是他人詢問自己的嘗試的解決方案 Y,而不是實際問題 X。這會浪費大量的時間和精力,無論是尋求幫助的人,還是那些提供幫助的人。
什么是結構化思維?
來看這樣一個例子,一個平臺戰役 KO 前的準備工作,有 A 組和 B 組兩種劃分方式。
A 組
B 組
以上例子中,B 組比 A 組多出了一個“維度”,將原來的元素進行了歸類分組,從而讓整體信息更有條理和邏輯,也更方便記憶。
我們身處信息爆炸的環境,但是信息不等于認知,大腦需要將接收到的信息進行加工處理,最終形成認知并在需要時遷移運用,這樣的過程就是思維。信息的加工處理是及其復雜的過程,需要一套科學的方法論來提高工作效率,結構化思維應運而生。
結構化思維是一個建立清晰、穩定、有序的思考結構,有助于我們將知識體系從零散到系統化。我們常用金字塔結構進行結構化理解和思考,金字塔結構是《金字塔原理》一書中提出來的概念,它是將結構化思維具象成類似三角形結構的樹狀圖,直觀地體現了由結論、論點、論據組成“先總后分”的立體化分析方式(縱向結構),再通過歸類分組的方式將信息排序和窮盡(橫向結構)。
金字塔結構
有意思的是,金字塔結構先總后分,我們看表象似乎橫向結構越擴越寬,信息越來越多。事實上隨著信息的歸類分組,信息開始知識化、系統化,信息越加工越少,如果再次提煉形成自己的方法論層面,最終可以變成一種長波記憶。如下圖所示,當我們遇到某項課題的海量信息時,需要做到像“漏斗”一樣的思考過程。
漏斗模型
在前言中,筆者拋出幾個問題,我們來思考一下,結構化思維能幫助我們快速的學習好一門課題嗎?我們嘗試用結構化思維來解決這個問題,從學習本身這個課題來看,先從維基百科獲得學習的定義:
學習是透過外界教授或從自身經驗提高能力的過程,從狹義角度來具體描述是通過閱讀、聽講、研究、觀察、理解、探索、實驗、實踐等手段獲得知識或技能的過程,是一種使個體可以得到持續變化(知識和技能,方法與過程,情感與價值的改善和升華)的行為方式。
對學習這個課題進行分析,從狹義的角度,學習經過橫向拆解可以分為收集、加工、沉淀、使能四個方面,而結構化思維是一種結構化的思考和理解信息的過程,和學習這個課題的整體縱向結構匹配可以得出結論,結構化思維主要可以幫助完成學習的加工階段,小部分覆蓋到學習的沉淀階段。因而我們可以得出一個簡單的結論,對于學習而言,只有結構化的思維還不夠。
學習需要學習嗎?
在阿里巴巴公益培訓 Java 柚子訓練營開班第一期分享上,孤盡老師分享了學習四部曲,即記憶、理解、表達、融合。
記憶是信息獲取的第一步,就像 CPU 運算時,要先把數據讀取到內存一般,有記憶的數據才能被大腦加工處理。如何高效的記憶呢?事實上,記憶的第一性原理還是重復,但在實際工作學習中,有一些方法能夠幫助大腦更容易記住信息。
記憶分為長波記憶和短波記憶:
-
長波記憶:已經持久化到大腦中,忘記的時候只是因為沒有檢索到,但是很容易回想起來,類似磁盤存儲。
-
短波記憶:記住一段時間就忘記了,后面怎么也想不起來,類似內存存儲。
就記憶而言,有以下要點值得注意:
- 有場景的信息有助于記憶
- 有規律的信息有助于記憶
- 有分類的信息有助于記憶
- 有圖像的信息有助于記憶
- 自然連接的信息有助于記憶
如果沒有在記憶之前進行思考,單純的重復效率不敢恭維。舉個例子,下面有兩組詞語,哪組更容易在極短的時間里面記住呢?第一組是抽象的名詞,而第二組是具象的物品,顯然第二組能讓我們更快想到具體的場景畫面,并且還可以用結構性思維快速給它們分門別類,形成短波記憶。
-
同一性 矛盾性 螺旋性 斗爭性 對立 統一 形而上 唯心主義 唯物主義 人性
-
西瓜 蘋果 香蕉 梨子 黃瓜 南瓜 西紅柿 白菜 香蔥 花椒 辣椒 香菜 車厘子
快速記憶之后的內容是還沒有消化的內容,很容易忘記,需要重復的理解,將知識內化成自己的認知的一部分,并且要去表達,傳遞出去,讓內化的知識能夠使能,邊學邊實踐才能融會貫通。
孤盡老師以記憶這一要素為啟發點,告訴我們要培養快速學習的能力,講究方法和努力,并且要學會如何學習。值得分享的是,很多時候我們是不知道自己不知道,沒有仔細去思考過如何學習本身這個命題,往往一頭扎進自己的業務和工作中,不可自拔,沒有跳出來看看一些根本的要素。
再舉個例子,Java中,LinkedList 是單向鏈表還是雙向鏈表?在很多開發同學的固化思維里面就是單向鏈表,并且在使用時也不清楚是否是合適的場景,在學習的四部曲里面其實只做到了第一點,記住了有這樣一個 List 子類,后面的三部曲統統沒有做到。
再如,浮點數為何會有精度問題,為什么損失精度后是這樣一個結果,如果腦中沒有出現計算機浮點數清晰的存儲結構圖(有圖像的信息有助于記憶),那在學習的過程中就有很大的缺失。
單精度浮點數存儲結構
這樣看來,你還會學習嗎?
技術視角的學習思維
從技術同學的角度出發聊學習思維,我們不妨先從領域驅動設計(Domain-Driven Design)開始。
在支撐業務時,要正確地理解業務領域,對問題域進行分析和領域知識建模,其中一種生動的方式就是 6W 模型,即描寫場景的過程必須包含 Who、What、Why、Where、When 與 How 這六個要素,領域專家或業務分析師從領域中提煉出“場景”,我們在學習領域時,就好像是在講故事,又好像是在拍電影。6W 模型如下圖所示:
6W 模型
軟件的實現依賴于現實問題域的知識模型抽象,而這個知識模型的構建事實上是技術視角下學習思維的表現(下稱技術性學習思維),在領域驅動設計中,主要分為戰略建模和戰術建模,其中戰略到戰術的思考本身可以看做是一種縱向到橫向的信息歸類,以便于我們結構化、有序化的理解和思考。
我們說軟件是自動化現實世界的過程,首要任務就是學習這些過程,同時技術性學習思維要比常規的認知更加具有挑戰性,除了將信息加工成知識,還需要進一步將知識模型化,再用計算機語言去表達這些知識模型,模擬現實世界的過程。軟件開發困難嗎?我想難,但也不難,好的設計和不好的設計都有能支撐業務的例子,但我們更期望有好的設計,怎么做設計好的軟件呢?沒錯,這又是一個 Y 問題,X 問題是我們如何學會學習。
實踐和小結
1. Special
以筆者所從事的風控領域為例,要快速學習風控的知識,支撐起阿里及螞蟻集團的國際戰場。對收集的信息進行整理、記憶之后,從風控思想視角,可以概括為如下的價值和描述:
一句話價值:風控價值 = 業務助力 + 有效攔截 - 業務打擾
而對相關概念加工整理和思考后,對風控技術進行理解,其中一種抽象的方式,把風控看成公式:
把風控函數 f ,用變量體系進一步展開:
??
其中 s 是策略體系,u 是變量體系,var 是變量。
變量, 可以看成是策略條件部分的左值。
可以看到學習的過程是將一個龐大課題聚焦到核心要素,并且建立易于理解的模型層面,但這依然處在學習的中期甚至是早期階段,還需要不斷的表達和融合,內化為自己一部分。在風控領域其實還有很多方面需要下探,有一種還不會真正學習的意識也是巨大的收獲,能敦促自己朝著更體系化的目標而去,最終能融合成自己的學習結果,并有所領域產出。
2. 小結
快速學習是一種能被強烈感知到的訴求,受到阿里柚子訓練營的啟發,其實有時候焦慮的背后是因為自己還沒有學會如何學習,還是按照從前的方法在重復。學習如何學習是一種技能,要知道自己不知道,我們的終極目標還是要讓自己能在有限的時間里高效的學習,而學習的終極目標不是沉淀,而是知識的表達和讓自己持續性的變化。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的你真的会学习吗?从结构化思维说起的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云开源项目 OAM 负责人张磊入选「
- 下一篇: Spring Cloud 2020.0.