本申請(qǐng)涉及基于決策樹的分類模型,具體涉及一種用于更新分類模型的方法。本申請(qǐng)同時(shí)涉及一種用于更新分類模型的裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,出現(xiàn)了大量的網(wǎng)絡(luò)應(yīng)用,例如:網(wǎng)絡(luò)社交、網(wǎng)絡(luò)閱讀等,網(wǎng)絡(luò)應(yīng)用提供方為了向用戶推薦具有針對(duì)性的信息、或者進(jìn)行必要的監(jiān)控管理,通常需要根據(jù)用戶在網(wǎng)絡(luò)應(yīng)用中的操作行為,針對(duì)預(yù)先設(shè)定的目標(biāo)進(jìn)行分類預(yù)測(cè),例如:欺詐或風(fēng)險(xiǎn)識(shí)別,用戶分群,購(gòu)買力識(shí)別等。為了提高預(yù)測(cè)效率和準(zhǔn)確性,在大多數(shù)網(wǎng)絡(luò)應(yīng)用中通常采用分類模型(也稱作分類器)進(jìn)行分類預(yù)測(cè)。
其中,隨機(jī)森林分類器是應(yīng)用比較普遍的分類模型之一,該分類器由多棵決策樹組成,當(dāng)待分類樣本進(jìn)入隨機(jī)森林時(shí),由每一顆決策樹進(jìn)行分類,最后選取被所有決策樹選擇次數(shù)最多的類別作為最終的分類結(jié)果。在應(yīng)用中,通常采用離線的機(jī)器學(xué)習(xí)過程構(gòu)造該分類模型:通過對(duì)全量的用戶行為數(shù)據(jù)的學(xué)習(xí)、分析與訓(xùn)練,得出關(guān)于分類的知識(shí),從而完成對(duì)分類模型的構(gòu)建并部署上線。隨著時(shí)間的推移,在線上部署的分類模型通常會(huì)逐漸退化,其分類的準(zhǔn)確率可能無法滿足要求,針對(duì)這種情況,現(xiàn)有技術(shù)通常也是采用離線計(jì)算的方式,利用全量歷史數(shù)據(jù)重新訓(xùn)練分類模型,并將訓(xùn)練好的分類模型再次部署上線進(jìn)行分類預(yù)測(cè)。
上述更新分類模型的方式,由于每次都采用全量數(shù)據(jù)進(jìn)行分類模型的訓(xùn)練,隨著數(shù)據(jù)量的增大、處理時(shí)間會(huì)相應(yīng)延長(zhǎng),導(dǎo)致模型訓(xùn)練效率降低;而且在實(shí)際應(yīng)用中,上述更新分類模型的過程通常都是在分類模型退化后才啟動(dòng),也就是說分類模型不能實(shí)時(shí)或者及時(shí)地根據(jù)數(shù)據(jù)的變化做出相應(yīng)的調(diào)整,導(dǎo)致業(yè)務(wù)響應(yīng)慢,存在滯后性。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種用于更新分類模型的方法,以解決現(xiàn)有分類模型的更新方式訓(xùn)練效率低、以及更新不及時(shí)的問題。本申請(qǐng)實(shí)施例還提供一種用于更新分類模型的裝置。
本申請(qǐng)?zhí)峁┮环N用于更新分類模型的方法,所述分類模型包括預(yù)定數(shù)量的原始決策樹,用于根據(jù)網(wǎng)絡(luò)應(yīng)用中的用戶行為數(shù)據(jù)進(jìn)行類別預(yù)測(cè),包括:
從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集;
根據(jù)所述訓(xùn)練樣本集,生成新增數(shù)量的決策樹;
根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,組成更新后的分類模型。
可選的,所述從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集,包括:
從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),其中每條增量數(shù)據(jù)都包含一組原始變量及相應(yīng)值、以及類別標(biāo)簽;
對(duì)所述增量數(shù)據(jù)進(jìn)行預(yù)處理,使其符合分類模型對(duì)訓(xùn)練樣本數(shù)據(jù)的要求;
對(duì)每條增量數(shù)據(jù)執(zhí)行如下操作,生成所述訓(xùn)練樣本集:從增量數(shù)據(jù)中提取對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本。
可選的,所述對(duì)所述增量數(shù)據(jù)進(jìn)行預(yù)處理,包括以下所列中的一種或任意結(jié)合:
按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中極大值和/或極小值進(jìn)行處理;
按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中的缺失值進(jìn)行處理;
根據(jù)所述分類模型對(duì)樣本數(shù)據(jù)的格式要求,進(jìn)行相應(yīng)的格式轉(zhuǎn)換。
可選的,所述從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集,還包括:
從預(yù)處理后的增量數(shù)據(jù)中抽取特征變量,添加到特征變量集合中;
所述對(duì)應(yīng)于分類模型的特征變量是指,從所述特征變量集合中選取的、對(duì)應(yīng)于分類模型的特征變量。
可選的,所述根據(jù)所述訓(xùn)練樣本集,生成新增數(shù)量的決策樹包括:
根據(jù)所述訓(xùn)練樣本集,采用隨機(jī)森林算法生成新增數(shù)量的決策樹。
可選的,所述根據(jù)所述訓(xùn)練樣本集,采用隨機(jī)森林算法生成新增數(shù)量的決策樹,包括:
根據(jù)所述訓(xùn)練樣本集采用有放回抽樣的方式構(gòu)建bootstrap樣本集合;
使用所述bootstrap樣本集合,采用在每個(gè)節(jié)點(diǎn)按照預(yù)定策略選取特征變量、并根據(jù)所選特征變量進(jìn)行分裂的方式生成一棵新決策樹;所述按照預(yù)定策略選取特征變量是指,從隨機(jī)選擇的特征變量中按照預(yù)定策略選取最優(yōu)特征變量;
轉(zhuǎn)到所述根據(jù)所述訓(xùn)練樣本集采用有放回抽樣的方式構(gòu)建bootstrap樣本集合的步驟繼續(xù)執(zhí)行,直至生成所述新增數(shù)量的決策樹。
可選的,所述按照預(yù)定策略選取最優(yōu)特征變量包括:根據(jù)信息增益選取、根據(jù)信息增益率選取、或者根據(jù)基尼指標(biāo)選取所述最優(yōu)特征變量。
可選的,所述根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,包括:
根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率;
按照所述綜合分類準(zhǔn)確率對(duì)新增決策樹和原始決策樹進(jìn)行排序;
從排序后的決策樹中選擇序位處于高位的、所述預(yù)定數(shù)量的決策樹。
可選的,所述根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率,包括:
根據(jù)所述訓(xùn)練樣本集,計(jì)算新增決策樹的本次分類準(zhǔn)確率,作為其綜合分類準(zhǔn)確率;
根據(jù)所述訓(xùn)練樣本集,計(jì)算原始決策樹的本次分類準(zhǔn)確率;
根據(jù)所述歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述根據(jù)歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,計(jì)算原始決策樹的綜合分類準(zhǔn)確率采用如下方式實(shí)現(xiàn):
采用移動(dòng)平均法,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述移動(dòng)平均法包括:加權(quán)移動(dòng)平均法、或者指數(shù)移動(dòng)平均法。
可選的,在執(zhí)行所述生成新增數(shù)量的決策樹的步驟之前,執(zhí)行下述操作:
判斷是否已創(chuàng)建所述分類模型;
若否,將所述預(yù)定數(shù)量作為所述新增數(shù)量。
可選的,在所述從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,組成更新后的分類模型的步驟后,執(zhí)行下述操作:
刪除未被選取的決策樹。
相應(yīng)的,本申請(qǐng)還提供一種用于更新分類模型的裝置,包括:
訓(xùn)練樣本集提取單元,用于從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集;
決策樹生成單元,用于根據(jù)所述訓(xùn)練樣本集,生成新增數(shù)量的決策樹;
決策樹選擇單元,用于根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,組成更新后的分類模型。
可選的,所述訓(xùn)練樣本集提取單元包括:
增量數(shù)據(jù)獲取子單元,用于從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),其中每條增量數(shù)據(jù)都包含一組原始變量及相應(yīng)值、以及類別標(biāo)簽;
數(shù)據(jù)預(yù)處理子單元,用于對(duì)所述增量數(shù)據(jù)進(jìn)行預(yù)處理,使其符合分類模型對(duì)訓(xùn)練樣本數(shù)據(jù)的要求;
特征值提取子單元,用于對(duì)每條增量數(shù)據(jù)執(zhí)行如下操作,生成所述訓(xùn)練樣本集:從增量數(shù)據(jù)中提取對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本。
可選的,所述數(shù)據(jù)預(yù)處理子單元至少包括以下子單元之一:
極值處理子單元,用于按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中極大值和/或極小值進(jìn)行處理;
缺失值處理子單元,用于按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中的缺失值進(jìn)行處理;
格式轉(zhuǎn)換子單元,用于根據(jù)所述分類模型對(duì)樣本數(shù)據(jù)的格式要求,進(jìn)行相應(yīng)的格式轉(zhuǎn)換。
可選的,所述訓(xùn)練樣本集提取單元還包括:
特征變量抽取子單元,用于從預(yù)處理后的增量數(shù)據(jù)中抽取特征變量,添加到特征變量集合中;
所述特征值提取子單元具體用于,對(duì)每條增量數(shù)據(jù)執(zhí)行如下操作,生成所述訓(xùn)練樣本集:從增量數(shù)據(jù)中提取從所述特征變量集合中選取的、對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本。
可選的,所述決策樹生成單元具體用于,根據(jù)所述訓(xùn)練樣本集,采用隨機(jī)森林算法生成新增數(shù)量的決策樹。
可選的,所述決策樹生成單元包括:
循環(huán)控制子單元,用于當(dāng)生成決策樹的數(shù)量小于所述新增數(shù)量時(shí),調(diào)用下述各子單元?jiǎng)?chuàng)建決策樹;
bootstrap樣本集合構(gòu)建子單元,用于根據(jù)所述訓(xùn)練樣本集采用有放回抽樣的方式構(gòu)建bootstrap樣本集合;
決策樹生成執(zhí)行子單元,用于使用所述bootstrap樣本集合,采用在每個(gè)節(jié)點(diǎn)按照預(yù)定策略選取特征變量、并根據(jù)所選特征變量進(jìn)行分裂的方式生成一棵新決策樹;所述按照預(yù)定策略選取特征變量是指,從隨機(jī)選擇的特征變量中按照預(yù)定策略選取最優(yōu)特征變量。
可選的,所述決策樹生成執(zhí)行子單元所采用的預(yù)定策略包括:根據(jù)信息增益選取屬性、根據(jù)信息增益率選取屬性、或者根據(jù)基尼指標(biāo)選取屬性。
可選的,所述決策樹選擇單元包括:
綜合指標(biāo)計(jì)算子單元,用于根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率;
排序子單元,用于按照所述綜合分類準(zhǔn)確率對(duì)新增決策樹和原始決策樹進(jìn)行排序;
篩選子單元,用于從排序后的決策樹中選擇序位處于高位的、所述預(yù)定數(shù)量的決策樹。
可選的,所述綜合指標(biāo)計(jì)算子單元包括:
新增決策樹綜合指標(biāo)計(jì)算子單元,用于根據(jù)所述訓(xùn)練樣本集,計(jì)算新增決策樹的本次分類準(zhǔn)確率,作為其綜合分類準(zhǔn)確率;
原始決策樹本次指標(biāo)計(jì)算子單元,用于根據(jù)所述訓(xùn)練樣本集,計(jì)算原始決 策樹的本次分類準(zhǔn)確率;
原始決策樹綜合指標(biāo)計(jì)算子單元,用于根據(jù)所述歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述原始決策樹綜合指標(biāo)計(jì)算子單元具體用于,采用移動(dòng)平均法,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述原始決策樹綜合指標(biāo)計(jì)算子單元采用的移動(dòng)平均法包括:加權(quán)移動(dòng)平均法、或者指數(shù)移動(dòng)平均法。
可選的,所述裝置還包括:
分類模型創(chuàng)建判斷單元,用于在觸發(fā)所述決策樹生成單元工作之前,判斷是否已創(chuàng)建所述分類模型,若否,將所述預(yù)定數(shù)量作為所述新增數(shù)量。
可選的,所述裝置還包括:
決策樹刪除單元,用于在所述決策樹選擇單元組成更新后的分類模型后,刪除未被選取的決策樹。
與現(xiàn)有技術(shù)相比,本申請(qǐng)具有以下優(yōu)點(diǎn):
本申請(qǐng)?zhí)峁┑挠糜诟路诸惸P偷姆椒?,從最近一段時(shí)間內(nèi)的增量數(shù)據(jù)中提取訓(xùn)練樣本集,根據(jù)所述訓(xùn)練樣本集生成新增數(shù)量的決策樹,并根據(jù)歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇預(yù)定數(shù)量的決策樹,匯總得到更新后的分類模型。采用上述方法,由于不需要根據(jù)全量數(shù)據(jù)進(jìn)行訓(xùn)練,而是利用增量數(shù)據(jù)在原有分類模型的基礎(chǔ)上進(jìn)行增量更新,因此可以根據(jù)需要對(duì)分類模型進(jìn)行各種時(shí)間粒度的動(dòng)態(tài)更新,例如:按日更新或者近似實(shí)時(shí)更新,從而可以提高模型訓(xùn)練的效率、實(shí)現(xiàn)對(duì)業(yè)務(wù)的快速響應(yīng);進(jìn)一步地,由于在評(píng)價(jià)決策樹的分類效果時(shí)并沒有僅僅依據(jù)本次的分類準(zhǔn)確率,而是引入了歷史分類準(zhǔn)確率,因此可以從全局的角度對(duì)決策樹的綜合分類效果進(jìn)行評(píng)估,從而可以平滑數(shù)據(jù)的短期波動(dòng),保證更新后的分類模型能夠保持比較穩(wěn)定的分類預(yù)測(cè)效果。
附圖說明
圖1是本申請(qǐng)的一種用于更新分類模型的方法實(shí)施例的流程圖;
圖2是本申請(qǐng)實(shí)施例提供的提取訓(xùn)練樣本集的處理過程的流程圖;
圖3是本申請(qǐng)實(shí)施例提供的生成新增數(shù)量決策樹的處理過程的流程圖;
圖4是本申請(qǐng)實(shí)施例提供的根據(jù)歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率選擇預(yù)定數(shù)量決策樹的處理過程的流程圖;
圖5是本申請(qǐng)實(shí)施例提供的計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率的處理過程的流程圖;
圖6是本申請(qǐng)實(shí)施例提供的n=15的加權(quán)移動(dòng)平均的權(quán)重分布示意圖;
圖7是本申請(qǐng)實(shí)施例提供的n=20的指數(shù)移動(dòng)平均的權(quán)重分布示意圖;
圖8是本申請(qǐng)的一種用于更新分類模型的裝置實(shí)施例的示意圖。
具體實(shí)施方式
在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本申請(qǐng)。但是,本申請(qǐng)能夠以很多不同于在此描述的其它方式來實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本申請(qǐng)內(nèi)涵的情況下做類似推廣,因此,本申請(qǐng)不受下面公開的具體實(shí)施的限制。
在本申請(qǐng)中,分別提供了一種用于更新分類模型的方法,以及一種用于更新分類模型的裝置,在下面的實(shí)施例中逐一進(jìn)行詳細(xì)說明。
請(qǐng)參考圖1,其為本申請(qǐng)的一種用于更新分類模型的方法實(shí)施例的流程圖。所述方法包括如下步驟:
步驟101:從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集。
本申請(qǐng)?zhí)峁┑挠糜诟路诸惸P偷姆椒?,基于增量?shù)據(jù)進(jìn)行分類模型的更新,使得分類模型能夠及時(shí)地或者近似實(shí)時(shí)地根據(jù)樣本數(shù)據(jù)的變化做出相應(yīng)的調(diào)整,從而實(shí)現(xiàn)分類模型與最新樣本數(shù)據(jù)的同步。
在實(shí)際的業(yè)務(wù)應(yīng)用中,在獲取用戶行為數(shù)據(jù)后,可以先利用已在線上部署的分類模型,即由預(yù)定數(shù)量的原始決策樹組成的分類模型,通過打分的方式進(jìn)行類別預(yù)測(cè),將得分最高的類別(選擇該類別的決策樹數(shù)量最多)作為預(yù)測(cè)類別,并基于該預(yù)測(cè)類別開展預(yù)先設(shè)定的業(yè)務(wù)應(yīng)用,例如:按類別進(jìn)行推薦、按類別進(jìn)行風(fēng)險(xiǎn)控制等。通常經(jīng)過一段時(shí)間后,根據(jù)用戶后續(xù)的操作行為或者系 統(tǒng)的綜合分析,可以獲知所述用戶行為數(shù)據(jù)的實(shí)際類別,并為該用戶行為數(shù)據(jù)添加相應(yīng)的類別標(biāo)簽。經(jīng)過上述業(yè)務(wù)流程后,通常就可以生成一批具備類別標(biāo)簽的用戶行為數(shù)據(jù),在這種情況下,就可以實(shí)施本技術(shù)方案進(jìn)行分類模型的動(dòng)態(tài)更新。
本步驟首先從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù)。所述預(yù)定時(shí)間段是指位于當(dāng)前時(shí)間之前的一個(gè)時(shí)間段,其長(zhǎng)度可以根據(jù)具體的需求進(jìn)行設(shè)置,例如可以以天為單位、以小時(shí)為單位,甚至以分鐘為單位都是可以的,只要所述時(shí)間段內(nèi)的用戶行為數(shù)據(jù)已經(jīng)處于可獲取的狀態(tài)并且已經(jīng)包含了實(shí)際的類別標(biāo)簽信息。
獲取所述增量數(shù)據(jù)后,可以通過對(duì)所述增量數(shù)據(jù)的預(yù)處理、抽取特征變量、提取特征變量值等處理過程,最終得到所述訓(xùn)練樣本集。整個(gè)過程包括如下所述的步驟101-1至步驟101-4,下面結(jié)合附圖2作進(jìn)一步說明。
步驟101-1:從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),其中每條增量數(shù)據(jù)都包含一組原始變量及相應(yīng)值、以及類別標(biāo)簽。
本步驟獲取的增量數(shù)據(jù)通常包含多條用戶行為數(shù)據(jù),其中每條用戶行為數(shù)據(jù)都包含一組原始變量及相應(yīng)值、以及標(biāo)識(shí)真實(shí)類別的類別標(biāo)簽,每條增量數(shù)據(jù)類似如下所示的形式:(原始變量1,x1;原始變量2,x2;......原始變量n,xn:y),其中xi表示對(duì)應(yīng)于原始變量i的相應(yīng)值,所述原始變量也稱為屬性,對(duì)應(yīng)的取值也稱為屬性值,y是本條用戶行為數(shù)據(jù)的類別標(biāo)簽。
例如,在本實(shí)施例的一個(gè)具體例子中,在互聯(lián)網(wǎng)交易平臺(tái)的風(fēng)險(xiǎn)控制業(yè)務(wù)領(lǐng)域,采用分類模型對(duì)用戶交易行為是否存在風(fēng)險(xiǎn)進(jìn)行分類預(yù)測(cè),在本步驟中獲取的增量數(shù)據(jù)中的原始變量可以包括:用戶賬戶、年齡等個(gè)人屬性信息、交易商品的類別、名稱、價(jià)位等商品屬性信息、以及交易金額等信息。類別標(biāo)簽則包括黑/白樣本兩種類別(分別對(duì)應(yīng)有風(fēng)險(xiǎn)和無風(fēng)險(xiǎn))。
步驟101-2:對(duì)所述增量數(shù)據(jù)進(jìn)行預(yù)處理,使其符合分類模型對(duì)訓(xùn)練樣本數(shù)據(jù)的要求。
本步驟對(duì)已獲取的增量數(shù)據(jù)進(jìn)行預(yù)處理,以便于在后續(xù)的步驟中使用基于所述增量數(shù)據(jù)的訓(xùn)練樣本集生成決策樹。所述預(yù)處理可以包括極大/極小值處理、缺失值處理以及格式轉(zhuǎn)換,下面分別進(jìn)行說明。
所述極大值或極小值通常是指,超出常規(guī)的合理取值范圍的上限或者下限 的數(shù)值,例如室內(nèi)溫度為100攝氏度,該數(shù)值就是超出合理取值范圍的極大值,這類數(shù)值可能是系統(tǒng)產(chǎn)生的、也可能是由于人為誤操作產(chǎn)生的。在具體實(shí)施中,可以采用預(yù)先設(shè)定的方式處理此類數(shù)據(jù),例如:如果僅是個(gè)別用戶行為數(shù)據(jù)中包含此類數(shù)據(jù),可以直接從增量數(shù)據(jù)中刪除相應(yīng)用戶行為數(shù)據(jù);如果此類數(shù)據(jù)在增量數(shù)據(jù)中出現(xiàn)較為頻繁,則可以采用計(jì)算平均值、并用平均值取代原有極大值和/或極小值的處理方式。
所述缺失值通常是指,某個(gè)原始變量沒有對(duì)應(yīng)的數(shù)值,這種情況可能是因?yàn)橄到y(tǒng)沒有采集到所述數(shù)據(jù),例如用戶未填寫網(wǎng)頁表單中的某項(xiàng)信息,并且相應(yīng)的數(shù)據(jù)采集程序也沒有為其寫入缺省值。這種情況下,與上述對(duì)極大值/極小值的處理方式類似,可以刪除原始變量值不完善的用戶行為數(shù)據(jù),也可以用其他用戶行為數(shù)據(jù)包含的該原始變量值的均值,替換所述缺失的數(shù)值。
所述格式轉(zhuǎn)換,通常是因?yàn)橛?jì)量單位的多樣性或者數(shù)據(jù)表示方式的多樣性,需要將采集到的增量數(shù)據(jù)中的某些原始變量值轉(zhuǎn)換成滿足分類模型要求的數(shù)值。例如:分類模型要求提供以攝氏溫度為計(jì)量單位的某原始變量值,而增量數(shù)據(jù)中的相應(yīng)原始變量值是以華氏溫度為單位的,這種情況下,就需要對(duì)增量數(shù)據(jù)中的相應(yīng)數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換。
采用上述方式對(duì)增量數(shù)據(jù)進(jìn)行預(yù)處理,是為了保證增量數(shù)據(jù)的完整性、有效性、以及數(shù)值的正確性等,從而從所述增量數(shù)據(jù)提取的訓(xùn)練樣本集能夠符合更新分類模型對(duì)訓(xùn)練樣本數(shù)據(jù)的要求,從而保證更新后的分類模型能夠取得良好的預(yù)測(cè)效果。
步驟101-3:從預(yù)處理后的增量數(shù)據(jù)中抽取特征變量,添加到特征變量集合中。
通常每條用戶行為數(shù)據(jù)中都包含大量的原始變量,一方面由于并非每一個(gè)原始變量對(duì)于類別預(yù)測(cè)來說都是有意義的,另一方面用戶行為數(shù)據(jù)包含的原始變量也可能是變化的,例如逐漸增加完善的,為了便于管理,本步驟可以從增量數(shù)據(jù)中抽取有助于表征用戶行為特征的原始變量,即特征變量(也稱為特征屬性),并將所選的特征變量添加到特征變量集合(也稱特征變量池)中。
步驟101-4:從每條增量數(shù)據(jù)中提取從所述特征變量集合中選取的、對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本,從而得到訓(xùn)練樣本集。
由于不同的分類模型其分類功能不同,采用的特征變量也可能不同,因此本步驟從特征變量集合中選取對(duì)應(yīng)于所述待更新分類模型的特征變量。然后根據(jù)所述特征變量,從每條增量數(shù)據(jù)中提取對(duì)應(yīng)的特征變量值,并將這些特征變量值與本條增量數(shù)據(jù)的類別標(biāo)簽一并組成訓(xùn)練樣本,類似如下所示的形式:(x1,x2,......xn:y),其中xi表示該樣本的特征變量值,y則表示該樣本的類別標(biāo)簽。采用上述方式依次處理每條增量數(shù)據(jù),從而得到訓(xùn)練樣本集。
至此,通過步驟101-1至步驟101-4,從增量用戶行為數(shù)據(jù)中提取了訓(xùn)練樣本集。需要說明的是,在分類模型上線應(yīng)用的初期,例如:最初的三個(gè)月或者半年,通常處于特征變量逐漸完善的階段,隨著對(duì)業(yè)務(wù)認(rèn)知的深入,通過執(zhí)行步驟101-3將有助于類別預(yù)測(cè)的原始變量逐步添加到特征變量集合中。隨著用戶行為數(shù)據(jù)包含的原始變量的日趨穩(wěn)定,以及分類模型日漸完善,特征變量集合中的特征變量也會(huì)處于相對(duì)穩(wěn)定的階段,在這種情況下,也可以不執(zhí)行步驟101-3,而是直接從已經(jīng)穩(wěn)定的特征變量集合中選取對(duì)應(yīng)于分類模型的特征變量,并進(jìn)一步生成訓(xùn)練樣本集。
步驟102:根據(jù)所述訓(xùn)練樣本集,生成新增數(shù)量的決策樹。
本步驟生成新增數(shù)量的決策樹,所述新增數(shù)量通常小于分類模型所包含的原始決策樹的預(yù)定數(shù)量,其具體取值,可以考慮分類模型具體的應(yīng)用場(chǎng)景、訓(xùn)練樣本集的規(guī)模、或者所述分類模型包含的原始決策樹的數(shù)量等因素,設(shè)置一個(gè)經(jīng)驗(yàn)值。例如:在進(jìn)行風(fēng)險(xiǎn)控制的互聯(lián)網(wǎng)應(yīng)用中,所述新增數(shù)量的取值范圍可以設(shè)置在所述預(yù)定數(shù)量的1/40至1/10的范圍內(nèi),如果分類模型包含200—400棵決策樹,可以設(shè)定新增決策樹的數(shù)量為10棵。上述僅僅是一個(gè)示例,在具體實(shí)施中可以綜合參考各種因素進(jìn)行設(shè)置。
此外,也可以使用所述訓(xùn)練樣本集對(duì)所述分類模型進(jìn)行驗(yàn)證,并根據(jù)驗(yàn)證結(jié)果確定新增決策樹的數(shù)量。具體說,可以用所述分類模型對(duì)訓(xùn)練樣本集中的每個(gè)樣本進(jìn)行分類,并用正確分類的次數(shù)與樣本總數(shù)的比值作為分類準(zhǔn)確率,并根據(jù)分類準(zhǔn)確率調(diào)整新增決策樹的數(shù)量,例如,分類準(zhǔn)確率超過預(yù)先設(shè)定的閾值時(shí),說明現(xiàn)有分類模型能夠比較準(zhǔn)確地對(duì)當(dāng)前訓(xùn)練樣本數(shù)據(jù)進(jìn)行分類,因此可以設(shè)置相對(duì)較小的新增數(shù)量;否則可以設(shè)置相對(duì)較大的新增數(shù)量。
確定了所述新增數(shù)量后,就可以生成所述新增數(shù)量的決策樹。作為一種可選的實(shí)施方式,可以從所述訓(xùn)練樣本集中隨機(jī)選取一定數(shù)量的樣本,然后針對(duì) 所選樣本采用常規(guī)的決策樹生成算法生成一棵決策樹,重復(fù)上述選取樣本和生成決策樹的步驟,直至生成所述新增數(shù)量的決策樹。
為了提高生成新增數(shù)量決策樹的效率、避免出現(xiàn)過擬合現(xiàn)象、以及提高抗噪聲能力,本實(shí)施例提供一種采用隨機(jī)森林算法生成新增數(shù)量決策樹的優(yōu)選實(shí)施方式,具體包括步驟102-1至步驟102-3,下面結(jié)合附圖3作進(jìn)一步說明。
步驟102-1:根據(jù)所述訓(xùn)練樣本集采用有放回抽樣的方式構(gòu)建bootstrap樣本集合;
bootstrap抽樣方法(也稱自舉或自助抽樣法),是一種有放回的均勻抽樣方法,本步驟從包含N個(gè)樣本的訓(xùn)練樣本集中采用有放回抽樣的方式抽取N個(gè)樣本,在抽取過程中,所述訓(xùn)練樣本集合中的部分樣本有可能沒有被抽到,而部分樣本可能被抽取多次,將最終抽取的N個(gè)樣本組成一個(gè)bootstrap樣本集合。
步驟102-2:使用所述bootstrap樣本集合,采用在每個(gè)節(jié)點(diǎn)按照預(yù)定策略選取特征變量、并根據(jù)所選特征變量進(jìn)行分裂的方式生成一棵新決策樹。
使用所述bootstrap樣本集合,采用逐節(jié)點(diǎn)分裂的方式生成一棵新的決策樹,其關(guān)鍵在于每個(gè)節(jié)點(diǎn)的分裂屬性(即特征變量)的選擇。具體說,對(duì)于包含M個(gè)特征變量的樣本,在決策樹的每個(gè)節(jié)點(diǎn)需要分裂時(shí),首先隨機(jī)從M個(gè)特征變量中選取出m個(gè)(通常滿足條件m<<M),然后從所選的m個(gè)特征變量中按照預(yù)定策略選取1個(gè)最優(yōu)的特征變量,并按照該特征變量進(jìn)行分裂。在每個(gè)節(jié)點(diǎn)都重復(fù)上述過程,直到某一個(gè)節(jié)點(diǎn)無法繼續(xù)分裂或者其包含的所有樣本都屬于同一個(gè)分類,此時(shí)分裂過程結(jié)束,一棵新決策樹創(chuàng)建完畢。
在具體實(shí)施中,隨機(jī)選擇特征變量的個(gè)數(shù)可以采用計(jì)算平方根并取整的方式得到,例如:每個(gè)樣本包含M=100個(gè)特征變量,那么每次可以隨機(jī)選擇m=sqrt(M)=10個(gè)特征變量,當(dāng)然也可以采用其他方式確定隨機(jī)選擇特征變量的個(gè)數(shù),只要滿足m<<M的條件即可。
至于從隨機(jī)選取的特征變量中選取最優(yōu)的特征變量,可以采用預(yù)先設(shè)定的策略,例如,根據(jù)信息增益、信息增益率、或者基尼指標(biāo)選取。采用上述三種方式選取最優(yōu)特征變量并進(jìn)行分裂生成決策樹的過程,屬于比較成熟的現(xiàn)有技術(shù),此處不再對(duì)詳細(xì)過程作進(jìn)一步描述。
通過上面的描述可以看出,隨機(jī)森林算法的隨機(jī)性體現(xiàn)在每棵樹的訓(xùn)練樣本是隨機(jī)的,樹中每個(gè)節(jié)點(diǎn)的分類屬性也是隨機(jī)選擇的,基于上述這兩個(gè)隨機(jī) 特性的保證,采用隨機(jī)森林算法生成的決策樹通常具有較好的抗噪聲能力,并且不會(huì)產(chǎn)生過擬合現(xiàn)象。
本步驟還可以記錄每棵新生成的決策樹的相關(guān)信息,包括:決策樹標(biāo)識(shí),例如決策樹id,和生成時(shí)間等。
步驟102-3:判斷新生成的決策樹的數(shù)量是否小于所述新增數(shù)量,若是,轉(zhuǎn)到步驟102-1執(zhí)行。
每新生成一棵決策樹,就可以累加新生成的決策樹的數(shù)量,并判斷該數(shù)量是否小于所述新增數(shù)量,若是,轉(zhuǎn)到步驟102-1執(zhí)行,繼續(xù)生成新的決策樹;若否,說明新生成的決策樹的數(shù)量已經(jīng)滿足要求,不用繼續(xù)生成。
步驟103:根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,組成更新后的分類模型。
在步驟102中生成了新增數(shù)量的決策樹,本步驟根據(jù)分類效果從新增決策樹和分類模型已有的原始決策樹中選擇所述預(yù)定數(shù)量的決策樹。如果僅僅根據(jù)本次分類準(zhǔn)確率(基于本次訓(xùn)練樣本集得到的分類準(zhǔn)確率)來進(jìn)行分類效果的評(píng)估,通??梢匀〉镁植?jī)?yōu)化的效果,但是對(duì)于隨機(jī)出現(xiàn)的較大幅度數(shù)據(jù)波動(dòng)的情況,由于這種數(shù)據(jù)波動(dòng)通常都是一過性的,不代表長(zhǎng)期的、全局的趨勢(shì),如果僅針對(duì)當(dāng)前的訓(xùn)練樣本集進(jìn)行分類效果評(píng)估、并篩選性能最佳的決策樹,從而得到的更新后分類模型通常是不準(zhǔn)確的,對(duì)于未來用戶行為數(shù)據(jù)的分類預(yù)測(cè)可能并不準(zhǔn)確。
為了避免出現(xiàn)上述情況,本技術(shù)方案引入了歷史分類準(zhǔn)確率,即在歷次更新分類模型過程中記錄的分類準(zhǔn)確率,通過將歷史分類準(zhǔn)確率與本次分類準(zhǔn)確率的有機(jī)結(jié)合,從而能夠從全局的角度、比較客觀地反映出決策樹的分類效果。
在具體實(shí)施中,可以根據(jù)歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,采用不同的策略或者算法,完成本步驟的選擇任務(wù)。本實(shí)施例給出一種計(jì)算綜合分類準(zhǔn)確率,并依據(jù)該指標(biāo)進(jìn)行篩選的實(shí)施方式,具體說,包括步驟103-1至步驟103-3,下面結(jié)合附圖4作進(jìn)一步說明。
步驟103-1:根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率;
根據(jù)歷史分類準(zhǔn)確率與本次分類準(zhǔn)確率計(jì)算綜合分類準(zhǔn)確率,可以采用不 同的計(jì)算方法,例如,可以利用自定義函數(shù)或者公式進(jìn)行求解,綜合考慮實(shí)施效果以及算法的成熟程度,本實(shí)施例采用移動(dòng)平均法計(jì)算綜合分類準(zhǔn)確率。
采用移動(dòng)平均法計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率,包括步驟103-1-1至步驟103-1-3,下面結(jié)合附圖5進(jìn)一步說明。
步驟103-1-1:根據(jù)所述訓(xùn)練樣本集,計(jì)算新增決策樹的本次分類準(zhǔn)確率,作為其綜合分類準(zhǔn)確率。
本步驟針對(duì)已獲取的訓(xùn)練樣本集計(jì)算每一顆新增決策樹的本次分類準(zhǔn)確率。具體說,可以通過以下三種方式中的任意一種計(jì)算新增決策樹的本次分類準(zhǔn)確率:
1)用所述新增決策樹對(duì)訓(xùn)練樣本集中的每個(gè)樣本進(jìn)行分類,并用正確分類的次數(shù)與樣本總數(shù)的比值作為本次分類準(zhǔn)確率;
2)如果新增決策樹是采用隨機(jī)森林算法生成的,由于在生成過程中使用的是bootstrap樣本集合,因此可以使用包含在所述訓(xùn)練樣本集中、但是未包含在所述bootstrap樣本集合中的袋外樣本,采用與1)中類似的方法計(jì)算本次分類準(zhǔn)確率;
3)如果新增決策樹是采用隨機(jī)森林算法生成的,也可以直接使用bootstrap樣本集合中的樣本,采用與1)類似的方式計(jì)算本次分類準(zhǔn)確率。
對(duì)于新增決策樹來說,通常沒有關(guān)于該決策樹的歷史分類準(zhǔn)確率信息,因此可以將本次分類準(zhǔn)確率作為其綜合分類準(zhǔn)確率。但是如果分類模型曾經(jīng)創(chuàng)建過與所述新增決策樹相同的決策樹,并且還保留有該決策樹的歷史分類準(zhǔn)確率,那么也可以采用類似步驟103-1-3的方式計(jì)算新增決策樹的綜合分類準(zhǔn)確率。
步驟103-1-2:根據(jù)所述訓(xùn)練樣本集,計(jì)算原始決策樹的本次分類準(zhǔn)確率。
與上述步驟103-1-1中描述的方式1)類似,本步驟可以用原始決策樹對(duì)訓(xùn)練樣本集中的每個(gè)樣本進(jìn)行分類,并用正確分類的次數(shù)與樣本總數(shù)的比值作為原始決策樹的本次分類準(zhǔn)確率。對(duì)分類模型包含的每棵原始決策樹都采用上述方式進(jìn)行處理,從而獲取每棵原始決策樹的本次分類準(zhǔn)確率。
步驟103-1-3:根據(jù)歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
本實(shí)施例采用移動(dòng)平均法計(jì)算所述原始決策樹的綜合分類準(zhǔn)確率。移動(dòng)平均法(moving average method)通常是指,根據(jù)時(shí)間序列,按照特定的權(quán)重系數(shù) 依次計(jì)算一系列數(shù)據(jù)項(xiàng)的平均數(shù)(加權(quán)平均數(shù)),從而能夠消除數(shù)據(jù)中的隨機(jī)波動(dòng),比較客觀地反映數(shù)據(jù)的變化趨勢(shì)。
采用移動(dòng)平均法計(jì)算決策樹的綜合分類準(zhǔn)確率的基本公式如下述公式所示,其中pi為所述時(shí)間序列中的某一數(shù)據(jù)項(xiàng),即分類準(zhǔn)確率,包括本次分類準(zhǔn)確率以及歷次更新分類模型所記錄的歷史分類準(zhǔn)確率;Wi為對(duì)應(yīng)該分類準(zhǔn)確率的權(quán)重系數(shù),各個(gè)權(quán)重系數(shù)的和通常為1;n為參與計(jì)算的時(shí)間序列內(nèi)的數(shù)據(jù)項(xiàng)個(gè)數(shù)。
最為簡(jiǎn)易的移動(dòng)平均法是簡(jiǎn)單移動(dòng)平均法(Simple Moving Average—SMA),即:計(jì)算本次分類準(zhǔn)確率和歷史分類準(zhǔn)確率的未加權(quán)算術(shù)平均值,并將該平均值作為綜合分類準(zhǔn)確率。采用這種方法,相當(dāng)于本次分類準(zhǔn)確率和各個(gè)歷史分類準(zhǔn)確率的權(quán)重系數(shù)都是相同的,都為1/n,可以較好地平滑數(shù)據(jù)的短期波動(dòng),反映數(shù)據(jù)變化的長(zhǎng)期趨勢(shì)。
考慮到在實(shí)際應(yīng)用中,不同時(shí)期的分類準(zhǔn)確率數(shù)據(jù)對(duì)于評(píng)估決策樹的分類效果的作用可能是有差別的,通常遠(yuǎn)期的分類準(zhǔn)確率的影響力相對(duì)較低,而越近期的分類準(zhǔn)確率往往越能夠準(zhǔn)確地評(píng)估決策樹的分類效果?;谏鲜隹紤],為了能夠在平滑數(shù)據(jù)短期波動(dòng)的同時(shí),進(jìn)一步凸現(xiàn)近期數(shù)據(jù)的影響力,本實(shí)施例還提供了采用加權(quán)移動(dòng)平均法或者指數(shù)移動(dòng)平均法的優(yōu)選實(shí)施方式。
所謂加權(quán)移動(dòng)平均法(Weighted Moving Average—WMA),在計(jì)算加權(quán)平均數(shù)時(shí)采用如下方式為各數(shù)據(jù)項(xiàng)設(shè)置不同的權(quán)重系數(shù):對(duì)于包含n個(gè)數(shù)據(jù)項(xiàng)來說,可以將權(quán)重系數(shù)的分母設(shè)定為A=n+(n-1)+(n-2)+...+2+1,將最近期數(shù)據(jù)項(xiàng)(p1,例如本次分類準(zhǔn)確率)的權(quán)重系數(shù)設(shè)置為n/A、次近期數(shù)據(jù)項(xiàng)(p2)的權(quán)重系數(shù)設(shè)置為(n-1)/A,如此類推,一直到1/A,請(qǐng)參見圖6,其示出了n=15的加權(quán)移動(dòng)平均的權(quán)重分布示意圖。加權(quán)移動(dòng)平均法的計(jì)算公式如下所示:
所謂指數(shù)移動(dòng)平均法(Exponential Moving Average—EMA),與上述加權(quán)移動(dòng)平均法相比較,是以指數(shù)式遞減權(quán)重系數(shù)的移動(dòng)平均。各數(shù)據(jù)項(xiàng)的加權(quán)影響力隨時(shí)間而指數(shù)式遞減,越近期的數(shù)據(jù)加權(quán)影響力越重,對(duì)較遠(yuǎn)期的數(shù)據(jù)也給予一定的加權(quán)值,請(qǐng)參見圖7,其示出了n=20的指數(shù)移動(dòng)平均的權(quán)重分布示意圖。在具體實(shí)施時(shí),加權(quán)的程度可以用常數(shù)α決定,α數(shù)值介乎0至1,α也 可用參與計(jì)算的數(shù)據(jù)項(xiàng)的數(shù)目n來表示,例如α=2/(n+1)?;诔?shù)α的指數(shù)移動(dòng)平均法的計(jì)算公式如下所示:
通過上面的描述可以看出,加權(quán)移動(dòng)平均法和指數(shù)移動(dòng)平均法的權(quán)重系數(shù)主要是由數(shù)據(jù)項(xiàng)的生成時(shí)間決定的,越近期的數(shù)據(jù)項(xiàng)的權(quán)重系數(shù)越大,越遠(yuǎn)期的數(shù)據(jù)項(xiàng)的權(quán)重系數(shù)越小。具體應(yīng)用于本實(shí)施例,可以為本次分類準(zhǔn)確率設(shè)置較大的權(quán)重系數(shù),而為遠(yuǎn)期的歷史分類準(zhǔn)確率設(shè)置相應(yīng)較小的權(quán)重系數(shù),采用這種方式計(jì)算得到的綜合分類準(zhǔn)確率,既可以從全局角度反應(yīng)決策樹的分類效果,同時(shí)也可以凸顯決策樹近期的分類表現(xiàn),那么由基于該指標(biāo)篩選出的決策樹所組成的分類模型,通??梢栽谖磥淼姆诸愵A(yù)測(cè)中獲得更為準(zhǔn)確的預(yù)測(cè)結(jié)果。
通過上面的描述還可以看出,加權(quán)移動(dòng)平均法和指數(shù)移動(dòng)平均法的不同之處在于,指數(shù)移動(dòng)平均法中各數(shù)據(jù)項(xiàng)的加權(quán)影響力不是線形遞減的、而是采用指數(shù)方式遞減的。因此,針對(duì)數(shù)據(jù)快速變化的應(yīng)用場(chǎng)景(例如網(wǎng)站開展促銷活動(dòng))通??梢圆捎弥笖?shù)移動(dòng)平均法,而在數(shù)據(jù)相對(duì)平穩(wěn)的應(yīng)用場(chǎng)景(例如普通的工作日)通??梢圆捎眉訖?quán)移動(dòng)平均法。
在具體實(shí)施本步驟時(shí),可以根據(jù)原始決策樹的標(biāo)識(shí),例如決策樹id,在已存儲(chǔ)的分類準(zhǔn)確率數(shù)據(jù)中查找截止本次更新之前的某段時(shí)間內(nèi)的(例如:7天或者1個(gè)月)、對(duì)應(yīng)于該決策樹的分類準(zhǔn)確率以及生成時(shí)間信息,這些數(shù)據(jù)通常都是在歷次更新分類模型過程中記錄下來的;然后根據(jù)具體的應(yīng)用需求或者不同的應(yīng)用場(chǎng)景,利用上述查找到的分類準(zhǔn)確率以及本次分類準(zhǔn)確率,采用上述移動(dòng)平均法之一計(jì)算該決策樹的綜合分類準(zhǔn)確率。針對(duì)分類模型包括的每一棵原始決策樹執(zhí)行上述操作,從而可以獲得每一棵原始決策樹的綜合分類準(zhǔn)確率。
至此,通過步驟103-1-1至步驟103-1-3,在計(jì)算本次分類準(zhǔn)確率的基礎(chǔ)上,得到了每棵新增決策樹和原始決策樹的綜合分類準(zhǔn)確率。為了在后續(xù)更新分類模型的過程中能夠獲取詳實(shí)的歷史分類準(zhǔn)確率數(shù)據(jù),在上述步驟103-1-1和103-1-2計(jì)算出新增決策樹和原始決策樹的本次分類準(zhǔn)確率后,可以將該數(shù)據(jù)以及本次計(jì)算時(shí)間存儲(chǔ)在對(duì)應(yīng)決策樹的相關(guān)信息中,即每棵決策樹的相關(guān)信息中不僅包括:決策樹標(biāo)識(shí)和生成時(shí)間,還可以包括對(duì)應(yīng)于時(shí)間序列的一系列分類準(zhǔn)確率。
步驟103-2:按照所述綜合分類準(zhǔn)確率對(duì)所述新增決策樹和原始決策樹進(jìn)行排序。
本步驟根據(jù)步驟103-1計(jì)算得到的綜合分類準(zhǔn)確率,對(duì)新增決策樹和原始決策樹進(jìn)行排序,即:按照綜合分類準(zhǔn)確率從高到低的順序?qū)ι鲜鰶Q策樹進(jìn)行排序,使得綜合分類準(zhǔn)確率高的決策樹的排序位置處于綜合分類準(zhǔn)確率低的決策樹之前,為后續(xù)步驟103-3進(jìn)行篩選做好準(zhǔn)備。
步驟103-3:從排序后的決策樹中選擇序位位于高位的、所述預(yù)定數(shù)量的決策樹。
例如,分類模型包含T棵原始決策樹,在步驟102中生成了K棵決策樹,那么本步驟從根據(jù)綜合分類準(zhǔn)確率排序的T+K棵決策樹中,選擇排位靠前的,即綜合分類準(zhǔn)確率最優(yōu)的T棵決策樹,匯總組成更新后的分類模型。
至此通過步驟103-1至103-3完成了決策樹的篩選操作,并得到了更新后的分類模型。在具體實(shí)施時(shí),可以在完成上述操作后,刪除未被選取的決策樹及其相關(guān)信息,包括:決策樹標(biāo)識(shí)、生成時(shí)間、以及與分類準(zhǔn)確率相關(guān)的信息。如果被刪除的決策樹是本次新增決策樹,那么刪除與分類準(zhǔn)確率相關(guān)的信息是指,僅刪除本次分類準(zhǔn)確率和本次計(jì)算時(shí)間;如果被刪除的決策樹是原始決策樹,那么不僅可以刪除本次分類準(zhǔn)確率及本次計(jì)算時(shí)間,還可以刪除之前記錄的歷史分類準(zhǔn)確率及相關(guān)時(shí)間信息。
此外,由于本技術(shù)方案提供了動(dòng)態(tài)更新機(jī)制,分類模型可以逐漸完善,因此在首次創(chuàng)建分類模型時(shí)(從無到有的過程,也可以認(rèn)為是更新過程),也可以采用本技術(shù)方案。具體說,在執(zhí)行步驟102之前,先判斷是否已創(chuàng)建分類模型,若否,則將所述預(yù)定數(shù)量作為所述新增數(shù)量,并在步驟102種創(chuàng)建預(yù)定數(shù)量的決策樹,在步驟103中計(jì)算每棵新增決策樹的本次分類準(zhǔn)確率,供后續(xù)更新分類模型時(shí)參考,并直接將新增決策樹匯總得到分類模型。采用這種實(shí)施方式,可以將分類模型的創(chuàng)建和更新過程統(tǒng)一起來,減少人工參與,便于維護(hù)與管理。
綜上所述,本實(shí)施例提供的用于更新分類模型的方法,由于不需要根據(jù)全量數(shù)據(jù)進(jìn)行訓(xùn)練,而是利用增量數(shù)據(jù)在原有分類模型的基礎(chǔ)上進(jìn)行增量更新,因此可以根據(jù)需要對(duì)分類模型進(jìn)行各種時(shí)間粒度的動(dòng)態(tài)更新,例如:按日更新或者近似實(shí)時(shí)更新,從而可以提高模型訓(xùn)練的效率、實(shí)現(xiàn)對(duì)業(yè)務(wù)的快速響應(yīng);進(jìn)一步地,由于在評(píng)價(jià)決策樹的分類效果時(shí)并沒有僅僅依據(jù)本次的分類準(zhǔn)確率, 而是引入了歷史分類準(zhǔn)確率,因此可以從全局的角度對(duì)決策樹的綜合分類效果進(jìn)行評(píng)估,從而可以平滑數(shù)據(jù)的短期波動(dòng),保證更新后的分類模型能夠保持比較穩(wěn)定的分類預(yù)測(cè)效果。
在上述的實(shí)施例中,提供了一種用于更新分類模型的方法,與之相對(duì)應(yīng)的,本申請(qǐng)還提供一種用于更新分類模型的裝置。請(qǐng)參看圖8,其為本申請(qǐng)的一種用于更新分類模型的裝置實(shí)施例的示意圖。由于裝置實(shí)施例基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說明即可。下述描述的裝置實(shí)施例僅僅是示意性的。
本實(shí)施例的一種用于更新分類模型的裝置,包括:訓(xùn)練樣本集提取單元801,用于從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),并從中提取訓(xùn)練樣本集;決策樹生成單元802,用于根據(jù)所述訓(xùn)練樣本集,生成新增數(shù)量的決策樹;決策樹選擇單元803,用于根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,從新增決策樹和原始決策樹中選擇所述預(yù)定數(shù)量的決策樹,組成更新后的分類模型。
可選的,所述訓(xùn)練樣本集提取單元包括:
增量數(shù)據(jù)獲取子單元,用于從提供所述用戶行為數(shù)據(jù)的服務(wù)器中獲取預(yù)定時(shí)間段內(nèi)的增量數(shù)據(jù),其中每條增量數(shù)據(jù)都包含一組原始變量及相應(yīng)值、以及類別標(biāo)簽;
數(shù)據(jù)預(yù)處理子單元,用于對(duì)所述增量數(shù)據(jù)進(jìn)行預(yù)處理,使其符合分類模型對(duì)訓(xùn)練樣本數(shù)據(jù)的要求;
特征值提取子單元,用于對(duì)每條增量數(shù)據(jù)執(zhí)行如下操作,生成所述訓(xùn)練樣本集:從增量數(shù)據(jù)中提取對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本。
可選的,所述數(shù)據(jù)預(yù)處理子單元至少包括以下子單元之一:
極值處理子單元,用于按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中極大值和/或極小值進(jìn)行處理;
缺失值處理子單元,用于按照預(yù)先設(shè)定的方式,對(duì)增量數(shù)據(jù)中的缺失值進(jìn)行處理;
格式轉(zhuǎn)換子單元,用于根據(jù)所述分類模型對(duì)樣本數(shù)據(jù)的格式要求,進(jìn)行相應(yīng)的格式轉(zhuǎn)換。
可選的,所述訓(xùn)練樣本集提取單元還包括:
特征變量抽取子單元,用于從預(yù)處理后的增量數(shù)據(jù)中抽取特征變量,添加到特征變量集合中;
所述特征值提取子單元具體用于,對(duì)每條增量數(shù)據(jù)執(zhí)行如下操作,生成所述訓(xùn)練樣本集:從增量數(shù)據(jù)中提取從所述特征變量集合中選取的、對(duì)應(yīng)于所述分類模型的特征變量的值,并用提取的值與所述類別標(biāo)簽組成訓(xùn)練樣本。
可選的,所述決策樹生成單元具體用于,根據(jù)所述訓(xùn)練樣本集,采用隨機(jī)森林算法生成新增數(shù)量的決策樹。
可選的,所述決策樹生成單元包括:
循環(huán)控制子單元,用于當(dāng)生成決策樹的數(shù)量小于所述新增數(shù)量時(shí),調(diào)用下述各子單元?jiǎng)?chuàng)建決策樹;
bootstrap樣本集合構(gòu)建子單元,用于根據(jù)所述訓(xùn)練樣本集采用有放回抽樣的方式構(gòu)建bootstrap樣本集合;
決策樹生成執(zhí)行子單元,用于使用所述bootstrap樣本集合,采用在每個(gè)節(jié)點(diǎn)按照預(yù)定策略選取特征變量、并根據(jù)所選特征變量進(jìn)行分裂的方式生成一棵新決策樹;所述按照預(yù)定策略選取特征變量是指,從隨機(jī)選擇的特征變量中按照預(yù)定策略選取最優(yōu)特征變量。
可選的,所述決策樹生成執(zhí)行子單元所采用的預(yù)定策略包括:根據(jù)信息增益選取屬性、根據(jù)信息增益率選取屬性、或者根據(jù)基尼指標(biāo)選取屬性。
可選的,所述決策樹選擇單元包括:
綜合指標(biāo)計(jì)算子單元,用于根據(jù)歷史分類準(zhǔn)確率和針對(duì)所述訓(xùn)練樣本集的本次分類準(zhǔn)確率,計(jì)算新增決策樹和原始決策樹的綜合分類準(zhǔn)確率;
排序子單元,用于按照所述綜合分類準(zhǔn)確率對(duì)新增決策樹和原始決策樹進(jìn)行排序;
篩選子單元,用于從排序后的決策樹中選擇序位處于高位的、所述預(yù)定數(shù)量的決策樹。
可選的,所述綜合指標(biāo)計(jì)算子單元包括:
新增決策樹綜合指標(biāo)計(jì)算子單元,用于根據(jù)所述訓(xùn)練樣本集,計(jì)算新增決策樹的本次分類準(zhǔn)確率,作為其綜合分類準(zhǔn)確率;
原始決策樹本次指標(biāo)計(jì)算子單元,用于根據(jù)所述訓(xùn)練樣本集,計(jì)算原始決策樹的本次分類準(zhǔn)確率;
原始決策樹綜合指標(biāo)計(jì)算子單元,用于根據(jù)所述歷史分類準(zhǔn)確率和本次分類準(zhǔn)確率,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述原始決策樹綜合指標(biāo)計(jì)算子單元具體用于,采用移動(dòng)平均法,計(jì)算原始決策樹的綜合分類準(zhǔn)確率。
可選的,所述原始決策樹綜合指標(biāo)計(jì)算子單元采用的移動(dòng)平均法包括:加權(quán)移動(dòng)平均法、或者指數(shù)移動(dòng)平均法。
可選的,所述裝置還包括:
分類模型創(chuàng)建判斷單元,用于在觸發(fā)所述決策樹生成單元工作之前,判斷是否已創(chuàng)建所述分類模型,若否,將所述預(yù)定數(shù)量作為所述新增數(shù)量。
可選的,所述裝置還包括:
決策樹刪除單元,用于在所述決策樹選擇單元組成更新后的分類模型后,刪除未被選取的決策樹。
本申請(qǐng)雖然以較佳實(shí)施例公開如上,但其并不是用來限定本申請(qǐng),任何本領(lǐng)域技術(shù)人員在不脫離本申請(qǐng)的精神和范圍內(nèi),都可以做出可能的變動(dòng)和修改,因此本申請(qǐng)的保護(hù)范圍應(yīng)當(dāng)以本申請(qǐng)權(quán)利要求所界定的范圍為準(zhǔn)。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
1、計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他 磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
2、本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。