CRISP-DM:人工智能產(chǎn)品規(guī)劃流程
業(yè)內(nèi)較為常見的人工智能規(guī)劃流程是CRISP-DM,這個(gè)流程確定了一個(gè)數(shù)據(jù)挖掘項(xiàng)目的生命周期。
移動(dòng)互聯(lián)網(wǎng)的產(chǎn)品設(shè)計(jì)流程,通常要經(jīng)歷需求調(diào)研、需求分析、功能設(shè)計(jì)、視覺設(shè)計(jì)、編碼測(cè)試幾個(gè)階段。圍繞的重心是智能手機(jī)設(shè)備,對(duì)于產(chǎn)品的功能流程設(shè)計(jì)是否合理,用戶交互是否順暢,界面設(shè)計(jì)是否美觀有著較高的要求。
如下圖所示:
移動(dòng)互聯(lián)網(wǎng)產(chǎn)品規(guī)劃流程
但是,在人工智能產(chǎn)品設(shè)計(jì)中,核心的重點(diǎn)不再是手機(jī)界面,而是對(duì)于業(yè)務(wù)的理解。
對(duì)數(shù)據(jù)的理解和對(duì)算法的理解,這就要求我們?cè)谶M(jìn)行產(chǎn)品規(guī)劃的時(shí)候,將設(shè)計(jì)的重點(diǎn)從手機(jī)界面轉(zhuǎn)變?yōu)橐試@業(yè)務(wù)目標(biāo)的數(shù)據(jù)為核心。
目前,業(yè)內(nèi)較為常見的設(shè)計(jì)流程是CRISP-DM(Cross-Industry Standard Process for Data Mining,跨行業(yè)數(shù)據(jù)挖掘標(biāo)準(zhǔn)流程)。
CRISP-DM跨行業(yè)數(shù)據(jù)挖掘標(biāo)準(zhǔn)流程
在1996年的時(shí)候,SPSS,戴姆勒-克萊斯勒和NCR公司發(fā)起共同成立了一個(gè)興趣小組,目的是為了建立數(shù)據(jù)挖掘方法和過程的標(biāo)準(zhǔn)。并在1999年正式提煉出了CRISP-DM流程。
這個(gè)流程確定了一個(gè)數(shù)據(jù)挖掘項(xiàng)目的生命周期,包括以下六個(gè)階段:
- 商業(yè)理解:了解進(jìn)行數(shù)據(jù)挖掘的業(yè)務(wù)原因和數(shù)據(jù)挖掘目標(biāo)。
- 數(shù)據(jù)理解:深入了解可用于挖掘的數(shù)據(jù)。
- 數(shù)據(jù)準(zhǔn)備:對(duì)待挖掘數(shù)據(jù)進(jìn)行合并,匯總,排序,樣本選取等操作。
- 建立模型:根據(jù)前期準(zhǔn)備的數(shù)據(jù)選取合適的模型。
- 模型評(píng)估:使用在商業(yè)理解階段設(shè)立的業(yè)務(wù)成功標(biāo)準(zhǔn)對(duì)模型進(jìn)行評(píng)估。
- 結(jié)果部署:使用挖掘后的結(jié)果提升業(yè)務(wù)的過程。
這套流程沒有特定工具的限制,不論是使用SPSS這類圖形化的數(shù)據(jù)挖掘工具,還是python這類可用于數(shù)據(jù)挖掘的編程語(yǔ)言都可以。
也沒有特定領(lǐng)域和行業(yè)的局限,是適用于所有行業(yè)的標(biāo)準(zhǔn)方法論,相對(duì)于其他的數(shù)據(jù)挖掘方法路,CRISP-DM具有靈活和適用范圍光的優(yōu)點(diǎn)。
需要特別注意的是:雖然這套數(shù)據(jù)挖掘流程的完整生命周期包含六個(gè)階段,每一個(gè)階段都依賴于上一個(gè)階段的產(chǎn)出物,但是這六個(gè)階段的順序卻并不是固定的。尤其是商業(yè)理解和數(shù)據(jù)理解,數(shù)據(jù)準(zhǔn)備和建模階段可能經(jīng)常出現(xiàn)反復(fù)循環(huán)的過程。
是否可以繼續(xù)進(jìn)行下一個(gè)階段取決于是否有達(dá)到最初的業(yè)務(wù)目標(biāo),如果業(yè)務(wù)目標(biāo)沒有達(dá)到,那么就要考慮是否是數(shù)據(jù)不夠充分或算法需要調(diào)整,一切都以業(yè)務(wù)目標(biāo)為導(dǎo)向。
那么,接下來,我們用一個(gè)電商案例來看一下:如何在實(shí)際工作中運(yùn)用這套流程?
商業(yè)理解
海微購(gòu)是一家從事跨境電商業(yè)務(wù)的創(chuàng)業(yè)公司,公司在前幾年抓住了海淘的趨勢(shì),用戶量和交易額都還不錯(cuò)。在新的財(cái)年,公司希望能在去年的基礎(chǔ)上將GMV提高10%,并以此為目標(biāo)制定新一年的工作計(jì)劃。
1.? 確定業(yè)務(wù)目標(biāo)
首先,需要先確定業(yè)務(wù)目標(biāo)。
根據(jù)電商零售額公式(零售額=流量轉(zhuǎn)化率客單價(jià)*復(fù)購(gòu)率),公司認(rèn)為:在獲客成本較高的市場(chǎng)環(huán)境,以及本公司經(jīng)營(yíng)的海淘產(chǎn)品復(fù)購(gòu)周期較長(zhǎng)的情況下,應(yīng)優(yōu)先提高轉(zhuǎn)化率和客單價(jià)兩項(xiàng)指標(biāo)。根據(jù)SMART目標(biāo)制定原則,確定下一次迭代的產(chǎn)品目標(biāo)為:猜你喜歡模塊中的商品點(diǎn)擊量需提高20%,交叉銷售額提高10%。
2. 確定數(shù)據(jù)挖掘目標(biāo)
第二步,需要將業(yè)務(wù)的問題轉(zhuǎn)化為一個(gè)數(shù)據(jù)挖掘的問題。
根據(jù)業(yè)務(wù)目標(biāo),我們可以將其轉(zhuǎn)化為以下幾個(gè)數(shù)據(jù)挖掘問題:
- 聚類問題:構(gòu)建大數(shù)據(jù)用戶畫像,形成用戶的商品偏好標(biāo)簽體系,用于商品精準(zhǔn)營(yíng)銷和消息推送。
- 預(yù)測(cè)問題:構(gòu)建用戶流失預(yù)警模型,預(yù)測(cè)用戶的流失可能性,對(duì)可能流失的用戶進(jìn)行挽回關(guān)懷,防止流失。
- 分類問題:結(jié)合用戶日常消費(fèi)額度和信貸記錄,向用戶推薦符合其購(gòu)買力或購(gòu)買習(xí)慣的商品,提高轉(zhuǎn)化率和客單價(jià)
- ……
在制定數(shù)據(jù)挖掘目標(biāo)時(shí),需要明確數(shù)據(jù)挖掘的問題是一個(gè)分類問題,聚類問題還是一個(gè)預(yù)測(cè)問題,以便于后續(xù)的建模階段選擇合適的算法。另外,還需要確定的是數(shù)據(jù)挖掘的范圍,是針對(duì)所有用戶大范圍調(diào)整,還是先針對(duì)小規(guī)模的部分用戶進(jìn)行A/B Test,待驗(yàn)證成功之后再全面推行。
如果前期有相關(guān)的經(jīng)驗(yàn)或數(shù)據(jù)積累,最好在這一階段定義清楚數(shù)據(jù)挖掘成功的標(biāo)準(zhǔn)是什么,例如:推薦的準(zhǔn)確率要提高40%,或用戶的流失概率降低20%等,通過可量化的指標(biāo)評(píng)估整個(gè)工作的效果。
3. 制定項(xiàng)目計(jì)劃
第三步,明確好目標(biāo)之后,就可以根據(jù)具體的,可量化的方案組織相關(guān)的干系人來評(píng)估工作量。根據(jù)工作量倒排項(xiàng)目計(jì)劃表,將目標(biāo)拆解到更小的時(shí)間顆粒度,并指定相關(guān)責(zé)任人進(jìn)行任務(wù)跟進(jìn),如下圖所示:
在這個(gè)階段需要明確各個(gè)環(huán)節(jié)的交付產(chǎn)物,并識(shí)別可能的項(xiàng)目風(fēng)險(xiǎn),提前制定風(fēng)險(xiǎn)應(yīng)對(duì)計(jì)劃。
例如:本公司缺乏某方面的數(shù)據(jù),需要從外部獲取,或者相關(guān)人員配置不足,需要招聘或借調(diào)人力資源的支持等等。在項(xiàng)目進(jìn)行的過程中持續(xù)監(jiān)控,以確保項(xiàng)目的正常進(jìn)行。
數(shù)據(jù)理解
明確了業(yè)務(wù)目標(biāo)之后,我們需要針對(duì)數(shù)據(jù)挖掘的問題收集相關(guān)的數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行初步的處理,目標(biāo)是熟悉數(shù)據(jù),探索數(shù)據(jù)與數(shù)據(jù)之間的內(nèi)在聯(lián)系,并識(shí)別數(shù)據(jù)的質(zhì)量是否有問題。
1. 收集數(shù)據(jù)
數(shù)據(jù)理解的第一步是收集數(shù)據(jù)。
根據(jù)來源的不同,數(shù)據(jù)可以分為內(nèi)部數(shù)據(jù)和外部數(shù)據(jù)兩類,根據(jù)數(shù)據(jù)的類型又可以拆分為:用戶數(shù)據(jù)和商品數(shù)據(jù)。
海微購(gòu)公司的產(chǎn)品經(jīng)理通過排查發(fā)現(xiàn):公司目前已經(jīng)通過埋點(diǎn)收集到了用戶在web端和APP端的行為數(shù)據(jù),且平臺(tái)售賣的商品有專門的人員負(fù)責(zé)打標(biāo)簽的工作,內(nèi)部數(shù)據(jù)較為完善。但是,還缺乏用戶對(duì)于平臺(tái)上未售賣商品的偏好數(shù)據(jù)以及用戶的人口屬性數(shù)據(jù)。
針對(duì)這一點(diǎn),海微購(gòu)公司的產(chǎn)品經(jīng)理決定組織一次用戶有獎(jiǎng)問卷調(diào)研活動(dòng)。通過問卷調(diào)研的方式,抽樣選取用戶進(jìn)行問卷填寫,成功的收集了用戶對(duì)于平臺(tái)未售賣商品的偏好數(shù)據(jù)以及人口屬性數(shù)據(jù)。
另一方面,通過網(wǎng)絡(luò)爬蟲數(shù)據(jù),爬取了競(jìng)爭(zhēng)對(duì)手平臺(tái)的所有商品銷售量,并根據(jù)銷售單價(jià)推算出了總的銷售額,完善了現(xiàn)有的數(shù)據(jù)體系。
2. 數(shù)據(jù)標(biāo)注
海微購(gòu)公司所擁有的數(shù)據(jù)并不只有數(shù)據(jù)庫(kù)中已經(jīng)結(jié)構(gòu)化了的數(shù)據(jù),他還擁有很多非結(jié)構(gòu)化的數(shù)據(jù),例如:商品的圖片數(shù)據(jù),客戶與客服的通話語(yǔ)音數(shù)據(jù)等等。
這些非結(jié)構(gòu)化的數(shù)據(jù)并不是直接用于建模,而是需要先進(jìn)行數(shù)據(jù)標(biāo)注,將其轉(zhuǎn)變?yōu)橛?jì)算機(jī)可以識(shí)別的數(shù)據(jù)格式。
例如:如果對(duì)商品的圖片進(jìn)行了結(jié)構(gòu)化標(biāo)注,建模階段就可以通過圖片識(shí)別技術(shù)對(duì)新上線的商品進(jìn)行自動(dòng)分類和打標(biāo)簽,甚至自動(dòng)生成商品的廣告海報(bào)圖片。如果對(duì)通話語(yǔ)音進(jìn)行了數(shù)據(jù)標(biāo)注,就可以為后續(xù)的人工智能客服提供語(yǔ)義數(shù)據(jù),降低公司成本,提高服務(wù)效率。
3. 描述數(shù)據(jù)
當(dāng)數(shù)據(jù)準(zhǔn)備充分之后,需要對(duì)數(shù)據(jù)進(jìn)行描述,以供后續(xù)階段使用。主要包括對(duì)數(shù)據(jù)量的描述,數(shù)據(jù)值類型的描述以及編碼方案的描述。
不同的算法對(duì)于數(shù)據(jù)量的大小有一定的要求,雖然越大的數(shù)據(jù)集可以生成更為準(zhǔn)確的算法模型,但是同時(shí)也會(huì)增加計(jì)算的時(shí)間。所以,標(biāo)注數(shù)據(jù)量的大小可以讓算法工程師在建模之前決定是使用全部的數(shù)據(jù)集,還是從一個(gè)大的數(shù)據(jù)集中分出若干個(gè)小的子集來進(jìn)行建模。
建模的數(shù)據(jù)可能有多個(gè)來源,且收集數(shù)據(jù)的人和負(fù)責(zé)建模的人可能不是同一人,所以在建模之前務(wù)必對(duì)數(shù)據(jù)的類型進(jìn)行描述。數(shù)據(jù)的類型有多重,例如:數(shù)值型、分類型、布爾型、時(shí)間等等。標(biāo)注清楚數(shù)據(jù)類型可以加快后續(xù)建模階段的效率,防止數(shù)據(jù)類型的錯(cuò)誤而導(dǎo)致出現(xiàn)問題。
在數(shù)據(jù)庫(kù)中,常常使用不同的數(shù)值來表示不同的數(shù)據(jù)特征,例如:海微購(gòu)公司的用戶來源可能來自地推、線上獲客、朋友推薦、自主下載等多個(gè)渠道等。
這些渠道類型在數(shù)據(jù)庫(kù)中可以用文字來進(jìn)行表示,也有可能用1234的數(shù)字來表示,在數(shù)據(jù)描述中需要特別注明這一類的數(shù)據(jù)及其對(duì)應(yīng)的含義,以便后續(xù)階段能正確的使用這些數(shù)據(jù)。
數(shù)據(jù)準(zhǔn)備
數(shù)據(jù)準(zhǔn)備是數(shù)據(jù)挖掘最重要的階段之一,通常這一階段所花費(fèi)的時(shí)間和工作量占整個(gè)項(xiàng)目的50%-70%。
如果產(chǎn)品經(jīng)理在前期對(duì)于業(yè)務(wù)理解非常準(zhǔn)確,數(shù)據(jù)理解也非常充分,那么將極大的減少數(shù)據(jù)準(zhǔn)備階段的工作量,提高工作的效率。
1. 選擇數(shù)據(jù)
在第一步選擇數(shù)據(jù)階段,需要做兩件事情:第一是在所有的數(shù)據(jù)中選擇哪些數(shù)據(jù)作為訓(xùn)練集,哪些數(shù)據(jù)作為測(cè)試集;第二是選擇參與建模的特征字段有哪些。
以海微購(gòu)公司為例:公司希望提高提高推薦的準(zhǔn)確度和銷售額,那么需要通過用戶畫像,選擇典型的主要客戶——例如:最近有過購(gòu)買記錄,并且在一定時(shí)間內(nèi)持續(xù)活躍的用戶。而不能選擇已經(jīng)流失的,或者是從來沒有購(gòu)買記錄的無效客戶。
對(duì)于參與建模的特征,需要選擇那些與業(yè)務(wù)目標(biāo)息息相關(guān)的數(shù)據(jù),以購(gòu)買商品轉(zhuǎn)化為例:從業(yè)務(wù)經(jīng)驗(yàn)來看與之相關(guān)的數(shù)據(jù)有用戶的月均消費(fèi)額度、用戶的商品偏好、商品的曝光率、好評(píng)率等等。
當(dāng)然,也有一些基于統(tǒng)計(jì)學(xué)的方法可以幫助我們選擇數(shù)據(jù),例如:相關(guān)系數(shù),卡方檢驗(yàn),T檢驗(yàn)等等,我們?cè)谔卣鞴こ痰恼鹿?jié)會(huì)詳細(xì)的講到這些方法是如何使用的。
2. 清理數(shù)據(jù)
數(shù)據(jù)準(zhǔn)備的第二步,是對(duì)數(shù)據(jù)進(jìn)行清理,在實(shí)際的工作中,收集的數(shù)據(jù)不一定是100%準(zhǔn)確無誤的,常見的數(shù)據(jù)問題有:缺失值,錯(cuò)誤值,離群值,編碼不一致和無效數(shù)據(jù)。
例如:用戶的年齡信息與是否購(gòu)買某些商品有非常強(qiáng)的關(guān)系,但是用戶的年齡信息對(duì)于用戶本身來講不是一個(gè)必填的信息。所以,商家不一定能獲取到而造成缺失值。另外一種可能就是用戶未填寫真實(shí)的年齡,導(dǎo)致年齡出現(xiàn)負(fù)數(shù)或大于200的數(shù)這類錯(cuò)誤值。
還有一些數(shù)據(jù),例如用戶的身高數(shù)據(jù),如果絕大多數(shù)用戶的身高在1.5米到1.9米之間,但是并不排除有一些用戶的身高可能低于1.5米或高于1.9米。這類數(shù)據(jù)并不是錯(cuò)誤數(shù)據(jù),而是離群值,這類離群值量級(jí)較少,不是主要客戶特征,但如果不加以排除直接參與到建模階段,就有可能對(duì)建模造成一定的負(fù)面影響,比如:影響正常的平均值或極差。
編碼不一致的問題也經(jīng)常出現(xiàn)在數(shù)據(jù)中,例如:很多數(shù)據(jù)在低于1萬的時(shí)候,顯示的是具體的數(shù)值,而高于1萬之后就不再顯示具體的數(shù)值,而是顯示成x.x萬這樣的格式,造成格式編碼不一致的情況,在建模之前需要將所有數(shù)據(jù)處理為統(tǒng)一的單位和格式。
數(shù)據(jù)的正確性會(huì)直接影響后續(xù)建模階段的模型效果,所以在數(shù)據(jù)準(zhǔn)備階段需要將這些問題數(shù)據(jù)進(jìn)行處理,最簡(jiǎn)單的方法就是直接刪除有問題的數(shù)據(jù)。但如果數(shù)據(jù)的量本來就比較少的話,也可以通過一些統(tǒng)計(jì)學(xué)的方法對(duì)數(shù)據(jù)進(jìn)行修復(fù)或插補(bǔ),例如:均值填補(bǔ)法處理缺失值,蓋帽法處理離群值等等。
3. 構(gòu)建新數(shù)據(jù)
在數(shù)據(jù)挖掘中,有一些數(shù)據(jù)可以通過其他的數(shù)據(jù)轉(zhuǎn)化而來,例如:如果獲取到了用戶的身份證信息,就可以根據(jù)身份證的生成規(guī)則知道用戶的籍貫地址,生日以及性別。知道了用戶的手機(jī)號(hào),就可以通過手機(jī)號(hào)的歸屬地查到用戶所在地;知道了用戶的常用收貨地址,結(jié)合房產(chǎn)數(shù)據(jù),可以推測(cè)出用戶大致的月收入。
除了對(duì)已有數(shù)據(jù)進(jìn)行轉(zhuǎn)化,還可以通過人工定義的方式將一些用戶的事實(shí)行為通過規(guī)則轉(zhuǎn)化為新的數(shù)據(jù),例如:將月均平臺(tái)消費(fèi)超過1萬的定義為高消費(fèi)客戶,將月活躍天數(shù)大于15天的定義為高活躍用戶等等。
4. 數(shù)據(jù)降維
建模速度與數(shù)據(jù)的量級(jí)成正相關(guān),數(shù)據(jù)量越大,建模的時(shí)間也就越長(zhǎng)。我們?cè)跀?shù)據(jù)準(zhǔn)備階段,可以通過數(shù)據(jù)降維的方式減少數(shù)據(jù)特征,減少數(shù)據(jù)中的特征數(shù)量的同時(shí),避免丟失太多信息并保持模型性能,以此達(dá)到簡(jiǎn)化計(jì)算量的目標(biāo)。
數(shù)據(jù)降維的另一個(gè)目的是對(duì)數(shù)據(jù)進(jìn)行可視化,我們生活在一個(gè)三維的世界中,但如果數(shù)據(jù)的維度大于三維,就無法進(jìn)行可視化了。而通過降維將數(shù)據(jù)降為三維或二維的數(shù)據(jù),并保持?jǐn)?shù)據(jù)之間的關(guān)系,就可以通過肉眼來觀察數(shù)據(jù)模型的效果了。
建立模型
到了這個(gè)階段,之前的工作終于可以有所回報(bào)了,我們可以運(yùn)用算法對(duì)前幾個(gè)階段準(zhǔn)備的數(shù)據(jù)進(jìn)行建模,看是否可以達(dá)到我們期望的結(jié)果。
建模的過程通常會(huì)執(zhí)行多次,使用多個(gè)不同的算法和參數(shù),因?yàn)樵趯?shí)際工作中,只是用一個(gè)算法且僅執(zhí)行一次運(yùn)算就能圓滿的解決業(yè)務(wù)需求。這樣的情況幾乎是不存在的,正常的情況是我們可能需要在數(shù)據(jù)準(zhǔn)備階段與建立模型階段之間反復(fù)多次,以確保業(yè)務(wù)目標(biāo)達(dá)到最佳的效果。
1. 選擇建模算法
第一步,我們需要根據(jù)業(yè)務(wù)目標(biāo)選擇適合的算法,在前文我們提到過算法分為有監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)兩種。根據(jù)業(yè)務(wù)目標(biāo)的不同,又可以分為:分類算法,聚類算法或預(yù)測(cè)算法。
算法的選擇并不一定是越復(fù)雜的算法效果就越好,最終的效果取決于訓(xùn)練的數(shù)據(jù)以及設(shè)置的算法參數(shù),所以我們可以在建模的時(shí)候,將適合的算法都嘗試一次,根據(jù)結(jié)果來進(jìn)行選擇。
2. 訓(xùn)練集評(píng)估
第二步,在選擇好使用哪種算法之后,我們需要選擇與訓(xùn)練集對(duì)應(yīng)的測(cè)試集數(shù)據(jù),并對(duì)算法的結(jié)果定義一個(gè)明確的評(píng)價(jià)標(biāo)準(zhǔn)。
對(duì)于有監(jiān)督算法,通常使用模型的正確率來進(jìn)行評(píng)估,而對(duì)于無監(jiān)督算法,我們通常是根據(jù)結(jié)果是否易于解釋,是否易于部署以及算法運(yùn)行的時(shí)間等標(biāo)準(zhǔn)來評(píng)估
3. 構(gòu)建模型
第三步,是真正建模的過程,在這個(gè)階段根據(jù)算法的不同,可能需要對(duì)算法的參數(shù)進(jìn)行調(diào)整,例如:KNN模型中調(diào)整K的值,或者深度神經(jīng)網(wǎng)絡(luò)算法調(diào)整隱藏層的數(shù)量等。
在每次調(diào)整算法參數(shù)并實(shí)際生成模型之后,我們需要根據(jù)在上一步定義的評(píng)價(jià)標(biāo)準(zhǔn),記錄模型的結(jié)果數(shù)據(jù)。這些結(jié)果數(shù)據(jù)將用來與其他的算法,以及同一個(gè)算法不同參數(shù)間的比較,確定最佳算法和參數(shù)。
這聽起來是一件非?,嵥榍液臅r(shí)的事情,事實(shí)也確實(shí)如此,但是感謝技術(shù)的發(fā)展,大多數(shù)調(diào)參的過程都可以通過計(jì)算機(jī)自動(dòng)完成,不需要人來值守。而且,通過集成算法的運(yùn)用,我們可以同時(shí)使用不同的算法來對(duì)數(shù)據(jù)進(jìn)行建模,我們?cè)诤竺孢€會(huì)詳細(xì)的講到。
模型評(píng)估
至此,我們的項(xiàng)目已經(jīng)完成了絕大多數(shù)的工作,在開始最后的部署階段之前,最重要的事情是徹底的評(píng)估模型,根據(jù)在商業(yè)理解階段定義的業(yè)務(wù)目標(biāo)來評(píng)估我們努力的成果。
1. 評(píng)估結(jié)果
最終的算法模型結(jié)果有可能達(dá)成了我們最初的業(yè)務(wù)目標(biāo),當(dāng)然也有可能沒達(dá)成。
達(dá)成了當(dāng)然是一件好事,但如果沒達(dá)成也不一定是一件壞事,就像愛迪生發(fā)明燈泡試驗(yàn)了一千種材料,失敗了一千次也并不認(rèn)為自己是失敗了。他說:“我只是證明了這一千種材料不適合做燈絲而已?!?/p>
數(shù)據(jù)挖掘沒有達(dá)成業(yè)務(wù)目標(biāo)的結(jié)果,也不一定意味著建模的失敗,有多種可能性導(dǎo)致不成功的結(jié)果。
例如:業(yè)務(wù)目標(biāo)一開始定得不夠合理,與業(yè)務(wù)目標(biāo)密切相關(guān)的數(shù)據(jù)未收集到,數(shù)據(jù)準(zhǔn)備出現(xiàn)了錯(cuò)誤,訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)不具備代表性等等。這時(shí)候我們就要回到之前的步驟,來檢視到底是哪個(gè)環(huán)節(jié)出現(xiàn)了問題。
2. 審核過程
就像每個(gè)項(xiàng)目結(jié)束之后都需要進(jìn)行復(fù)盤一樣,在一次數(shù)據(jù)挖掘項(xiàng)目迭代之后,也需要對(duì)過程的成功之處和不足之處進(jìn)行總結(jié)——回顧每個(gè)階段的任務(wù)與關(guān)鍵的決定,看看每個(gè)階段所做的事情對(duì)于最終的結(jié)果是否有所貢獻(xiàn)?有沒有什么方法是可以簡(jiǎn)化或者改善某一階段任務(wù)完成情況?有沒有什么不足之處,是可以在下一次迭代時(shí)進(jìn)行改進(jìn)的?有沒有什么導(dǎo)致失敗的問題是可以在下一次提前預(yù)測(cè)到并且避免的?
3. 確定后續(xù)步驟
無論成功或失敗,到現(xiàn)在都已經(jīng)生成了最終的結(jié)果,那么就應(yīng)該考慮一下:接下來該做些什么了?
一般會(huì)有兩個(gè)選擇:
- 如果成功了,那么就進(jìn)入最后的結(jié)果部署階段,將數(shù)據(jù)挖掘的結(jié)果并入到產(chǎn)品的業(yè)務(wù)目標(biāo)中。
- 如果沒有成功,那么可以返回前面的步驟重新設(shè)定業(yè)務(wù)目標(biāo)或重新收集數(shù)據(jù)進(jìn)行建模,有過一次失敗的經(jīng)歷之后,有極大的可能發(fā)現(xiàn)失敗的原因,并在下一次的建模中避免失敗。
當(dāng)然,我們還可以選擇其他方式來達(dá)成業(yè)務(wù)目標(biāo),畢竟一切的技術(shù)都是為了業(yè)務(wù)目標(biāo)服務(wù)的,人工智能也并不是萬能的,根據(jù)業(yè)務(wù)專家設(shè)置的規(guī)則或從產(chǎn)品運(yùn)營(yíng)角度也能提高業(yè)績(jī)。
結(jié)果部署
建模的作用是從數(shù)據(jù)中找到知識(shí),獲得的知識(shí)需要以便于用戶使用的方式重新組織和展現(xiàn),這就是結(jié)果部署階段的工作。根據(jù)業(yè)務(wù)目標(biāo)的不同,結(jié)果部署簡(jiǎn)單的可能只需要提交一份數(shù)據(jù)挖掘報(bào)告即可,也有可能復(fù)雜到需要將模型集成到企業(yè)的核心運(yùn)營(yíng)系統(tǒng)當(dāng)中。
1. 制定部署計(jì)劃
根據(jù)業(yè)務(wù)要求和運(yùn)算性能的的不同,部署的模型可分為:離線模型,近線模型和在線模型三種。
離線模型一般適用于重量級(jí)的算法,部署于大數(shù)據(jù)集群倉(cāng)庫(kù),運(yùn)算的時(shí)間需要以小時(shí)計(jì),并且時(shí)效上通常是T+1的。
近線模型適用于輕量級(jí)算法,一般在內(nèi)存和Redis(一種支持Key-Value等多種數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)系統(tǒng),適用于高速消息隊(duì)列)中進(jìn)行,運(yùn)算的速度以秒為單位。而在線模型則通常根據(jù)業(yè)務(wù)規(guī)則來設(shè)置,在內(nèi)存中運(yùn)行,運(yùn)行的速度以毫秒計(jì)。
另外,部署還需要考慮不同編程語(yǔ)言對(duì)于算法模型的調(diào)取兼容性,在這個(gè)階段算法工程師需要與原有業(yè)務(wù)的開發(fā)工程師進(jìn)行聯(lián)調(diào)協(xié)作,確保業(yè)務(wù)系統(tǒng)能夠正確的調(diào)用算法模型結(jié)果。
2. 模型監(jiān)督和維護(hù)
我們知道算法模型是基于歷史數(shù)據(jù)得來的,但是在模型部署并運(yùn)行一段時(shí)間之后,可能業(yè)務(wù)場(chǎng)景已經(jīng)發(fā)生了變化,原有的模型已經(jīng)無法滿足當(dāng)前的業(yè)務(wù)需要。這就需要我們?cè)谀P筒渴鹕暇€的同時(shí),同步上線模型的監(jiān)督和維護(hù)系統(tǒng),持續(xù)跟蹤模型的運(yùn)行狀況。
當(dāng)發(fā)現(xiàn)模型結(jié)果在出現(xiàn)短期異常值時(shí),排查異常的原因,例如:運(yùn)營(yíng)活動(dòng)或者節(jié)假日等因素,當(dāng)發(fā)現(xiàn)模型長(zhǎng)期表現(xiàn)不佳時(shí),則要考慮是否是用戶和產(chǎn)品的數(shù)據(jù)構(gòu)成已經(jīng)發(fā)生了變化。如果是因?yàn)閿?shù)據(jù)構(gòu)成已經(jīng)發(fā)生變化,則需要重新通過CRISP-DM流程構(gòu)建新的模型。
3. 生成最終報(bào)告
最后,不要忘了向項(xiàng)目的相關(guān)干系人發(fā)送一份最終的項(xiàng)目總結(jié)報(bào)告。
不論是在項(xiàng)目過程中一起并肩作戰(zhàn)的同事,還是對(duì)項(xiàng)目關(guān)心的領(lǐng)導(dǎo),都需要了解項(xiàng)目的最終成果。一個(gè)項(xiàng)目的成功,總離不開每個(gè)人的努力,常懷一顆感恩的心才能讓一個(gè)團(tuán)隊(duì)走得更遠(yuǎn)。
本文由 @黃瀚星 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
想跟著BAT大咖老師學(xué)習(xí)更多系統(tǒng)高階產(chǎn)品知識(shí)嗎?
在【產(chǎn)品總監(jiān)修煉之道】,四位來自騰訊、百度的資深總監(jiān)級(jí)導(dǎo)師,將和你面對(duì)面分享高階產(chǎn)品必備的系統(tǒng)知識(shí),幫你掌握更加全面的產(chǎn)品專業(yè)知識(shí)和團(tuán)隊(duì)管理思路……
想了解更多詳情?立即戳>>http://996.pm/z4bLB
也快可以聯(lián)系KK進(jìn)行咨詢哦~微信/TEL:13043462422
PS:除了咨詢問題,還能領(lǐng)取【產(chǎn)品總監(jiān)課程學(xué)習(xí)筆記】! ??
黃老師,您好,我是人民郵電出版社編輯,我想問您一下對(duì)應(yīng)人工智能產(chǎn)品的PM需要的內(nèi)容,目前您有合作出版相關(guān)內(nèi)容的想法嗎,希望有機(jī)會(huì)詳談18811565025
總結(jié)的很好,期待新文章