基于社交网络节点中心度挖掘其社区框架
- 格式:pdf
- 大小:4.52 MB
- 文档页数:5
基于SNS的社交网络分析与挖掘近年来,社交网络的兴起使得人们间的联系更加紧密,信息传递更加快捷。
随着SNS(Social Networking Services)平台的发展和普及,社交网络已经成为人们生活中不可或缺的一部分。
在这个庞大的网络中,每个人的行为和交往都被记录下来,这也为社交网络分析和挖掘提供了庞大的数据来源。
什么是社交网络分析(SNA)?其实SNA是在聚焦于整体网络中的对象之间相互作用的量化探究。
总体而言,SNA是对社交网络中的行为、关系、流程和模式进行描绘、分类和量化的科学领域。
这个操作同样可以被看成市场营销、品牌推广、目标受众分析中的一个工具。
社交网络分析的一个重要应用是社交网络挖掘。
社交网络挖掘是指从社交网络中挖掘出有价值的信息,例如:人际关系、人的特征、人口统计数据等。
这些信息可以被应用于政策制定、商业竞争、舆论引导、社会研究等方面。
下面,我们来介绍 SNS中的社交网络分析和挖掘。
1、分析用户行为社交网络的基本元素是“用户”,因此对用户行为的分析是社交网络分析的核心。
SNS平台让用户可以用丰富的表达方式来分享自己的动态、情感、知识等。
通过对用户发布的内容、行为轨迹等进行分析,可以更好的了解用户个性、兴趣爱好、朋友关系等。
在商业竞争中,这些信息可以被用来进行目标用户定位和精细营销。
2、分析用户社交关系“网络中有人”是社交网络的特征之一,而社交关系就是衡量这种连接和交互的方式。
社交关系的研究是社交网络分析的重点之一,关注内容涉及两个方面:社交关系的建立、发展和维护,以及关系对用户行为和心理状态的影响。
通过对用户社交关系的分析和挖掘,可以了解社交关系的内在结构和演化规律,洞察其中存在的模式和不规则的变化,揭示网络中存在的隐性力量。
3、分析人口统计数据社交网络中的人口统计数据组成了整个网络中节点的构架。
通过分析人口统计数据,可以了解网络的规模、密度、聚集程度等特征,洞察人群的结构和存在的不平衡。
基于UCINET的社交网络数据分析与挖掘社交网络已经成为人们日常生活的重要组成部分。
在这个有着数以亿计用户的世界里,通过社交网络展现自己、交友、分享思想和情感成为了互联网时代最受欢迎的方式之一。
对于研究人员、企业和政府机构来说,社交网络也是了解社会、发现市场机会、实现社交营销的重要途径。
而UCINET(Network Analysis Software)作为一款社交网络分析和可视化软件,成为了社交网络数据分析与挖掘的首选工具之一。
本文将从基本概念开始详细介绍UCINET的使用方法与案例分析,以期帮助读者更好地掌握社交网络数据分析与挖掘技巧。
一、UCINET基本概念1.社交网络社交网络是指个体(或组织)之间的相互联系和互动关系,包括人际、组织和社区等不同类型。
在一个社交网络中,个体可以是一个人、一支团队、一家公司、一个组织甚至一个国家。
这些个体之间的交往产生了一些数据,如频率、类型、方向等,我们可以通过这些数据来了解社交网络的结构和性质。
2.社交网络分析社交网络分析是一种社会网络分析方法,借助图论、统计学和计算机科学等相关学科的理论和方法,探究社交网络的结构、动态特性和功能。
常用的分析指标包括节点的度中心性、接近度中心性、介数中心性等,以及社交网络的密度、集聚系数、社区结构、小世界效应等。
3.UCINET软件UCINET(Network Analysis Software)是一款由美国哈佛大学社会网络中心开发的网络分析软件,可用于分析各种类型的社交网络数据。
UCINET具有多种数据导入和可视化功能、多种网络度量和关系派生功能,以及多种建模和模拟功能。
它可以帮助用户发现社交网络的特征、结构和动态,并提供一系列有力的工具来研究社交网络的演化、分析影响因素和预测趋势。
二、UCINET数据导入与可视化UCINET支持多种数据导入和可视化方式,如导入Pajek格式和Excel格式数据、绘制节点连线图和矩阵图等。
基于社区检测算法的社交网络中重要节点识别社交网络已经成为了人们生活中不可或缺的一部分,在社交网络中有非常多的节点,有一些节点是非常重要的,它的存在与否会对网络造成重大的影响,于是在社交网络分析领域,重要节点识别便成为了研究的焦点之一。
社区检测算法是一种经典的社交网络分析方法,旨在找到网络中具有同质性的节点群集。
社区检测算法的目标是将网络划分为若干社区,使得同一社区中的节点更加紧密地连接在一起,不同社区之间的联系则相对较少。
社区检测算法有很多,比如Modularity、Leiden、Label Propagation、Louvain等等。
社区检测算法的基本思想是利用网络的数据结构,将网络划分成若干个簇。
网络中的节点被视为顶点,在节点之间的连通性被视为边或权重。
社区检测算法的输入是关系网络,输出是将这些节点组织成若干社区(或簇)。
社区是由具有共同属性的节点组成的,即在社区中的节点具有相似的特征。
然而,社区检测算法只能找出网络中社区(簇),并不能找出网络中的重要节点。
因此研究人员提出了一些基于社区检测算法的重要节点识别方法。
一种典型的方法是通过计算社区中节点之间的度数之和来识别重要节点。
度数是社交网络中一个节点的邻居节点数,如果一个节点的邻居数量很大,则说明这个节点是比较重要的。
因此,将社区中所有节点的度数相加,可以求出这个社区的度数中心点。
度数中心节点是具有最大度数的节点,通常来说这个节点就是社区的中心节点,也是整个网络的重要节点。
另一种方法是通过计算节点的介数中心性来识别重要节点。
节点的介数中心性旨在度量节点在网络中的控制能力。
介数中心性越高的节点意味着该节点对网络中的信息流的控制能力越强。
在社交网络中,这些介数中心节点通常是关键人物和具有重要资源的个人,比如一些企业家、大V、政治精英等等。
还有一种方法是利用节点在社区中的地位来识别重要节点。
这种方法将节点的地位作为识别重要节点的标准,比如对那些被大多数人关注、表示同情或是共鸣、有超过一定数量的粉丝、发布的信息被广泛传播的节点等等,作为确定推广对象的标准,这些节点被视为社区中的“核心用户”或“明星节点”。
数据挖掘与社交网络分析近年来,随着互联网的迅猛发展,大数据时代的到来使得数据挖掘和社交网络分析逐渐成为热门研究领域。
数据挖掘通过从大规模数据集中发现隐藏模式、关联规则和有价值信息的技术来为决策和预测提供支持,而社交网络分析则对社交网络数据进行建模和分析,以揭示个体行为、社团结构和信息传播等方面的特征。
本文将介绍数据挖掘和社交网络分析的基本概念、方法和应用,并探讨它们对于解决现实问题的潜力和挑战。
一、数据挖掘1.1 概述数据挖掘是从数据中自动发现模式、关联规则和有价值信息的过程。
它涉及机器学习、统计学和数据库系统等领域的技术和方法,其目标是通过分析海量数据来提取知识和提供决策支持。
1.2 方法数据挖掘的方法包括聚类、分类、关联规则挖掘和预测等。
聚类是将数据分组成具有相似特征的类别;分类是根据已知的数据样本对新的数据进行分类;关联规则挖掘是找出数据集中的频繁项集和关联规则;而预测则是根据历史数据来进行未来事件的预测。
1.3 应用数据挖掘在各个领域中都有广泛的应用,例如金融领域的信用评估和欺诈检测、医疗领域的疾病诊断和药物研发、市场营销领域的用户行为分析和推荐系统等。
这些应用可以帮助人们更好地理解和利用大数据。
二、社交网络分析2.1 概述社交网络分析是对社交网络中的个体、社团和信息传播等进行分析的过程。
社交网络是由一组个体和它们之间的关系构成的复杂网络,如Facebook和Twitter等社交媒体平台。
社交网络分析旨在揭示个体之间的社会关系、社团结构和信息传播过程等方面的特征。
2.2 方法社交网络分析的方法包括节点度中心性、介数中心性和社团检测等。
节点度中心性衡量个体在网络中的联系数量,介数中心性衡量个体在网络中作为中介的程度,而社团检测则是识别出网络中的社团结构。
2.3 应用社交网络分析在社会学、心理学和计算机科学领域中都有广泛的应用。
例如,社交网络分析可以帮助了解信息传播的机制,推荐好友和产品,预测社交影响力和用户行为等。
基于图论的社交网络分析研究社交网络已经成为了现代社会中的一种重要社交媒介,它们为人们建立起了一种新的互动方式,改变了人们的相互联系和交往方式。
社交网络不仅是人们日常生活中的必要工具,还被广泛应用于商业、政治、教育等领域。
在社交网络的背后,图论是一种强有力的数学工具,可以用来分析和了解社交网络的结构和性质。
本文将介绍基于图论的社交网络分析方法,并探讨在社交网络分析中的应用。
一、社交网络的基础社交网络是由人们之间的互动所构成,这些互动包括消息、评论、分享、点赞等等。
社交网络将这些互动又通过图形结构联系起来,形成了一个有机的整体。
社交网络中的节点通常代表个人或实体,边则代表两个节点之间的联系。
在简单的社交网络中,节点可以只代表人,边则代表人与人之间的直接联系。
而在更加复杂的社交网络中,节点还可以代表组织、事件、物品等实体,边则代表这些实体之间的联系。
通过对社交网络的节点和边的分析,我们可以更好地理解社交网络的结构和特点。
二、图论的基础图论是一种研究图形结构的数学分支,它广泛应用于物理、化学、计算机科学、工程学等领域。
在图论中,图被表示为一组节点和一组边组成的结构,其中节点表示对象,边表示连接对象间的关系。
在图中,我们可以通过节点和边的属性来描述节点和边的特征,例如节点的度、中心性、介数等。
三、社交网络的分析方法社交网络的分析通常包括以下几个方面:1. 社交网络的结构分析社交网络的结构分析主要是研究社交网络的基本属性,包括节点数、边数、网络密度、平均度、直径等。
通过对社交网络的结构分析,我们可以了解社交网络的规模和复杂程度,并推测一些社交网络特性,例如中心性、群聚现象等。
2. 社交网络的节点分析社交网络的节点分析主要是研究社交网络中节点的度、介数、中心性、聚集系数等属性,并通过这些属性来判断节点的重要性和社交影响力。
例如,度数较高的节点可能具有更广泛的社交影响力,而介数较高的节点则可能在不同社交群体中发挥着重要的桥梁作用。
基于数据挖掘技术的社交网络分析研究近年来,随着互联网的快速发展,人们在日常生活中越来越离不开社交网络平台。
社交网络作为连接社会群体关系的重要媒介,成为人们沟通、交往和信息传播的主要渠道。
随着社交网络数据的不断积累和扩展,其背后蕴含的巨大数据量也吸引了越来越多的研究人员,基于数据挖掘技术的社交网络分析也成为了当前热门的研究领域之一。
一、数据挖掘技术及其应用数据挖掘是指从大量的数据中提取有用的信息、模式和知识的技术过程,是人工智能、数据库、机器学习等多个领域的共同交叉。
随着互联网的不断普及和发展,数据挖掘技术也逐渐得到了广泛的应用。
在社交网络分析领域中,数据挖掘技术可以用于挖掘社交网络中隐藏的社会关系、社区结构、用户行为等信息,为社交网络的运营和管理提供参考和支持。
二、社交网络分析的概念和应用社交网络分析是指对社交网络的结构和性质进行研究和分析的过程,主要包括网络拓扑结构、社团结构、影响力传播等方面。
近年来,社交网络分析在学术研究、商业分析、政策制定等多个领域得到广泛应用,例如社交媒体舆情分析、社区检测、信息传播路径分析等。
社交网络分析的研究方法主要包括网络图论、社会网络分析、复杂网络分析等多种技术手段,其中,数据挖掘技术是其中重要的手段之一。
三、基于数据挖掘技术的社交网络分析方法1. 社交网络数据采集和预处理社交网络数据的采集和预处理是开展社交网络分析的重要基础工作。
在采集数据时,需要考虑数据源的合理性、数据的粒度和有效性等因素。
对于数据的预处理,需要进行数据清洗、去重、格式转换、特征提取等过程,以保证后续分析和挖掘的有效性和准确性。
2. 社交网络结构分析社交网络结构分析是指对社交网络的网络结构、节点度分布、节点中心性等特征进行分析和挖掘的过程。
通过社交网络结构分析可以揭示社交网络的基本特征和规律,进而为社交网络的优化和管理提供科学依据。
3. 社交网络社区检测社交网络社区检测是指在给定的社交网络中寻找具有相似特征或者功能的节点群体。
社交网络分析中节点中心性度量的使用方法社交网络分析是一种研究人际关系网络的方法,它涉及多个领域,包括社会学、心理学和计算机科学等。
节点中心性是社交网络分析中的一个重要概念,用于衡量网络中节点的重要性和影响力。
本文将介绍节点中心性度量的使用方法,以帮助读者更好地理解和应用社交网络分析。
首先,我们将介绍几个常用的节点中心性度量指标。
1.度中心性(Degree Centrality)度中心性是最简单和直观的节点中心性度量方法。
它衡量了一个节点在网络中的连接数量。
具有高度中心性的节点通常是社交网络中的“明星”,它们连接了更多的其他节点。
计算度中心性时,需要统计每个节点的邻居节点数量。
具有最高度中心性的节点通常是网络的关键节点,因为它们可以更好地传播信息和影响其他节点。
2.紧密中心性(Closeness Centrality)紧密中心性度量了一个节点与其他节点之间的平均距离。
具有更高紧密中心性的节点意味着它更容易与其他节点进行交流和联系。
计算紧密中心性时,需要确定节点到其他节点的最短路径长度,然后计算平均距离。
紧密中心性被广泛应用于社交网络中信息传播的研究,以及确定最佳传播路径的问题。
3.中介中心性(Betweenness Centrality)中介中心性度量了一个节点在网络中扮演信息传递的桥梁角色。
具有更高中介中心性的节点意味着它在网络中的位置更具影响力,可以更好地控制信息的流动。
计算中介中心性时,需要确定网络中所有节点对之间的最短路径数量,并计算包含该节点的所有最短路径数量。
中介中心性在社交网络中可以用于识别重要的信息交换节点或决策节点。
4.特征向量中心性(Eigenvector Centrality)特征向量中心性度量了一个节点与其他中心节点的连接强度。
具有更高特征向量中心性的节点意味着它与其他高度中心性节点有更强的连接。
计算特征向量中心性时,可以使用网络邻接矩阵和特征向量的计算方法。
特征向量中心性的应用范围较广,可以用于预测节点的影响力、网络的稳定性和社群的发现等。
基于SNS的社交网络数据挖掘与分析社交网络已经成为了人们日常生活中不可或缺的一部分,SNS社交网络作为其中的一种重要形式,因其强大的互动性和用户活跃度而备受关注。
在SNS社交网络中,用户之间的互动以及信息的传播、交流都会产生海量的数据。
因此,对SNS社交网络数据的挖掘与分析,不仅对个体用户的行为和心理分析具有重要的意义,而且对于商业营销、信息推送、舆情分析等领域也具有重要的指导意义。
一、SNS社交网络数据挖掘技术SNS社交网络数据挖掘技术主要包括三个方面:文本挖掘、社交网络分析和数据可视化。
其中,文本挖掘主要包括对SNS社交网络中的文本信息进行情感分析、主题分析、实体识别和关键词提取等操作。
社交网络分析主要包括对SNS社交网络中的用户关系、社区结构、用户活跃度等进行分析和挖掘。
数据可视化主要通过图形化展现SNS社交网络数据,提高数据的可读性和易理解性。
二、SNS社交网络数据挖掘应用场景1. 商业营销通过挖掘SNS社交网络数据,企业可以了解到目标用户的兴趣爱好、消费习惯等信息,从而更加精确地锁定目标用户,为企业的营销活动提供更好的支持。
例如,企业可以通过对用户的社交网络信息的挖掘,为用户提供个性化的商品推荐。
2. 舆情分析对于政府和企业而言,对于社会公众的情绪变化进行及时的掌握和分析,具有非常重要的意义。
通过对SNS社交网络数据的挖掘和分析,可以及时发现社会舆情的热点事件,及时进行精准的干预,从而更好地维护社会稳定和企业形象。
3. 人际关系分析在SNS社交网络中,用户的社交行为和人际关系经常会变动,通过对SNS社交网络数据的挖掘和分析,可以帮助人们更好地理解人际关系的形成和演变过程。
例如,在招聘过程中,对求职者的SNS社交网络信息的分析,可以评估其社交能力和人际关系,为招聘决策提供数据支持。
三、SNS社交网络数据挖掘存在的问题和挑战SNS社交网络数据挖掘面临的问题主要包括隐私问题、数据质量问题以及数据规模问题。
基于网络层级的社交网络分析与应用社交网络分析,是一种基于网络科学的研究方法,它是通过对人际关系网络图的分析,研究人际关系的模式与演化规律,并且可以推断出一些隐含的社会结构。
而基于网络层级的社交网络分析可以更加准确地描述和理解社交网络中的关系与结构,并推断出一些新增的社会规律和特征。
本文将对基于网络层级的社交网络分析进行详细的介绍,并探讨其在实际应用中的价值和优势。
一、基于网络层级的社交网络分析在社交网络分析中,网络层级是一个重要的概念,它描述的是一个网络中不同节点之间的权重和联系强度。
在一个社交网络中,不同的节点之间的交互情况可能是不同的,存在一定的权重差异。
这些权重差异的存在也使得社交网络中不同的节点形成了不同的层级。
对于一个社交网络,无论是微信、QQ、微博或是FB,其网络中的边不仅仅指的是互相之间的关注,还可能包括不同级别的点赞、转发、评论等各种形式的交互。
通过对社交网络中的节点联系的权重分析,我们可以将网络节点进行分类,按层级结构分级,并分析不同层级之间的联系强度和关系密切程度。
这个方法可以更好地表现出社交网络中的节点关系,并将不同的交互联系转化为数值。
因此,基于网络层级的社交网络分析可以为社交网络数据的挖掘、社交推荐算法的设计等提供有力的支撑。
二、基于网络层级的社交网络在推荐算法中的应用社交网络中的推荐算法是建立在社交网络图上的,它可以通过分析用户在社交网络上的行为数据以及不同的层级关系,来精准地预测用户的兴趣和需求。
对于社交网络平台来说,精准地推荐内容是提高用户留存率和转化率的关键。
在社交网络中,用户之间的关系结构很复杂。
通过基于网络层级的社交网络分析,可以清晰地了解社交网络中用户之间的权重差异,即不同层级中的节点之间交互联系的强弱程度。
在为用户进行推荐时,可以通过分析这些权重差异,使得推荐内容更加精准,并依据不同的层级分类来建立更为细致的推荐策略。
三、基于网络层级的社交网络在营销中的应用基于网络层级的社交网络分析在营销和广告领域中也有广泛的应用。
社交网络分析算法的使用教程社交网络分析(Social Network Analysis,SNA)是一种研究人际关系的方法,通过分析个体之间的连接和关联,揭示社交网络中的模式和结构。
在社交媒体时代,社交网络分析算法成为了研究网络社会学、营销学以及信息传播的重要工具。
本文将介绍几种常用的社交网络分析算法及其使用教程。
一、度中心性算法(Degree Centrality)度中心性算法是最简单也是最常用的社交网络分析算法之一,用于计算每个节点在网络中有多少条边与之连接。
该算法可以用来评估一个节点的重要性和影响力。
具体计算方法如下:1. 首先,将网络数据导入社交网络分析工具(如Gephi、Cytoscape等)中。
2. 在工具中选择度中心性算法,并点击运行。
3. 程序会计算每个节点的度中心性,并将结果显示在节点上或作为节点的属性。
4. 分析结果,找出具有较高度中心性的节点,这些节点在网络中起到重要的枢纽作用。
二、介数中心性算法(Betweenness Centrality)介数中心性算法用于衡量节点在网络中的中介地位,即节点在连接其他节点之间的最短路径中扮演的角色。
该算法可以用来识别那些在信息传播、资源传输中起到关键作用的节点。
具体计算方法如下:1. 在社交网络分析工具中导入网络数据。
2. 在工具中选择介数中心性算法,并点击运行。
3. 工具会计算每个节点的介数中心性,并在节点上显示结果。
4. 根据分析结果,找出介数中心性较高的节点,这些节点在信息传播和资源传输中扮演着重要的桥梁角色。
三、聚集系数算法(Clustering Coefficient)聚集系数算法用于衡量节点邻居之间的相互连接程度,用来判断网络中的群组和社区结构。
该算法可以帮助我们理解社交网络中的小世界现象和群体行为。
具体计算方法如下:1. 将网络数据导入社交网络分析工具中。
2. 在工具中选择聚集系数算法,并运行。
3. 工具会计算每个节点的聚集系数,并在节点上显示结果。
第33卷第7期2016年7月计算机应用与软件Computer Applications and SoftwareVol.33 No.7Ju l.2016基于社交网络节点中心度挖掘其社区框架王童童李盛恩王刚(山东建筑大学计算机科学与技术学院山东济南20101)摘要社区结构作为真实复杂网络所普遍具有的一个重要的拓扑特性,最近10年内得到了广泛而深入的研究。
为解决社区挖掘策略时间复杂度过高、缺少与用户交互等问题,讨论了社交网络节点中心度、度的幂律分布等特性,提出了“关键子网络”和“社区框架”的概念,设计了社区框架挖掘算法MCF(M i n e the Community Framework)和社区框架钻取算法DCF(Drill Down the Community Framework),其中M C F算法用于挖掘社交网络的社区框架,D C F用于对社区框架进行钻取,从不同粒度展现社区结构。
实验结果和实验分析表明,M C F算法能够在较短时间内挖掘出反映复杂网络社区状态的社区框架,D C F算法可以以用户交互方式实现高质量的社区划分。
关键词 社交网络社区结构节点中心度社区框架社区质量中图分类号 TP311.13 文献标识码 A D0I:10.3969/j.issn.1000-386x.2016.07.020MINING COMMUNITY FRAMEWORK BASED ON SOCIALNETWORKS'NODE CENTRALITYWang Tongtong LiSheng’en Wang Gang(School of Computer Science and Technology, Shandong Jianzhu University,Jinan 250101 , Shandong, China)Abstract As an important topological characteristic which the real complex networks commonly have,community structure has been widely and thoroughly studied in recent 10 years.To solve the problems of community mining strategy that i t s tim lacks the interaction with users,etc.,we discussed the node centrality,node’s power-law degree dist social networks,and proposed the concepts of’’c r i t i c a l sub-network’’and "community framework".Moreover,we designed the community framework mining(C F M)a lgorithm and the community framework drilling (C F D)algorithm.Among them,the C F M algorithm i s used t o mine the community framework of social networks,and C F D i s used for drilling the community framework and t o d structure from different granularities.Experimental results and analysis showed that,in a relatively short time the C F M algorithm could be used to mine out the community framework reflecting the complex net^vorks community state,while the quality community partition in the way of user interaction.Keywords Social networks Community structure Node centrality Community framework Community quality〇引言真实世界中的许多复杂系统可以表示成图或者网络,包括社交网络、信息网络、生物网络和技术网络等[1]。
经验分析表明,这些复杂网络往往是由若干个节点组构成,节点组内部的连接相对紧密,而节点组之间的连接却相对比较稀疏。
我们称网络的这种拓扑特性为社区结构,相应地,每个节点组被称为一个社区。
不同的应用领域,社区结构具有不同的内涵。
比如,社交网络中一个社区代表了具有相似特征的人群;生物网络中的社区解释了具有相似功能的生物组织模块;w e网络中的文档类簇包含了大量的具有相关主题的w e文档等[2]。
社区挖掘就是对这些不同类型复杂网络进行处理,挖掘出社区结构,从而来帮助人们理解复杂网络的功能,发现复杂网络中隐藏的规律和预测复杂网络的行为[3]。
虽然现在发展出了大量的社区挖掘策略,例如g n算法[4]、谱分解算法[]等,然而这些社区挖掘算法大部分都是直接针对完整社交网络数据进行社区挖掘。
例如g n需要反复计算整个网络的任意两点的最短路径,谱分解算法需要将每一个节点在向量空间中加以表示。
这样的处理策略还存在不足之处:首先,使用社区挖掘策略对一个很大的社交网络进行社区挖掘需要大量的计算,计算时间长,例如G N算法时间复杂度为0(n2m),谱分解算法为0(n2),其中n为节点个数,m为边的条数;其次,即使挖掘出社区结构,这个社区结构将涉及所有点的信息,社区结构过于复杂;最后,这些社区挖掘策略在设置完初始参数后,就开始计算,然后返回给用户整个网络的社区划分,计算过程中,用户不能进行控制,缺乏交互。
文献[6,7]指出在社交网络中存在少部分的节点中心度较高的节点,其构成的子网络能够反映整个社交网络的拓扑特性。
为了能够快速对社交网络进行社区挖掘,并且让用户能够控制收稿日期:015-01-05。
国家自然科学基金项目(61170052)。
王童童,硕士生,主研领域:社交网络,数据挖掘。
李盛恩,教授。
王刚,硕士生。
84计算机应用与软件2016 年挖掘的粒度,受其启发我们提出了关键子网络的概念,进而提出了 M C F算法和D C F算法。
M C F算法利用社交网络的节点中心度提取出社交网络的关键子网络,关键子网络的结点数和边数远小于原社交网络,同时保持了原社交网络的拓扑特性。
然后利用经典的挖掘算法对关键子网络进行社区挖掘,将获得的社区框架作为整个社交网络的社区概况,这样可以在很大程度上减少计算量,缩短计算时间。
用户如果想获得社区结构的更详细信息,可使用D C F算法对社区框架添加一些节点。
然后再进行计算,这样在用户的控制下,逐步得到整个社交网络的社区划分,这种挖掘方式类似于在商务智能领域获得成功的O L A P中的下钻操作。
1社交网络与社区结构社交网用无向图G(F,£)来表示,其中F表示参与社交网络的参与者,£表示参与者之间的关系。
对于一个无向图,在计算机中我们可以使用邻接矩阵来表示:A = {1如果节点;和节点y之间存在边()"~ 1〇否则从邻接矩阵a可知,如果节点〖和节点y之间存在联系,则^与'都为1,否则都为〇,所以邻接矩阵^是一个对称矩阵。
若求得了一个社交网络的邻接矩阵^就能够很容易计算出每个节点的度:设定1是一个〃维并且每一个元素都为i的列向量,则度向量[=a • 1指明了每一个节点的度,其中&为节点t 的度。
随着对各种网络的深入研究,发现许多实际网络都存在社区结构,N e w m a n等人给出了社交网络社区结构的定义:社区是社交网络中的子网络,子网络内部联系紧密,子网络之间联系稀疏[8]。
如图1的社交网络体现了①②③三个社区,通过观察能够发现,在社区内部边的密度要大于社区之间边密度。
社父网络的一'个社区,往往反映了在这个社父网络中,具有共同兴趣爱好,或者其他共同特性的一群个体。
通过研究社交网络的社区结构我们能够了解社交网络的深层结构,及其内部错综复杂的关系。
为此发展出了很多的社区结构发现策略,基于其原理可分为基于划分的、基于模块性优化、基于标签传播、基于动力学和基于仿生计算的方法等[9]。
然而对于同一个社交网络我们应用不同的社区划分方法会得到不同的社区划分,即使使用相同的社区挖掘策略有时也会得到不同的社区划分,为了衡量对一个网络社区划分的好坏,基于社区内部联系紧密社区之间联系稀疏的思想,N e w m a n和Giira提出了著名的模块度函数即0函数™。
其定义为:假定社交网络被某种挖掘策略分解成〃个社区,定义一个 ^ X的对称矩阵£=(y.)。
其中&表示社交网络中位于社区f 和社区y之间的边数占总边数的比例;£中对角线上的元素之和 称为该矩阵的迹,即它表示社交网络中位于社区内部的边数占总边数的比例;定义矩阵£中每行或者每列中各 个元素之和为^ 它所表示社交网络中与第f个社区中节点相连的边在所有边中所占的比例。
在此基础上定义网络划 分的模块度为:0=文(-«?)=〜-||e2||i=1式中||e2||表示矩阵/中所有元素之和。
7V e表示网络中位于 社区内部边数所占图中总边数的比例,||e2||表示社区内部边 数所占总边数比例的期望。
如果社区内部边数的比例不大于任 意连接时的期望值则0 = 〇。
0的最大值为1,0越接近1,则说明 网络的社区划分的质量越好,即社区内部联系越紧密。
在实际 网络中该值通常位于0.3到0.7之间。
模块度函数表示在节点上的式子为:0--办1^-^1:2⑵C<e P i,<e C C i e P i,<e C其中P为社区挖掘算法所发现的社区的集合,m为社交网络中 边的条数。
若节点i和y其度分别为&与则⑵i X&)/2rn计算 了两节点之间有边的概率,因此公式中减数部分计算了社区内 部边的条数的期望。
2社区框架的挖掘及钻取现实世界中,我们发现每一个社区中都有很多在该社区中 具有重要地位的焦点人物,他们管理组织社区并经常与其他社 区的参与者互动。
通过对这些重要参与者的社区考察,我们能 够总结出整个网络的社区状态。