算法在左,迷信向右
編輯導語:在以前,經(jīng)常能看到大街上有老人擺著小攤子,身邊掛著“算命”的旗子,在那個時候,算命更像是一種手藝。進入了21世紀之后,現(xiàn)代人普遍都相信科學,大街上算命的大師也少了。事實上,現(xiàn)在的算命已經(jīng)不只是一門手藝,而成了一門產(chǎn)業(yè),也是一種“算法”。
算法代表了科學,迷信意味著愚昧,這很容易區(qū)分,也沒什么好區(qū)分的。作為數(shù)據(jù)工作者,這本應該就是板上釘釘?shù)氖虑椋緵]有什么好爭辯的。但是,請你看下去,你會開始疑惑,然后開始懷疑人生。
一、奇怪的迷信傳統(tǒng)
我描述一些迷信傳統(tǒng),你猜猜是哪個群體做的事情:
- 在做某件事情之前48小時內,關鍵人物不許出現(xiàn);
- 在某件事進行的適合,要把一枚硬幣放在指定地方;
- 不允許在某一天做這種事情;
- 關鍵人物出發(fā)之前,男士要在汽車后輪小便,女士則提前尿在容器里撒到汽車后輪;
- 正式開始之前,每個人都要佩戴護身符。
你也許會說,這是邪教吧?這么邪性?
那么我告訴你,這是美國、蘇聯(lián)的宇航員上太空之前的一些傳統(tǒng)。就連中國宇航員楊利偉、翟志剛他們登艙之前,也都喝摻了酒的水,當壯行酒。
不僅是宇航員,神舟五號上天的時候,所有人都要喝酒壯行。你說,這群人都是什么人?稱他們?yōu)槭澜缟献铐敿獾目茖W家不過分吧?為什么他們都搞看上去沒啥用的迷信呢?
二、算法為什么準?
算法是什么?
用最簡單的二元分類器來說:就是一個能把輸入的數(shù)據(jù)區(qū)分為是/否的自動分類器。只要你輸入的數(shù)據(jù)在范圍之內,就會像下面的硬幣分類器一樣,更像1角的會滾到1角的盒子里,更像5角的會滾到5角的盒子里。
但是很多時候,輸出的結果并不會按照我們期望的那樣,也會搞錯了。算法工程師大多數(shù)時候就是在提升準確率,算法中有2個重要的指標,叫做“精準率”和“召回率”。
準確率就是這個算法模型一共預測準了多少個案例的程度(1角硬幣到1角盒子,5角硬幣到5角盒子的情況,占所有硬幣的比),召回率就是1角硬幣到1角盒子占所有1角硬幣的比。
所以算法優(yōu)化的過程就是不斷提升準確率和召喚率的過程,算法工程師的工作就是在不斷的調整參數(shù),讓1角硬幣滾到1角盒子里。
有些算法的過程我們是能理解并且控制的,比如決策樹及其衍生GBDT、XGBoot等。舉個例子:相親中,“合則約見”的決策樹長這樣,寫出來的算法也是這樣子的:
這個算法是個人都能看到懂,符合當前條件再看下一個條件,不符合就拉倒。這些所有的邏輯都是我們自己定義的。機器忠實的按照這個模型比對每一個個體,這樣就把所有的個體都打上了“見”或者“不見”的標簽。
但是也有很多算法是我們看不太懂的,比如K-means、神經(jīng)網(wǎng)絡,K-means是一個聚類算法,就是把所有的相親對象歸歸堆。
比如我們已經(jīng)有所有人的月薪和顏值數(shù)據(jù),用K-means聚3類的話,算法會隨機給出3組值,比如(月薪5000,顏值90)、(月薪9000,顏值60)、(月薪20000,顏值40),然后計算所有人的與這三個值之間的最短距離,更新K值,然后不斷重復直到觸發(fā)停止條件。
請注意初始的3組值是隨機的,也就是說,算法是在猜。所以每次執(zhí)行K-means,大概率結果是會不一樣的。
如果說K-means是在猜,那好歹我們還能總結一下這幾類都有啥特征。比如顏值高但是工資低的,可以叫好看組;顏值中等,月薪也中等的,可以叫實用組,顏值低但是月薪高的,可以叫有錢組等。
但是神經(jīng)網(wǎng)絡就是真的扯了,我們完全不能理解為什么得出這個結果。
神經(jīng)網(wǎng)絡分為三個層,輸入、隱藏、輸出,其中隱藏層又可以拆成N層,它會計算每一個路徑通到最后的成功概率,然后不斷的優(yōu)化路徑,達到最優(yōu)化的效果。
所以神經(jīng)網(wǎng)絡有個好處,就是自適應和自學習,迭代N次之后就會出現(xiàn)類似于人類蹣跚學步的效果,所以都叫它“人工智能”算法。
圍棋界扛把子機器人阿法狗就是神經(jīng)網(wǎng)絡的升級版本,投喂了大量棋譜+超強算力的綜合體,現(xiàn)在有些人在下圍棋的時候會感覺出來對方是一個“人工智能”。
因為人工智能棋手會下出一些我們不能理解的手法,從這個角度上來說,算法本質上就是在亂來,如果死了就結束,重新再來一次,僅此而已。
所以你看,從決策樹到K-means到神經(jīng)網(wǎng)絡,算法越來越復雜,越來越不能理解,越來越亂來,越來越像是在瞎猜瞎撞,這哪里像科學?。∵@比算命還扯好么?
三、算命為什么準?
歲數(shù)越大,越信命。算法跑的越多,越覺得麻衣神相、算命有道理,比如《麻衣神相》有云:
一取威儀:如虎下山,百獸自驚。如鷹升騰,狐兔自戰(zhàn)。不怒而威,不但在眼,亦觀顴骨神氣取之。
二看精神:身如萬斟之舟,駕于巨浪之中,搖而不動,引之不來, 坐臥起居,神氣清靈…如此相者,不大貴亦當小貴,富亦可許,不可妄談定。
《柳莊神相》有云:
把這些話轉換一下,跟算法的邏輯是一樣一樣的。先獲取信息,然后根據(jù)相書上已經(jīng)建好的模型,直接套用即可得出結果。
看上去好像有點扯?NONONONO!其實不僅是看相是這樣,算命也是這樣,需要很多信息其實都是話套話套出來的。算命師必備技能是觀察技巧和話術技巧,那些算命的口訣只是工具而已,怎么說都有理。
比如:凡是很窮但是穿襪子的,必然是家中落寞之人,為啥?
因為古時候真正的窮苦人家是不會穿襪子的,這在算法中就叫特征??!所以算命就會很準,因為在不停的收集信息,然后根據(jù)書上的和算命先生的經(jīng)驗,綜合起來的模型,得出一個非??孔V的結論,自然就很準了。
比如“父在母先亡”。如果來算命的人想算父母,用這句就能應對所有情況:
- 對方說:父母尚在呢,怎么解?好解啊,人總要死的么,反正是一個先死一個后死。
- 對方說:父母早亡,怎么解?一樣啊,反正一先死一個后死。
- 對方說:是爸爸先死的,怎么解?一樣啊,父在母先,亡。你看,對上了。
- 對方說:是媽媽先死的,怎么解?一樣啊,父在,母先亡。你看,還是對上了。
是不是覺得我在瞎扯?中國的算命就是迷信,就是在瞎扯是不是?好,咱再看一個例子:《Lie To ME!》
這是一部美?。簝热菸也欢嗾f,超級經(jīng)典的一部美劇,不過我們只需要看第一季的第一集就行。片中的萊特曼博士根本不需要嚴刑拷打或者識謊儀,只需要云淡風輕的聊幾句,就能知道罪犯那句話是真的,那句話是假的。
他靠的是微表情。是不是感覺神叨叨的,跟跳大神也差不多了?聊了不到10句話,看了幾眼,就能知道他想知道的一切?這樣太扯了吧?
其實,我們想象一下算法的邏輯,微表情識謊與算法的邏輯是一致的。
博士自己構建了一個模型,輸入信息是語氣、表情、肢體動作等等細微的信息,模型是不同情況下的不同表現(xiàn)代表什么意義,輸出結果就是這句話是真的還是假的。
四、結語
你看多有意思啊?科學和迷信貌似就這樣完美的結合了?但是,為什么?
其實我更愿意這么理解迷信和算法:我們對這個世界的一切認識,其實都是一種解釋。迷信也好,算法也好,運氣也好,命運也好,都是我們自己理解世界、理解復雜事務的一種解釋。
我們無法理解為什么有人買彩票就能中獎,如同一只螞蟻不明白為什么旁邊的那只螞蟻突然被踩死一樣。螞蟻可能會把無聊的小孩當成命運,因為它理解不了人類的行為。
如同我們不能理解也不知道如何提升去太空的成功概率,那么就找一個自己能解釋的事情去解釋就好了。
我們同樣不能完全理解這個世界,只能用看上去很合理的方式去解釋,比如壯行酒、朝輪胎撒泡尿、幸運數(shù)字等等。
算法就一定科學嗎?迷信就一定不科學嗎?科學就一定是解釋這個世界唯一途徑嗎?再想想螞蟻,它們是不是也有自己的一套科學理論,來解釋他們看到的世界呢?
作者:大數(shù)據(jù)架構師,國藥國華大數(shù)據(jù)總監(jiān),擅長BI、數(shù)倉、數(shù)據(jù)中臺產(chǎn)品規(guī)劃領域,公眾號:大數(shù)據(jù)架構師
本文由 @大數(shù)據(jù)架構師 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉載
題圖來自 Pexels,基于 CC0 協(xié)議
我可不可以理解為不同時期對世界的認知,沒有正確與否,只有合理不合理
對于人類來說,是這樣的。不過誰又能說的準呢?沒準算命是另一種更簡單且準確的建模呢?
確實,好像你說也對
有點東西
有一個地方存疑:召回率應該是1角硬幣進入5角盒子占所有1角硬幣的比例。你看對嗎?
TP: 將正類預測為正類數(shù) 40
FN: 將正類預測為負類數(shù) 20
召回率(recall) = TP/(TP+FN) 。
XGboost
有意思,哈哈哈