1 2 3 4 5 ··· 15 下一页
摘要: 分布式机器学习、联邦学习、多智能体的区别和联系 最近这三个方面的论文都读过,这里写一篇博客归纳一下,以方便搞这几个领域的其他童鞋入门。传统的分布式机器学习已经被研究十几年了,目前各大顶会上的分布式机器学习主要是数学味道很浓的分布式数值优化算法。而联邦学习可以看做一种特殊的分布式学习,它有一些特殊的设定,比普通的分布式学习要困难一些,还是有很多方向可以研究的,做好了应该可以发顶会。多智能体系统是一组自主的,相互作用的实体,它们共享一个共同的环境,利用传感器感知,并利用执行器作动。 阅读全文
posted @ 2021-12-11 18:47 orion-orion 阅读(5335) 评论(5) 推荐(3) 编辑
摘要: 概率论沉思录:初等抽样论 我们先考察无放回抽样(sampling without replacement) 实验,也即从有N个球的坛子里无放回地抽n个球,我们会发现实验结果服从超几何分布/广义超几何分布。接着,我们会讨论前向推断和后向推断两类问题。然后,我们会研究无放回抽样的极限形式,这将导出二项分布/多项分布。关于多项分布,我们还会进一步讨论统计力学中的麦克斯韦-玻尔兹曼统计。最后,我们会考察更复杂的有放回抽样(sampling with replacement) 实验,也即从有N个球的坛子里无放回地抽n个球。注意,与许多人认为的相反,我们认为无放回抽样更复杂,因为我们需要考虑大量的额外背景信息并进行分析。之所其二项分布的数学形式更简单,是由于我们做出了随机化的额外假设导致的,我们所得到的只是个近似的结果。最后,我们会对有放回抽样的近似结果做进一步的相关性校正,这将得到一个马尔可夫链模型。 阅读全文
posted @ 2024-10-31 23:32 orion-orion 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 概率论沉思录:定量规则 我们在上一篇博客中介绍了合情推理中所要满足的合情条件。在这一篇博客中我们将看到,上述条件皆不是空穴来风,而且不多不少刚刚好。一旦我们导出了满足上述合情条件的合情推理定量规则,我们就会发现,我们实际上就得到了概率的原始定义(乘法规则 + 加法规则 + 无差别原则)。其中,条件(Ⅰ)(Ⅱ)(Ⅲa)是机器人大脑的“结构性”条件,决定了推理机器人大脑的内部运作规则(这里的“大脑”可以指电路 / 神经网络 / ...),导出概率的乘法规则(product rule):p(AB | C) = p(A | C)p(B | AC)=p(B | C)p(A | BC)和加法规则(sum rule):p(A | B) + p(非A | B) = 1(p(x)是任意连续单调递增函数,值域为0 <= p(x) <= 1)而条件(Ⅲb)(Ⅲc)是“接口”条件,进一步建立了推理机器人与客观世界的联系。其中,(Ⅲc)导出概率的无差别原则(principle of indifference):p(A_i | B) = 1 / n, 1 <= i <= n。 阅读全文
posted @ 2024-10-17 15:42 orion-orion 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 概率论沉思录:合情推理 最近蔻享学术主办了每周一次的《概率论沉思录》读书会活动,恰好我也正在读该书中译版,通过该活动我了解到了不同学科的老师(数学/物理/统计/计算机)对这本书的不同理解,而我自己对该书的理解也在这个过程中逐渐深入了。于是准备每周都持续更新一下我的读书笔记。本书作者是一位物理学家,不同于基于Kolmogorov公理化概率论中先从概率空间和测度的定义入手来讲概率论,而是先从现实世界的经验背景入手提出合情推理和合情程度的概念,然后再介绍合情程度需要满足的定性条件(即合情条件),最后在此基础上推导出合情推理所要满足的定量规则,即乘法规则和加法规则(对应本书第1、2章的内容)。 阅读全文
posted @ 2024-08-12 20:03 orion-orion 阅读(538) 评论(0) 推荐(3) 编辑
摘要: 推荐系统:精排多目标融合与超参数学习方法 粗排/精排的个性化多任务学习模型,能预估20多个不同的预估值,如点击率、有效播放率、播放时长、点赞率、关注率等,那如何用它来排序呢?从多任务学习到多目标排序,中间有一个过渡,即如何把这些预估值融合成一个单一的排序分,最后实现多目标精排。这也就引入了本文要介绍的正题:多目标融合(multi-task fusion, MTF)。手工融合的优点在于其目标权重就指示了目标在融合公式中的重要度,比较直观且可解释性强。当然其缺点也非常明显,这个权重系数对于所有用户都是一样的,缺少个性化。那么,我们是否可以用模型来学习超参数呢?这就涉及到了融合超参数的学习方法了,也即用一个模型来学习各预估分数的组合权重。 阅读全文
posted @ 2024-05-18 16:30 orion-orion 阅读(3310) 评论(0) 推荐(1) 编辑
摘要: 图机器学习:从图谱角度来理解图增广 图对比学习(Graph Contrastive Learning, GCL)旨在以自监督的方式学习图的节点表征。具体而言,先以特定方式对原图A进行增广,得到两个增广后的视图(view)V1和V2做为对比对(也可以是原图和增广后的视图做为对比对),并经由GCN进行编码得到两个增广视图中的节点embeddings。接着,对于某个目标节点i,我们需要使其在某个增广视图中的embedding去接近在另一个增广视图中的正样本embedding,而远离负样本embedding。不过,均匀随机的边扰动很难做为有效的增广来使用,这启发我们去构思比均匀扰动更好的图增广方法。我们知道图谱可以做为许多图的结构属性的一个综合性总结,包括聚类系数、连通性等等。那么,基于图谱的图增广方法就是顺理成章的了。 阅读全文
posted @ 2023-10-23 12:28 orion-orion 阅读(595) 评论(0) 推荐(1) 编辑
摘要: 谱图论:Laplacian算子及其谱性质 K为图G的MarKov转移算子,则我们称算子L = I - K为图G的(归一化)Laplacian算子。通过研究L,我们就能把握Laplacian二次型E[f]=⟨f, Lf⟩的特性,从而把握图G的特性,这是谱图理论中至关重要的一点。事实上,我们可以找到Laplacian算子的n个相互正交的规范化特征向量(范数为1)及其对应的特征值。而这事实上和我们在线性代数课程中所学过的谱定理密切相关。我们前面证明过Markov转移算子K是自伴的,则L=I−K也是自伴的(事实上,又由于⟨f, Lf⟩⩾0,L还是半正定的)。 阅读全文
posted @ 2023-10-19 00:24 orion-orion 阅读(568) 评论(0) 推荐(0) 编辑
摘要: 谱图论:Laplacian二次型和Markov转移算子 以下部分是我学习CMU 15-751: TCS Toolkit的课堂笔记。接下来将要介绍的是谱图论(spectral graph theory)的关键,也就是Laplacian二次型(Laplacian quadratic form)。直观地理解,Laplacian二次型刻画了图的“能量”(energy)。它在其它语境下,又被称为Dirichlet形式(Dirichlet form),局部方差(local variance),解析边界大小(analytic boundary size)。直觉上,其值越小,也就意味着f更加“光滑”(smooth),即其值不会沿着边变化得太剧烈。 阅读全文
posted @ 2023-09-27 00:32 orion-orion 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 迁移学习:互信息的变分上下界 在机器学习,尤其是涉及异构数据的迁移学习/联邦学习中,我们常常会涉及互信息相关的优化项,我上半年的第一份工作也是致力于此。其思想虽然简单,但其具体的估计与优化手段而言却大有门道,我们今天来好好总结一下,也算是对我研一下学期一个收尾。为了解决互信息估计的的难解性,我们的方法是不直接对互信息进行估计,而是采用变分近似的手段,来得出互信息的下界/上界做为近似,转而对互信息的下界/上界进行最大化/最小化。 阅读全文
posted @ 2023-09-21 00:22 orion-orion 阅读(1967) 评论(6) 推荐(3) 编辑
摘要: SICP:惰性求值、流和尾递归(Python实现) 在上一篇博客中,我们介绍了用Python对来实现一个Scheme求值器。然而,我们跳过了部分特殊形式(special forms)和基本过程(primitive procedures)实现的介绍,如特殊形式中的delay、cons-stream,基本过程中的force、streawn-car、stream-map等。事实上,以上特殊形式和基本过程都和惰性求值与流相关。这篇博客我们将介绍如何用Python来实现Scheme中的惰性求值和流,并使用惰性求值的原理来为我们的Scheme解释器增添尾递归的支持。所谓流,一言以蔽之,就是使用了惰性求值技术的表。它初始化时并没有完全生成,而是能够动态地按需构造,从而同时提升程序的计算和存储效率。 阅读全文
posted @ 2023-05-21 22:14 orion-orion 阅读(408) 评论(0) 推荐(1) 编辑
摘要: SICP:元循环求值器(Python实现) 元语言抽象就是建立新的语言。它在工程设计的所有分支中都扮演着重要的角色,在计算机程序设计领域更是特别重要。因为这个领域中,我们不仅可以设计新的语言,还可以通过构造求值器的方式实现这些语言。对某个程序设计语言的求值器(或者解释器)也是一个过程,在应用于这个语言的一个表达式时,它能够执行求值这个表达式所要求的动作。接下来我们将要讨论如何关于在一些语言的基础上构造新的语言。在这篇博客里,我们将用Python语言去构造一个Scheme语言的求值器。事实上求值器的实现语言无关紧要,我们也可以用Scheme语言去构造Scheme语言的求值器。用于被求值语言同样的语言写出来的求值器被称为元循环(metacircular)。 阅读全文
posted @ 2023-05-15 20:14 orion-orion 阅读(515) 评论(0) 推荐(0) 编辑
1 2 3 4 5 ··· 15 下一页