
在國富如荷這些年的教學(xué)過程中,很多同學(xué)問到了一個問題:
在現(xiàn)實的商業(yè)世界中如何應(yīng)用機器學(xué)習(xí)?
也就是說,雖然現(xiàn)在我們一直被各種算法文章和教程轟炸,但是關(guān)于企業(yè)中一個機器學(xué)習(xí)項目的“上下文”卻總是缺失的。
今天CDA數(shù)據(jù)分析師教研副總監(jiān)徐楊老師將給同學(xué)們介紹我們最近采集到的三個真實的企業(yè)機器學(xué)習(xí)項目,以讓同學(xué)們更好地理解機器學(xué)習(xí)和數(shù)據(jù)科學(xué)在實踐中是如何工作的。
這個項目來源于我們美國部門的反饋。這是一家娛樂行業(yè)的企業(yè),由于保密協(xié)議的原因老師無法給出企業(yè)的名稱。他們有一個專門的分析團隊,在購物網(wǎng)站(如eBay)上搜索帶有客戶品牌的被盜或假冒商品。
在eBay上數(shù)以百萬計的商品清單列表中,只有很小一部分是企業(yè)感興趣的。于是分析團隊上線了爬蟲算法,抓取包含相關(guān)關(guān)鍵字的網(wǎng)頁,并將網(wǎng)頁圖片存儲在特定的文件夾中。每天,該團隊都會登錄到相關(guān)的門戶網(wǎng)站,爬取并查看這些圖片,以確定它們是否侵犯了企業(yè)的版權(quán)。這是一個非常昂貴卻無聊的過程,昂貴在負(fù)責(zé)查看圖片的人工成本,無聊在于這個查看工作本身沒有太多技術(shù)含量卻非常消耗工時。但是這個問題可以通過一點機器學(xué)習(xí)得到很大改善。
尷尬的是,現(xiàn)在很多很多討論計算機視覺的文章都在關(guān)注一些"不務(wù)正業(yè)"的問題,例如 貓 vs 狗、汽車 vs 摩托車、手繪數(shù)字等等。但在這個項目中,我們必須在圖像中尋找侵犯版權(quán)的東西。
決定使用哪種機器學(xué)習(xí)算法來解決問題通常很復(fù)雜,這個項目也不例外。一方面,我們有大量被標(biāo)記為侵權(quán)或非侵權(quán)的數(shù)據(jù),在這種情況下,很容易能看出這是一個有監(jiān)督的分類問題。那么,我們考慮試一下神經(jīng)網(wǎng)絡(luò)算法?
另一方面,由于門戶網(wǎng)站的設(shè)計,檢索負(fù)面信息非常耗時(它不存儲圖像,只是一個鏈接),因此我們只有一個有限的數(shù)據(jù)集。此外,企業(yè)的徽標(biāo)經(jīng)常與其他企業(yè)的徽標(biāo)一起出現(xiàn)在圖像中(侵犯版權(quán)通常是很微妙的),并且足夠深的神經(jīng)網(wǎng)絡(luò)很有可能會識別出類似商標(biāo)的存在而不是單獨某個公司的標(biāo)志(就像神經(jīng)網(wǎng)絡(luò)通常會識別所有犬種而不僅僅是德國牧羊犬一樣)。在這種情況下,關(guān)鍵是訓(xùn)練一個更淺的卷積神經(jīng)網(wǎng)絡(luò)來進行目標(biāo)檢測而不是分類。這阻止了網(wǎng)絡(luò)學(xué)習(xí) logo-general 特征并迫使它學(xué)習(xí) logo-specific 特征。(這兩個單詞顯然用英文來表述會更加準(zhǔn)確,因此我們不給出翻譯)
CNN(卷積神經(jīng)網(wǎng)絡(luò))的算法本身是成熟的,那么這個項目的關(guān)鍵就在于生成訓(xùn)練集以供訓(xùn)練目標(biāo)檢測。它需要由來自原始訓(xùn)練集的大量不同角度和排列的圖像組成,具有各種傾斜和對齊方式,每個圖像都有一個包圍框圍繞著我們想要檢測的對象(徽標(biāo))。在花費了相當(dāng)大的精力完成訓(xùn)練集的工作后,這個項目的后續(xù)工作也順利完成。
這個項目來源于與我們合作的一家企業(yè),這是一家跨國零售連鎖企業(yè)(同樣是基于保密協(xié)議,這里不能給出企業(yè)名稱)。由于這家企業(yè)的分支店鋪遍布全球,包括一些不太安全的地區(qū)。因此需要構(gòu)建一個算法,根據(jù)入室盜竊的歷史實例生成入室盜竊的風(fēng)險評分。
由于業(yè)務(wù)的性質(zhì),企業(yè)認(rèn)為盜竊的風(fēng)險隨著周邊地區(qū)的犯罪而增加,而不是由于商店的任何特定特征(易碎的窗戶等)而增加。
該算法工具的目的不是直接防止盜竊,而是評估如何對整個商店組合分配固定預(yù)算,以減少盜竊損失。因此,算法輸出的必須是更新每個安全設(shè)施的好處,或者說是推薦更新哪些安全設(shè)施,有點像推薦引擎。
與我們上一個示例類似,找出解決問題的關(guān)鍵是最大的挑戰(zhàn)之一。分析團隊首先嘗試了生存分析,定制了 Cox Proportional Hazards 模型以接受多個事件。雖然它在洞察各種安全設(shè)施的防護性方面做得很好,但它對于地理因素的識別效果非常差,而地理區(qū)域因素正是客戶想要識別的一個重要因素。
最后,分析團隊決定為客戶想要識別的每個因素構(gòu)建單獨的分類器(使用XGBoost),為每個時期設(shè)置固定的訓(xùn)練集日期范圍,以解決較長時期的預(yù)測更有可能高估長期風(fēng)險的問題。接下來,將這些因素導(dǎo)入回歸模型來計算每個零售商店的預(yù)估損失,并使用該度量(結(jié)合地理度量)來生成具體的推薦。
Infinite Scroll,一般稱為無限滾動模式,對于有很多相似條目需要展示的頁面,可以用無限下拉的方式來避免用戶通過點擊下一頁來獲取更多內(nèi)容。比如今日頭條網(wǎng)站,打開后,可以一直向下滾動,當(dāng)滾動到頁面底部后,就會加載更多新聞條目。
之前,一個和我們美國部門有長期合作的網(wǎng)站轉(zhuǎn)向了無限滾動模式,但對拉到底后接下來要顯示哪篇文章發(fā)了愁。一開始,他們的分析團隊提出的方法與強化學(xué)習(xí)非常相似——從10篇最受歡迎的文章中選擇一篇或隨機選擇。
不幸的是,這個想法并沒有給他們帶來他們所希望的轉(zhuǎn)化率,而無限滾動條也大大降低了他們的廣告點擊量(盡管這對用戶來說是一種更好的體驗)。
后來,分析團隊使用詞嵌入和用戶嵌入,構(gòu)建了一個協(xié)同過濾推薦引擎,為用戶提供符合他們興趣的文章,而不僅僅是最流行的。
這個項目最大的挑戰(zhàn)不是選擇哪個算法的問題,而是海量數(shù)據(jù)的處理問題:必須確保系統(tǒng)非常快速地返回推薦——這是無限滾動體驗的本質(zhì)。
另一個挑戰(zhàn)是數(shù)據(jù)埋點和備份,因為用戶的每個行為都有非常多個特征可以提取,因此需要找到一種方法來存儲這些信息,且存儲成本不會呈指數(shù)級增長。
分析團隊決定按站點、類別和用戶信息拆分模型,以減少嵌入矩陣的大小。同時還部署了各種降維技術(shù)以使其更易于管理,并密切監(jiān)視系統(tǒng)以確定備份的理想截止日期。
總結(jié)
通過上述三個項目同學(xué)們可以發(fā)現(xiàn),很多時候,算法選擇和參數(shù)調(diào)參并不是企業(yè)中一個機器學(xué)習(xí)項目最重要的階段。而客戶需求、數(shù)據(jù)類型、計算速度、預(yù)測用法,甚至數(shù)據(jù)庫優(yōu)化都會影響到一個項目的成功。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10