冷冰冰的算法與暖洋洋的雞湯

5 評論 9095 瀏覽 32 收藏 20 分鐘

每天上下班,習慣了在路上思索人生,而最近半年來一直接觸風控算法,所以當我把算法和人生聯(lián)系在一起時,突然感慨:很多看起來很無趣的算法,居然與很多人生哲理雞湯彼此呼應(yīng)。

一、隨機梯度算法的“人話”解釋

隨機梯度算法”與“你要的穩(wěn)定,不是真的穩(wěn)定”

1. 梯度的概念

在微積分里面,對多元函數(shù)的參數(shù)求偏導(dǎo)數(shù),把求得的各個參數(shù)的偏導(dǎo)數(shù)以向量的形式寫出來,就是梯度。

那么這個梯度向量求出來有什么意義呢?他的意義從幾何意義上講,就是函數(shù)變化增加最快的地方,沿著梯度向量的方向,更加容易找到函數(shù)的最大值。反過來說,沿著梯度向量相反的方向,梯度減少最快,也就是更加容易找到函數(shù)的最小值。

如下圖所示:

2. 隨機梯度的概念

在現(xiàn)實中,我們所遇到的場景是面對的非常復(fù)雜、凹凸不平的數(shù)據(jù)空間,所以想要求解這個函數(shù)的最小解是非常復(fù)雜的,往往我們會陷入到局部最優(yōu)的情況中,那這個時候就會涉及到隨機梯度的概念。

我在這個空間中隨機找無數(shù)個初始點,每一個初始點都用梯度的思路逐步下探,找到這個初始點的下的局部最優(yōu)解(最小值),如果我們有足夠多的隨機值,那么肯定是可以不斷逼近整個空間中的最小值的。

如下圖所示,不同的初始點按照梯度的想法會得到不同的局部最優(yōu)解:

3. 隨機梯度算法更為通俗的理解

還是不懂?再舉一個更加直觀的例子,假如你是一只小白兔,從外太空落到地球上來,(地球就是一個凹凸不平的數(shù)據(jù)空間),對這個星球一無所知,請問如何找到這個星球上的最高點?

那使用梯度的想法就是:小白兔隨機在地球上找一個點,然后邁出一小步(梯度算法中的步長),這一步的方向一定是最陡峭的方向(高度提升最快的方向),然后再重復(fù)以上的步驟,那么你就可以找到這個點上對應(yīng)的局部最高點(比如小白兔剛開始選擇了黃山市,那么它的局部最高點可能就是黃山蓮花峰)。

不斷重復(fù)上述步驟,在地球上再隨機找N多個點,每一個點都找到它對應(yīng)的局部最高點,你有可能找到泰山、華山等等等等,然后小白兔再比較每一個局部最高點,只要隨機點足夠多,那它就有可能找到珠穆朗瑪峰,就算找不到珠穆朗瑪峰它也可能找到高度更接近于珠穆朗瑪峰的點(次優(yōu)點)。

這就是隨機的力量!

你要的穩(wěn)定,不是真的穩(wěn)定。

如何max(人生自我價值),這也可以看作是一個數(shù)據(jù)空間中的最優(yōu)解,實際上也是在人生這個復(fù)雜的數(shù)據(jù)空間內(nèi)尋找最高點的過程。

每個人可能會選擇從事科研、教師、商人等職業(yè),這都是一個復(fù)雜的數(shù)據(jù)空間,選擇好初始點之后你就要在這個初始點上不斷的去攀登,努力的做好科研、當好一個老師等等,你在這個職業(yè)上的每一點進步都是梯度提升的過程。

但是受限于每個人能力、天賦及外部環(huán)境的影響,梯度提升的局部最優(yōu)點是不一樣的,有可能到一定階段之后你就陷入了局部最優(yōu)的情況,這就是所謂的“穩(wěn)定”,當然也會有很多人喜歡這種穩(wěn)定,但是顯而易見的,就很難得到max(人生價值)的目標。

我們在選擇人生道路的時候,很多時候是基于我們既有的認知去選擇初始點,對未知的初始點拒絕選擇,這就相當于小白兔在視野范圍內(nèi)去找自己能夠達到的最高點。

而為了能夠?qū)崿F(xiàn)max(人生自我價值)的目標,就需要打破這種人生的穩(wěn)定(局部最優(yōu)),盡量的多去折騰(隨機選擇初始點),這樣的話才更有可能在財富、地位等方面比之前更高(找到比上一次更優(yōu)的局部最優(yōu)點)。

其實對于一個企業(yè)來說也是這樣,一個傳統(tǒng)企業(yè)和一個創(chuàng)新型企業(yè)最大的區(qū)別在于敢不敢折騰,傳統(tǒng)企業(yè)來說可能會把一個業(yè)務(wù)做到極致了,達到這個范圍內(nèi)的局部最優(yōu)點了,但是如果一直安安穩(wěn)穩(wěn)守本分,這個局部最優(yōu)點遲早會被其他敢于折騰的公司超越掉,過去二十年見證了多少這樣的例子。

當然,如果小白兔運氣比較好,初始點就在珠穆朗瑪峰山腳下或者山腰上(好的家庭背景或者非常成功的創(chuàng)業(yè)方向),它就不需要這么折騰去找下一個最高點了。

所以,那些所謂穩(wěn)定的人生,無外乎是某一個初始點的局部最優(yōu)狀態(tài),而我們對其他初始點的未知,直接限制了我們可能達到更優(yōu)點的可能,當然也有可能是個更差的點,但是對于未知的恐懼不應(yīng)該成為我們打破穩(wěn)定狀態(tài)的借口,未知才有可能。

在波詭云譎中刻意去維持不變,就好比削足適履、因噎廢食,一潭死水又怎能抵住突如其來的陣陣漣漪呢?

二、邏輯回歸算法的“人話”解釋

“邏輯回歸算法”與“成年人的世界沒有對錯,只有利弊”

邏輯回歸算法是目前在二分類領(lǐng)域用的最廣泛的算法,大概的展示如下圖,而其中的Z是一個簡單的多元多項式:Z=a*x1+b*x2+c*x3+…+常數(shù)項,x1、x2等就是一個描述性,自變量,如年齡、性別等,而y最終的結(jié)果是一個在(0,1)之間的常數(shù)。

因為邏輯回歸算法的穩(wěn)定性、易解釋性,目前已經(jīng)成為銀行信貸風控領(lǐng)域常用的算法,而多項式Z是一個關(guān)于年齡、性別、學歷、資產(chǎn)等多方面維度的表達式,通過這個算法我們可以計算出一個用戶在某一項信貸業(yè)務(wù)中的違約概率。

一般來說邏輯回歸算法最終得到的結(jié)果是無限趨近于0或者無限趨近于1,在信貸領(lǐng)域就代表該用戶違約概率基本為0,或者該用戶最終基本可以確定壞賬了,但是這也是一個可能性。

概率這種問題在信貸到期日真正到達之前,違約的可能性就類似于薛定諤的貓,不到最后一刻我們永遠不知道該用戶最終是否會賴賬不還。

另外我們發(fā)現(xiàn)當Z無限大的時候,y趨近于1;當Z無限小的時候y趨近于0,這就代表如果Z的多項式中如果某個變量足夠大的時候,會讓y無限趨近于0或者1的,比如該用戶名下房產(chǎn)1000萬且沒有任何負債,那我們基本可以斷定該用戶信用卡不會成為壞賬的。

但是0.5不一定能夠作為我們做出選擇的標準,這得看我們對另一個選擇的風險接受程度。假設(shè)在信貸行業(yè)y=0.4的時候用戶有20%的概率會逾期,但是這遠遠高于我們的風險接受程度,所以我們可能只會接受y<0.3時候的選擇。

成年人的世界里沒有對錯,只有利弊與原則。

在小時候,我們回答某個問題最終都會以正確與否來判斷,但是隨著我們逐漸邁入社會,我們發(fā)現(xiàn)自己面對的問題已經(jīng)不是一個簡單的對錯可以解決的了,因為我們遇到的問題大多數(shù)情況下都會是一個復(fù)雜的系統(tǒng)性問題,影響對這個問題的判斷因素有很多,有正向因素、逆向因素,單純的對錯已經(jīng)不能夠描述我們成年人世界里的問題了。

舉個最簡單的例子,我們在微博上看到的任何社會熱點的帖子,都會有正反面雙方的意見,而影響這些意見的因素是多方面的。

正如上面的公式一樣,影響一個人是否會還款的因素是多方面的,有的因素是正向的,有的因素是逆向的,我們沒辦法準確的判斷一個人是否會還款,我們只能計算出該用戶有多大概率是會還款的。

同樣,在我們遇到的問題中因為影響因素的復(fù)雜性,所以最終這個問題往左走還是往右走是不確定的,不到最后一刻誰也不能預(yù)判事情的走向,而每個人根據(jù)自己過去的認知水平、立場等會做出不同的意見也是司空見慣的。

當然,同信貸行業(yè)中客戶凈資產(chǎn)很高逾期概率很低一樣,在我們遇到的諸多復(fù)雜的系統(tǒng)性問題的時候如果某一項因素影響非常大,往往會產(chǎn)生一邊倒(y趨近于1)的結(jié)論:

比如在幼兒園門口砍殺數(shù)名幼童的惡意犯罪行為,這個行為變量x1前的系數(shù)足夠大,就足以影響讓y基本可以趨近于1(執(zhí)行重罰的決定),哪怕這個罪犯有很多其他因素,比如x2(心理受過傷害)、x3(被欺負過)等其他原本讓人同情的因素,也改變不了y的大小。

但是同樣如信貸行業(yè),因為我們的風險接受水平不同,所以有的時候y較大的時候,我們最終仍然會選擇相反的結(jié)論。

比如韓國有一部電影《熔爐》揭露校園性侵犯的電影,在國內(nèi)處于禁止放映狀態(tài),雖然這部電影很好的反映了社會陰暗的一面,大部分的人都是對該片持支持態(tài)度的,但是最終還是選擇了禁止放映。

這是因為我們沒有辦法接受如果選擇放映了之后可能會激發(fā)校園中潛在犯罪分子的犯罪熱情,這樣的傷害是這個社會不能接受的。所以即使大多數(shù)人選擇支持這部電影,但是我們?nèi)匀唤惯@部電影的原因,因為選擇放映之后的風險水平超過了我們的接受水平。

以上這點在道德和法律的平衡上也有一定體現(xiàn),這一定程度上也支撐了道德和社會輿論不能凌駕于法律之上的共識,最經(jīng)典的例子就是:一個小伙因為母親生病沒錢無奈去搶劫,是對還是錯?

原來那句雞湯的原話是:成年人的世界沒有對錯,只有利弊。但是除了利弊之外,其實我們還有很多原則要去堅守的,永遠不能違背自己內(nèi)心,這就是算法中的風險接受水平,也是我們自己的最后底線。

于是在我們踩過足夠多坑之后,我們學會在做選擇之前會盡可能將所有因素考慮進去(即Z中盡可能包含足夠多的影響因素),并堅守自己的原則底線(風險接受水平)。

“成年人的世界里沒有對錯”,這句話看起來殘酷,其實更多的是代表我們這個世界的系統(tǒng)復(fù)雜性以及理性思考的結(jié)果。

“知善知惡是良知,為善去惡是格物”,趨利避害是人的本性,而成人的世界是取舍、因果。我一直在堅持的一句話就是“永遠不要讓明天的自己成為今天的討厭的那種人”。

三、隨機森林算法的“人話”解釋

“隨機森林算法”與“兼聽則明,偏信則暗”

所謂隨機森林,需要理解2個詞,一個叫“森林”,一個叫“隨機”。

1. 森林

所謂森林,就是有很多棵樹組成,這里的樹就是我們常見的“決策樹”,所以,可以先最簡單的了解決策樹。

比如希望根據(jù)一個人的性別、年齡、身高和收入來判斷,是否要考慮跟他相親,用決策樹可以這樣去設(shè)計算法:

上圖是一個非常簡單的二分類的決策樹,當然在現(xiàn)實運用中數(shù)據(jù)更多維、更復(fù)雜、場景也更多樣,所以對于特征選擇的順序、特征分裂點都有非常復(fù)雜的處理機制。

當關(guān)于一個問題,有很多很多的決策樹對這個問題進行表達,這就形成了一個森林。

2. 隨機

當影響因素足夠多的時候,因素之間存在的相互影響又會很錯綜復(fù)雜,那么一棵決策樹的構(gòu)建過程中受到種種要素影響就很難做出科學決策,那么這個時候就要引入隨機森林的生成方法::

  • 從樣本集中通過重采樣的方式產(chǎn)生n個樣本
  • 假設(shè)樣本影響因素有a個,對n個樣本選擇a中的k個特征,用建立決策樹的方式獲得最佳分割點
  • 重復(fù)m次,產(chǎn)生m棵決策樹
  • 多數(shù)投票機制來進行預(yù)測

需要注意的一點是,這里m是指循環(huán)的次數(shù),n是指樣本的數(shù)目,n個樣本構(gòu)成訓(xùn)練的樣本集,而m次循環(huán)中又會產(chǎn)生m個這樣的樣本集。

所以隨機森林也可以稱做“民主集中制在決策樹上的體現(xiàn)”?,F(xiàn)實中當一大群人對某一件事情做集體決策時,每個人本身就是一棵決策樹,每個人基于自身利益、對于該事件的不完全信息,于是會產(chǎn)生不同的決策,當有很多人參與投票,人與人之間是隨機的不相關(guān)的,那這個結(jié)果就是隨機森林的過程。

兼聽則明,偏信則暗。

在現(xiàn)實生活中,我們會遇到可能需要咨詢身邊朋友建議的復(fù)雜問題,比如這套房該不該買、他的求愛該不該接受,但是還有一句話叫“如人飲水冷暖自知”,你向你的朋友咨詢的問題往往會得到相悖的結(jié)論,因為每個人給你的決策都是基于他的認知、他的利益考量、他的價值觀等。

以上文相親決策樹為例,一個好的朋友的建議(一個好的決策樹)的前提是這個朋友一定要比你還要了解你的情況、對方的情況以及站在你的利益最大化的角度去抉擇,當然這種情況基本不太可能。

如果你只問一個女性朋友并且只采納一個女性朋友的建議:如果該朋友是一個“塑料姐妹花”,她嫉妒你找了一個非常優(yōu)秀的相親對象;亦或她有過一段失敗的相親經(jīng)歷;又或者她的角度問題(如她已經(jīng)30歲了,男方35歲,而你只有22歲)等因素,基于她片面的認知產(chǎn)生的這棵決策樹結(jié)論對你來說是不合適的,這也是決策樹不可避免的一個問題“欠擬合”。

那這個時候最有效的方法就是盡可能去問更多的人(更多的決策樹),每個人會基于自己的理解做出一個判斷,這些人要足夠多、足夠隨機、每個人了解到的信息可以互補,那么理論上最后你就可以得到一個最適合你的決策。

當然隨機森林的條件在現(xiàn)實中不可能完全滿足,DO/DON’T雖然是一個簡單的選擇但是背后是有非常復(fù)雜的邏輯的,所以為了踐行隨機森林算法的思想,考慮不同群體、不同立場、不同分層的意見,在此基礎(chǔ)上做的決策哪怕做不到最優(yōu)那么也是能夠盡可能達到次優(yōu)的。老祖宗們“兼聽則明,偏信則暗”的觀點也是帶著“隨機森林”的思想的。

?四、結(jié)束語

數(shù)學是一門邏輯性很嚴謹?shù)膶W科,于是乎算法就顯得冷冰冰,但是算法的背后更是對問題的系統(tǒng)性思考,這一點跟人生很多道理很類似。

于是,算法和雞湯,產(chǎn)生了某種聯(lián)系,冷冰冰的算法背后透著很多溫暖的雞湯,再進一步來看,這些機器學習算法的本質(zhì)是對復(fù)雜的系統(tǒng)性問題的理解,背后透著的更多是對人性的考量,總有一天這些算法也會變得很有溫度。

如需了解更多內(nèi)容,請關(guān)注我們,歡迎大家共同交流~

 

作者:獨孤qiu敗,微信公眾號:互聯(lián)網(wǎng)風控那些事兒(anti_fraud_share),互聯(lián)網(wǎng)行業(yè)風控產(chǎn)品經(jīng)理,定期分享互聯(lián)網(wǎng)風控相關(guān)業(yè)界動態(tài)、系統(tǒng)設(shè)計方案、模型算法

本文由 @獨孤qiu敗 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自 Pexels ,基于 CC0 協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 不明覺厲

    來自廣東 回復(fù)
  2. 感謝,之前看算法,隨機森林的理解就不是很清晰,樓主深入淺出,感謝解惑。 ??

    來自四川 回復(fù)
  3. 迷之感人~

    來自上海 回復(fù)