亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于線程池的社交網(wǎng)絡(luò)影響力最大化

        2022-08-31 00:54:38賈蘇符精晶張君
        電腦知識(shí)與技術(shù) 2022年19期

        賈蘇 符精晶 張君

        摘要:互聯(lián)網(wǎng)的發(fā)展也帶動(dòng)了社會(huì)網(wǎng)絡(luò)的發(fā)展,但社會(huì)網(wǎng)絡(luò)規(guī)模較大,網(wǎng)絡(luò)結(jié)構(gòu)較為稀疏,都給實(shí)際應(yīng)用帶來(lái)了挑戰(zhàn),且單線程算法對(duì)算力的使用不充分,因此在單機(jī)上開(kāi)展了對(duì)算法并行化研究,使用線程池技術(shù),通過(guò)實(shí)驗(yàn)證明減少了算法運(yùn)行的實(shí)際時(shí)間。

        關(guān)鍵詞:社會(huì)網(wǎng)絡(luò);影響力最大化;線程池

        中圖分類號(hào):TP391? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

        文章編號(hào):1009-3044(2022)19-0119-03

        1 引言

        隨著互聯(lián)網(wǎng)的快速發(fā)展,越來(lái)越多的人開(kāi)始從傳統(tǒng)的線下社交轉(zhuǎn)移到線上社交,這給社交網(wǎng)絡(luò)[1]的發(fā)展帶來(lái)了前所未有的機(jī)遇,涌現(xiàn)出了一批像Facebook、Twitter、QQ等知名互聯(lián)網(wǎng)社交產(chǎn)品。社交網(wǎng)絡(luò)在方便人們溝通的同時(shí),也會(huì)影響著人們實(shí)際的社會(huì)行為,這給我們對(duì)社交網(wǎng)絡(luò)的分析與應(yīng)用帶來(lái)了機(jī)遇,比如商家想要通過(guò)在線上的活躍用戶的推薦獲取其銷量上的提升,也就是病毒式營(yíng)銷(virtal -marketing)[2]。病毒式營(yíng)銷基于具有較大影響力的個(gè)體群體向其他的個(gè)體進(jìn)行推薦,感化其他不具有購(gòu)買意愿的個(gè)體,因此如何找出社交網(wǎng)絡(luò)中影響力最大的群體是病毒式營(yíng)銷開(kāi)展的關(guān)鍵。

        影響力最大化問(wèn)題(Influence Maximization)最先由Domingos和Richardson等人[3]提出并定義,Kempe等人[4]在此基礎(chǔ)上進(jìn)一步研究,提出了top-k的影響力最大化問(wèn)題,并證明了影響力最大化問(wèn)題是一個(gè)NP-hard問(wèn)題。并提出了一個(gè)貪心算法,可以保證在[1-1/e]的范圍內(nèi)接近最優(yōu)解。

        2 背景知識(shí)

        2.1 影響力最大化問(wèn)題(Influence Maximization)

        將社交網(wǎng)絡(luò)抽象為一個(gè)圖[G=V,E],其中[V]是網(wǎng)絡(luò)中個(gè)體的集合,[E]是網(wǎng)絡(luò)中個(gè)體之間關(guān)系的集合。網(wǎng)絡(luò)中的個(gè)體我們使用[v∈V]來(lái)代表,節(jié)點(diǎn)[v]的狀態(tài)有兩種,一種是活躍(active),在營(yíng)銷中表示具有購(gòu)買欲望,另一種是不活躍(inactive),營(yíng)銷中表示不具有購(gòu)買欲望。個(gè)體間的關(guān)系使用[e∈E] 來(lái)代表。網(wǎng)絡(luò)上不同節(jié)點(diǎn)之間的影響力是不同的,我們使用[Pu,v→(0,1)] 代表節(jié)點(diǎn)[u]對(duì)節(jié)點(diǎn)[v]的影響力即集合E中邊[u,v]上的值。

        影響力最大化問(wèn)題就是希望從[V]中選擇k(0<=k<=|V|)個(gè)節(jié)點(diǎn)作為種子集合[S],種子集合中所有節(jié)點(diǎn)的狀態(tài)均為活躍。非種子集合的節(jié)點(diǎn)均為不活躍。然后在擴(kuò)散模型下,種子集合中的節(jié)點(diǎn)去激活非激活狀態(tài)的節(jié)點(diǎn)。節(jié)點(diǎn)一旦激活便不再改變。我們希望最終的被激活的節(jié)點(diǎn)是最多的,即找到這樣的一個(gè)種子集合[S]:

        [S*=argmaxInf(S)]

        表示種子集合S的影響力擴(kuò)散的大小。

        2.2 影響力傳播模型-獨(dú)立級(jí)聯(lián)模型(Independent Cascade Model)

        獨(dú)立級(jí)聯(lián)模型[4-6]最初是Jacob Goldenberg提出,是一個(gè)離散的概率模型。在此模型下,節(jié)點(diǎn)的狀態(tài)分為兩種,一種是激活狀態(tài),另一種是不激活狀態(tài)。激活狀態(tài)的節(jié)點(diǎn)會(huì)嘗試激活不激活狀態(tài)的節(jié)點(diǎn),節(jié)點(diǎn)對(duì)節(jié)點(diǎn)的激活作用是相互獨(dú)立的,不會(huì)累積,而且只能嘗試激活一次,只能從不激活狀態(tài)變?yōu)榧せ顮顟B(tài)且激活之后狀態(tài)不再發(fā)生改變。節(jié)點(diǎn)間激活狀態(tài)的改變模擬了信息的傳播,在此傳播模型下,連續(xù)的信息傳播被分解為獨(dú)立、離散的過(guò)程,也更有利于分析統(tǒng)計(jì)。

        Kempe首次使用獨(dú)立級(jí)聯(lián)模型作為影響力傳播的模型,節(jié)點(diǎn)激活的狀態(tài)代表節(jié)點(diǎn)被影響力影響了,處于非激活的狀態(tài)代表此時(shí)節(jié)點(diǎn)尚未被影響。此模型下的影響力傳播過(guò)程如下:

        初始時(shí)刻[t=0], 網(wǎng)絡(luò)中只有種子節(jié)點(diǎn)處于激活狀態(tài),其余非種子節(jié)點(diǎn)處于未激活狀態(tài)。

        在任意時(shí)刻[t>0] , 任意一個(gè)[t-1]時(shí)刻被激活的節(jié)點(diǎn)[u]有且僅有一次機(jī)會(huì)以概率[puv]去嘗試激活它的每一個(gè)處于非激活狀態(tài)的鄰居[v]。[puv]是節(jié)點(diǎn)[u]和[v]邊上的傳播概率。

        如果存在多個(gè)處于激活狀態(tài)的節(jié)點(diǎn)同時(shí)嘗試激活它們的共同鄰居節(jié)點(diǎn)[v],按照獨(dú)立級(jí)聯(lián)模型的定義,節(jié)點(diǎn)間的激活順序是獨(dú)立的,那么這些節(jié)點(diǎn)以隨機(jī)且獨(dú)立的順序去嘗試激活[v],一旦激活,節(jié)點(diǎn)[v]的狀態(tài)即改變,不再受其他節(jié)點(diǎn)的影響。

        在[t]時(shí)刻被激活的節(jié)點(diǎn),會(huì)在[t+1]時(shí)刻也嘗試激活其鄰居節(jié)點(diǎn)。

        重復(fù)上述過(guò)程,直到某一個(gè)時(shí)刻網(wǎng)絡(luò)中不再有新的節(jié)點(diǎn)被激活,影響力傳播過(guò)程終止。此時(shí),網(wǎng)絡(luò)中被激活的非種子節(jié)點(diǎn)數(shù)就是此種子集合影響力的規(guī)模。

        3 影響力最大化算法及其多線程實(shí)現(xiàn)

        影響力最大化的貪心算法如下:

        其中[InfS?v] 為種子集合加入節(jié)點(diǎn)[v]之后的影響力規(guī)模,為了準(zhǔn)確地度量,我們使用Monto-carlo模擬來(lái)模擬影響力擴(kuò)散的過(guò)程。由于每加入一個(gè)節(jié)點(diǎn)都需要多次的模擬,所以造成了算法所需要的時(shí)間很高。解決此問(wèn)題有兩種思路:第一種是對(duì)其算法進(jìn)行一定的改進(jìn),第二種是使用并行化手段完成算法的運(yùn)行。

        為了縮短算法運(yùn)行所需要的時(shí)間,我們使用了多線程技術(shù)。針對(duì)當(dāng)前機(jī)器核心數(shù)為4,我們使用了大小為4的線程池,其中每一個(gè)線程都去度量在當(dāng)前種子集合的影響力大小,使用Callable接口去持有線程返回的結(jié)果。篩選出具有最大增益的非種子節(jié)點(diǎn)后更新種子集合,完成此輪種子節(jié)點(diǎn)選擇。線程池的使用可以降低傳統(tǒng)多線程創(chuàng)建和銷毀帶來(lái)的開(kāi)銷,并對(duì)線程進(jìn)行了統(tǒng)一的分配和監(jiān)控,處理大量計(jì)算任務(wù)時(shí)其優(yōu)勢(shì)更加明顯。

        使用線程池具體代碼如下:

        private Set select_seeds() throws InterruptedException, ExecutionException {

        // 線程池

        ExecutorService threadPool = Executors.newFixedThreadPool(4);

        // 初始化非種子節(jié)點(diǎn)

        noseeds.addAll(fromNodes);

        for (int i = 0; i < k; i++) {

        Map candidate_Spread = new HashMap<>();

        int ca_c = 0;

        for (Integer candidate : noseeds) {

        if(edges.get(candidate).size() == 0) //當(dāng)節(jié)點(diǎn)->目的節(jié)點(diǎn)的個(gè)數(shù)不為0

        continue;

        int count_Once = 0;

        for (int j = 0; j < 100; j++) { // monto_carlo

        Callable c = new diffusion_Thread(edges, seeds, candidate);

        // 執(zhí)行任務(wù)并獲取Future對(duì)象

        Future f = threadPool.submit(c);

        while (!f.isDone()) { // no execute end loop it

        //System.out.println("? ?In while");

        }

        count_Once += f.get(); // spread的累加

        } //end for

        candidate_Spread.put(candidate, count_Once);

        }

        // refresh seeds

        Optional> max_vlu = candidate_Spread.entrySet().stream()

        .max(Map.Entry.comparingByValue());

        // 這里避免了每次都加入具有最大值spred值的candidate

        if (!seeds.contains(max_vlu.get().getKey())) {

        seeds.add(max_vlu.get().getKey());// 更新seeds

        noseeds.remove(max_vlu.get().getKey());// 從noseeds中刪除當(dāng)前種子

        }

        }

        return seeds;

        }

        4 數(shù)據(jù)集以及實(shí)驗(yàn)結(jié)果

        4.1 數(shù)據(jù)集及實(shí)驗(yàn)相關(guān)設(shè)置

        本文選擇了DBLP數(shù)據(jù)集和LiveJournal作為實(shí)驗(yàn)的數(shù)據(jù)集(來(lái)自:http://snap.stanford.edu/data/com-DBLP.html)。DBLP是一個(gè)關(guān)于科研論文發(fā)表共同作者的網(wǎng)絡(luò),其中如果兩位作者至少發(fā)表一篇論文,則可以將他們聯(lián)系起來(lái),即將作者看成是社交網(wǎng)絡(luò)中的節(jié)點(diǎn),聯(lián)系則是節(jié)點(diǎn)間的邊。LiveJournal是一個(gè)擁有近1000萬(wàn)會(huì)員的免費(fèi)在線社區(qū),它允許成員維護(hù)日志、個(gè)人日志和組日志,并且允許人們標(biāo)記其他成員是他們的朋友。數(shù)據(jù)集的具體的拓?fù)湫畔⑷绫?所示:

        實(shí)驗(yàn)代碼使用Java進(jìn)行編寫,運(yùn)行于Windows10機(jī)器上,處理器為I5 9500,內(nèi)存8GB。實(shí)驗(yàn)中使用獨(dú)立級(jí)聯(lián)模型(IC)作為影響力傳播模型。為了保證實(shí)驗(yàn)結(jié)果的準(zhǔn)確性,我們?cè)O(shè)置蒙特卡洛模擬的次數(shù)[R=2000],這個(gè)過(guò)程也是實(shí)驗(yàn)中最為耗時(shí)的過(guò)程,為了縮短運(yùn)行所需要的時(shí)間,我們?cè)谶@個(gè)過(guò)程中加入了多線程。

        4.2 實(shí)驗(yàn)結(jié)果

        (1) 在DBLP上的實(shí)驗(yàn)結(jié)果

        (2) 在LiveJournal上的實(shí)驗(yàn)結(jié)果

        5 總結(jié)和展望

        本文回顧了社會(huì)網(wǎng)絡(luò)上影響力最大化的發(fā)展及在其上的應(yīng)用—病毒式營(yíng)銷,針對(duì)影響力最大化的貪心算法做出了多線程的實(shí)現(xiàn),在不影響實(shí)驗(yàn)結(jié)果精度的情況下,縮短了實(shí)驗(yàn)運(yùn)行所需要的時(shí)間,并在DBLP和LiveJournal這兩個(gè)真實(shí)的社會(huì)網(wǎng)絡(luò)集合上進(jìn)行了實(shí)驗(yàn),將影響力最大化的貪心算法進(jìn)行了并行化 ,并將實(shí)驗(yàn)運(yùn)行時(shí)使用單線程和線程池所需的時(shí)間進(jìn)行了對(duì)比。實(shí)驗(yàn)證明通過(guò)并行化可以減少算法運(yùn)行的時(shí)間。

        在企業(yè)的實(shí)際操作中,希望很快地獲取他們期待的結(jié)果以供做出相對(duì)應(yīng)的決策。因此,即使加入了多線程,也難以滿足企業(yè)級(jí)的實(shí)時(shí)性。下一步,我們將對(duì)算法進(jìn)行一定的改進(jìn)以提高算法的效率,并使用服務(wù)器集群技術(shù)完成現(xiàn)有計(jì)算任務(wù)。

        參考文獻(xiàn):

        [1] 汪小帆,李翔,陳關(guān)榮.網(wǎng)絡(luò)科學(xué)導(dǎo)論[M].北京:高等教育出版社,2012.

        [2] Bass F M.A new product growth for model consumer durables[J].Management Science,1969,15(5):215-227.

        [3] Domingos P, Richardson M. Mining the network value of customers[J].Proceedings of the 7th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco,USA,2001.

        [4] Kempe . Maximizing the spread of influence through a social network[J]. Proc.of Acm Sigkdd Intl Conf.on Knowledge Discovery & Data Mining, 2003.

        [5] Goldenberg J , Muller L E . Talk of the Network: A Complex Systems Look at the Underlying Process of Word-of-Mouth[J]. Marketing Letters, 2001, 12(3):211-223.

        [6] Goldenberg J, Libai B, Muller E. Using complex systems analysis to advance marketing theory development: Modeling heterogeneity effects on new product growth through stochastic cellular automata[J]. Academy of Marketing Science Review,2001,2001:1.

        收稿日期:2021-09-18

        基金項(xiàng)目:沙洲職業(yè)工學(xué)院青年教師基金(SGJJ2021B09)

        作者簡(jiǎn)介:賈蘇(1993—),江蘇寶應(yīng)人,男,沙洲職業(yè)工學(xué)院電子信息工程系助教;符精晶(1994—),江蘇江都人,女,沙洲職業(yè)工學(xué)院電子信息工程系助教;張君(1986—),江蘇張家港人,男,沙洲職業(yè)工學(xué)院電子信息工程系助教。

        国产精品一区二区av白丝在线| 亚洲欧洲精品无码av| 亚洲精品国产第一区二区尤物 | 综合色免费在线精品视频| 国产69精品久久久久久久| 99精品视频69V精品视频| 欧美在线Aⅴ性色| 北条麻妃在线中文字幕| 97日日碰曰曰摸日日澡| 国产精品爽爽va在线观看无码| 无码久久精品蜜桃| 手机在线观看av资源| 亚洲成a∨人片在线观看不卡| 色狠狠色狠狠综合一区| 蜜桃一区二区三区自拍视频| 自拍视频在线观看首页国产| 天天狠天天添日日拍| 91av手机在线观看| 国产精品丝袜一区二区三区在线| 美丽的小蜜桃在线观看| 久久精品国产亚洲av麻豆| 无码成人片一区二区三区| 91九色精品日韩内射无| 精品久久久久久亚洲综合网| 51久久国产露脸精品国产| 激情中文丁香激情综合| 大陆成人精品自拍视频在线观看 | 日本一区二区国产精品| 国产午夜福利不卡在线观看| 欧美亚洲综合激情在线| av免费在线观看在线观看| 无码av专区丝袜专区| 精品无码人妻一区二区三区| 九月色婷婷免费| 人妻久久一区二区三区| 色噜噜av亚洲色一区二区| 久久国产热精品波多野结衣av| 日韩一区二区三区人妻中文字幕| 精品国产综合区久久久久久| 国产精品揄拍100视频| 亚洲成人av一区二区麻豆蜜桃|