国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向企業(yè)生產(chǎn)集成系統(tǒng)的物料推薦系統(tǒng)

2019-08-22 00:47:26吳文李范小朋周庚申林桂嬋
中國機械工程 2019年15期
關(guān)鍵詞:半成品物品標簽

吳文李 范小朋 周庚申 黃 羿 曹 旸 林桂嬋

1.中國長城科技集團股份有限公司,深圳,5180002.中國科學(xué)院深圳先進技術(shù)研究院,深圳,518000

0 引言

在互聯(lián)網(wǎng)上,一個新產(chǎn)品從概念到成品的過程中,必然從周邊獲取大量的信息以支撐其具體的設(shè)計,而且獲取信息的耗時越短就越有機會跑贏市場、獲得商機。這一原則在工業(yè)制造領(lǐng)域內(nèi)仍然成立。有研究表明,制造系統(tǒng)內(nèi)部物品檢索所花費的時長占據(jù)產(chǎn)品設(shè)計周期的一半[1],但在現(xiàn)有條件下,產(chǎn)品研發(fā)廠商都不得不忍受這一過程。同時,隨著工業(yè)4.0的推進,系統(tǒng)集成度越來越高,數(shù)據(jù)呈現(xiàn)出爆炸性增長,物品信息檢索耗時過長與盡可能縮短產(chǎn)品設(shè)計時長之間的矛盾更加突出。由此,面向制造業(yè)物品檢索的推薦系統(tǒng)[1-4]應(yīng)運而生。

目前,大部分產(chǎn)品在設(shè)計階段使用的信息系統(tǒng)內(nèi)部用于定義知識主題(分類)的基礎(chǔ)均來源于物料清單(bill of materials,BOM)[1]?;诖?,推薦系統(tǒng)的實現(xiàn)方式包含四類:基于協(xié)同過濾推薦[2,5],基于內(nèi)容推薦[6],基于知識推薦[3-4],基于組合推薦[1]?;趨f(xié)同過濾推薦假設(shè)如果用戶行為相似,那么他們興趣也相仿。在推薦過程中,用戶個人興趣扮演著最重要的角色,這與“物品為主,人員為輔”的生產(chǎn)系統(tǒng)存在一定的沖突,僅僅考慮用戶行為容易忽略物品本身所包含的關(guān)聯(lián)信息,同時,它無法解決冷啟動[7-9]問題?;趦?nèi)容推薦的系統(tǒng)僅僅衡量物品與物品之間的相似度,割裂了物品與用戶之間的關(guān)聯(lián)?;谥R推薦的方法從理論上更偏智能化。文獻[3-4]利用本體知識完成了舊產(chǎn)品到新產(chǎn)品的推演。但是,本體集對于整個制造行業(yè)來說是個很大的數(shù)據(jù)集,需要經(jīng)過大量專家共同構(gòu)建,而目前制造行業(yè)中大量的定制化需求致使其品種繁多,難以形成通用的本體集。因此,組合推薦經(jīng)常作為一種取長補短的折中方案。然而,現(xiàn)有組合推薦模型[1]僅以公式的形式描繪了推薦的關(guān)鍵步驟,并非從實踐系統(tǒng)的角度出發(fā),在不考慮推薦項具體形態(tài)的情況下還忽略了推薦系統(tǒng)冷啟動等問題,不能直接應(yīng)用于工業(yè)信息系統(tǒng)。

針對此,本文遵循以物品為主、用戶為輔的原則,考慮推薦物品具體形態(tài)(生產(chǎn)制造基礎(chǔ)信息BOM),在提出“物品-用戶”組合推薦模型的基礎(chǔ)上,以系統(tǒng)套件的方式實現(xiàn)了包括零部件、半成品、產(chǎn)品等多個維度的推薦系統(tǒng)。

1 實體描述及問題定義

(1)零部件tm。零部件是生產(chǎn)所需的原材料,是構(gòu)成任意產(chǎn)品的最小單元,通常由工廠購買而來。

(2)半成品th。半成品由n個零部件和m個半成品組成(某一半成品可由多個半成品組成)(n>0,m≥0,且n、m為自然數(shù)),由工廠通過購買或生產(chǎn)而來,但不是賣給客戶的產(chǎn)品。

(3)成品tp。成品是由工廠生產(chǎn)且賣給客戶的最終產(chǎn)品,與th類似,是一個包含n個tm和m個th元素的集合。

(4)BOM。BOM是生產(chǎn)所使用的物料清單,其中,每個BOM對應(yīng)一個tp或th。BOM的每一行表示一個物料,即th或tm。當(dāng)th對應(yīng)的BOM包含在tp的BOM中時,稱之為該成品BOM的子BOM。因此,BOM的文本清單中隱含成品、半成品和零件之間的包含關(guān)系。例如,假設(shè)產(chǎn)品A由半成品B和C組成,B由半成品D和諸多零部件組成,半成品C和D中只包含零部件,那么產(chǎn)品A對應(yīng)的BOM如表1所示,表1包含子BOM表2、表3和表4,表2包含子BOM表4。

(5)BOM詞w。BOM詞是BOM中任意一個以空格作為分詞標志的詞,不一定是自然語言中的單詞,但刻畫了BOM所包含的特征。比如,表1“描述”列的第一行“主板機插組件OCZ-ZT550W-2 REV:001 A T26”包含“主板機插組件”、“OCZ-ZT550W-2”、“REV:001”、“A”、“T26”5個BOM詞。若用“|*|”表示基數(shù),有tm={w1,w2,…,w|tm|},th={w1,w2,…,w|th|},tm={w1,w2,…,w|tp|}。

(6)BOM樹。用樹葉子節(jié)點N表示BOM中為tm的行,中間節(jié)點N表示BOM中為th的行,無向邊E表示BOM和子BOM的直接關(guān)聯(lián),那么BOM是一棵由節(jié)點N和邊E組成的無序樹BT={N,E}。譬如,表1對應(yīng)的BOM樹如圖1所示。若將樹用相鄰矩陣進行存儲,那么表5是產(chǎn)品A的矩陣表示。

(7)候選集。候選集T={t1,t2,…,t|t|},是推薦系統(tǒng)中推薦候選項的集合。t是tm、th和tp的統(tǒng)稱。

(8)候選項向量。候選項向量表示為V,Vt=(f(w1),f(w2),…,f(w|w|))是t= {w1,w2,…,w|t|}通過函數(shù)y=f(x)變換后形成的向量。

(9)物品類別(主題)。物品類別表示為C,C={c1,c2,…,c|C|},在封閉系統(tǒng)中C是一個有限的集合,|C|為該集合的基數(shù)。

(10)用戶集。用戶集表示為U,U={u1,u2,…,u|U|},其中,ui(i=1,2,…,|U|)表示單個用戶,|U|為用戶集的基數(shù)。

(11)發(fā)生概率(得分)。發(fā)生概率表示為R,并以下標區(qū)分不同事件的發(fā)生概率。

(12)用戶標簽集。用戶標簽集表示為L,L={l1,l2,…,l|L|}。|L|為該集合的基數(shù),li(i=1,2,…,|L|)為單個用戶的某一特征標簽。

表1 產(chǎn)品A的BOMTab.1 The BOM of product A

說明:標簽列僅為了方便標注樹節(jié)點而添加標簽,不屬于BOM的內(nèi)容。標簽標注規(guī)則見文獻[10]。

表2 半成品B的BOMTab.2 The BOM of semifinished product B

表3 半成品C的BOMTab.3 The BOM of semifinished produet C

表4 半成品D的BOMTab.4 The BOM of semifinished product D

圖1 產(chǎn)品A的BOM樹Fig.1 BOM tree of product A

表5 產(chǎn)品A的相鄰矩陣Tab.5 The adjacent matrix of product A

(13)興趣標簽。興趣標簽表示為L(u),是用戶u標簽集L中滿足一定條件的子集。

(14)問題定義。給定物品候選集T和用戶標簽集L,如果用戶滿意程度為s(臨界值為α),目標函數(shù)為s=f(L,T),假設(shè)當(dāng)目標函數(shù)值s不小于臨界值α?xí)r滿足用戶需求,那么本文的問題是求解ST={ti∈T∶s=f(L,T)∩s≥α},返回用戶的推薦集合ST。

2 推薦系統(tǒng)技術(shù)

首先針對推薦內(nèi)容維度,提出根據(jù)內(nèi)容相似和結(jié)構(gòu)相似來定義物品的距離并以此為基礎(chǔ)劃分其類別(主題) 。然后對另一個用戶標簽維度定義計算用戶近似度的公式,并給出量化用戶興趣的方法。最后,在不忽略系統(tǒng)冷啟動問題的基礎(chǔ)上,介紹本文所使用的推薦算法。

2.1 內(nèi)容分析

2.1.1基于內(nèi)容相似的距離

假設(shè)空間中有2個分別包含n維詞匯信息的候選項向量V1(xw11,xw12, …,xw1n)和V2(xw21,xw22,…,xw2n),那么引入向量空間余弦相似度[11]后,它們的相似距離被定義為

(1)

其中,dc的取值范圍為[-1,1],dc取值越大,表示V1和V2相似度越高。xwi為wi經(jīng)過函數(shù)f(wi)變換后的數(shù)值。由于tm所包含的w數(shù)量不多且結(jié)構(gòu)單一,而th和tp包含數(shù)目過多的w且結(jié)構(gòu)復(fù)雜,因此,本節(jié)針對兩種情況分別定義相應(yīng)的f(w)函數(shù)。

(1)零部件內(nèi)容文本向量化。零部件內(nèi)容近似采用了詞頻向量法。詞頻向量法把BOM詞出現(xiàn)的頻率作為表征一句話或者一段文本的主要信息,并針對重要的詞語進行頻數(shù)統(tǒng)計,形成數(shù)學(xué)向量,從而實現(xiàn)文本到數(shù)學(xué)符號的轉(zhuǎn)換,即

ftm(w)=q(wi;tm)

(2)

式中,q(wi;tm)表示BOM詞wi在tm={w1,w2,…,w|w|}中的發(fā)生頻率。

例如,表1中的零部件tmJ和零部件tmK,通過詞頻變換后的向量如表6所示,分別為VtJ=(1,1,1,1,1,0,0,0,0)和VtK=(1,0,0,0,0,1,1,1,1)。

表6 詞頻轉(zhuǎn)化為向量Tab.6 From word frequency to vector

(2)半成品與成品內(nèi)容文本向量化。此處采用了“詞頻-逆向文件頻率”法即BOM詞頻-逆向文件頻率法[12],公式如下:

fth|tp(w)=TFIDF(w,dBOM,D)=
TF(w,dBOM)·IDF(w,D)

(3)

(4)

式中,TF(w,dBOM)為BOM詞w在文檔dBOM中的出現(xiàn)次數(shù);IDF(w,D)表示詞w在物料清單語料庫中的獨特性;DF(w)為包含了詞匯w的物料清單數(shù);|D|為語料庫中的文檔總數(shù)。

2.1.2基于結(jié)構(gòu)相似的距離

本節(jié)將計算半成品與成品BOM樹之間的近似程度轉(zhuǎn)換成計算樹相鄰矩陣之間的相似距離。其中,根據(jù)文獻[4]中的正交普氏分析過程,兩個相鄰矩陣MX和MY的相似距離被定義為

(5)

ds的取值范圍為[0,1]。當(dāng)且僅當(dāng)ds取值為1時,MY與MX相同或者其中一個矩陣是另一個矩陣的真子集。trace{A}表示矩陣A的對角線元素之和,矩陣P來自于MX和MY的正交普氏分析的結(jié)果。其中,對于正交普氏分析而言,MX為基準矩陣,MY為用于匹配的矩陣,P為自轉(zhuǎn)正交矩陣[13]。

2.1.3基于集成相似的距離

集成模型在統(tǒng)計、計算和表示上都比單一模型更有優(yōu)勢[14],因此,本文在計算tp、th之間的相似距離時,集成了BOM結(jié)構(gòu)相似距離和內(nèi)容相似距離的辦法。具體定義為:給定某兩個tp(th)的結(jié)構(gòu)相似距離ds和內(nèi)容相似距離dc,集成模型的距離計算公式為

dens=weq1ds+weq2dc

(6)

weq1=weq2=1/2

如文獻[11]所述,等權(quán)重集成雖然較為簡單,但簡單的方案可能在實際應(yīng)用中效果很好。尤其是在面對依賴權(quán)重估計來做預(yù)測的模型時,等權(quán)重的辦法往往能避免模型性能的不穩(wěn)定及估計錯誤帶來的風(fēng)險。

2.1.4基于相似距離分類

物品的主題或分類是推薦系統(tǒng)的重要依據(jù)?;谇拔膶嚯x的定義,本節(jié)實現(xiàn)了機器學(xué)習(xí)領(lǐng)域中的K-Means聚類算法[12]。它將3個模型所提供的距離作為K-Means的輸入,每個物品都是K-Means的“點”,近似值是“點”與“點”之間的距離。當(dāng)算法1的輸入?yún)?shù)dDF為tm時,距離為式(1)的輸出。同理,當(dāng)輸入?yún)?shù)為tp或th時,距離來自式(6)。算法1的復(fù)雜度為O(n)。

算法 1 frm-ModelCapability (distDF,k)

輸入:近似集dDF,可能存在的類別數(shù)k

輸出:K種分類

開始

1.for alld∈dDFdo∥d是dDF中的列

2. 初始化常數(shù)k

3. 隨機選取初始點為質(zhì)心

4. while質(zhì)心不再改變 do

5. 以d作為距離,掃描樣本與每個

質(zhì)心之間的數(shù)值,將樣本歸類到

最相似的類中

6. 重新計算質(zhì)心

7. end while

8.end for all

9.ReturnK種分類 ∥Score中包含模型的F1 Recall和Precision值

2.2 用戶分析

2.2.1用戶興趣量化

本節(jié)采用標簽來量化用戶的興趣,即以一種主動學(xué)習(xí)的方式為用戶打上相應(yīng)的標簽,并形成針對每個用戶的興趣標簽描述矩陣(向量)。假設(shè)用戶u包含的標簽集合為L,那么u的興趣量化函數(shù)L(u)的定義為

L(u)={l∈L∶LP(u,l)≥θ}

(7)

其中,LP(u,l)表示標簽l相對用戶u的正樣本發(fā)生概率,θ為一個臨界值,可以判別標簽l是否達到用戶u的興趣水平。因此,如果假設(shè)發(fā)生概率過低的標簽均為興趣集的噪聲,θ的實際作用是去噪。例如某一標簽li在用戶ui的眾多標簽集中的發(fā)生概率僅為0.000 1,遠低于平均發(fā)生概率,那么它很可能是用戶偶然的點擊,尚未形成“興趣”。

這里包含兩個需要解決的問題,一是用戶標簽的來源,二是如何準確判別該標簽是否屬于當(dāng)前用戶興趣范圍。解決問題的數(shù)據(jù)基礎(chǔ)是用戶的瀏覽歷史記錄和用戶自身屬性,如年齡、性別、所屬工廠等。

(1)類別和主題標簽。用戶的類別或主題標簽主要來源于搜索內(nèi)容的類別(主題)劃分。2.1.4節(jié)對物品的歸類是本節(jié)類別標簽的來源。假設(shè)用戶u的瀏覽內(nèi)容中包含物品分類集C={c1,c2,…,cn},并用下標區(qū)分不同用戶的標簽集,那么其對應(yīng)的標簽為Lu? {lc1,lc2,…,lcn},興趣標簽的判斷條件為LP(u,lci)≥θ。

(2)關(guān)鍵字標簽。當(dāng)用戶u標簽集中大部分LP(u,lci)<θ且lci∈Lu,那么僅按照瀏覽主題和標簽標注用戶的策略基本失效。為彌補此不足,本文中引入關(guān)鍵字標簽。這里的關(guān)鍵字全樣本集來源于BOM中的w,興趣標簽的判斷條件為LP(u,lwi)≥θ,關(guān)鍵字全樣本集的獲取如算法2所示。

算法 2 frm-KeyWrd(Boms)

輸入:BOM文本集

輸出:返回得分位于0.652 6之上的集合

開始

1. for allBom∈Bomsdo∥d是dDF中的列

2.Bom→{w1,w2,…,wn}

3. for allwrd∈{w1,w2,…,wn}Bomsdo

4.Scoring.add(TFIDF(w))

5. end for

6.end for all

7.Returntop-65.26%w∥返回65.26%的關(guān)鍵字集合

算法2采用了遞向詞頻法TFIDF。首先對過去兩年的BOM文本做預(yù)處理,預(yù)處理步驟包含分詞切割和計算TFIDF得分。在假設(shè)TFIDF得分服從正態(tài)分布的基礎(chǔ)上,將正態(tài)分布在σ內(nèi)的w視為關(guān)鍵字樣本集。TFIDF法主要對文本進行處理,速度較快,算法的復(fù)雜度為O(n)。

(3)物品來源標簽。物品的來源標簽包含三種ltm、ltp、lth(零部件、成品和半成品)。該標簽的計算和統(tǒng)計方法與類別標簽相似。

(4)身份特征標簽。物料采購員、電路設(shè)計工程師、產(chǎn)品工程師等因個人偏好、身份特征、年齡等諸多因素導(dǎo)致其對信息的需求均不相同,因此,本文引入身份特征這一標簽,主要包含用戶個人的崗位ltitle、所屬工廠lfactory、年齡lage、性別lgen。同時,為將這些特征標簽融入興趣量化的公式中,我們在計算這些標簽是否滿足LP(u,l)≥θ條件時將LP(u,l)設(shè)定為1。

2.2.2用戶相似定義

協(xié)同推薦的基本假設(shè)為具有相同興趣的用戶具有相似的信息檢索需求,因此,度量兩個用戶的相似程度是開展推薦任務(wù)的基礎(chǔ)。假設(shè)用戶集里包含3個用戶u1、u2和u3,已知u1和u2的共同興趣標簽有8個,用戶u1和u3的共同興趣標簽數(shù)是2,那么u1和u2的近似程度要高于u1和u3的近似程度?;诖?,本文度量用戶相似度的公式定義如下:

(8)

其中,L(ux)指的是用戶ux的標簽集,L(ux)∩L(uy)是所有用戶ux和uy的興趣標簽交集,L(ux)的計算方法見式(7)。

2.2.3用戶鄰域計算

用戶的鄰域計算是協(xié)同推薦的關(guān)鍵步驟,其中,鄰域用戶數(shù)的實現(xiàn)方式有靜態(tài)和動態(tài)之分。靜態(tài)辦法就是對所有當(dāng)前用戶均選擇k個最近似的用戶作為其鄰域,而動態(tài)指的是利用臨界值來動態(tài)獲取近似度超過臨界值的鄰域。本文在系統(tǒng)實現(xiàn)中采用了預(yù)處理的靜態(tài)辦法,依據(jù)式(8),返回數(shù)據(jù)庫中與當(dāng)前用戶最相似的k個用戶,具體如算法3所示。

算法 3 K-NearestUsers(ui,users)

輸入:當(dāng)前用戶ui, 包含近似關(guān)系的用戶集users∥users之間的近似關(guān)系由預(yù)處理完成

輸出:top-k個最近的u集合

開始

1.userSet=users.containUi(ui)∥獲取與ui有du關(guān)系的所有用戶

2.userSet.sortByDu() ∥按du大小排序

3.ReturngetTopk(userSert)∥返回top-k個鄰域用戶

算法3包含了一個預(yù)處理的集合users,即預(yù)處理部分將用戶的近似關(guān)系持久化于數(shù)據(jù)庫中,僅在用戶有了新的標簽才對其作更新操作。

2.3 推薦算法

2.3.1基于內(nèi)容推薦(CB)

本節(jié)在2.1節(jié)的基礎(chǔ)上為用戶提供基于內(nèi)容近似的物品推薦。假設(shè)Ci是用戶ux瀏覽物品ti(i=m、h、p)的類別,T(Ci)函數(shù)表示獲取類別Ci的t集合,∧表示條件與,Tux為用戶ux的推薦候選集合,那么內(nèi)容推薦則是從候選集Tux={t1,t2,…,t|t||ti∈T(Ci)∧Ci∈{C1,C2,C3,…,Cn}}中決策出top-kCB個與ti同分類且dens1距離最短的推薦項列表,如算法4所示。

算法 4 CB-RecommendationItems(ti,C,dens1)

輸入:物品類別矩陣C和ti距離列表dens1

輸出:top-kCB個最近的ti集合

開始

1.Ci=getC(ti) ∥獲取ti的類別

2.Tux=getItems(Ci)∥滿足{t1,t2,…,tn|ti∈T(Ci)∧Ci∈{C1,C2,C3,…,Cn}}

3.CBSets=TuxjoingetItemsWithDistance(dens1)∥為候選集添加距離屬性

4.ReturnSCB= {ti∈CBSets:0<=i

算法4與第1節(jié)中的推薦結(jié)果ST={ti∈T:s=f(L,T)∩s≥α}在形式上不是一一對應(yīng)的。這里,我們將標簽L和類別C等同,那么目標函數(shù)為s=f(C,T),而目標達成的判斷依據(jù)s≥α在算法4中被轉(zhuǎn)換成三個條件:①返回的結(jié)果集的元素數(shù)量為top-kCB;②屬于Ci分類;③離ti的距離是top-kCB最短。

2.3.2協(xié)同過濾推薦(CF)

假設(shè)T(L(uy))函數(shù)表示用戶uy興趣標簽集所包含的物品集合,uy∈{u1,u2,…,uk}為ux的top-kCF個相似用戶,那么ux的推薦候選集為Tux={t1,t2,…,t|t||ti∈{T(L(u1)) ∪T(L(u2))∪…∪T(L(uy))∪…∪T(L(uk))}}。本節(jié)的任務(wù)是從候選集Tux中決策出top-kCF個當(dāng)前用戶最感興趣的物品列表。為此,本節(jié)引入Resnick’s算法的評分公式[15]:

(9)

算法5 CF-RecommendationItems(u,Tux)

輸入:用戶近似度矩陣u和物品列表矩陣Tux

輸出:top-kCF個評分最高的ti集合

開始

1.for alluy∈udo

2. 初始化常數(shù)kCF

4.end for all

5.ReturnSCF= {t1,t2,t3,…,tkCF} ∥返回top-kCF最高分的t集合

算法5對于問題定義ST={ti∈T:s=f(L,T)∩s≥α}而言,目標函數(shù)為s=f(L,T),條件s≥α的解釋為:①返回結(jié)果集的元素數(shù)量為top-kCF;②物品ti得分滿足式(9);③屬于top-kCF最高分的t集合。

2.3.3組合推薦

協(xié)同推薦基本上解決了基于內(nèi)容推薦的品種單一問題,并易獲得較好的推薦質(zhì)量,但正如前文所說,它無法解決系統(tǒng)的冷啟動或用戶信息量過少時的推薦問題[16],因此,本節(jié)以協(xié)同推薦為基礎(chǔ),結(jié)合2.3.1節(jié)內(nèi)容,定義組合推薦的公式如下:

(10)

其中,當(dāng)且僅當(dāng)當(dāng)前用戶有瀏覽歷史記錄但與其他用戶的標簽交集只有身份屬性時,采用基于內(nèi)容推薦(content based,CB)即根據(jù)現(xiàn)有用戶的興趣標簽推薦同類型的物品。相反,如果當(dāng)前用戶有瀏覽歷史記錄并與其他用戶有除身份標簽以外的共同興趣標簽時,采用2.3.2節(jié)的協(xié)同推薦方法。但是,如果用戶沒有物品瀏覽記錄,本文引入產(chǎn)品的停留時間作為生命力因子,區(qū)別對待在tm、th和tp的基礎(chǔ)上修訂并集成的頻繁集挖掘算法[17],為用戶推薦當(dāng)前被頻繁使用的物品集合。

(1)成品的頻繁集合。由第1節(jié)的實體描述中可見,成品tp是一棵BOM樹。本節(jié)在提取tp頻繁集的時候,將其看成獨立的個體(每個BOM就是一個獨立的頻繁項)并以點擊率作為頻次的度量。因此,BOM集和頻度q如表7所示。

表7 BOM的頻度Tab.7 The click frequency of BOM

對頻次的頻率化處理公式如下:

(11)

RBOM,i表示頻繁集中第i個BOM的得分。推薦集FRE(BOM)={BOMi|BOMi∈{BOM1,BOM2,…,BOMn}}的獲取必須滿足3個條件:①屬于最近一段時間被點擊的物品集;②BOMi的停留時間不低于超參數(shù)κ;③RBOM,i得分不低于0.3。

(2)零部件和半成品的頻繁集。tm和th分別為BOM樹的葉子節(jié)點和子樹,因此,本節(jié)引入文獻[17]的辦法,對任意一個包含子節(jié)點Nc的父節(jié)點Np進行頻度計算,公式如下:

qBTNp=

(12)

(13)

其中,B為BOM樹,h(B,N)表示節(jié)點N在樹中的高度,Q為樹節(jié)點中的零部件個數(shù)。式(13)是對頻次的頻率化處理。BNi表示以Ni為根節(jié)點的子樹,RBTNi,i表示數(shù)據(jù)庫中第i個子樹的得分,那么推薦集為SFRE(B) ={Ni|Ni∈{N1,N2,…,Nn}}。

3 推薦系統(tǒng)評價

3.1 參數(shù)設(shè)置

實驗設(shè)置的第一個參數(shù)是實驗環(huán)境。實驗運行在64bit的Ubuntu上。該系統(tǒng)擁有一個2.4GHz第三代英特爾酷睿四核CPU、16GB的RAM內(nèi)存、一個64GB SSD固態(tài)硬盤和一塊750GB硬盤。

實驗設(shè)置的第二個參數(shù)是實驗數(shù)據(jù)。本節(jié)實驗所用數(shù)據(jù)來自于真實的生產(chǎn)環(huán)境,約包含1154份BOM,350 000個物品的數(shù)據(jù)集。實驗所用數(shù)據(jù)集均從這份數(shù)據(jù)抽樣形成。

實驗設(shè)置的第三個參數(shù)是實驗對象。前三組實驗對象基本一致,分別是原始的信息搜索系統(tǒng)InfoSystem和本文的系統(tǒng)RecoSystem。第四組實驗分為三個部分,第一部分測試對象是系統(tǒng)參數(shù)k和θ,第二部分測試對象是結(jié)構(gòu)近似度量Struct、內(nèi)容近似度量Content和本文度量辦法Reco,第三部分是基于內(nèi)容推薦(CB)、協(xié)同過濾推薦(CF)和本文的組合推薦模型RecoModel。其中,RecoSystem是本文推薦系統(tǒng)的實現(xiàn),InfoSystem表示集成推薦系統(tǒng)前的生產(chǎn)信息系統(tǒng),RecoModel是推薦引擎。RecoSystem和RecoModel屬于自主開發(fā),InfoSystem是商用系統(tǒng)。三者的關(guān)系為RecoSystem包含RecoModel,RecoSystem將集成到InfoSystem中去。

實驗設(shè)置的第四個參數(shù)是評價指標。第三組實驗的評價指標是響應(yīng)時間,第二、第四組的評價指標是平均絕對誤差(mean absolute error,MAE)。假設(shè)R表示推薦項的得分集,|R|為推薦集大小,Rij表示元素Rij的真實得分,PRij為推薦系統(tǒng)的預(yù)測得分,MAE的計算公式如下:

(14)

3.2 系統(tǒng)功能

本文推薦系統(tǒng)RecoSystem涵蓋物料近似搜索、我的關(guān)注及能解決冷啟動問題的熱門產(chǎn)品推薦功能。InfoSystem主要查詢功能是物料的精確查詢,InfoSystem要求使用者精確記住每種物料的所有具體參數(shù),當(dāng)數(shù)據(jù)量逐步增大時,在InfoSystem中進行搜索將成為一種挑戰(zhàn)。同時,InfoSystem無法解決工廠業(yè)務(wù)上的需求,如拋開市場品牌標簽后查找近似零部件或用料非常接近的半成品和成品。然而,這些問題都將在推薦系統(tǒng)中得到解決,在RecoSystem中,用戶可通過關(guān)注收藏操作自定義個人興趣,由推薦系統(tǒng)綜合考慮用戶主被動兩種情況進行相應(yīng)的推薦,用戶只需被動接收滿足需求的信息,另外,用戶亦可主動發(fā)起對物品近似搜索,所以既能夠提升信息獲取的效率,又能夠解決手工進行近似匹配的麻煩,因此,RecoSystem是現(xiàn)有信息系統(tǒng)的重要補充。

3.3 推薦效果評價

分別在不同的數(shù)據(jù)集上測試統(tǒng)計推薦引擎RecoModel推薦結(jié)果的MAE,測試結(jié)果如圖2所示。由圖2可見,本文推薦系統(tǒng)的MAE在隨機形成的數(shù)據(jù)集上基本恒定在85%的水平。一方面,由經(jīng)驗可判斷85%的滿意程度屬于推薦系統(tǒng)中較好的水準,另一方面系統(tǒng)的MAE隨數(shù)據(jù)集的不同而呈現(xiàn)較為平穩(wěn)的波動,符合預(yù)期。

3.4 系統(tǒng)性能測試

分別在不同的數(shù)據(jù)集上測試系統(tǒng)搜索功能集成前后推薦模型的響應(yīng)時間,測試結(jié)果如圖3所示。圖3顯示RecoSystem與InfoSysttem的響應(yīng)時間較為接近,并不因為多集成了推薦模型帶來多余的系統(tǒng)開銷。本文在InfoSystem的基礎(chǔ)上集成推薦模型時,推薦模型所使用的數(shù)據(jù)如推薦項距離、主題分類、部分標簽等通過系統(tǒng)預(yù)處理任務(wù)來完成,不占用系統(tǒng)響應(yīng)開銷。同時,部分需要實時計算部分如用戶標簽、興趣標簽、鄰域等每次只更新變動過的部分。假設(shè)這部分的計算與搜索同時并發(fā)執(zhí)行,那么RecoSystem的響應(yīng)時間為max{執(zhí)行時間, InfoSystem的響應(yīng)時間},在推薦模型線上開銷盡可能小的前提下,InfoSystem并不因為多集成一個模型而使系統(tǒng)響應(yīng)驟然變慢。

3.5 模型性能測試

模型性能測試包含四個實驗,前三個實驗分別測試參數(shù)k、θ和相似距離定義策略的變化對系統(tǒng)性能的影響,最后一個實驗是本文與現(xiàn)有流行推薦系統(tǒng)的對比實驗。所有實驗結(jié)果均來自于多次(超過5次)執(zhí)行后的平均值。

(1)用戶鄰域數(shù)k取值對系統(tǒng)性能的影響。抽出式(10)中的協(xié)同推薦部分單獨測試用戶鄰域大小對其性能的影響。圖4測試結(jié)果顯示,當(dāng)k=1時模型的性能最好,k取值從1~4的過程中模型MAE的波動不大,但k=4是模型的MAE從90%以上下降到83%的臨界點??紤]到不給k取過小的值,本文系統(tǒng)的用戶鄰域k取值為4。

圖4 鄰域數(shù)k取值的影響Fig.4 The effect of the neighborhood number k

(2)θ取值對系統(tǒng)性能的影響。θ是本文用來判別當(dāng)前標簽是否能成為用戶興趣標簽的依據(jù)。圖5的測試數(shù)據(jù)是包含35萬個物品記錄的數(shù)據(jù)集。測試結(jié)果顯示,θ以0.1的步長不斷遞增,模型MAE值隨其增大,當(dāng)θ取到0.4時,模型MAE值達到峰值,因此,本文系統(tǒng)的超參數(shù)θ取0.4。

圖5 θ對系統(tǒng)性能影響Fig.5 The effect of θ on system performance

(3)距離定義方法對系統(tǒng)性能的影響。Reco是Struct、Content和Ens(集成模型)的綜合,對tm采用Content辦法,對th和tp采用Ens方法。圖6的測試結(jié)果顯示,系統(tǒng)采用Reco時性能最好,隨著數(shù)據(jù)量增大,MAE波動平穩(wěn)。Struct和Content結(jié)果較為接近,Content的效果略優(yōu),尤其是在數(shù)據(jù)集全為tm時(數(shù)據(jù)集為50 000),Content優(yōu)勢凸顯,因為50 000數(shù)據(jù)集的物品全為tm,tm的結(jié)構(gòu)是一個葉子節(jié)點,沒辦法通過結(jié)構(gòu)度量tm與tm之間的相似程度,此時,系統(tǒng)處于隨機狀態(tài)。

圖6 距離度量方法對系統(tǒng)性能影響Fig.6 The effect of distance measure method on system performance

(4)推薦系統(tǒng)性能對比實驗。圖7的實驗結(jié)果顯示,本文模型RecoModel較純CB模型有約10%的MAE優(yōu)勢,同時,在數(shù)據(jù)量小于70 000前純CF模型的MAE高于RecoModel的MAE,但當(dāng)數(shù)據(jù)量大于70 000后,CF模型的MAE小于RecoModel的MAE并迅速下降。在穩(wěn)定性方面,RecoModel的MAE基本在83%~85%之間變化,且波動率不大,較純CB模型和純CF模型更穩(wěn)定。

圖7 推薦算法對比實驗Fig.7 The comparison experiment on Recommended algorithms

4 結(jié)論

本文遵循以物品為主、用戶為輔的原則,在考慮推薦物品具體形態(tài)的基礎(chǔ)上,針對生產(chǎn)制造基礎(chǔ)信息BOM,實現(xiàn)可集成到現(xiàn)有生產(chǎn)制造系統(tǒng)的推薦系統(tǒng)。系統(tǒng)涵蓋三個模塊:用戶主動定制自身偏好模塊、推薦引擎、包含數(shù)據(jù)存儲和處理部分的用戶興趣挖掘模塊。自下而上看,系統(tǒng)在數(shù)據(jù)存儲和處理時,全面分析BOM中物品、半成品、成品等所包含的特征,提出基于內(nèi)容相似、BOM結(jié)構(gòu)相似及兩者集成的相似距離定義辦法,根據(jù)物品特征選擇合適的相似距離定義公式,并以距離為基準劃分物品的主題或分類。同時,基于用戶瀏覽產(chǎn)生的歷史記錄或用戶自行定義的自身偏好量化用戶興趣、定義用戶近似公式。最后由推薦引擎結(jié)合物品與用戶,實現(xiàn)包括基于內(nèi)容推薦和基于協(xié)同過濾在內(nèi)的組合推薦,決策出用戶所需的推薦列表。處理冷啟動時,引入頻繁集搜索算法,并結(jié)合生命周期的概念,在篩除過時集的基礎(chǔ)上再形成頻繁集合以提高推薦命中率。實驗表明,本文推薦模型能為用戶提供有效的近似搜索功能,是現(xiàn)有生產(chǎn)集成信息系統(tǒng)的補充,同時能有效推薦用戶所需信息,有效降低其主動搜索信息所耗費的精力。

猜你喜歡
半成品物品標簽
稱物品
裝飾石材半成品板補膠、定厚技術(shù)操作(二)
石材(2022年2期)2022-05-25 13:04:26
裝飾石材半成品板補膠、定厚技術(shù)操作(一)
石材(2022年1期)2022-05-23 12:48:16
“雙十一”,你搶到了想要的物品嗎?
半成品飯菜成新寵
食品界(2020年4期)2020-05-03 14:00:07
誰動了凡·高的物品
無懼標簽 Alfa Romeo Giulia 200HP
車迷(2018年11期)2018-08-30 03:20:32
不害怕撕掉標簽的人,都活出了真正的漂亮
海峽姐妹(2018年3期)2018-05-09 08:21:02
標簽化傷害了誰
找物品
潞西市| 神农架林区| 鹤山市| 津市市| 遂川县| 临沂市| 平罗县| 吴江市| 乌鲁木齐市| 大英县| 白城市| 山东| 巴林右旗| 年辖:市辖区| 宝丰县| 日喀则市| 唐山市| 界首市| 灵宝市| 英山县| 信宜市| 襄城县| 祁门县| 金湖县| 临城县| 罗甸县| 上饶县| 梅河口市| 五原县| 新营市| 内黄县| 高尔夫| 莒南县| 遵义县| 如东县| 大渡口区| 吴川市| 大邑县| 南乐县| 民权县| 上蔡县|