新四季網

一種利用訓練數據訓練模型的方法和訓練系統與流程

2023-08-04 12:56:16 2


本申請涉及數據處理領域,尤其涉及一種利用訓練數據訓練模型的方法和訓練系統。
背景技術:
:在數據挖掘的業務場景中,經常需要利用大規模的訓練數據訓練機器學習算法模型,進行分類或者回歸計算。只有用大量數據訓練該機器學習算法模型之後,才有可能獲得預測精度較高的該算法模型,進而才能在後續根據輸入的數據進行各種行為的預測。在當前網際網路的環境下,訓練數據的數據規模經常達到數十億甚至上千億,每個訓練數據的特徵規模隨著業務擴展,也會到一個非常大的數量級。以ctr(click-throughrate)預估為例,ctr預估是網際網路計算廣告中的關鍵環節,預估準確性直接影響公司廣告收入。ctr預估使用特定的算法模型,輸入該算法模型進行計算的訓練數據可能達到千億規模,每個訓練數據的特徵維度也可能達到百億的規模。如此龐大的規模輸入算法模型中,容易造成機器學習算法模型的計算難度增大、效率降低。為了減少計算難度並提高計算的效率,常規的解決方案是使用並行計算的方式處理訓練數據,例如使用lr(logisticregression)模型進行處理。lr是廣義線性模型,可以進行並行化處理,即將原本海量的訓練數據分發到n個不同的計算處理器(worker)中計算,每個計算處理器處理的數據量為總數據量的1/n。利用上述方式可以對一定數量級的數據進行處理,但是對於百億特徵*千億數據的規模下,數據總量可能超過pb級別,超出了一般計算集群的計算範圍。即使可以利用超大規模的計算集群進行計算,得到最終最優結果的時間也非常長,導致運行效率低,滿足不了業務的更新需求。另外,在一種相反的情況下,訓練數據可能會存在維度過低、數據量過小的問題,同樣影響機器學習模型的訓練精度。技術實現要素:鑑於上述問題,提出了本申請實施例以便提供一種克服上述問題或者至少部分地解決上述問題的利用訓練數據訓練模型的方法和訓練系統。為解決上述問題,本申請一實施例公開一種利用訓練數據訓練模型的方法,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,所述訓練方法包括:計算每一個特徵列的重要程度值;判斷每一個特徵列的重要程度值是否小於對應的閾值;當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;將重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併,得到(n-m+p)個特徵列;以及將包括所述(n-m+p)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。本申請另一實施例公開一種利用訓練數據訓練模型的方法,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,所述訓練方法包括:計算每一個特徵列的重要程度值;判斷每一個特徵列的重要程度值是否大於對應的閾值;當判斷出所述n個特徵列中的q個特徵列的重要程度值大於對應的閾值時,將所述q個特徵列進行升維處理,生成r個特徵列,其中r>q,且q<n;將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的(n-q)個特徵列合併,得到(r+n-q)個特徵列;以及將包括所述(r+n-q)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。本申請再一實施例公開一種利用訓練數據訓練模型的系統,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,所述訓練系統包括:第一計算模塊,用於計算每一個特徵列的重要程度值;第一判斷模塊,用於判斷每一個特徵列的重要程度值是否小於對應的閾值;第一降維模塊,用於當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;第一合併模塊,用於將重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併,得到(n-m+p)個特徵列;以及第一訓練模塊,用於將包括所述(n-m+p)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。本申請再另一實施例公開一種利用訓練數據訓練模型的系統,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,所述訓練系統包括:第二計算模塊,用於計算每一個特徵列的重要程度值;第二判斷模塊,用於判斷每一個特徵列的重要程度值是否大於對應的閾值;升維模塊,用於當判斷出所述n個特徵列中的q個特徵列的重要程度值大於對應的閾值時,將所述q個特徵列進行升維處理,生成r個特徵列,其中r>q,且q<n;第二合併模塊,用於將將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的(n-q)個特徵列合併,得到(r+n-q)個特徵列;以及第二訓練模塊,用於將包括所述(r+n-q)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。本申請實施例至少具有以下優點:本申請實施例通過判斷每一個特徵列的重要程度值,對重要特徵和輔助特徵進行區別處理,採用保留重要特徵、將輔助特徵進行降維的方式,或者對應地採用將重要特徵升維的方式,對於較大規模的訓練數據,能夠降低原本特徵維度較高的訓練數據的維度,在將該降維後的訓練數據輸入模型進行訓練時,能夠達到訓練特徵參數可控、訓練數據大幅降低、運行效率提升的目的。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,最大限度地減小了該模型的預測準確度的降低程度。同時,本申請實施例通過判斷每一個特徵列的重要程度值,對於較小規模的訓練數據,能夠升高重要程度值較高的訓練數據的維度,能夠達到訓練特徵參數可控、提高模型訓練的準確性的問題。附圖說明圖1是本申請實施例的訓練數據的示意圖。圖2是本申請第一實施例的利用訓練數據訓練模型的方法的流程圖。圖3是本申請實施例的特徵列的重要程度值輸出的結果的示意圖。圖4是本申請第二實施例的利用訓練數據訓練模型的方法的流程圖。圖5是本申請第三實施例的利用訓練數據訓練模型的方法的流程圖。圖6是本申請第四實施例的利用訓練數據訓練模型的系統的方框圖。圖7是本申請第五實施例的利用訓練數據訓練模型的系統的方框圖。圖8是本申請第六實施例的利用訓練數據訓練模型的系統的方框圖。具體實施方式下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員所獲得的所有其他實施例,都屬於本申請保護的範圍。本申請的核心思想之一在於,提出一種利用訓練數據訓練模型的方法和系統,該方法或系統中首先進行特徵列選擇,通過計算每一個特徵列的 重要程度值並判斷每一個特徵列的重要程度值是否小於對應的閾值,選擇出重要特徵列和輔助特徵列。之後將多個輔助特徵列進行降維處理,最後將重要特徵列和降維處理後的輔助特徵列合併,並輸入機器學習算法模型,對機器學習算法模型進行訓練。第一實施例本申請第一實施例提出一種利用訓練數據訓練模型的方法,圖1是本申請一實施例的訓練數據的示意圖。圖2是利用訓練數據訓練模型的方法的流程圖。本申請第一實施例提出的利用訓練數據訓練模型的方法可以用於訓練各種機器學習算法模型,特別地,本申請第一實施例提出的利用訓練數據訓練模型的方法可以應用於具有高維稀疏特徵的訓練數據。如圖1所示,所述的訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列。如圖2所示,本申請第一實施例的利用訓練數據訓練模型的方法可以包括如下步驟:s101,計算每一個特徵列的重要程度值;在這一步驟中,該重要程度值用於評估該特徵列對該模型在訓練後的預測準確度的重要程度。舉例來說,該重要程度值可以是該特徵列的信息值iv(informationvalue,後稱iv值)或信息增益ig(informationgain,後稱ig值)。當該重要程度值為該特徵列的信息值iv時,舉例來說,以二分模型為例,可以通過如下公式計算:woe=ln(pctlgood/pctlbad)(1)miv=woe*(pctlgood-pctlbad)(2)iv=∑miv(3)該二分模型可以為國外廣泛使用的信用卡評分模型,該二分模型尤其在信用風險評估以及金融風險控制領域更是得到了廣泛的使用,其原理是將模型變量woe編碼方式離散化之後運用logistic回歸模型進行的一種二分 類變量的廣義線性模型。在該模型中,每一個訓練數據即是每一個信用卡用戶的信息,該訓練數據包括多個特徵,例如信用卡用戶的年齡、職業、性別等。每一個訓練數據對應一個標籤值,當該信用卡用戶為違約用戶時,該標籤值記為1,當該信用卡用戶為正常用戶時,該標籤值記為0。在上述公式(1)中,woe為顯著性權重(weightofevidence),計算iv值之前首先需要進行woe值計算。公式(1)中的pctlgood和pctlbad分別是通過多個訓練數據的特徵列中的特徵以及每一個數據對應的標籤值計算得出。其中pctlgood表示將某一特徵列(例如「信用卡用戶的年齡」)進行離散處理後,每一個區間內對應的標籤值為1的信用卡用戶個數與全部區間內對應的標籤值為1的信用卡用戶個數,pctlbad表示每一個區間內對應的標籤值為0的信用卡用戶個數與全部區間內對應的標籤值為0的信用卡用戶個數。例如,表1所示為將信用卡用戶的年齡進行離散處理後獲得的每個年齡區間對應的woe值。age#good#badwoe0-1050200=ln((50/100)/(200/1000))=ln((50/200)/(100/1000))10-1820200=ln((20/100)/(200/1000))=ln((20/200)/(100/1000))18-355200=ln((5/100)/(200/1000))=ln((5/200)/(100/1000))35-5015200=ln((15/100)/(200/1000))=ln((15/200)/(100/1000))50以上10200=ln((10/100)/(200/1000))=ln((10/200)/(100/1000))匯總1001000表1在完成woe計算之後,通過公式(2)計算出針對每個年齡區間的miv值,再通過公式(3)計算出每個年齡區間的miv值的總和,從而得出該特徵列的全部年齡區間的iv值。當該重要程度值為該特徵列的信息增益ig時,該信息增益gain(s,a)被定義為:在上述公式(4)中,其中entropy(s)為數據集合s的熵,v(a)是某一特徵列a所有可能值的集合,sv是s中某一特徵列a的值為v的子集,權值為某一特徵列sv的樣例佔原始樣例s的比例|sv|/|s|,即gain(s,a)是由於給定特徵列a的值而得到的關於目標函數值的信息。在計算出iv值和/或ig值之後,可以對計算獲得的iv值和/或ig值進行輸出。圖3所示為輸出的結果的示意圖,圖3中,col列為特徵名,iv為信息值,ig為信息增益。以上對每一個特徵列的iv值和ig值的計算方法進行了舉例描述。本領域技術人員應當可以明確的是,本領域還有其他多種能夠用於評估該特徵列對該模型在訓練後的預測準確度的重要程度的值,並且計算方法也多種多樣,本申請並不特別限制該重要程度值的類型和計算方法。步驟s102,判斷每一個特徵列的重要程度值是否小於對應的閾值;在這一步驟中,舉例來說,可以根據步驟s101中計算出的每一個特徵列的重要程度值,判斷該重要程度值是否小於對應的閾值。例如,可以根據步驟s101中計算出的每一特徵列的iv值,判斷該iv值是否小於對應的閾值。特徵列的iv值對應的閾值例如為第一閾值b,在這一步驟中,用每一個特徵列的iv值與該第一閾值b進行比較。同樣地,可以根據步驟s101中計算出的每一特徵列的ig值,判斷該ig值是否小於對應的閾值。特徵列的ig值對應的閾值例如為第二閾值c,在這一步驟中,用每一個特徵列的ig值與該第二閾值c進行比較。此外,還可以同時判斷每一個特徵列的iv值和ig值是否同時小於對應的閾值。例如,針對每一個特徵列,判斷該特徵列的iv值是否小於上述的第一閾值b,再判斷該特徵列的ig值是否小於上述的第二閾值c。步驟s103,當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;在這一步驟中,通過信息值和/或信息增益與對應的閾值比較,可以確定哪些特徵列為重要特徵,哪些特徵列為輔助特徵。即,哪些特徵列對該模型在訓練後的預測準確度影響較大,即可以視為重要特徵,哪些特徵列對該模型在訓練後的預測準確度影響較小,即可以視為輔助特徵。如果僅用iv值進行比較,則可以認為iv值小於上述的第一閾值b的特徵列為輔助特徵,iv值大於或等於上述的第一閾值b的特徵列為重要特徵。如果僅用ig值進行比較,則可以認為ig值小於上述的第二閾值c的特徵列為輔助特徵,ig值大於或等於上述的第二閾值c的特徵列為重要特徵。如果同時用iv值和ig值進行比較,則可以認為iv值小於上述的第一閾值b的特徵列為輔助特徵,或者ig值小於上述的第二閾值c的特徵列為輔助特徵,只有iv值大於或等於上述的第一閾值b,且ig值大於或等於上述的第二閾值c的特徵列才可以認為是重要特徵。以下通過一個示例,描述將所述m個信息值和/或信息增益小於對應閾值的特徵列進行降維處理的步驟。某個訓練數據包括三個樣本,每個樣本包括n個特徵,三個樣本分別為:a1(a11,a12,a13,......a1n)a2(a21,a22,a23,......a2n)a3(a31,a32,a33,......a3n)在步驟s101中計算每一個特徵列的重要程度值的步驟,例如是計算a11,a21,a31構成的特徵列的信息值和/或信息增益、a12,a22,a32構成的特徵列的信息值和/或信息增益、a13,a23,a33構成的特徵列的信息值和/或信息增益,直到a1n,a2n,a3n構成的特徵列的信息值和/或信息增益。在步驟s103中,根據步驟s102中得出的每一個特徵列的重要程度值是否小於對應的閾值,將多個特徵列分為重要特徵和輔助特徵。在本示例中,重要特徵例如是(a11,a21,a31)構成的特徵列,以及(a12,a22,a32) 構成的特徵列.....直到(a1(n-m),a2(n-m),a3(n-m))構成的特徵列;輔助特徵是後m列即(a1(n-m+1),a2(n-m+1),a3(n-m+1))構成的特徵列......直到(a1n,a2n,a3n)構成的特徵列。在步驟s103中,可以將m個重要程度值小於閾值得輔助特徵進行降維處理,轉換成p個特徵列。即,原先的(a1(n-m+1),a1(n-m+2)......a1n)、(a2(n-m+1),a2(n-m+2)......a2n)、(a3(n-m+1),a3(n-m+2)......a3n)可以分別經過降維處理,轉換為(a』1(n-m+1),a』1(n-m+2)......a』1(n-m+p))、(a』2(n-m+1),a』2(n-m+2)......a』2(n-m+p))、(a』3(n-m+1),a』3(n-m+2)......a』3(n-m+p))。這一步驟s103例如可以通過minwisehashing算法實現。minwisehashing算法廣泛的應用於海量數據下的信息檢索,在這一算法中,將(b=64位)縮小到b位,降低了存儲空間和計算時間。該算法的實現例如為:通過minwisehashing算法後,原先輔助特徵被轉化為一個k*2b維度的向量,其中k,b為算法指定參數,即,步驟s103中的p=k*2b。另外,正如本領域技術人員所知,步驟s103並不限於通過minwisehashing算法完成,同樣可以使用主成分分析算法(pca)、lineardiscriminantanalysis(lda)、局部線性嵌入(lle)、拉普拉斯特徵映射(laplacianeigenmaps)等算法,在此並不特別限定。步驟s104,將重要程度值大於或等於對應的閾值的(n-m)個特徵列和 降維處理後生成的p個特徵列合併,得到(n-m+p)個特徵列;在這一步驟中,可以將步驟s102中判斷出的重要程度值大於或等於對應的閾值的(n-m)個特徵列與降維處理後生成的p個特徵列合併,得到包括(n-m+p)個特徵列的新的訓練數據。舉例來說,重要程度大於或等於對應閾值的(n-m)個特徵列例如為:a1」(a11,a12......a1(n-m))a2」(a21,a22......a2(n-m))a3」(a31,a32......a3(n-m)),上述降維處理後生成的輔助特徵為:a1」』(a』1(n-m+1),a』1(n-m+2)......a』1(n-m+p))a2」』(a』2(n-m+1),a』2(n-m+2)......a』2(n-m+p))a3」』(a』3(n-m+1),a』3(n-m+2)......a』3(n-m+p))將上述重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併的結果為:a1」」(a11,a12,......a1(n-m),......a1(n-m+p))a2」」(a21,a22,......a2(n-m),......a2(n-m+p))a3」」(a31,a32,......a3(n-m),......a3(n-m+p))上述合併後生成的訓練數據可以稱為特徵指紋。合併後生成的訓練數據的特徵維度為(n-m+p)個,短於原先的n個。以訓練數據包括1億特徵列為例,取k=200,b=12,重要特徵取前10000個特徵列,所生成特徵列為2000*2^12+10000=829100個,降維比約為829100/1000000000=0.008292,特徵和數據不到原先的1%。s105,將包括所述(n-m+p)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。在這一步驟中,將合併後的多個樣本輸入機器學習算法模型,對機器學習算法模型進行訓練,或者使用機器學習算法模型進行預測。機器學習算法模型可以是分類算法模型或回歸算法模型,例如邏輯回歸(lr)算法模 型、隨機森林算法模型、gradientboostdecisiontree算法模型等等,本申請並不以此為限。根據本申請第一實施例提出的利用訓練數據訓練模型的方法,通過判斷每一個特徵列的信息值和/或信息增益,採用保留重要特徵、將輔助特徵進行降維的方式,降低原本特徵維度較高的訓練數據的維度,在將該降維後的訓練數據輸入模型進行訓練時,能夠達到訓練特徵參數可控、訓練數據大幅降低、運行效率提升的目的。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,最大限度地減小了該模型的預測準確度的降低程度。本申請提出的利用訓練數據訓練模型的方法應用在高維稀疏特徵的訓練數據中的效果尤其明顯,例如在廣告ctr數據中,通過上述的改動,在廣告ctr的1億特徵數據上,auc較全量訓練提升2‰,數據大小為原先數據量1%。第二實施例本申請第二實施例提出一種利用訓練數據訓練模型的方法,圖4所示為本申請第二實施例的利用訓練數據訓練模型的方法的流程圖。本申請第二實施例提出的利用訓練數據訓練模型的方法可以用於訓練各種機器學習算法模型,特別地,本申請提出的利用訓練數據訓練模型的方法可以應用於具有高維稀疏特徵的訓練數據。高維稀疏矩陣,例如總維度與有數值的維度的比例為100:1或者1000:1以上。所述的訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列。如圖4所示,本申請第二實施例的利用訓練數據訓練模型的方法可以包括如下步驟:s201,計算每一個特徵列的信息值和/或信息增益;在這一步驟中,該信息值(informationvalue,後稱iv值)或信息增益(informationgain,後稱ig值)均能夠評估該特徵列對該模型在訓練後的預測準確度的重要程度。當該重要程度值為該特徵列的信息值iv時,舉例來說,以二分模型為例,可以通過步驟s101中列出的公式(1)至公式(3)計算,通過上述方法計算出iv值和/或ig值之後,可以對計算獲得的iv值和/或ig值進行輸出。圖3所示為輸出的結果的示意圖,圖3中,col列為特徵名,iv為信息值,ig為信息增益。步驟s202,判斷每一個特徵列的信息值和/或信息增益是否小於對應的閾值;在這一步驟中,舉例來說,可以根據步驟s201中計算出的每一個特徵列的信息值和/或信息增益,判斷該信息值和/或信息增益是否小於對應的閾值。例如,可以根據步驟s201中計算出的每一特徵列的iv值,判斷該iv值是否小於對應的閾值。特徵列的iv值對應的閾值例如為第一閾值b,在這一步驟中,用每一個特徵列的iv值與該第一閾值b進行比較。同樣地,可以根據步驟s201中計算出的每一特徵列的ig值,判斷該ig值是否小於對應的閾值。特徵列的ig值對應的閾值例如為第二閾值c,在這一步驟中,用每一個特徵列的ig值與該第二閾值c進行比較。此外,還可以同時判斷每一個特徵列的iv值和ig值是否同時小於對應的閾值。例如,針對每一個特徵列,判斷該特徵列的iv值是否小於上述的第一閾值b,再判斷該特徵列的ig值是否小於上述的第二閾值c。步驟s203,當判斷出所述n個特徵列中的m個特徵列的信息值和/或信息增益小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;在這一步驟中,通過信息值和/或信息增益與對應的閾值比較,可以確定哪些特徵列為重要特徵,哪些特徵列為輔助特徵。即,哪些特徵列對該模型在訓練後的預測準確度影響較大,即可以視為重要特徵,哪些特徵列對該模型在訓練後的預測準確度影響較小,即可以視為輔助特徵。如果僅用iv值進行比較,則可以認為iv值小於上述的第一閾值b的特徵列為輔助特徵,iv值大於或等於上述的第一閾值b的特徵列為重要特 徵。如果僅用ig值進行比較,則可以認為ig值小於上述的第二閾值c的特徵列為輔助特徵,ig值大於或等於上述的第二閾值c的特徵列為重要特徵。如果同時用iv值和ig值進行比較,則可以認為iv值小於上述的第一閾值b的特徵列為輔助特徵,或者ig值小於上述的第二閾值c的特徵列為輔助特徵,只有iv值大於或等於上述的第一閾值b,且ig值大於或等於上述的第二閾值c的特徵列才可以認為是重要特徵。這一步驟s203例如可以通過minwisehashing算法實現。minwisehashing算法廣泛的應用於海量數據下的信息檢索,在這一算法中國,將(b=64位)縮小到b位,降低了存儲空間和計算時間。該算法可以使用與第一實施例提出的具體實現方式來實現,在此不再贅述。通過minwisehashing算法後,原先輔助特徵被轉化為一個k*2b維度的向量,其中k,b為算法指定參數,即,步驟s203中的p=k*2b。步驟s204,將重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併,得到(n-m+p)個特徵列;在這一步驟中,可以將步驟s202中判斷出的信息值和/或信息增益大於或等於對應的閾值的(n-m)個特徵列與降維處理後生成的p個特徵列合併,得到新的訓練數據。舉例來說,信息值和/或信息增益大於或等於對應閾值的(n-m)個特徵列例如為:a1」(a11,a12......a1(n-m))a2」(a21,a22......a2(n-m))a3」(a31,a32......a3(n-m)),上述降維處理後生成的輔助特徵為:a1」』(a』1(n-m+1),a』1(n-m+2)......a』1(n-m+p))a2」』(a』2(n-m+1),a』2(n-m+2)......a』2(n-m+p))a3」』(a』3(n-m+1),a』3(n-m+2)......a』3(n-m+p))將上述信息值和/或信息增益大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併的結果為:a1」」(a11,a12,......a1(n-m),......a1(n-m+p))a2」」(a21,a22,......a2(n-m),......a2(n-m+p))a3」」(a31,a32,......a3(n-m),......a3(n-m+p))上述合併後生成的訓練數據可以稱為特徵指紋。合併後生成的訓練數據的特徵維度為(n-m+p)個,短於原先的n個。以訓練數據包括1億特徵列為例,取k=200,b=12,重要特徵取前10000個特徵列,所生成特徵列為2000*2^12+10000=829100個,降維比約為829100/1000000000=0.008292,特徵和數據不到原先的1%。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,該特徵指紋仍然可以全面反映原先的訓練數據,並不會降低訓練的準確度。s205,將包括所述(n-m+p)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。在這一步驟中,將合併後的多個樣本輸入機器學習算法模型,對機器學習算法模型進行訓練,或者使用機器學習算法模型進行預測。機器學習算法模型可以是分類算法模型或回歸算法模型,例如邏輯回歸(lr)算法模型、隨機森林算法模型、gradientboostdecisiontree算法模型等等,本申請並不以此為限。根據本申請第二實施例提出的利用訓練數據訓練模型的方法,通過判斷每一個特徵列的信息值和/或信息增益,採用保留重要特徵、將輔助特徵進行降維的方式,降低原本特徵維度較高的訓練數據的維度,在將該降維後的訓練數據輸入模型進行訓練時,能夠達到訓練特徵參數可控、訓練數據大幅降低、運行效率提升的目的。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,該特徵指紋仍然可以全面反映原先的訓練數據,最大限度地減小了該模型的預測準確度的降低程度。本申請 提出的利用訓練數據訓練模型的方法應用在高維稀疏特徵的訓練數據中的效果尤其明顯,例如在廣告ctr數據中,通過上述的改動,在廣告ctr的1億特徵數據上,auc較全量訓練提升2‰,數據大小為原先數據量1%。第三實施例本申請第三實施例提出一種利用訓練數據訓練模型的方法,圖5所示為本申請第三實施例的利用訓練數據訓練模型的方法的流程圖。本申請第三實施例提出的利用訓練數據訓練模型的方法可以用於訓練各種機器學習算法模型,特別地,本申請提出的利用訓練數據訓練模型的方法可以應用於具有高維稀疏特徵的訓練數據。高維稀疏矩陣,例如總維度與有數值的維度的比例為100:1或者1000:1以上。所述的訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列。如圖5所示,本申請第三實施例的利用訓練數據訓練模型的方法可以包括如下步驟:s301,計算每一個特徵列的重要程度值;s302,判斷每一個特徵列的重要程度值是否大於對應的閾值;s303,當判斷出所述n個特徵列中的q個特徵列的重要程度值大於對應的閾值時,將所述q個特徵列進行升維處理,生成r個特徵列,其中r>q,且q<n;s304,將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的特徵列合併;以及s305,將合併的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。其中,步驟s301和步驟s305可與第二實施例中的步驟s201和s205相同或相似,在此不再贅述。在步驟s302中,相比於步驟s102,本實施例中是判斷重要程度值是否大於對應的閾值,具體的判斷方式與步驟s102相似,在此不再贅述。在步驟s303中,例如可以參考步驟s103中的方法,根據步驟s302中 得出的每一個特徵列的重要程度值是否大於對應的閾值,將多個特徵列分為重要特徵和輔助特徵。在本示例中,重要特徵例如是(a11,a21,a31)構成的特徵列,以及(a12,a22,a32)構成的特徵列.....直到(a1q,a2q,a3q)構成的特徵列;輔助特徵是後n-q列即(a1(q+1),a2(q+2),a3(q+3))構成的特徵列......直到(a1n,a2n,a3n)構成的特徵列。在步驟s303中,可以將q個重要程度值大於閾值的重要特徵進行升維處理,轉換成r個特徵列。即,原先的(a11,a12......a1q)、(a21,a22......a2q)、(a31,a32......a3q)可以分別經過升維處理,轉換為(a』11,a』12......a』1r)、(a』21,a』22......a』2r)、(a』31),a』32......a』3r)。這一步驟s303例如可以通過minwisehashing算法實現。minwisehashing算法廣泛的應用於海量數據下的信息檢索,在這一算法中,通過參數的設定,將(b=64位)擴大到b位,提升重要特徵的維度。該算法的實現可以參考步驟s103所述,在此不再贅述。在s304中,例如可以將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的(n-q)個特徵列合併,可以參考步驟s103,在此不再贅述。另外,在步驟s303中,當判斷出所述n個特徵列中的q個特徵列的重要程度值大於對應的閾值時,可以利用minwisehashing算法對所述q個特徵列進行升維處理,生成r個特徵列,其中p=k*2b,k和b為算法指定參數。優選地,上述重要程度值可以為第二實施例中的信息值或信息增益。在此不再贅述。另外,在步驟s302之後,該方法還可以包括:s302a,當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;步驟s304即將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的特徵列合併的步驟例如可以包括:將升維處理後生成的r個特徵列和所述降維處理後生成的p個特徵列合併,生成(r+p)個特徵列。在步驟s305中,例如,可以將上述合併的(r+p)個特徵列訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。根據本申請第三實施例提出的利用訓練數據訓練模型的方法,通過判斷每一個特徵列的重要程度值,採用將重要特徵升維的方式,對於較小規模的訓練數據,能夠升高重要程度值較高的訓練數據的維度,提高模型訓練的準確性的問題。第四實施例本申請第四實施例公開一種利用訓練數據訓練模型的系統,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,如圖6所示為本申請第四實施例的利用訓練數據訓練模型的系統以及訓練數據的示意圖。所述訓練系統400包括:第一計算模塊401,用於計算每一個特徵列的重要程度值;第一判斷模塊402,用於判斷每一個特徵列的重要程度值是否小於對應的閾值;第一降維模塊403,用於當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;第一合併模塊404,用於將重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併;以及第一訓練模塊405,用於將合併後的所述多個樣本輸入機器學習算法模型,訓練所述機器學習算法模型。根據本申請第四實施例提出的利用訓練數據訓練模型的系統,通過判斷每一個特徵列的重要程度值,採用保留重要特徵、將輔助特徵進行降維的方式,降低原本特徵維度較高的訓練數據的維度,在將該降維後的訓練數據輸入模型進行訓練時,能夠達到訓練特徵參數可控、訓練數據大幅降 低、運行效率提升的目的。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,降維後的數據能夠最大限度地減小了該模型的預測準確度的降低程度。第五實施例本申請第五實施例公開一種利用訓練數據訓練模型的系統,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,如圖7所示為本申請第五實施例的利用訓練數據訓練模型的系統以及訓練數據的示意圖。所述訓練系統500包括:第一計算模塊501,用於計算每一個特徵列的重要程度值;第一判斷模塊502,用於判斷每一個特徵列的重要程度值是否小於對應的閾值;第一降維模塊503,用於當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;第一合併模塊504,用於將重要程度值大於或等於對應的閾值的(n-m)個特徵列和降維處理後生成的p個特徵列合併;以及第一訓練模塊505,用於將合併後的所述多個樣本輸入機器學習算法模型,訓練所述機器學習算法模型。在一優選實施例中,所述訓練數據還包括對應於每一個樣本的標籤值,所述重要程度值為信息值和/或信息增益,所述計算模塊501包括:信息值計算模塊51,用於利用每一個樣本對應的標籤值和所述特徵列中的多個特徵,計算出所述特徵列的信息值;和/或信息增益計算模塊52,用於利用每一個樣本對應的標籤值和所述特徵列中的多個特徵,計算出所述特徵列的信息增益。在一優選實施例中,所述信息值對應的閾值為第一閾值,所述信息增益對應的閾值為第二閾值。在一優選實施例中,所述降維模塊用於:利用minwisehashing算法對所述m個特徵列進行降維處理,生成p個特徵列,其中p=k*2b,k和b為算法指定參數。在一優選實施例中,所述機器學習算法模型為分類算法模型或回歸算法模型。根據本申請第五實施例提出的利用訓練數據訓練模型的系統,通過判斷每一個特徵列的信息值和/或信息增益,採用保留重要特徵、將輔助特徵進行降維的方式,降低原本特徵維度較高的訓練數據的維度,在將該降維後的訓練數據輸入模型進行訓練時,能夠達到訓練特徵參數可控、訓練數據大幅降低、運行效率提升的目的。同時由於本申請實施例的方法中保留了重要特徵,而對輔助特徵進行降維,該特徵指紋仍然可以全面反映原先的訓練數據,最大限度地減小了該模型的預測準確度的降低程度。本申請提出的利用訓練數據訓練模型的方法應用在高維稀疏特徵的訓練數據中的效果尤其明顯,例如在廣告ctr數據中,通過上述的改動,在廣告ctr的1億特徵數據上,auc較全量訓練提升2‰,數據大小為原先數據量1%。第六實施例本申請第六實施例公開一種利用訓練數據訓練模型的系統,所述訓練數據包括多個樣本,每一個樣本包括n個特徵,所述多個樣本中對應的特徵構成n個特徵列,如圖8所示為本申請第六實施例的利用訓練數據訓練模型的系統以及訓練數據的示意圖。所述訓練系統600包括:第二計算模塊601,用於計算每一個特徵列的重要程度值;第二判斷模塊602,用於判斷每一個特徵列的重要程度值是否小於對應的閾值;升維模塊603,用於當判斷出所述n個特徵列中的q個特徵列的重要程度值大於對應的閾值時,將所述q個特徵列進行升維處理,生成r個特徵列,其中r>q,且q<n;第二合併模塊604,用於將將升維處理後生成的r個特徵列和重要程度值小於或等於對應的閾值的(n-q)個特徵列合併,得到(r+n-q)個特徵 列;以及第二訓練模塊605,用於將包括所述(r+n-q)個特徵列的訓練數據輸入機器學習算法模型,訓練所述機器學習算法模型。在一優選實施例中,所述升維模塊603用於:利用minwisehashing算法對所述m個特徵列進行升維處理,生成r個特徵列,其中p=k*2b,k和b為算法指定參數。在一優選實施例中,所述機器學習算法模型為分類算法模型或回歸算法模型。在一優選實施例中,所述系統還包括:第二降維模塊602a,用於當判斷出所述n個特徵列中的m個特徵列的重要程度值小於對應的閾值時,將所述m個特徵列進行降維處理,生成p個特徵列,其中m<n,且p<m;所述第二合併模塊604用於:所述將升維處理後生成的r個特徵列和所述降維處理後生成的p個特徵列合併。根據本申請第六實施例提出的利用訓練數據訓練模型的系統,通過判斷每一個特徵列的重要程度值,採用將重要特徵升維的方式,對於較小規模的訓練數據,能夠升高重要程度值較高的訓練數據的維度,提高模型訓練的準確性的問題。對於裝置實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。本領域內的技術人員應明白,本申請實施例的實施例可提供為方法、裝置、或電腦程式產品。因此,本申請實施例可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請實施例 可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器、cd-rom、光學存儲器等)上實施的電腦程式產品的形式。在一個典型的配置中,所述計算機設備包括一個或多個處理器(cpu)、輸入/輸出接口、網絡接口和內存。內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(ram)和/或非易失性內存等形式,如只讀存儲器(rom)或快閃記憶體(flashram)。內存是計算機可讀介質的示例。計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現信號存儲。信號可以是計算機可讀指令、數據結構、程序的模塊或其他數據。計算機的存儲介質的例子包括,但不限於相變內存(pram)、靜態隨機存取存儲器(sram)、動態隨機存取存儲器(dram)、其他類型的隨機存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內存技術、只讀光碟只讀存儲器(cd-rom)、數字多功能光碟(dvd)或其他光學存儲、磁盒式磁帶,磁帶磁磁碟存儲或其他磁性存儲設備或任何其他非傳輸介質,可用於存儲可以被計算設備訪問的信號。按照本文中的界定,計算機可讀介質不包括非持續性的電腦可讀媒體(transitorymedia),如調製的數據信號和載波。本申請實施例是參照根據本申請實施例的方法、終端設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理終端設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理終端設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些電腦程式指令也可存儲在能引導計算機或其他可編程數據處理終端設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀 存儲器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些電腦程式指令也可裝載到計算機或其他可編程數據處理終端設備上,使得在計算機或其他可編程終端設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程終端設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。儘管已描述了本申請實施例的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本申請實施例範圍的所有變更和修改。最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個......」限定的要素,並不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。以上對本申請所提供的一種利用訓練數據訓練模型的方法和系統,進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本申請的方法及其核心思想;同時,對於本領域的一般技術人員,依據本申請的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本申請的限制。當前第1頁12

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀