“统计物理、神经网络与社会科学读书会”的版本间的差异

来自集智百科
跳转到: 导航搜索
第五讲 测量社交网络的能量:基于Q Modularity的网络社区划分
第八讲 人是周围人的函数:DeepWalk模型
第90行: 第90行:
 
Python代码
 
Python代码
  
 补充
+
  领读: 崔浩川,王呈伟
 +
== 补充==
  
 
[from hcui]: DeepWalk我的理解是利用网络中的信息流来反应人在社会中的位置,图神经模型(Graph Neural Network)更能反应人是周围人的函数这一点
 
[from hcui]: DeepWalk我的理解是利用网络中的信息流来反应人在社会中的位置,图神经模型(Graph Neural Network)更能反应人是周围人的函数这一点
 
领读: 崔浩川,王呈伟
 
  
 
=第九讲 社会计算中的人:Graph Neural Network模型=
 
=第九讲 社会计算中的人:Graph Neural Network模型=

2019年2月21日 (四) 13:36的版本

这里是为期一个学期的统计物理、神经网络与社会科学读书会的wiki页面

目录

主题:统计物理、神经网络与社会科学读书会

小结

第一讲 最可能者生存:热力学与进化论

主要文献:Whitfield, J. (2007). Survival of the likeliest?. PLoS biology, 5(5), e142.

主要内容:一直以来,人们都认为热力学与进化论是对立的:热力学第二定律认为宇宙,作为一个封闭系统,趋于无序。香水会飘散,破镜不能重圆。在这样的背景下,生命和秩序究竟是如何出现并且维持自己的,令人吃惊。本文介绍了一种大胆的猜想:热力学第二定律并不与进化冲突,恰恰是进化的底层原理。在进化中脱颖而出的生命结构,是那些最高效地消耗能量和生产无序性的结构。

备注:这一篇论文,也是十年前集智俱乐部成立的[1]小组阅读的的第一篇论文(随笔)。我们把这篇论文选为第一篇,既是回顾十年前的这场思想激荡并作为我们这个读书会的思考起点之一 —— 文章的想法在今天看来仍然是疯狂的,也希望十年后仍然有人从我们的读书会里收益。

Python 代码:无

领读:章彦博,林意灵

补充:

【from Hcui】:热力学第二定律说的是封闭系统(一个孤立系统的熵不会自发减小),这篇文章说的生命涌现自远离平衡态的耗散系统(非孤立)。按照文章的原意,进化论实际上更偏向于是后者。详细可见 陈式刚. Glansdorff-Prigogine判据与最小熵产生定理[J],物理学报,1980,10:1315-1322。

第二讲 我们生活在最可能的世界中:信息论与统计力学

主要文献:Jaynes, E. T. (1957). Information theory and statistical mechanics. Physical review, 106(4), 620.

主要内容:香农用“熵”(Entropy)表达信息,而这个公式是从玻尔兹曼创造的,用于解释热力学现象的分子行为的数学框架(即统计力学)那里抄过来的——据冯诺依曼说是他推荐香农使用这个公式。那么热力学与统计力学里的熵和信息论的熵究竟是不是一个东西呢?这个公式的借用只是表面现象,还是说有更深刻的原因?Jaynes是最早系统地把信息论和统计力学联系在一起来的,这个联系后面对应着一个大单的猜想:所谓规律,就是那些更可能被观察到的模式,物理世界的规律是在统计意义上问题的,而这种稳定性可以被信息论描述。

Python 代码:

领读:章彦博,林意灵

第三讲 智能即形状:Hopfield Network

主要文献:Hopfield, J. J. (1982). Neural networks and physical systems with emergent collective computational abilities. Proceedings of the national academy of sciences, 79(8), 2554-2558.

主要内容:什么是智能?它是如何被演化出来的?我们如何创造一个可学习的系统,它可以不断地把环境的知识储存到自身内部,展现智能的行为?Hopfield Network是一次伟大的尝试。它是一个网络,用链接结构来储存外界信息。它在知识和能量之间建立联系——把需要记忆的信息对应于一种最低能量的连接结构, 使得知识被储存起来,并且可以在需要的时候重新释放出来。

Python代码

领读: 崔浩川,王呈伟

第四讲 学习即变形:Boltzmann Machine,一个可以储存知识的热力学系统

主要文献:Ackley, D. H., Hinton, G. E., & Sejnowski, T. J. (1985). A learning algorithm for Boltzmann machines. Cognitive science, 9(1), 147-169.

主要内容:Boltzmann Machine在Hopfield Network的基础上提出,它继承了把知识储存在链接结构里,以及使用系统能量的概念把来寻找和锁定这个状态的想法。比起Hopfield Network,它进步在于精确地使用Kullback–Leibler divergence(又称Information gain)来定义“知识梯度”,并且利用这个梯度的信息来更新链接结构,而更新是通过系统本身的热力学演化完成的。这篇论文不仅是对一个机器学习模型的描述,更是触及了一些深刻的思考:如果我们可以利用热力学系统来学习,那么真实世界里热力学系统的变形,是不是也在不断学习的后果,我们又怎样把系统学习到的知识提取出来呢?

Python 代码

领读: 崔浩川,王呈伟

第五讲 测量社交网络的能量:基于Q Modularity的网络社区划分

主要文献:Newman, M. E. (2006). Modularity and community structure in networks. Proceedings of the national academy of sciences, 103(23), 8577-8582.

主要内容:Q Modularity是Newman提出的用来刻画网络社区结构的明显程度的指标。随机网络Q很低,真实的社交网络往往有着较高的Q。基于前面几讲的内容,我们注意到,Modularity的计算公式——其指导原则是将网络分为两个社区后,社区内部的连边最多,社区彼此间的连边最少——与Hopfield Network的能量函数有着惊人的相似。我们是否可以认为,一个真实的社交网络结构,其实储存着信息,网络结构的演化,就是学习过程。因为大自然的学习是利用“系统要寻找最低能量的状态”实现的,所以Q函数实际上是利用了这一点,借助能量公式来刻画网络的社区结构。

Python代码

张章,贾小双

补充

[from Hcui]:Q Modularity还体现了一个零模型的设计问题。Newman在设计Q时给出来了一个零模型,如果两个结点A,B在同一个社团内部的概率应当比任意一个度为K_A和度为K_B的节点的随机连接概率要高,这个猜测是对应着哈密顿函数里的外场力的作用

第六讲 社会系统的几何:Blau Space

主要文献:McPherson, J. M., & Ranger-Moore, J. R. (1991). Evolution on a dancing landscape: organizations and networks in dynamic Blau space. Social Forces, 70(1), 19-42.

主要内容:发现人以群(social group)分,并且以一个人所属的人群来预测他/她的行动,是传统实证社会学的主要方法论。Blau Space是一个基于简单的欧式几何的模型,它的每一个维度代表一个人口统计学属性:种族、性别、收入、教育、宗教。每一个人都可以被看做是这个高维空间中的一个点。传统实证社会学常用的回归,可以看做是这个空间模型的一个应用。社会学中最重要的假设之一,“Homophily in social networks”,也可以放到这个空间中理解,认为在空间中欧式距离比较近的点更容易建立联系。这个空间模型还提供了为组织社会学提供了重要的思考框架:一个组织,例如工会或者教会,就是这个空间中的一个区域,区域的竞争、演化和生灭刻画了社会组织的演化。

Python 代码

张章,贾小双

第七讲 社会隐秩序:Stochastic block model

主要文献:Abbe, E. (2017). Community detection and stochastic block models: recent developments. arXiv preprint arXiv:1703.10146.

主要内容:Harrison White比较早地提出了block modeling的概念。这个模型认为,一个社交网络中人和人的联系,可以被看做是社会模块(block)之间连接概率的一种实现形式。Block内部的节点之间可以看做是等同的,或者是彼此可以交换的(exchangable, structural equivalent),这样,用m个block构成的mxm个连边概率参数就可以描述有n个人的一个网络。这个思路还隐藏了一个非常有意思的观点,它假设一个block model(类似于统计力学里的宏观态),可以对应许许多具体的网络连边configuration(类似于统计力学里的微观态),这样就把统计力学里“系综”(esemble)的概念引入了社会系统。也为后来的Stochastic block model(SBM)埋下了伏笔。SBM把更多统计物理,特别是基于Ising model的概念引入,来设计更高效的算法,来高效识别大规模社交网络里的block结构。我们在这里可以留几个思考题:Block和community是一种什么关系?Blcok是否可以看做Blau space里的一个区域?当有社交网络中几种不同的tie的时候,如何理解和识别block?

Python代码

领读:章彦博,林意灵

第八讲 人是周围人的函数:DeepWalk模型

主要文献:Perozzi, B., Al-Rfou, R., & Skiena, S. (2014, August). Deepwalk: Online learning of social representations. In Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining (pp. 701-710). ACM.

主要内容:DeepWalk模型基于神经语言模型word2vec。后者可以将词表达为一个向量,将词嵌入一个高维欧式空间,并且通过神经网络作为优化算法,快速找到词在这个空间里词最合适的位置,使得预测邻近词变得非常简单(在这个空间中夹角最小)。DeepWalk通过在一个给定的社交网络上做随机游走,模拟出word2vec所需要的输入,将社交网络上的节点嵌入欧式空间,并且勇于预测节点的标签。如果说word2vec的假设是“distributional hypotehsis”,是结构主义的语言学原理,即一个词的意义是它周围的词定义的,那么DeepWalk就是把这个原理搬到了社交网络里,认为一个人的社会角色和功能是周围人定义的。

Python代码

领读: 崔浩川,王呈伟

补充

[from hcui]: DeepWalk我的理解是利用网络中的信息流来反应人在社会中的位置,图神经模型(Graph Neural Network)更能反应人是周围人的函数这一点

第九讲 社会计算中的人:Graph Neural Network模型

主要文献:Velickovic, P., Cucurull, G., Casanova, A., Romero, A., Lio, P., & Bengio, Y. (2017). Graph attention networks. arXiv preprint arXiv:1710.10903, 1(2).

主要内容:如果说前面的文献,例如Blau space和Block modeling,是用人的(人口统计学)属性来理解人际关系,那么从图神经模型(Graph Neural Network)就是反过来,从人际关系中反推人的(人口统计学)属性,或者按照机器学习的语言,叫feature。它和DeepWalk等社交网络的空间嵌入模型最主要的区别是,因为它是监督学习(supervise learning),所以可以针对不同的feature来反推人际关系的强度(图注意力模型),这就给了人的(人口统计学)属性一个“涌现”(emergence)的解释,即,这些属性不是稳定的,它们是一个社交网络在学习和储存环境知识中形成的社会结构的后果。Feature可以理解为一种临时性的知识存储。这种表达,与social construction theory不谋而合,但是却是在computational 的意义上精确定义了这个涌现和社会计算过程,而不是在哲学的意义上空泛地讨论。

Python代码

张章,贾小双

个人工具
名字空间
操作
导航
工具箱