前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据挖掘入门与提升,从点数据到网络数据

数据挖掘入门与提升,从点数据到网络数据

作者头像
Python中文社区
发布2018-08-30 16:30:47
9720
发布2018-08-30 16:30:47
举报
文章被收录于专栏:Python中文社区Python中文社区

提到社交网络分析,推荐系统、风控模型这些名词,相信你并不陌生,社交网络分析无非是 Pandas+Matplotlib,推荐系统大概率是余弦相似性、协同过滤,风控则被LR(逻辑回归)、XGBoost这些成熟的模型占据。

但也许你不知道的是,看似相去甚远的社交网络分析、推荐系统、金融风险预测,都可以用数据挖掘中的网络思想来实现。除此之外,网络模型还可以应用到其他的领域,比如搜索引擎、知识图谱、城市计算等。

数据挖掘 / 网络挖掘

作为数据挖掘的一个分支,网络挖掘与一般意义上的数据挖掘/数据分析殊途同归,都是通过挖掘/分析方法,获取数据中的包含的信息和知识。

不同的是,除了利用数据挖掘的算法模型(比如常用的回归、分类、聚类模型)进行描述/预测,网络挖掘还则给出了新的解决方式。

在算法预测的基础上,通过将数据/问题抽象为网络模型,来帮助我们更好地进行数据分析/数据挖掘。

以社交网络为例,网络中的每个人都是一个节点,如果两个人是朋友关系,那么他们就建立联系,我们就用一条连边连接这两个节点。以此类推,当所有的联系都加入之后,我们就得到了一个社交网络。

为什么要抽象为网络模型?比如我们在一个社交网络中,通常我们怎么去寻找最具传播力的大V,一般来说无非把各个用户的粉丝数排个序。

而网挖掘的思路不太一样,我们可以通过构建用户相互关注的网络模型来寻找出大V,这里我们关注的是在信息传播中真正的影响力(很多时候,粉丝最多的,并不一定是最具传播力的)。

除此之外,我们还可以看到网络中不同的组群(比如不同爱好的群体)、分布的密度等等,这可以从宏观上去帮助我们分析整个数据样本中的关系。

基于社交网络的组群发现

可以说网络挖掘在基本的描述性统计及预测方面又更进了一步,从关键节点的识别到组群发现,从某种程度上,可以发现很多我们做一般的描述性分析所得不到的深刻洞见。

网络模型如何实现

网络挖掘无非是把问题抽象为网络的模型来进行分析,所以对于网络建模来说,我们主要是要去了解节点和连边。而对于节点的重要程度,中心性则是关键的指标;对于节点间的关系,传递性和相似度有着重要的意义。

以及网络相似衡量指标:节点度数分布、聚类系数、平均路径长度等等。

网络的节点和连边

当然更重要的是,在面对真实的问题或者数据的时候,如何将实际的问题抽象为网络模型,我们也称为问题形式化。

比如对于不同的领域,我们通常可以构建这样的一些网络(顶点和边构成图形)。

比如我们有这样一份数据(Stack Overflow 的用户技能数据),用技能间的连线的值表示技能之间的相关性权重(比如 C# 和 .net ,他们之间的 value 是 62.167,说明他们的相关性非常高)。

根据技能之间的关系,我们就可以构建如下网络模型,你看这个网络很吓人,其实用networkx(Python库)来构建,也就是几行代码的事情。

通过这个网络模型我们就可以发现很多有意思的事情,比如苹果系的开发技能(ios/mac)是聚在一块,windows 系开发聚在一块,网页开发也是如此,这就是不同的社区。如果跟这些社区都有链接的,一定是一些相对通用的技能,比如 Linux、Git、Python 等。

当然,这只是网络模型探索的开始,后续还有很多有意思的问题(帮助我们发现更多知识,应用到不同的业务模型中):

  • 链路预测(最短路径)
  • 关键节点挖掘(寻找权威节点)
  • 网络遍历(搜索与检索)
  • 社区发现(组群画像)
  • 相似节点挖掘(相似性推荐)

网络挖掘的应用

网络挖掘在用户画像、商品推荐、金融风险评估、城市交通优化、流言信息传播等方面有着广泛的应用。很多业务用一般的数据挖掘方法效果不佳的,加入网络模型之后,却能大幅提升。可以说网络挖掘的应用舞台无限宽广……

网页排序

比如谷歌的 PageRank,本身也是在构建庞大的网页网络模型的基础上(网页为节点,超链为边),通过计算不同网页的中心度(权重),来对网页进行排序,从而实现更加精准的搜索和推荐。

社交网络分析

社交网络天然适合构建网络模型进行分析,比如信息的传播预测、影响力分析、社交组群发现、好友推荐、用户画像等等,在整个网络中去分析,可以发现很多不一样的东西。

推荐系统

协同过滤算法的基本思想是,将与目标用户选择相似性度较高的用户喜欢的商品,推荐给目标用户。而网络模型的加入(比如好友网络、商品网络),可以很大程度上解决多样性问题、冷启动问题、社会推荐问题,从而提升某些场景下的推荐精度。

知识图谱

网络挖掘在知识图谱中也发挥着重要的作用,比如遍历与路径探寻、关键节点挖掘等。PatientsLikeMe.com 将病人、病症、医院、医生、药品等等医疗数据组织成知识图谱。在图谱上,医生可以搜索家族病史网络,查询相似病例及解决方案;病人可以搜索疾病相关的病症、药品、医生、相似病例等。

所以,网络挖掘其实是强化了数据分析/挖掘的技能,以一种全新的视角,探索更为全面、宏观的网络知识,以及个体之间的关系。

所以网络挖掘能让你在有一定的数据分析技能的基础上,大幅提升数据挖掘的能力,获得更多细分领域工作的加分,比如:

知识图谱

用户画像

推荐系统

当然,即便是从事一般意义上的数据挖掘工作,网络模型的思维也是一次巨大的技能飞越,这将让你站在更高的维度,思考更全面更宏观的问题,包括个体之间的联系及业务的底层逻辑。

网络挖掘学习

基于数据挖掘中网络模型的理念,DC学院设计了一门体系的课程《数据挖掘 - 网络挖掘》,从网络挖掘的基础知识到网络模型的建立与可视化,从数据挖掘核心算法的应用到业务问题的深入探索,全部深入讲解,构建你的数据挖掘体系。

最关键的是,课程中包含了目前主流的网络类型的详细实践过程,从数据挖掘到网络挖掘,比如社交网络、金融网络、购物网络、城市交通网络、医疗网络等等。

你可以获得其他的分析方法得不到的深刻洞见,并以此指导实际业务中的决策;你能够通过数据挖挖掘去构建真正的商业模型,比如社交推荐与消息传播模型、商品推荐系统、金融风控模型等,这才是数据真正产生价值的地方。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python中文社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
灰盒安全测试
腾讯知识图谱(Tencent Knowledge Graph,TKG)是一个集成图数据库、图计算引擎和图可视化分析的一站式平台。支持抽取和融合异构数据,支持千亿级节点关系的存储和计算,支持规则匹配、机器学习、图嵌入等图数据挖掘算法,拥有丰富的图数据渲染和展现的可视化方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档