您是否注意到推薦引擎并不是那么聰明? “爛番茄”的影評很好地傳達了評論家和其他觀眾的看法,但他們評出的高分電影也許并不一定合我的口味。反倒是有些低分的“爛片”,您反而可能會看得津津有味。人工智能可以解決這種矛盾嗎? 人工智能 (AI) 系統(tǒng)需要高質(zhì)量的輸入來讓它們“學習”。Pandora的音樂推薦引擎根據(jù)數(shù)千億條用戶反饋,人工標注了每首曲目的流派、節(jié)奏與和弦進行, 然后借助這些標注信息,通過70多種不同的算法向用戶進行推薦。這真是了不起的黑科技……嗎? 反正在點了不知多少次“跳過”后,我還是不知道該怎么評價它。我提出了一個更簡單的AI系統(tǒng)(圖1),來幫助大家確定接下來想看的電影。下面,就來介紹下我使用的設計流程。 圖1:通過幾個簡單的步驟構(gòu)建更好的AI推薦(圖源:貿(mào)澤電子) 從一個問題開始 首先,我要用一個問題來概括本文所要解決的問題: “更聰明、更準確的電影推薦引擎是什么樣的?” 接下來,我要概括出用戶希望得到的結(jié)果:“系統(tǒng)將準確預測用戶是否喜歡某一部電影。” 當然,兩者之間依然有很多空白地帶,但是用戶得到的結(jié)果必須要解決上面提出的問題。如果沒有解決,或者我可以想象到其他呈現(xiàn)給用戶的結(jié)果也可以解決前面的問題,那么我將會返回并簡化這個問題或用戶結(jié)果,直到它們互相匹配。 現(xiàn)在,我有了起點和終點,我從用戶希望得到的結(jié)果反向回推到開頭的問題,在這一過程中將兩者加以簡化,確保過程中的每一點都有助于回答開頭提出的問題。 我記下了我對當前解決方案不滿意的地方。“爛番茄”上的短評需要閱讀并加以分析, 這真是太燒腦了! 我希望系統(tǒng)能為我做出決定, 判斷出我會喜歡還是不喜歡這部電影; 或者,更好(更簡單)的方法是機器僅向我顯示它認為我會喜歡的電影。 為了讓機器采取機器的方法思考,我們必須使其非人化,將情緒從數(shù)據(jù)中剝離。電影評論家的意見主觀性太強,不適合讓機器采用。我們需要的只是“贊”或“踩”, 對應到“1”或“0”,因為沒有什么比二進制對象更簡單了。 在搭建系統(tǒng)的大體框架時,我喜歡概括。“我不信任電影評論家的意見,因為他們跟我想的不一樣。系統(tǒng)需要把我和其他與我想法一樣的人歸到一起。” 在這里似乎要回答的關(guān)鍵問題是“什么使一個人的意見值得信賴?” 許多系統(tǒng)嚴重依賴于“1”(人們喜歡的電影)而忽略“0”(人們不喜歡的電影),但是我相信這是一個錯誤。“0”可以幫助我們極大地提高機器的準確度。 例如:芝加哥的Jeremy喜歡《教父3》,而不喜歡《壯志凌云2:獨行俠》。我們對這兩部電影的感受是一樣的。接下來,Jeremy對《節(jié)奏組》評了分,這部片子我還沒看過。他贊了這部電影。借助這條信息,系統(tǒng)推薦我觀看《節(jié)奏組》(圖2)。如果看完電影后,我也“贊”了這部電影,Jeremy推薦的權(quán)重就會增加,他的意見也會變得更加值得信賴一些。 圖2:向系統(tǒng)中添加更多意見后,推薦的準確性將會提高。(圖源:貿(mào)澤電子) 就這么簡單。設計得宜的系統(tǒng)應該僅使用幾個數(shù)據(jù)點即可實現(xiàn)目標,并以此為基礎進行構(gòu)建。在我們的案例中,我們的機器可以通過收集越來越多的用戶對越來越多電影的“贊”和“踩”,來繼續(xù)提高準確性。 簡化 設計好機器的運行機制后,我接下來要問:“系統(tǒng)還可以簡化嗎?” 我發(fā)現(xiàn)我并不需要知道“來自芝加哥的Jeremy”是誰。我不需要看他的個人資料照片或推薦的其他電影。我甚至不需要看到他的名字(實際上匿名系統(tǒng)可能更可取)。我關(guān)心的只是機器會以越來越高的精度來推薦電影,這樣就可以擺脫系統(tǒng)中的所有社交負擔。我可以想象一個干凈的用戶界面,它只顯示機器認為我會喜歡的一部電影的海報。 我看到過系統(tǒng)因為設計人員未能一直簡化下去而失敗,所以我想提醒自己,只要仍能達到預期的目標,解決方案越簡單就越精巧。 擴展 我的電影推薦引擎現(xiàn)在可以通過每部電影僅收集一個數(shù)據(jù)點而進一步變得“更聰明”。10,000個用戶中,每個用戶只要評價50部電影,就可以實現(xiàn)可接受的準確度。當然,在數(shù)據(jù)自身足夠可靠,并且機器可以準確地預測我接下來應該看哪部電影之前,一切都還是猜測。但這才是重點。我們剛剛設計了一個非常簡單的系統(tǒng),當我們將模型擴展到更大的用戶群時,可以輕松地進行準確性測試。 機器之美就在于其中。當您設計簡單而有效的AI系統(tǒng)時……先提出問題, 加以簡化, 然后再進行擴展。 文章來源:貿(mào)澤電子 作者簡介:Stephen經(jīng)常受邀為《財富》100強企業(yè)提供總體產(chǎn)品戰(zhàn)略和架構(gòu)設計方面的建議,尤其是在涉及工作流管理、電子商務、人工智能和機器學習的領(lǐng)域,他對當前流程有著客觀的看法。他建議在戰(zhàn)略上進行小幅調(diào)整,以產(chǎn)生長期重大收益以及快速的投資回報。 作為首席技術(shù)官/首席系統(tǒng)架構(gòu)師,Stephen深刻了解搭建成功的“軟件即服務”平臺所需的一切。一般是通過基于云的可擴展架構(gòu),將多個舊系統(tǒng)組合在一起,讓復雜數(shù)據(jù)集能夠以安全、統(tǒng)一的視圖呈現(xiàn)給用戶。 |