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

Posted Python中文社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据挖掘入门与提升,从点数据到网络数据相关的知识,希望对你有一定的参考价值。

提到社交网络分析,推荐系统、风控模型这些名词,相信你并不陌生,社交网络分析无非是 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学院设计了一门体系的课程《数据挖掘 - 网络挖掘》,从网络挖掘的基础知识到网络模型的建立与可视化从数据挖掘核心算法的应用到业务问题的深入探索,全部深入讲解,构建你的数据挖掘体系。


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


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


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

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

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


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


学习这个课程,能达成这样的一些目标:

  • 将数据分析/数据挖掘的技能,提升到更高的维度

  • 掌握数据挖掘及网络模型构建及分析方法,养成网络思维;

  • NetworkX/Numpy/Pandas/Matplotlib等工具的使用;

  • 通过实战,熟悉社交、购物、金融等领域的数据挖掘业务模型

  • 掌握社交网络分析、推荐系统、风控分析等细分领域的技能。


¥299(原价¥499),限前50名


课程详情/名额预定,扫下方二维码



课程咨询、免费试看,请加入下方群聊

若群满,加Alice微信:datacastle2017


《网络挖掘》课程Q&A


Q:课程是录播还是直播课?

课程采用精修录播形式,购课后立即开课学习,你可以自由安排学习时间和频率,有效期内可反复观看。


Q:课程的更新进度如何?

目前课程视频已上线前两章,后四章会以每周更新的形式上传完毕。


Q:课程有效期多久?

课程有效期从课程视频全部上线完成后算起,有效期为6个月(建议2-3个月即可学完本门课程),可以通过积分延长至1年。


Q:课程使用什么编程语言/工具?

Python/networkx/numpy/pandas/Scikit-learn


Q:需要准备什么基础?

课程中的每行代码都会讲解它的意义,所以零基础也能顺利跟着老师走下去,当然对Python有一定了解会更好!


Q:课程中的代码会分享么?

我们会将课程中的代码打包,在学习入口的每节课程资料中呈现,可以随时下载,同时还会有更多的延伸案例及拓展知识。


Q:课程有助教和答疑么?

开通课程后,可加入学习群,助教会每天在群内答疑,同时我们也会收集大家的共性问题整理学习资料并分享。

以上是关于数据挖掘入门与提升,从点数据到网络数据的主要内容,如果未能解决你的问题,请参考以下文章

人工智能学习

网络爬虫入门05分布式文件存储数据库MongoDB的基本操作与爬虫应用

SQL数据分析:从基础入门到进阶,提升SQL能力

SQL数据分析:从基础入门到进阶,提升SQL能力

Python爬虫从入门到放弃(二十二)之 爬虫与反爬虫大战

BLE入门 19 ATT MTU 提升BLE数据传输率