【复杂网络】用户画像不应脱离社会关系,谈复杂网络的关键技术和应用实践
原文鏈接:http://www.sohu.com/a/119515569_470008
本文是11月17日大數據雜談群分享的內容。
關注“大數據雜談”公眾號,點擊“加群學習”,更多大牛一手技術分享等著你。
大家好,我來自天云大數據公司,我叫馬敬濤,主要從事數據科學應用方面的工作。
今天我給大家分享的主題是“復雜網絡理論及應用”,希望本次分享的內容能給大家帶來一些啟發,如果內容中有說的不妥的地方也請大家多多包涵并給予指教,多謝!
復雜網絡概念及價值
在開始之前,我先澄清一個概念,那就是“復雜網絡”和“圖”這兩個概念的關系,這是我們在分析研究這個領域中所經常遇到的兩個名詞。
從根源上來講“復雜網絡”和“圖”描述是同一種事物,都是由“點”和連接“點”的邊所組成的網絡,都是研究“點”與“點”之間相互影響的“關聯關系”,但側重點不一樣。
“圖”是一種數學工具,在數學領域是一門獨立的學科,源于十九世紀的著名“歌尼斯堡七橋問題”,并由此誕生的歐拉“圖論”,歐拉是著名數學家和“圖論”的創始人,他成功的運用“圖”的方法解決了“歌尼斯堡七橋問題”。
可以說,“圖”或者“圖論”是以網絡作為研究對象和組織數據,對其進行分析并發現一些規律,提煉出數學算法,從把規律的研究變成可計算化的數學公式,因此,“圖論”是側重于學術理論的,“圖論”的算法是普適性的,是數學家們關注的方向。
“復雜網絡”源于“圖論”,它的側重點是面向于工程,是將“圖論”的理論帶入到現實的生活生產中,結合圖算法理論、應用場景以及科學技術等方面能力,幫助我們去觀察和理解真實的客觀世界。
隨著大數據技術應用,“大規模復雜網絡”或者稱之為“大圖”的應用能力已成為了現實,舉個例子我們現在用的微信,可以構造出一張數億節點和數十億條邊的復雜網絡,節點代表一個人,邊就代表人與人之間的朋友關系,微博、電信通話等領域同樣如此。
總之,只要是能夠對客觀世界抽象出網絡的場景,都是復雜網絡所要研究的領域。
基本概念說完了,下面我們從“還原論”的角度開啟“復雜網絡”的里程。
我們都知道一個道理,那就是“化繁為簡”,把一個復雜的事物或事情,進行拆解,變成多個簡單的事物或組成物,通過分析這些簡單的再去理解復雜的,這就是“還原論”,它是一套哲學思想,我們不能否認這套哲學思想的價值,這么多年的科學發展都是沿著這套屢試不爽的哲學理論不斷前進著,它的貢獻是值得歌頌的,而且以后也會繼續存在著。
但是,只有“還原論”還是不夠的。
因為,自然界是一個復雜系統,并不是一個設計良好并只有一個答案的謎題,如果我們只是孤立的去看待一個事物本身并對其進行拆解研究,會發現,很多問題我們仍然沒有得到很好的答案,比如,我們對生命的研究已經進入到了分子理論—“基因理論”,也確實發現不少癌癥的致病基因,但是,你能確定“一個有癌癥基因的人真的會患癌癥嗎?”,答案是“不”,
為什么呢? 因為,我們在“還原論”的高速公路上撞上了“復雜性”。
我們所生活的世界,每一草、每一木,每一個人以及每一個事物都不是孤立存在,他們存在于自然界,并自組織成為一個良好、穩定且嚴格的架構,并且萬事萬物都是相互存在著聯系,并相互影響著,我們看到的每一個現象的發生,都只是一個表象或者結果,個體的改變只是在行使著過程,最重要的更是其背后所蘊藏巨大的復雜性,慶幸的是,科學界已經發現了這個背后的嚴格架構,并將其抽象出網絡的形態,我們見證一個正在醞釀的變革,網絡將以前所未有的程度主宰這個新世紀。
講到這里,希望大家開始有所感悟,能夠體會到“網絡”這只無形的手,在操控著萬事萬物的發展變化。
“復雜網絡”雖然發展時間不長,但這個概念不是隨便說說的,著名的科學家錢學森先生,給出了復雜網絡一個嚴格的定義:具有自組織、自相似、吸引子、小世界、無標度中部分或全部性質的網絡稱為復雜網絡。
復雜網絡主要有以下幾個特點:
第1,結構復雜,不用解釋太多,自然界就是復雜的,抽象出來的網絡也是復雜的。
第2,網絡進化,世界在發展,代表它的網絡也是在變化,網絡中會不斷地產生新的節點,也會產生新的關系,同樣,也會在消失著一些節點和關系。今天我們是朋友,明天你們和他們也會成為朋友。
第3,連接多樣,連接邊不是只代表一種類別的關系,只要能代表事物和事物之間關系的都可以描述成邊,只要是屬于我們所要研究范疇的。你和她是朋友關系,也可能還存在著同事關系。
第4,動力學復雜性,它代表一種動態的特性,事物之間的影響是可以傳播的,一個事物發生了改變,可能會影響與它有關聯的其它事物的改變,并將這種改變傳播出去,把這種傳播變成可計算化,正是動力學所要研究的方向。
第5,多重復雜性結合,正是多種事物相互關聯和互相影響,體現出它的變化復雜性和未知性,未來發展趨勢,并非一個簡單的線性公式所能解釋的。
第6,節點的多樣性,和連接多樣性一樣,網絡中的節點可以代表任何事物,只要是屬于我們所要研究的范疇。
復雜網絡存在我們身邊。
復雜網絡的研究領域非常廣泛,小到一個公司內部同事之間的關聯關系,大到一個社會所有人之間的關聯關系,但是不變的一點就是,只有是能夠抽象出由“節點”和“邊”所連接的網絡的,那就是復雜網絡。
接下來,我們聚焦一下,把復雜網絡研究聚焦在人的身上。
不論我們做風險分析、還是做精準營銷,很多分析研究都會具體體現在人,我們怎么看待一個人?大數據告訴我們,要做客戶畫像,具體描述每一個人的個性化特征,從而了解每一個人,并提供個性化的服務并采用一些措施。
這些都沒錯,我們按照傳統和現有的分析技術,可以相當詳細的描述一個人,例如,我們可以收集客戶的基本信息,包括“年齡”、“身高”、“性別”,以及我們還收集他的行為軌跡數據,例如,他的愛不愛看電影,愛看什么電影,什么時候會去看電影,他上不上網,上什么網絡,看什么樣的網頁內容等等。
但是,以上還只是在孤立的看待這個人本身,而忽視了一個重要因素,那就是他的社會關系,因為,每個人所產生的行動很大程度上會受周圍人的影響,父母影響孩子,老板影響員工,作家影響讀者,朋友影響朋友,其實我們想想,我們實際的生活中,所做的很多事情都在受到我們的朋友、同事、親屬以及領導的影響。我的志同道合的一個好朋友,在用Macbook筆記本電腦,如果我也需要買一臺電腦,選擇蘋果的產品可能性就會很高。周圍的同事都在努力工作,我懈怠可能性也不會很大。
如果再對這些網絡之間的影響進行量化,并且可計算化,也許我們就可以預測這個人的下一步計劃,但前提一定要做到可計算化。
好在“圖論”為我們提供了豐富的圖算法,幫助我們將抽象出來的復雜網絡進行計算,從而挖掘出我們所需要的價值信息,這一點,要歸功于“圖論”的數學家以及將圖計算應用于實際工程生產的業務專家和技術工程師們。
復雜網絡的關鍵技術
之前我介紹了復雜網絡概念及價值,接下來我要給大家談的就是復雜網絡的關鍵技術。
大數據時代的到來,復雜網絡研究的數據范圍也成規模化發展,面對由數千萬甚至數億節點構成的大規模網絡,即時有成型的業務解決方案和相關的算法,但沒有一種支撐技術,也是很難解決當下復雜網絡應用的問題的。
當下,我們要去解決大規模復雜網絡問題,總結一下,需要兩點技術,第一,是要使用大數據技術,第二,要改變我們傳統分析圖所使用的數據結構。
根據我們以往的項目經驗,做大規模圖分析采用的數據結構主要分為兩種,傳統的方式,是使用關系型數據庫,創新也是最佳的方式是使用矩陣數據結構,這兩種結構,都可以在物理層上去表達網絡結構模型,從而為上層復雜網絡分析提供良好的底層數據支撐。
接下來,我們分析一下,這兩種數據結構形態的差異。
關系型數據庫,由于其嚴格的schema定義,一張表所能表達的列數有有限的,最多也不會超過2000列,如果把一張網絡存儲在關系表中,那么網絡種每個節點的邊數需要限制在2000條以內,但實際情況并非能控制在2000以內,因為復雜網絡是呈冪率分布的,總會有部分節點的邊數量超過2000條,因此,如果使用關系型數據庫來存儲網絡,只能每一行存儲一條關系對,一個網絡中有多少條關系邊,就會存儲多少行數據。
但換成矩陣的方式來表達網絡就不同了,采用的矩陣主要是鄰接矩陣,它是把網絡中所有的節點按行列布局成一個寬大的方陣,如果兩個節點之間有連接關系,則在矩陣上這兩個節點的行列交叉位置上置為1,否則為0。
接下來,復雜網絡最核心的一個問題就是如何快速的查找出節點的關聯關系,再給定一個節點時,需要查找它的1度關聯關系,如果在關系型數據庫上,則會發生大規模的掃表任務,在一張數十億條記錄的大表中找到與給定節點有關系的記錄,計算量非常大,如果查找的關系深度達到1度以上的話,則計算量則呈指數倍上升。
但換成矩陣的形態來查找關聯關系則輕松的多,只需一次掃矩陣的行,定位到節點所在的矩陣行位置,則就無需其它計算就能夠快速的把指定節點的所有關系找出來。在性能上比使用關系模型快數倍之多。
接下來,我們在看看大數據技術,大數據技術的核心思想就是分布是存儲和分布式處理。
既然要用到分布式,就會涉及到對數據的切的過程,只有切成多份的數據,存儲在多臺集群服務器上,才能夠利用多臺服務器的計算資源進行高效的分布是處理。
對于大規模網絡也是要進行切的過程,但與傳統數據切分方式不同,網絡的切分是有它的特點的。
主要包括三種切分方式,按點切、按邊切和隨機切。
按點切,主要是將度值非常高的節點切分成多個子網絡,然后分布存儲在多臺服務器上,避免命中該節點會導致單臺服務器負載過大的問題。
按邊切,主要是切弱連接,也就是兩個連接非常稠密的網絡之間的若干條邊,這主要是為了避免,切分稠密子網會導致集群服務器之間傳輸量增大的問題,畢竟以太網的延遲要比主板總線的延遲慢了百萬倍。
隨機切,主要針對看不出網絡分布特征的切法,其實客觀世界不存在隨機網絡,如果只是實驗研究的網絡,可以采用此類分布方式,從而達到均衡負載,提升網絡分析的效率。
復雜網絡的應用價值
介紹完關鍵技術,我們再看看復雜網絡的應用價值。
物以類聚,人以群分,眾多節點關系稠密的編織在一起,會形成一社群,社群中的節點的相似性極高。就好比我們的朋友圈,朋友圈中人與人之間相互影響較大,相似性極高,可能都是某一個領域的人,也可能是共同志向的人。這就是社團,使用復雜網絡分析,可以發現這種社團,從而幫助我們發現潛在的價值信息。例如,潛在客戶挖掘、關聯群體風險分析。因為當一個群體中發現有部分個體有某種特征,可以推斷出該群體其他個體有這種特征的可能性會非常大。
中心性的價值分析,基于網絡中節點與節點之間的連接關系,通過中心性的圖算法,就可以有效的發現出網絡中的核心節點,這些核心節點對網絡的影響力極大,發現并掌控這些核心節點,就可以影響網絡朝著我們所希望的方向發展或者挖掘到最具有價值的個體。
當我們發現網絡中節點與節點之間的影響關系,就可以把它們進行量化,并通過計算的方式模擬并預演未來發展的變化趨勢,從而有效地預測并掌控未來的發展走向。例如,流行性疾病傳播分析、輿論傳播分析、金融風險傳播分析。
復雜的關系很難看出其中實質性的關系,通過關系穿透分析,能夠幫助我們快速找到節點背后的相關性,梳理出一張實質性網絡,透過復雜的表象看到其實質性的問題。
我們聚焦在金融上,通過連接企業之間的關聯關系,通過計算,可以幫助我們發現企業關系網背后可能會出現的風險,例如,識別擔保圈、發現異常資金往來,從而規避金融風險。
應用場景還會很多,時間的緣故,這里就不再過多地闡述,剩下的時間,我給大家分享一些小概念和資料。
最后,不能脫俗,介紹一下我們公司。
我們有一整套解決大規模復雜網絡問題的技術工具和解決方案,簡稱BDCN
謝謝!
Q&A
Q1:馬老師您好,您覺得知識圖譜未來的市場怎么樣?
馬敬濤:我覺得,市場是用戶說的算,我們目前接觸到的客戶,已經有很多對這個領域的探索感興趣,并且一些傳統著名的咨詢公司也在和我們探討這方面的應用,在風險評估方面,他們稱為預警的預警。
Q2:復雜網絡的集群和機器學習中的clustering analysis是否有 相似的點? 復雜網絡在目前的應用情況是怎樣的,有很典型的算法嗎,或者可以實現的R/Python的包嗎?
馬敬濤:底層架構可以一樣,基于Hadoop+Spark技術,把算法轉換為分布式計算,在集群上運行。
兩者部分都會涉及迭代計算,機器學習需要先訓練,在應用, 復雜網絡的算法計算和應用結合在一起。
其實圖算法有很多,圖的算法程序也有很多,典型的算法,最短路徑,度值統計,中心性發現,社團發現,Pagerank(google的),K-殼。但將這些算法程序轉換成分布式程序,運行在大數據集群上,是挑戰,也是機遇。具體算法原理,我沒辦法在這里闡述,風險點識別,有一種常用的方法就是算它離其他風險點的距離。三度影響就是闡述這個概念。復雜網絡逐步落地還有一段路要走,目前機器學習和深度學習正在熱門的階段。
Q3:矩陣結構數據具體是用什么數據庫存儲的?
馬敬濤:你可以使用NoSQL,圖就是一種Nosql的應用場景。
Q4:neo4j是目前最合適的數據庫嗎?
馬敬濤:單機來說,它應該是最主流的,但就我了解,它無法支持大規模圖,并且它是個圖查詢庫,不是圖計算庫。
Q5:比如,一個盜卡的用戶,你怎么通過構建圖算法,來自動識別他是一個盜卡行為的,能說說你做的具體思路嗎?
馬敬濤:找風險種子,就是以往欺詐用戶所使用的同一個手機號,同一個地址. 然后找到離這些被識別出欺詐風險點的近距離節點,然后通過社團發現再找其他相似點。
Q6:這種只能找到一小部分,一些新的盜卡模式找不出來?
馬敬濤:那就是先知道有哪些風險點,再擴散,這樣很大一個問題,新的風險模式找不出來,另外樣本有限。
樣本有限是個關鍵問題,目前也只能通過引入外部數據,來進一步補全網絡。
Q7:目前免費的支持大規模圖查詢展現的有哪些框架呢?
馬敬濤:InfiniteGraph、OrientDB、InfoGrid和HypergraphDB,好像是免費的,不確定噢。
Q8:但是對于一些新的模式,想知道怎么構建一個自動的概率網絡,來識別整個網絡的問題,這方面你有經驗嗎?自動的概率網絡是什么意思?能詳細的說下嗎?
馬敬濤:可以理解成病毒網絡傳播,傳播的影響權重結合被傳播對象的免疫程度,進行量化計算
Q9:復雜網絡的計算能力怎么樣?中文信息模糊比對組網如何處理?有沒有案例?
馬敬濤:復雜網絡如果基于大數據技術,計算能力可以線性提升的,但要分不同的算法。中文信息模糊比對,通過一些自然語言的處理技術,根據識別的關鍵詞以及實體來進行匹配并建立關系。目前還沒有相關的案例。
Q10:社區發現跟聚類差不多,會形成很多的社區,如何能夠直接確定這些大社區有問題呢?我們目前用圖算法,只是形成一些特征,作為下一步模型分析的輸入。
馬敬濤:對于社群來說,目前還是根據社團中已知特征節點的比重和離特征節點的距離,來評估潛在點。
其實,現在圖計算這塊,業務可解釋性較弱,但計算出來特征還是作為模型預測的很好特征變量的補充。
現在也是在研究和推進這塊,一是社團的計算,二是如何解決大規模網絡的社團發現問題。
講師介紹
馬敬濤,天云大數據高級售前工程師,具有近10以上的數據庫及大數據行業的從業經驗,先后參與并負責完成了多家全國股份制銀行、保險公司、電信運營商等客戶的數據倉庫和大數據項目的建設工作,部分項目的數據規模達百TB級,創新的使用復雜網絡技術成功為某知名機構實施了大數據應用項目。
轉載自:http://www.sohu.com/a/119515569_470008
總結
以上是生活随笔為你收集整理的【复杂网络】用户画像不应脱离社会关系,谈复杂网络的关键技术和应用实践的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据挖掘十大经典算法之——EM 算法
- 下一篇: 【推荐系统】推荐系统整体框架概览