欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法與流程

文檔序號:12124120閱讀:573來源:國知局
一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法與流程

本發(fā)明涉及網(wǎng)絡(luò)科學(xué)、機器學(xué)習領(lǐng)域,特別是涉及一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法。



背景技術(shù):

隨著科技發(fā)展,開源軟件(Open Source Software,OSS)項目的眾多優(yōu)勢逐漸被人們所認可,參考文獻1(Q.Xuan,M.Gharehyazie,P.T.Devanbu,and V.Filkov,"Measuring the Effect of Social Communications on Individual Working Rhythms:A Case Study of Open Source Software,"in International Conference on Social Informatics,2012,pp.78-85.1,即Q.Xuan,M.Gharehyazie,P.T.Devanbu,and V.Filkov,社交情況對工作節(jié)奏的影響研究:以開源軟件項目為例,in International Conference on Social Informatics,2012,pp.78-85.1)。為有效地保持一個OSS項目的成功,利用其公開的項目數(shù)據(jù)信息進行可靠的判斷和預(yù)測顯得尤為重要。近些年網(wǎng)絡(luò)科學(xué)的發(fā)展,可以讓我們更好地計算人與人之間的社會行為信息,比如鏈路預(yù)測,參考文獻2(M.Fire,L.Tenenboim,O.Lesser,R.Puzis,L.Rokach,and Y.Elovici,"Link Prediction in Social Networks Using Computationally Efficient Topological Features,"in PASSAT/SocialCom 2011,Privacy,Security,Risk and Trust(PASSAT),2011 IEEE Third International Conference on and 2011 IEEE Third International Confernece on Social Computing(SocialCom),Boston,MA,USA,9-11 Oct.,2011,2011,pp.73-80.0,即M.Fire,L.Tenenboim,O.Lesser,R.Puzis,L.Rokach,and Y.Elovic,在社交網(wǎng)絡(luò)中使用計算有效的拓撲特性的鏈路預(yù)測,in PASSAT/SocialCom 2011,Privacy,Security,Risk and Trust(PASSAT),2011 IEEE Third International Conference on and 2011 IEEE Third International Confernece on Social Computing(SocialCom),Boston,MA,USA,9-11 Oct.,2011,2011,pp.73-80.0),節(jié)點重要性判斷,參考文獻3(L.Lü,D.Chen,X.-L.Ren,Q.-M.Zhang,Y.-C.Zhang,and T.Zhou,"Vital nodes identification in complex networks,"Physics Reports,2016.0,即L.Lü,D.Chen,X.-L.Ren,Q.-M.Zhang,Y.-C.Zhang,and T.Zhou,復(fù)雜網(wǎng)絡(luò)中的重要節(jié)點識別,Physics Reports,2016.0),社區(qū)發(fā)現(xiàn),參考文獻4(B.Cai,H.Wang,H.Zheng,and H.Wang,"An improved random walk based clustering algorithm for community detection in complex networks,"in IEEE International Conference on Systems,Man,and Cybernetics,2011,pp.2162-2167,即B.Cai,H.Wang,H.Zheng,and H.Wang,一種改進的基于隨機游走的復(fù)雜網(wǎng)絡(luò)聚類檢測算法,in IEEE International Conference on Systems,Man,and Cybernetics,2011,pp.2162-2167)等,然而很多時候這些單一的分析方法在復(fù)雜的環(huán)境中均不能很好地適用。因此,結(jié)合其他領(lǐng)域的技術(shù)來進行分析預(yù)測成為當前較為有效的方法。

如今,機器學(xué)習已應(yīng)用于多個領(lǐng)域。例如:Bing N曾利用機器學(xué)習方法預(yù)測醫(yī)藥領(lǐng)域中藥物與酶相互作用網(wǎng)絡(luò)關(guān)系,參考文獻5(Bing N,Zhang Y,Ding J,et al.Predicting network of drug–enzyme interaction based on machine learning method[J].Biochimica Et BiophysicaActa,2014,1844(1):214-223,即Bing N,Zhang Y,Ding J,et al.,基于機器學(xué)習方法的藥物-酶相互作用的網(wǎng)絡(luò)預(yù)測,Biochimica Et BiophysicaActa,2014,1844(1):214-223);Robles J A T利用機器學(xué)習對股票市場的波動性進行分析從而預(yù)警金融危機的出現(xiàn),參考文獻6(Son I S,Oh K J,Kim T Y,et al.An early warning system for global institutional investors at emerging stock markets based on machine learning forecasting[J].Expert Systems with Applications,2009,36(3):4951-4957,即Son I S,Oh K J,Kim T Y,et al.,基于機器學(xué)習的全球新興股票投資預(yù)警系統(tǒng),Expert Systems with Applications,2009,36(3):4951-4957);Facebook,亞馬遜等網(wǎng)頁利用機器學(xué)習識別出用戶真正感興趣的信息等等。只要給定的數(shù)據(jù)集覆蓋的范圍足夠廣,數(shù)量足夠大,機器學(xué)習就能訓(xùn)練出很好的模型,從而能夠更好的實現(xiàn)分析預(yù)測。

因此,結(jié)合網(wǎng)絡(luò)科學(xué)中的節(jié)點排序算法以及機器學(xué)習算法來對OSS項目中開發(fā)者的預(yù)測成為一種可行性較高的方法。



技術(shù)實現(xiàn)要素:

為了克服現(xiàn)有的機器學(xué)習方法的無法準確預(yù)測某位程序員是否晉升為項目實際開發(fā)者的不足,本發(fā)明的目的是基于OSS項目中的Email通訊數(shù)據(jù)來預(yù)測項目當前晉升的開發(fā)者(從一個單純的討論者變成一個實際的代碼貢獻者)。本發(fā)明提出一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法,根據(jù)Apache項目中程序員之間的郵件交流信息,搭建不同種類的網(wǎng)絡(luò),應(yīng)用不同的網(wǎng)絡(luò)節(jié)點排序算法獲得多個特征,然后應(yīng)用機器學(xué)習算法訓(xùn)練分類器,用于預(yù)測某位程序員是否晉升為項目實際開發(fā)者。

本發(fā)明實現(xiàn)上述發(fā)明目的所采用的技術(shù)方案為:

一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法,包括以下步驟:

S1:根據(jù)OSS項目獲得的Email數(shù)據(jù),同時結(jié)合項目的時效特性,分別搭建六種不同的網(wǎng)絡(luò):無向無權(quán)網(wǎng)絡(luò)、無向有權(quán)網(wǎng)絡(luò)、無向時效網(wǎng)絡(luò)、有向無權(quán)網(wǎng)絡(luò)、有向有權(quán)網(wǎng)絡(luò)和有向時效網(wǎng)絡(luò);

S2:采用節(jié)點排序算法Degree-Based,PageRank,LeaderRank,Hits得出不同網(wǎng)絡(luò)中各個節(jié)點的分值,同時利用網(wǎng)絡(luò)拓撲結(jié)構(gòu),得到每個節(jié)點的特征向量中心性和聚類系數(shù);

S3:將同種類型的Email網(wǎng)絡(luò)合并,每個節(jié)點即作為一個樣本,將上述步驟S2不同算法和網(wǎng)絡(luò)特性得到的分值排名作為特征,樣本標簽為是或者不是開發(fā)者,構(gòu)成一個分類器,同時,用欠采樣的方法預(yù)處理樣本數(shù)據(jù);

S4:隨機抽取處理后的總樣本的80%作為訓(xùn)練樣本,20%作為測試樣本,采用Bayesian算法進行機器學(xué)習,并對測試樣本進行測試。

進一步,所述步驟S1中,無向無權(quán)網(wǎng)絡(luò)Nc(V,L,A,T),V表示網(wǎng)絡(luò)中n個節(jié)點集合,L表示節(jié)點與節(jié)點的連邊集合,A表示網(wǎng)絡(luò)的鄰接矩陣,T表示每個開發(fā)者出現(xiàn)的時刻;

無向有權(quán)網(wǎng)絡(luò)Nc(V,L,W,T)中V,L,T與上述相同,W表示網(wǎng)絡(luò)的權(quán)重鄰接矩陣,與矩陣A不同在于,Wij等于節(jié)點i與節(jié)點j之間的Email數(shù)量;

無向時效網(wǎng)絡(luò)Nσ(V,L,Uσ,T)中V,L,T與上述相同,Uσ是時間窗σ內(nèi)的一個矩陣

對于給定的σ,主要考慮[T-σ,T]的時間段內(nèi)節(jié)點之間的相互通信;

有向無權(quán)網(wǎng)絡(luò)中V,T與上述相同,表示有向邊集合,即表示的是節(jié)點i存在指向節(jié)點j的有向邊,而僅且表示節(jié)點j存在指向節(jié)點i的有向邊,在中如果僅有節(jié)點i向節(jié)點j發(fā)送郵件,則

有向有權(quán)網(wǎng)絡(luò)中與上述相同,表示節(jié)點j向節(jié)點i發(fā)送的郵件數(shù),表示的是節(jié)點i向節(jié)點j發(fā)送的郵件數(shù);

有向時效網(wǎng)絡(luò)中與上述相同,表示在時間窗σ內(nèi)的一個矩陣,其中

再進一步,所述步驟S2中,在算法Degree-Based中,考慮節(jié)點的直接影響力,節(jié)點的度指與該節(jié)點直接相連的邊的數(shù)目,度的大小即作為該項特征的分值;

在算法PageRank中,以有向無權(quán)網(wǎng)絡(luò)為例,特征分值為

其中

為節(jié)點j的出邊的數(shù)量,則

X=PX

其中X=[x1,x2,…,xn],P=[pij]n×n

為了防止非連通網(wǎng)絡(luò)引起的非唯一排列問題,矩陣P被替換為Q:

其中得到X=QX。為得更一般的結(jié)果,同時防止數(shù)值過大,對該式采用如此迭代計算:

在算法LeaderRank中,以有向無權(quán)網(wǎng)絡(luò)為例,在原有網(wǎng)絡(luò)中增加一個背景節(jié)點,與其他所有節(jié)點做雙向連接,特征分值為

同樣的經(jīng)過迭代運算:

得到一般性結(jié)果,之后將增加的背景節(jié)點分值平均分配個原網(wǎng)絡(luò)中的所有節(jié)點,得到特征分值:

在Hits算法中,給每個節(jié)點賦予了兩個參數(shù):權(quán)威中心性xi和核心中心性yi

其中α,β均為常數(shù);

因為兩個參數(shù)都與指向性有關(guān),所以Hits算法只針對有向網(wǎng)絡(luò)進行分析。為使結(jié)果歸一化,同時保持數(shù)量級不變,進行迭代計算:

在無向網(wǎng)絡(luò)中,由于節(jié)點的邊沒有方向性,指向一個節(jié)點與被一個節(jié)點指向并沒有區(qū)別,定義一個等同于權(quán)威中心性和核心中心性的重要分數(shù)zi,zi在無向無權(quán)網(wǎng)絡(luò)、無向有權(quán)網(wǎng)絡(luò)、無向時效網(wǎng)絡(luò)中,分別表示為:

在特征向量中心性中,特征分值為

為得到一般性結(jié)果同時保持數(shù)量級相等,進行迭代計算:

在聚類系數(shù)中,描述的是網(wǎng)絡(luò)中節(jié)點的鄰居中實際存在的邊與該點鄰居中可能存在的邊的比值,特征分值為

更進一步,所述步驟S3中,網(wǎng)絡(luò)合并后的節(jié)點個數(shù)多于原有所有項目用戶數(shù)總和,因為不同時刻網(wǎng)絡(luò)存在同一個節(jié)點??紤]到了在一個時刻里只存在一個剛晉升的開發(fā)者,即在一個時刻,正標簽的樣本只有一個,導(dǎo)致數(shù)據(jù)樣本不均衡,因此采用欠采樣隨機刪除部分負標簽樣本。同時,對特征分值進行歸一化處理來消除不同算法分值不同而影響結(jié)果,采用的是每個分值排名的百分比作為樣本的特征值。

所述步驟S4中,利用Matlab機器學(xué)習工具包,對預(yù)處理之后的數(shù)據(jù)樣本總量的80%采用Bayesian算法進行學(xué)習,然后對剩余數(shù)據(jù)進行測試,測試預(yù)測準確率。

本發(fā)明的技術(shù)構(gòu)思為:鑒于網(wǎng)絡(luò)節(jié)點排序算法預(yù)測準確性不高,本發(fā)明提出一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法,利用多種網(wǎng)絡(luò)節(jié)點排序算法得到各個節(jié)點相應(yīng)算法的特征分值,同時結(jié)合網(wǎng)絡(luò)的拓撲性質(zhì)得到參數(shù)特征向量中心性和聚類系數(shù),對特征分值和參數(shù)排名分別做歸一化處理,將處理后的分值排名作為每個節(jié)點的特征值,輸入機器學(xué)習分類器,采用Bayesian算法對樣本進行學(xué)習,達到良好的預(yù)測效果。

與現(xiàn)有的技術(shù)相比,本發(fā)明的有益效果是:采用網(wǎng)絡(luò)節(jié)點排序算法和機器學(xué)習方法相結(jié)合的方法,通過對現(xiàn)有的數(shù)據(jù)進行分析,有效的預(yù)測出開源軟件項目中的開發(fā)者,相比單一的節(jié)點排序算法,顯著的提高了預(yù)測的準確率。

附圖說明

圖1為本發(fā)明實施例的基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法流程圖。

圖2為Bayesian算法和節(jié)點排名算法在無向時效網(wǎng)絡(luò)(時間窗1月)下的ROC。

圖3為Bayesian算法和節(jié)點排名算法在無向時效網(wǎng)絡(luò)(時間窗1月)下的誤差率。

具體實施方式

下面結(jié)合說明書附圖對本發(fā)明做進一步說明。

參照圖1~圖3,一種基于Email網(wǎng)絡(luò)的開源軟件項目開發(fā)者預(yù)測方法,本發(fā)明使用Apache上的OSS項目相關(guān)數(shù)據(jù)預(yù)測項目的開發(fā)者。表1為OSS項目主要數(shù)據(jù)信息,其中To是項目第一封郵件發(fā)送時刻,Tf是項目目結(jié)束時刻,Nu是項目總程序員數(shù)量,Nd開發(fā)者數(shù)量,Ne是郵件總數(shù)量。附圖2中采用ROC曲線和曲線下的面積AUC作為評價指標的各種算法預(yù)測結(jié)果圖,其中X軸為“假正例率”(False Positive Rate,簡稱FPR),Y軸為“真正例率”(True Positive Rate,簡稱TPR),預(yù)測效果更好的算法將會有更大的AUC值。

表1

本發(fā)明包括以下步驟:

S1:根據(jù)OSS項目獲得的Email數(shù)據(jù),同時結(jié)合項目的時效特性,分別搭建六種不同的網(wǎng)絡(luò):無向無權(quán)網(wǎng)絡(luò)、無向有權(quán)網(wǎng)絡(luò)、無向時效網(wǎng)絡(luò)、有向無權(quán)網(wǎng)絡(luò)、有向有權(quán)網(wǎng)絡(luò)、有向時效網(wǎng)絡(luò)。

S2:采用節(jié)點排序算法Degree-Based,PageRank,LeaderRank,Hits得出不同網(wǎng)絡(luò)中各個節(jié)點的分值,同時利用網(wǎng)絡(luò)拓撲結(jié)構(gòu),得到每個節(jié)點的特征向量中心性和聚類系數(shù)。

S3:將同種類型的Email網(wǎng)絡(luò)合并,每個節(jié)點即作為一個樣本,將上述步驟S2不同算法和網(wǎng)絡(luò)特性得到的分值排名作為特征,樣本標簽為是或者不是開發(fā)者,構(gòu)成一個分類器。同時,用欠采樣的方法預(yù)處理樣本數(shù)據(jù)。

S4:隨機抽取處理后的總樣本的80%作為訓(xùn)練樣本,20%作為測試樣本,采用Bayesian算法進行機器學(xué)習,并對測試樣本進行測試。

進一步,所述步驟S1中,無向無權(quán)網(wǎng)絡(luò)Nc(V,L,A,T),V表示網(wǎng)絡(luò)中n個節(jié)點集合,L表示節(jié)點與節(jié)點的連邊集合,A表示網(wǎng)絡(luò)的鄰接矩陣,T表示每個開發(fā)者出現(xiàn)的時刻;

無向有權(quán)網(wǎng)絡(luò)Nc(V,L,W,T)中V,L,T與上述相同,W表示網(wǎng)絡(luò)的權(quán)重鄰接矩陣,與矩陣A不同在于,Wij等于節(jié)點i與節(jié)點j之間的Email數(shù)量;

無向時效網(wǎng)絡(luò)Nσ(V,L,Uσ,T)中V,L,T與上述相同,Uσ是時間窗σ內(nèi)的一個矩陣

對于給定的σ,主要考慮[T-σ,T]的時間段內(nèi)節(jié)點之間的相互通信;

有向無權(quán)網(wǎng)絡(luò)中V,T與上述相同,表示有向邊集合,即表示的是節(jié)點i存在指向節(jié)點j的有向邊,而僅且表示節(jié)點j存在指向節(jié)點i的有向邊,在中如果僅有節(jié)點i向節(jié)點j發(fā)送郵件,則

有向有權(quán)網(wǎng)絡(luò)中與上述相同,表示節(jié)點j向節(jié)點i發(fā)送的郵件數(shù),表示的是節(jié)點i向節(jié)點j發(fā)送的郵件數(shù);

有向時效網(wǎng)絡(luò)中與上述相同,表示在時間窗σ內(nèi)的一個矩陣,其中

所述步驟S2中,在算法Degree-Based中,考慮節(jié)點的直接影響力,節(jié)點的度指與該節(jié)點直接相連的邊的數(shù)目,度的大小即作為該項特征的分值;

在算法PageRank中,以有向無權(quán)網(wǎng)絡(luò)為例,特征分值為

其中

為節(jié)點j的出邊的數(shù)量,則

X=PX

其中X=[x1,x2,…,xn],P=[pij]n×n

為了防止非連通網(wǎng)絡(luò)引起的非唯一排列問題,矩陣P被替換為Q:

其中得到X=QX。為得更一般的結(jié)果,同時防止數(shù)值過大,對該式采用如此迭代計算:

在算法LeaderRank中,以有向無權(quán)網(wǎng)絡(luò)為例,在原有網(wǎng)絡(luò)中增加一個背景節(jié)點,與其他所有節(jié)點做雙向連接,特征分值為

同樣的經(jīng)過迭代運算:

得到一般性結(jié)果,之后將增加的背景節(jié)點分值平均分配個原網(wǎng)絡(luò)中的所有節(jié)點,得到特征分值:

在Hits算法中,給每個節(jié)點賦予了兩個參數(shù):權(quán)威中心性xi和核心中心性yi

其中α,β均為常數(shù)。

因為兩個參數(shù)都與指向性有關(guān),所以Hits算法只針對有向網(wǎng)絡(luò)進行分析。為使結(jié)果歸一化,同時保持數(shù)量級不變,進行迭代計算:

在無向網(wǎng)絡(luò)中,由于節(jié)點的邊沒有方向性,指向一個節(jié)點與被一個節(jié)點指向并沒有區(qū)別,定義一個等同于權(quán)威中心性和核心中心性的重要分數(shù)zi,zi在無向無權(quán)網(wǎng)絡(luò)、無向有權(quán)網(wǎng)絡(luò)、無向時效網(wǎng)絡(luò)中,分別表示為:

在特征向量中心性中,特征分值為

為得到一般性結(jié)果同時保持數(shù)量級相等,進行迭代計算:

在聚類系數(shù)中,描述的是網(wǎng)絡(luò)中節(jié)點的鄰居中實際存在的邊與該點鄰居中可能存在的邊的比值,特征分值為

所述步驟S3中,網(wǎng)絡(luò)合并后的節(jié)點個數(shù)多于原有所有項目用戶數(shù)總和,因為不同時刻網(wǎng)絡(luò)存在同一個節(jié)點??紤]到了在一個時刻里只存在一個剛晉升的開發(fā)者,即在一個時刻,正標簽的樣本只有一個,導(dǎo)致數(shù)據(jù)樣本不均衡,因此采用欠采樣隨機刪除部分負標簽樣本。同時,對特征分值進行歸一化處理來消除不同算法分值不同而影響結(jié)果,采用的是每個分值排名的百分比作為樣本的特征值。

所述步驟S4中,利用Matlab機器學(xué)習工具包,對預(yù)處理之后的數(shù)據(jù)樣本總量的80%采用Bayesian算法進行學(xué)習,然后對剩余數(shù)據(jù)進行測試,測試預(yù)測準確率。

如上所述為本發(fā)明在OSS項目開發(fā)者預(yù)測的實施例介紹,本發(fā)明通過OSS項目中的Email數(shù)據(jù)搭建網(wǎng)絡(luò),利用多種網(wǎng)絡(luò)節(jié)點排序算法得到各個節(jié)點相應(yīng)算法的特征分值,同時結(jié)合網(wǎng)絡(luò)的拓撲性質(zhì)得到參數(shù)特征向量中心性和聚類系數(shù),對特征分值和參數(shù)排名分別做歸一化處理,將處理后的分值排名作為每個節(jié)點的特征值,輸入機器學(xué)習分類器,采用Bayesian算法對樣本進行學(xué)習,而后對測試樣本進行預(yù)測。最終的預(yù)測結(jié)果相比當前各類網(wǎng)絡(luò)節(jié)點排序算法在準確率上有了顯著的提高。對發(fā)明而言僅僅是說明性的,而非限制性的。本專業(yè)技術(shù)人員理解,在發(fā)明權(quán)利要求所限定的精神和范圍內(nèi)可對其進行許多改變,修改,甚至等效,但都將落入本發(fā)明的保護范圍內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
翁牛特旗| 拜城县| 平顶山市| 勃利县| 寿光市| 罗甸县| 当阳市| 化州市| 平舆县| 正定县| 罗甸县| 鹰潭市| 仁布县| 滕州市| 彰武县| 顺义区| 怀柔区| 贵州省| 华阴市| 新津县| 泰和县| 太仓市| 马山县| 南投市| 米脂县| 东莞市| 环江| 佳木斯市| 福海县| 富顺县| 手游| 托里县| 台东县| 措美县| 玉门市| 淳化县| 延长县| 乌拉特前旗| 凤山市| 正蓝旗| 池州市|