★一本人人看得懂的有趣數學思維書!不論曖昧的人際關係、懸而未決的經濟問題、你最迫切想知道的投資決策……都能用數學思維輕鬆解決!
人與猴子最大的差別,就是人類發明了數學,讓我們能更看清這個世界,
並且做出精準預測。這本書充滿生活化有趣例子,幫助讀者重拾人類的長處。
──盧希鵬|台灣科技大學資訊管理系教授
【內容簡介】
人生就是不斷尋找更優解的過程,
善用數學,就能重新求證我們的人生!
看《甄嬛傳》跟寫好論文有什麼關係?
微軟和蘋果是如何成功的?
股票什麼時候漲,什麼時候跌?
什麼才是好的設計?
把數學智慧,運用於日常人生!
19種數學工具,引領你探尋數與理的浪漫,
把複雜的世界簡單化,解決工作和生活中的大小難題!
小到電鍋為什麼不會糊底,筷子夾不起來豌豆怎麼辦;大到股票的漲跌、如何更好的與人相處、選擇自己的職業……這些看似與數學無關的問題,其實都蘊含著深刻的數學思維。
本書除了以文科生都能懂的方式,讓我們既可以從生活中的知識和經驗理解數學,還可反推以數學思維解釋人生。讀完本書不但能受到啟發,還可練就以理性的視角更深刻地思考問題。
專業推薦
巧妙運用日常故事和經典案例來解釋數學概念,使其易於理解,同時也顯示了數學在我們生活中的重要性。是一本能引起讀者共鳴,以及給予我們編織新想法的書。──洪瀞|《自己的力學》作者、成大副教授
人與猴子最大的差別,就是人類發明了數學,讓我們能更看清這個世界,並且做出精準預測。這本書充滿生活化有趣例子,幫助讀者重拾人類的長處。──盧希鵬|台灣科技大學資訊管理系教授
作者用他豐富的研究經驗和對生活的深刻理解,將演算法與生活聯繫起來,讓我們既可以用生活中的知識和經驗理解演算法,也可以用演算法解釋人生。──曹建農|香港理工大學教授
看《甄嬛傳》和讀學術論文有什麽內在聯繫?作者從「主動預測+在差距中學習」,引申出「監督式學習」。我讀完本書之後大受啓發,相信你也一定會受益良多。——張琳|北京市大數據中心主任
透過分解看似複雜的數學公式,發現數學在日常工作和生活的妙用,啟發我們的數學思維,讓我們更理性地生活、更高效率地工作。——李永樂|人大附中教師、科普影片創作者
本書告訴我們,面對不確定情況,如何用較小的代價達成自我目標,抓住問題的本質,利用機率思維做好決策。——戰隼|知名自媒體warfalcon、100天行動發起人、時間管理達人
作者簡介:
劉雪峰
北京航空航天大學計算機學院副教授,博士生導師。2008年取得英國布里斯托大學博士學位。〈知識星球〉廣受歡迎的計算機大師。主要研究方向包括線性代數、訊號處理、人工智慧等。在全球期刊和國際會議上發表過70多篇學術論文。2018年榮獲中國高等學校科學研究優秀成果獎(科學技術)二等獎。執教的《小波信號與系統》在學院的課程教評中獲得滿分。
作者序
〈推薦序〉
用日常與數學豐富你的世界觀
洪瀞 《自己的力學》作者、成大副教授、雙寶爸
你是否曾經讀完一本書後,非但不排斥再度翻開它,且每次閱讀都有新鮮的體悟與啟發?《心中有數,腳下有路》就是這樣一本相當值得被收藏的科普書。
我相信,多數人都承認數學的重要性,同時也可能認為數學是抽象且難以理解的,尤其是高中之後的數學。若你身處於這時期,為了解題與取得高分,「背起來」是一個辦法,但這通常不是一個有趣的做法。與之相對,若能透過貼近生活的簡單故事,以此幫助我們深入賞析數學的應用會有趣得多,本書就是如此。書中融合了許多引人深思的故事,以它們為線索,串連起各種往往難以解釋的複雜而深奧的數學概念,使得整個閱讀過程不僅有趣,更從中不斷發現和產生新的想法,獲益良多。
透過本書的詮釋,諸如「最小平方法」「摺積」「基本機率」「稀疏性」「矩陣」「奇異值」等術語,突然就變得有趣,還會萌生一種「原來可以這樣理解」的驚喜感,能相當程度啟發好奇心,更鼓勵進一步探索和學習更多。我自己在上課時就引用了不少書中提到的,例如電鍋的自動斷電是如何設計的,這些令人難忘且相當實用的趣味故事。藉由這種深入淺出地詮釋方式,即便是對數學感到陌生或害怕的人也能進一步理解它們的意義,學會重要的數學概念。
數學家約翰˙馮紐曼告訴我們:「若人們不相信數學簡單,只因他們未意識到生命之複雜。」看似模糊與複雜的概念,也可能具有相對簡單的本質。拓撲學即是一個不錯的例子,可以用來解釋這段話。因為在拓撲學裡,數學家們判定咖啡杯和甜甜圈是一樣的東西。原因相當簡單──它們都有一個洞。本質上,數學是一個非常有趣且應用廣泛的學科,而且能在生活的各個面向被落實。只不過,有太多的術語、觀念與生活間的連結過於薄弱,而使數學與現實的距離遙遠,就像拓撲學。若想讓更多人感受數學的魅力,就需要更多的把數學術語與生活做連結,藉此打破隔閡,讓人們能輕鬆理解看似複雜卻與生活息息相關的數學概念。
簡言之,這是一本使數學變得有趣且鼓勵深入思考,以此開闊新視角的書。作者巧妙運用日常故事和經典案例來解釋數學概念,使其易於理解,同時也顯示了數學在生活中的重要性。我認為,這是一本能引起共鳴,以及給予我們編織新想法的書。退一步說,就算你無法在讀完本書就立刻掌握裡頭探討的理論和觀念,但我相信你至少將會對這些理論和觀念產生好感與樂趣。誠心推薦這本好書。
〈推薦序〉
演算法與人生可互為借鑑
曹建農 香港理工大學教授
花時間認真閱讀本書後,我學到很多,領悟不少。演算法與人生都是藝術,演算法相當於電腦程式的靈魂,而人生則更深邃。成功的設計需要邏輯思維、經驗和認知等,其中創意尤其不可或缺。讀了本書,你對此一定會有更深的感受。
電腦科學和生活的關係之密切,體現在計算思維為我們解決生活中的種種問題且提供了思考途徑與解決方法,同時計算思維也從生活的智慧中借鑑了很多有益的思想和啟示。所以,演算法與人生可以互為借鑑。在這本書中,作者用他豐富的研究經驗和對生活的深刻理解,將演算法與生活聯繫起來,讓我們既可以用生活中的知識和經驗理解演算法,也可以用演算法解釋人生。
一方面,我們會感覺到,積累的生活經驗越多,我們想學習電腦知識就越容易。平時我在給學生上課或進行指導時,喜歡引用課題背後的人與物在生活中的故事進而發展出的知識和技術。學生聽了這些故事,便會了解相關知識的創意與演進,或者技術發明的背景和動機,從而加深相應的理解,這本書裡,就有很多這樣的故事。
另一方面,演算法的奇妙之處在於其可以?明我們認識的與解決的生活中的問題,本書也給了我們很多這樣的啟示,使我們產生更多的聯想,比如機器學習和生活的關聯。人工神經網路其實也是一種演算法,它從資訊處理角度對人腦神經元網路進行抽象處理。人工神經網路的運算模型對生活的提示也反映在方方面面。其一,在神經 網路訓練中,為節點間的連接賦予權重並改變加權連接,可以改變 網路的輸出。在生活中,如果我們要對某件事有更強的掌控力,就要對其給予更高的權重。其二,與反向傳播神經網路訓練演算法類似, 即我們要想改變或養成一個新習慣,就要改變環境,消除或加強對習慣行為的提示,以抑制或刺激大腦中的反饋回路。其三,就像我 們登上山峰後,想要以最快的速度回到山腳下的目的地,深度學習 中的梯度下降法會告訴我們,在事先無法看清所有路徑時,如何持 續評估並找出哪條路連著最陡的下坡,使我們在最短時間內到達山下。同理,如果在生活中無法預測事情是否會順利發展,我們可以不斷觀察前進的方向,以最小的代價達到自己的目標。
無論是體驗生活,還是追求知識,都需要我們運用好奇心與觀察力,產生領悟,而這需要練習、反思和總結。作者就是透過這樣的觀察和領悟,用演算法和人生之間的關聯,幫我們加強對兩者的理解。
全書分為三大部分:〈思維篇〉〈方法篇〉和〈學習篇〉。〈思維篇〉告訴我們怎樣看待一件事,從而更好地提升認識,做出更好的選擇。〈方法篇〉告訴我們如何看待問題以及怎樣抓住問題的本質,並分享了常用的問題解決模式。〈學習篇〉則分享了讀書、學習和表述的方法。
平時我很喜歡看科普讀物,期待從中獲得啟迪和靈感。儘管市面上有不少這樣的讀物,但像這本書一樣聚焦於電腦演算法領 域的書並不多,因此本書非常值得一讀。我逐章逐段地閱讀了全書, 獲益匪淺。希望各位有心的讀者也會有同樣的感受。
前言〉
機率的世界觀:靠努力提高成功機運
我上大學時學的是自動控制專業。了解這個專業的人也許知道,自動控制專業的基礎課程覆蓋很廣,涉及很多學科,內容多而雜。一次和數學相關的基礎課上的經歷讓我至今記憶猶新。上課鈴聲一響起,老師就認真地從頭開始在黑板上推導一個公式。這個公式比較複雜,老師用了整整兩節課的時間,推導過程寫滿了幾個黑板;下課時,卻發現最後的結論和書上的不一樣。老師跟我們說:「同學們別著急,下次上課我再給大家重新推導一遍。」
這一經歷可能並不多見,但是一些大學生或許會有這種感受:拿到一本教科書,上面的每個公式都有密密麻麻、嚴謹的推導過程,一眼看上去令人生畏。為了看懂這個公式,你硬著頭皮仔細研讀每一步推導過程,然後自己拿筆試著推導好幾遍,直到最終將公式推匯出來才感到心安。你會想:「我已經把這個公式推導出來了,應該理解這個概念了。」你的心裡除了湧現挫折感外,應該還會不時冒出一個個疑問:「這個公式到底有什麼用?它能夠幫助我解決生活中的什麼問題?」最後甚至冒出這麼一個念頭:「我真的理解這個概念嗎?」
很可惜,在大多數的時候,我們都無法找到上面這些問題的答案。於是成功推導出公式除了能讓我們通過考試外,只給我們帶來了「我應該理解了這個概念」的安慰。大部分人會一直帶著這些未被解答的疑惑,在考完試之後迅速把這些數學公式忘得乾乾淨淨。
有的人認為,數學是數學,生活是生活。數學的概念只是那些書本上的公式,這些公式屬於數學家們,和自己沒有任何關係。就像朱自清在《荷塘月色》裡寫的那句話:「但熱鬧是它們的,我什麼也沒有。」
如果我告訴你,很多數學概念的背後都閃耀著智慧的光芒,這些智慧能幫我們更好地看清這個繁雜的社會,並且能夠幫助我們在生活中做出更好的決策和行為,你相信嗎?
也許你會質疑:「什麼,數學公式還能幫我們解決生活問題?你不是在開玩笑吧。」
如果你有這種疑問,也許下面「最小平方法」「病態方程組」等案例,會讓你改變對數學的看法。
數學中有一種演算法叫作「最小平方法」。數學家高斯,曾經用最小平方法準確預測出一顆行星的位置。但是如果你只是背下最小平方法的公式x =(ATA)–1ATb,或只會套用這個公式來解一些書本上的問題,那麼你就沒有體會到最小平方法背後的智慧。通過最小平方法找到的解,不力求讓少數方程完全成立,而是讓所有方程左右兩邊的誤差之和最小,它背後體現出來的思想, 是做事情不追求絕對完美,而是在接受不完美的前提下權衡多方利益,找到最佳平衡點。這其實和孔子推崇的「中庸之道」或「執兩用中」的智慧不謀而合。
又比如,在數學中,有「微分法」和「數值演算法」這兩種解法, 它們實際上對應我們生活中解決問題的兩種思路。用「微分法」來找到函數的極值,可以分為三步:(1)微分數,(2)令導數為零,(3)找到該方程的解。每一步都不能出錯,最終才可以得到答案。這種模式對應一個成語:「步步為營」。它要求每一步都力求完美,把整個流程走完才能得到想要的結果。「數值演算法」則對應另外一個成語:「精益求精」。它並不要求在每一步做到最優,而是迅速走完一輪,然後在本輪結果的基礎上反覆運算,反覆多輪,不斷提高,最後也可以得到一個好結果。「精益求精」模式不僅與產品開發、專案管理中的「敏捷模型」相對應,也與互聯網公司經常說的「小步快跑, 快速反覆運算」相對應,意指「完成比完美更重要」。
又比如,在線性代數中,有一個概念叫作「病態方程組」,即一個線性方程組y = Ax 中 y 和 A 的輕微變化會導致解 x 有極大變化。但如果你僅只知道病態方程組這個概念,就錯過了這個概念背後的智慧:方程組中的每條直線,實際上代表一個視角,而直線的交點,就是從多個視角達成的共識。病態方程組這個例子告訴我們,如果多個人想透過交流的方式達成共識,了解某個事情背後的真相, 那麼這些人最好有不同的視角。一旦視角太接近,那麼這些不同視角交叉得到的共識,會對雜訊極為敏感。一點點雜訊,都會對最後的結果產生極大的影響,這就是所謂的「失之毫釐,差之千里」,也是「多樣性紅利」的數學解釋。
在電腦科學中,有一個演算法叫作「類比退火演算法」。類比退火演算法可以?明我們通過逐步反覆運算,找到某一個函數的最優解。如果你只會簡單地應用這個演算法來解決函數的極值問題,就錯過了這個演算法背後閃耀的智慧。
在我看來,人生其實就是一個尋找最優解的過程,我們總是透過不斷努力提升自己,在最後達到自己可能達到的最高位置。而模擬退火演算法告訴我們,一個人在年輕的時候,應該讓自己充分探索,接受暫時的不完美,從而避免陷入局部的最優值,並在將來攀上一個更高的山峰。而到了一定階段,知道自己最適合什麼以後,就應該在自己最適合的地方深耕,不要輕易切換賽道。所以,一個大學生畢業之後,就應該去大城市闖一闖,多嘗試一些行業,而不是老老實實待在一個一眼就能看到未來的崗位上一輩子。
以上的幾個例子,就是數學公式和演算法背後的智慧。這些智慧能幫助我們更好地看清這個世界,並在你遇到問題的時候,提供你更科學的視角,讓你做出更好的決策和行為。
如果你是一名理工科的在校或已畢業的大學生,這本書一定適合你。尤其是計算機科學系、電子工程學系和自動控制學系的學生,看到你在書本上曾經學到、似曾相識的這些數學公式背後竟然包含那麼深刻而智慧的道理,你就可以立刻理解它們。它們會成為烙印在你大腦裡的思維方式,而不只是停留在書本上的數學公式。
如果你是一名從沒接觸過這些數學公式的文科生,這本書也同樣適合你。透過這本書,你不再會被那些看似「勸退」的數學公式「嚇倒」。你會藉由這些公式和演算法,直接理解它們背後閃耀的理性思維。作為一名文科生,如果你能掌握這些思維,它會立刻幫你打開一扇新世界的窗戶,在你困惑和迷惘時,從另外一個視角提供你啟示,讓你能更加深刻地看待問題,甚至能改變你的人生觀和做事態度。
例如,我們從小被教育的世界觀是「事在人為」。然而,有這種世界觀的人雖然通常樂觀而積極,卻容易因現實中的挫折與打擊而產生無力感。有的人的世界觀則是另外一頭的「宿命論」:一切都是確定的,一切都是最好的安排。然而,在我看來,正確的世界觀, 應該介於兩者之間,叫作概率的世界觀。概率的世界觀的核心思想很簡單:很多事情的最終結果是我們不能保證的,但是,這個結果發生的概率是我們可以靠努力改變的。
最後,願這本《心中有數,腳下有路》,能讓你心中有數,幫你更好地看清這個世界。
〈推薦序〉
用日常與數學豐富你的世界觀
洪瀞 《自己的力學》作者、成大副教授、雙寶爸
你是否曾經讀完一本書後,非但不排斥再度翻開它,且每次閱讀都有新鮮的體悟與啟發?《心中有數,腳下有路》就是這樣一本相當值得被收藏的科普書。
我相信,多數人都承認數學的重要性,同時也可能認為數學是抽象且難以理解的,尤其是高中之後的數學。若你身處於這時期,為了解題與取得高分,「背起來」是一個辦法,但這通常不是一個有趣的做法。與之相對,若能透過貼近生活的簡單故事,以此幫助我們深入賞析數學的應用會有趣得多,本書就是如此。書中...
目錄
推薦序 用日常與數學豐富你的世界觀 洪瀞
推薦序 演算法與人生可互為借鑑 曹建農
前 言 機率的世界觀:靠努力提高成功機運
思維篇 用理性思維看待世界
第1章 雖不能保證結果,但可努力趨近目標──機率
˙平靜接受現實嗎?
˙「事在人為」還是「宿命論」
˙機率的世界觀
第2章 股票什麼時候漲,什麼時候跌?――不要低估「預測」
˙穀神星的發現
˙什麼是一個好的學習模型?
第3章 三個臭皮匠,未必勝過諸葛亮──多樣性紅利
˙多樣性帶來的紅利
˙方程組的多角度視野
˙對雜訊敏感的病態方程組
˙所有直線的交點,就是共識
第4章 頻繁的小確幸與偶爾的大幸福──摺積
˙小確幸與大幸福
˙對外界的輸入,進行輸出
˙用摺積解釋偶爾的大幸福和頻繁的小確幸
˙摺積思考在生活中的其他應用
第5章 像CPU一樣多工思考利與弊──啓發式演算法
˙從三種處理器看利弊
˙五石之瓠,大而無當?
˙NP難題的解決方案
˙用「可控的弊」換取「更大的利」
第6章 複雜現象背後的簡單規律――稀疏性
˙智取櫃的取件碼
˙稀疏的時間訊號和圖像
˙湧現
第7章 龐帝克汽車與香草冰淇淋──條件獨立
˙汽車和冰淇淋
˙條件獨立
˙條件獨立案例
˙穿夾克和車禍發生率
˙「春風吹又生」的邏輯問題
˙火警
˙情緒ABC理論
第8章 空氣清淨機與卡爾曼濾波器──訊息演算
˙如何計算空氣品質?
˙卡爾曼濾波器
方法篇 解決難題的策略和技巧
第9章 微軟和蘋果是如何成功的?──負回饋與正回饋
˙跑步的正向迴圈
˙控制系統中的回饋
˙正回饋
˙好壞正回饋的一線之隔
第 10章 什麼才是好的設計?──好的UI/UX都看重基準
˙如何用筷子夾豌豆?
˙什麼是好的設計?
˙如何設計一把錘子?
˙如何設計一口電鍋?
˙如何解決取票時忘了帶走身分證的問題?
第 11章 抓住本質,擺脫限制──模仿
˙玩具放大鏡
˙飛機和蒸汽帆船
˙人工智慧的發展方向
˙研究生如何讀科技論文?
第 12章 夾娃娃機的致勝要訣──大數法則
˙大數法則
˙夾娃娃機的發展
第 13章 「執兩用中」的智慧──最小平方估計
˙執兩用中
˙無解的方程組真的無解嗎?
˙最小平方估計和執兩用中
第 14章 把大象裝進冰箱需要幾步?──函數微分
˙解決問題的兩種思路
˙兩種求函數極限值的方法
˙產品開發的兩種模型
˙寫論文的兩種模式
第 15章 怎樣切洋蔥才不會刺激眼睛?──變換的思維
˙如何切洋蔥?
˙「變換」的思維
˙傳輸中的變換
第 16章 為什麼年輕時應該多去闖闖?──類比退火演算法
˙解法1:解析解
˙解法2:梯度法
˙解法3:爬山法
˙爬山法的問題和解決方法
˙如何解決該問題:用隨機的方式接受不完美
˙類比退火演算法
學習篇 如何學習和表達?
第 17章 看《甄嬛傳》跟寫好論文有什麼關係?──主動預測
˙《甄嬛傳》的另類觀賞法
˙如何讀學術論文?
˙監督式學習
˙快速閱讀
第 18章 練就好的學習方法論,成為潛力股──AI學習模式
˙單任務學習3
˙多任務學習
˙遷移學習
˙元學習
第 19章 邏輯清晰的增量式表達力──奇異值分解
˙為什麼需要訓練表達力?
˙傳輸圖像的兩種模式
˙如何由主到次地增量式表達一個矩陣?
˙生活中使用這種表達方式的例子
推薦序 用日常與數學豐富你的世界觀 洪瀞
推薦序 演算法與人生可互為借鑑 曹建農
前 言 機率的世界觀:靠努力提高成功機運
思維篇 用理性思維看待世界
第1章 雖不能保證結果,但可努力趨近目標──機率
˙平靜接受現實嗎?
˙「事在人為」還是「宿命論」
˙機率的世界觀
第2章 股票什麼時候漲,什麼時候跌?――不要低估「預測」
˙穀神星的發現
˙什麼是一個好的學習模型?
第3章 三個臭皮匠,未必勝過諸葛亮──多樣性紅利
˙多樣性帶來的紅利
˙方程組的多角度視野
˙對雜訊敏感的病態方程組
˙所有直線的交點,就是共識
第4章 頻...