模型訓練方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及計算機技術領域,特別涉及一種模型訓練方法及裝置。
【背景技術】
[0002]內容點擊率預估用于預估用戶點擊一個內容的概率。內容點擊率的影響因素包括用戶特征和內容特征,即,用戶的喜好、不同內容的投放位置、展現(xiàn)形式、內容素材等會影響內容點擊率的預估值,因此,可以根據內容被用戶點擊和未被用戶點擊的歷史數據來訓練預估模型,通過預估模型來預估內容點擊率。
[0003]現(xiàn)有的一種模型訓練方法包括:構造深度神經網絡;獲取歷史數據,并將歷史數據中的每個用戶特征、與每個用戶特征對應的內容特征、用戶對內容采取的實際行為確定為一個訓練樣本;從各個訓練樣本中學習非線性信息;通過對非線性信息設置固定的迭代輪數來訓練深度神經網絡,得到預估模型。
[0004]由于深度神經網絡的代價函數是非凸函數,因此,該預估模型在訓練過程中的模型質量的波動較大,最終訓練得到的預估模型的模型質量不穩(wěn)定。
【發(fā)明內容】
[0005]為了解決代價函數是非凸函數的預估模型的模型質量波動大,最終訓練得到的預估模型的模型質量不穩(wěn)定的問題,本發(fā)明實施例提供了一種模型訓練方法及裝置。所述技術方案如下:
[0006]第一方面,提供了一種模型訓練方法,所述方法包括:
[0007]構造代價函數為非凸函數的模型;
[0008]獲取訓練樣本集,所述訓練樣本集包括用于訓練所述模型的各個訓練樣本,每個訓練樣本包括用戶特征、內容特征和用戶對內容所采取的實際行為所對應的操作值;
[0009]根據所述訓練樣本集對所述模型進行訓練,得到η個候選模型,η為大于I的正整數;
[0010]將所述η個候選模型中質量最好的候選模型確定為本次訓練得到的預估模型。
[0011]第二方面,提供了一種模型訓練裝置,所述裝置包括:
[0012]模型構造模塊,用于構造代價函數為非凸函數的模型;
[0013]樣本集獲取模塊,用于獲取訓練樣本集,所述訓練樣本集包括用于訓練所述模型構造模塊構造的所述模型的各個訓練樣本,每個訓練樣本包括用戶特征、內容特征和用戶對內容所采取的實際行為所對應的操作值;
[0014]候選模型獲取模塊,用于根據所述樣本集獲取模塊得到的所述訓練樣本集對所述模型進行訓練,得到η個候選模型,η為大于I的正整數;
[0015]預估模型確定模塊,用于將所述候選模型獲取模塊得到的所述η個候選模型中質量最好的候選模型確定為本次訓練得到的預估模型。
[0016]本發(fā)明實施例提供的技術方案的有益效果是:
[0017]通過構造代價函數為非凸函數的模型;獲取訓練樣本集,該訓練樣本集包括用于訓練模型的各個訓練樣本,每個訓練樣本包括用戶特征、內容特征和用戶對內容所采取的實際行為所對應的操作值;根據訓練樣本集對模型進行訓練,得到η個候選模型;將η個候選模型中質量最好的候選模型確定為本次訓練得到的預估模型,解決了代價函數是非凸函數的預估模型的模型質量波動大,最終訓練得到的預估模型的模型質量不穩(wěn)定的問題,達到了提高最終訓練得到的預估模型的模型質量的效果。
【附圖說明】
[0018]為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0019]圖1是本發(fā)明一個實施例提供的模型訓練方法的方法流程圖;
[0020]圖2是本發(fā)明另一實施例提供的模型訓練方法的方法流程圖;
[0021]圖3是本發(fā)明一個實施例提供的模型訓練裝置的結構框圖;
[0022]圖4是本發(fā)明再一實施例提供的模型訓練裝置的結構框圖。
【具體實施方式】
[0023]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明實施方式作進一步地詳細描述。
[0024]請參考圖1,其示出了本發(fā)明一個實施例提供的模型訓練方法的方法流程圖,該模型訓練方法可以應用于服務器中。該模型訓練方法,包括:
[0025]步驟101,構造代價函數為非凸函數的模型。
[0026]步驟102,獲取訓練樣本集,該訓練樣本集包括用于訓練模型的各個訓練樣本,每個訓練樣本包括用戶特征、內容特征和用戶對內容所采取的實際行為所對應的操作值。
[0027]步驟103,根據該訓練樣本集對模型進行訓練,得到η個候選模型,η為大于I的正整數。
[0028]步驟104,將η個候選模型中質量最好的候選模型確定為本次訓練得到的預估模型。
[0029]綜上所述,本發(fā)明實施例提供的模型訓練方法,通過構造代價函數為非凸函數的模型;獲取訓練樣本集,該訓練樣本集包括用于訓練模型的各個訓練樣本,每個訓練樣本包括用戶特征、內容特征和用戶對內容所采取的實際行為所對應的操作值;根據訓練樣本集對模型進行訓練,得到η個候選模型;將η個候選模型中質量最好的候選模型確定為本次訓練得到的預估模型,解決了代價函數是非凸函數的預估模型的模型質量波動大,最終訓練得到的預估模型的模型質量不穩(wěn)定的問題,達到了提高最終訓練得到的預估模型的模型質量的效果。
[0030]請參考圖2,其示出了本發(fā)明另一實施例提供的模型訓練方法的方法流程圖,該模型訓練方法可以應用于服務器中。該模型訓練方法,包括:
[0031]步驟201,構造代價函數為非凸函數的模型。
[0032]本實施例中的模型用于預估用戶對某一個內容所采取的實際行為,該實際行為為點擊行為或非點擊行為,該內容可以是廣告、文本、圖片、視頻、音頻等等,本實施例不作限定。由于模型需要根據用戶特征和內容特征對實際行為進行預估,而用戶特征和內容特征包括非線性信息,因此,服務器構造的模型需要能夠從用戶特征和內容特征中學習非線性信息。即,服務器構造的模型應該是非線性模型。
[0033]本實施中的用戶特征可以有多種表達方式,此處以用戶特征用向量表示來舉例說明,則該向量中的每個分量對應于一個特征,當用戶具有某一個特征時,該特征所對應的分量值為I;當用戶不具有某一個特征時,該特征所對應的分量值為O。同樣,內容特征也可以這樣表示,本實施例不作贅述。
[0034]在一種可能的實現(xiàn)方式中,服務器構造的模型可以是深度神經網絡。其中,深度神經網絡中包括一個或多個隱藏在輸入和輸出神經節(jié)點之間的層,且每層中的每個神經節(jié)點模型包含一個可微的非線性激活函數。
[0035]由于深度神經網絡的代價函數是非凸函數,且當代價函數為非凸函數時,模型在訓練過程中的模型質量的波動較大,因此,最后訓練得到的模型不一定有最好的模型質量,此時需要選擇模型質量最好的模型。其中,凸函數是指定義在某個向量空間的凸子集上的實值函數,非凸函數是指不滿足上述特征的函數。代價函數用于度量模型的預估值與實際值之間的某種距離。代價函數的函數值越小,預估值與實際值之間的距離越小,預估值越準確,此時模型的模型質量越高。
[0036]步驟202,獲取構造的模型的上線時間;根據在上線時間之前的預定時段內的樣本生成測試樣本集,該預定時段的結束時間與上線時間之間的差值小于預定閾值;根據在預定時段外的樣本生成訓練樣本集。
[0037]樣本用于表示歷史時刻的用戶與內容之間的關系,每個樣本包括用戶特征、內容特征和用戶對內容采取的實際行為所對應的操作值。比如,當用戶點擊內容時,操作值為I ;當用戶未點擊內容時,操作值為O。
[0038]本實施例中,將用于訓練模型的樣本稱為訓練樣本,將各個訓練樣本所組成的集合稱為訓練樣本集。將用于測試模型的樣本稱為測試樣本,將各個測試樣本所組成的集合稱為測試樣本集。其中,每個測試樣本與每個訓練樣本不同,以保證測試的準確性。
[0039]在通過模型預估在線內容點擊率時,最好的測試樣本集是該模型上線后的實際的數據集,顯然這個數據集在訓練模型時還沒來得及產生,因此,無法使用該數據集來測試模型。本實施例中,服務器先確定結束時間與上線時間之間的差值小于預定閾值的預定時段,將該預定時段內的各個樣本確定為測試樣本,得到測試樣本集;將剩余的樣本確定為訓練樣本,得到訓練樣本集。由于預定時段離上線時間較近,因此,得到的測試樣本集與上線后的實際的樣本特征較接近,當使用該測試樣本集對該預估模型的測試通過時,預估模型對上線后的樣本特征的預估的準確性較高。其中,樣本特征包括用戶特征和內容特征。
[0040]比如,模型的上線時間是8點,且模型的訓練時間為半小時,則可以將7點到7點半之間的各個樣本確定為測試樣本,得到測試樣本集;將剩