核心概念#

本章介紹 Google Fellow 阿米特·辛格博士(Amit Singhal),他是 Google 內部排序算法 Ascorer 的設計者(A 即取自他名字的首字母)。作者以 AK-47 衝鋒槍作比喻,認為好的算法應該像 AK-47 一樣:簡單、有效、可靠性好且容易操作

辛格的工作哲學#

  • 簡單實用優先:辛格堅持在工程上找最簡單實用的方法,而非追求完美方案
  • 先解決 80% 的問題,再慢慢解決剩下的 20%——這是工業界成功的秘訣之一
  • 許多失敗並非因為人不優秀,而是一開始追求大而全的解決方案,最後長時間無法完成

辛格與作者合作開發的網頁分類器(反作弊用途),設計非常小巧(占用內存很小),幾台服務器就能處理全球搜索的分類,被公司副總裁稱為「像 AK-47 自動步槍」。這也是 Google 在反作弊方面取得的第一個美國專利。

簡單方法的力量#

  • 辛格在開發中日韓語言搜索算法時,用一個擬合函數替代耗費內存的語言模型,不需要增加任何服務器就能提升搜索質量達原來大模型的 80%
  • 他堅持每個改進方法都要能解釋清楚背後的道理,這樣不僅便於 Debug,也容易找到改進方向
  • 對於非常複雜的方法(尤其是黑盒子式的機器學習),無法做到清楚解釋每項改動的影響

辛格與皮耶爾的對比#

  • 皮耶爾(Fernando Pereira)認為最好的計算機搜索算法要先理解文本的意思,關鍵是文本的句法分析
  • 辛格認為計算機不必學習人的做法,就如同飛機不必像鳥一樣飛行
  • 兩種技術路線最終取得妥協,各自在不同項目中發揮作用

辛格的背景與風格#

  • 師從搜索大師薩爾頓(Salton)教授,在 AT&T 實驗室就搭建了中等規模的搜索引擎
  • 堅持每天分析搜索結果不好的例子,以掌握第一手資料
  • 鼓勵年輕人不怕失敗、大膽嘗試
  • 2012 年當選美國工程院院士,出任主管 Google 搜索的高級副總裁

本章小結#

好的算法不需要故弄玄虛,簡單、有效、可靠才是王道。辛格的成功來自深厚的研究經驗、對簡單方法的堅持,以及對搜索問題每個細節的深入理解。