在本章中,我们考虑二维细胞自动机,特别是 John Conway 的生命游戏(GoL)。 像上一章中的一些 CA 一样,GoL 遵循简单的规则并产生令人惊讶的复杂行为。 就像沃尔夫勒姆的规则 110 一样,事实证明 GoL 是通用的;也就是说,至少在理论上它可以计算任何可计算的函数。
在本文中,我们将在PyTorch中为Chain Reaction[2]游戏从头开始实现DeepMind的AlphaZero[1]。为了使AlphaZero的学习过程更有效,我们还将使用一个相对较新的改进,称为“Playout Cap Randomization”[3],以及来自[4]的一些其他技术。在训练过程中,将使用并行处理来并行模拟多个游戏,还将通过一些相关的研究论文讨论AlphaZero的未来发展方向。
生命游戏是一个零玩家游戏,展示了一个二维方格子世界,在每个方格子中居住者一个活着的或者死了的细胞,这些细胞按照生命游戏约定的规则进行模拟,显示的图像看起来颇似生命的出生、繁衍和死亡过程而得名为“生命游戏”。
老鸟:细胞自动机,也叫元胞自动机,英文是 Cellular Automaton,很多文章中会把简写成 CA。元胞自动机是定义在一个由具有离散、有限状态的元胞组成的元胞空间上,并按照一定局部规则,在离散的时间维上演化的动力学系统。
元胞自动机(Cellular Automata,CA)是一种用来仿真局部规则和局部联系的方法。典型的元胞自动机是定义在网格上的,每一个点上的网格代表一个元胞与一种有限的状态。变化规则适用于每一个元胞并且同时进行。元胞自动机也是一类模型的总称,或者说是一个方法框架。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。
在著名作家刘慈欣的科幻小说《镜子》中,人类拥有的无限运算能力的计算机。于是,人类将宇宙大爆炸的初始条件输入程序,并按照一定的规则在夸克数量级推演,最终得到了精确的镜像宇宙。
生命游戏(game of life)为1970年由英国数学家J. H. Conway所提出,某一细胞的邻居包括上、下、左、右、左上、左下、右上与右下相邻之细胞,游戏规则如下: 孤单死亡:如果细胞的邻居小于一个,则该细胞在下一次状态将死亡。 拥挤死亡:如果细胞的邻居在四个以上,则该细胞在下一次状态将死亡。稳定:如果细胞的邻居为二个或三个,则下一次状态为稳定存活。 复活:如果某位置原无细胞存活,而该位置的邻居为三个,则该位置将复活一细胞。
我们迄今为止看到的模型可能具有“基于规则”的特征,因为它们涉及受简单规则支配的系统。 在本章和以后的章节中,我们将探索基于智能体(agent)的模型。
Link:https://www.pnas.org/content/119/1/e2020956119
📷 美国数学协会的每一期《数学视野》(https://www.maa.org/press/periodicals/math-horizons)都会向读者展示一些难题,2021 年 4 月的一期包括由新
写完今天这一篇,Python小知识这块就完了,一共四篇,也就是我过了一遍《零压力学Python》后记录下来的一些重要的点,希望对初学者或者复习Python基础的读者有所帮助,再多的话我就不说了,一切都在知识里面,加油。
只有你拥有使用图形分析的技巧,并且图形分析能快速提供你需要的见解时,它才具有价值。因而最好的图形算法易于使用,快速执行,并且产生有权威的结果。
在开始认真编写程序之前,您需要理解的另一个主题是列表数据类型及其表亲元组。列表和元组可以包含多个值,这使得编写处理大量数据的程序更加容易。由于列表本身可以包含其他列表,您可以使用它们将数据组织成层次结构。
真实数据集中不同维度的数据通常具有高度的相关性,这是因为不同的属性往往是由相同的基础过程以密切相关的方式产生的。在古典统计学中,这被称为——回归建模,一种参数化的相关性分析。
从 2018 年 10 月到 2019 年 6 月,NLP 三大模型横空出世,分别是 Google 的 BERT,OpenAI 的 GPT-2 和 CMU 和 Google 联手的 XLNet。
编程中最常用的音频处理任务包括–加载和保存音频文件,将音频文件分割并追加到片段,使用不同的数据创建混合音频文件,操纵声音等级,应用一些过滤器以及生成音频调整和也许更多。
路径规划是非常常见的一类问题,例如移动机器人从A点移动到B点,游戏中的人物从A点移动到B点,以及自动驾驶中,汽车从A点到B点。这类问题中,都有两个关键问题需要解决:
德国某海洋科学研究机构通过计算机模拟,计算出当日本把核污水排放到太平洋后,污染半个太平洋需要57天。
当代最有趣的数学家John Horton Conway的逝去,令另一个数学天才陶哲轩伤感不已——他曾在普林斯顿受教于Conway教授。
题目:Link prediction techniques, applications, and performance: A
Python是目前最好的编程语言之一。由于其可读性和对初学者的友好性,已被广泛使用。
OSPF是一种内部网关协议(IGP),用于在企业和互联网服务提供商(ISP)网络中实现动态路由。它使用链接状态路由算法来确定最短路径,并利用LSA泛洪来维护网络拓扑。LSA是OSPF中用于交换路由信息的数据包。
规则1:当周围的邻居细胞低于两个(不包含两个)存活时,该细胞变成死亡状态(模拟生命数量稀少)。
今天,介绍一种特别简单的机器学习算法,叫K-临近法,英文k-nearest neighbors,简称KNN。
WWW 2022已公布录用论文,接收323篇/投稿1822篇,录用率为17.7%,完整录用论文列表见https://www2022.thewebconf.org/accepted-papers/
A*(A-star)算法是一种静态网路中求解最短路径最有效的直接搜索算法。在电子游戏中最主要的应用是寻找地图上两点间的最佳路线。在机器人领域中,A*算法常用于移动机器人路径规划。 📷 为了便于理解,本文将以正方形网格地图为例进行讲解。如图,蓝色格子是障碍物,灰色格子是可通过区域,绿色格子是起点(S),红色格子是终点(D)。我们要做的是找到一条从起点到终点的最佳路线。 📷 为了顺利地解决问题,我们先要设定一些约束条件: 1. 从一个格子可以朝周围 8 个方向移动。其中
3.2 SGC and Low-Pass Filtering 简化的图卷积和低通滤波器
作者:qfan,腾讯 WXG 应用研究员 随着深度学习在工业届不断火热,Embedding 技术便作为“基本操作”广泛应用于推荐、广告、搜索等互联网核心领域中。Embedding 作为深度学习的热门研究方向,经历了从序列样本、图样本、再到异构的多特征样本的发展过程。本文主要系统总结了现在主流的 Embedding 技术,简单介绍它们的基本原理,希望对大家快速整理相关知识有所帮助。 一、引言 在提到 Embedding 时,首先想到的是“向量化”,主要作用是将高维稀疏向量转化为稠密向量,从而方便下游模
我们生活在一个互联的世界中,实体通过各种关系相互联系。例如,网页通过超链接相互关联,社交媒体用户通过社交关系相互关联。对这种关系数据建模是机器学习中的一个重要的研究课题。这一课题涵盖了各种应用,如实体分类,链接预测和链接分类。
GNN在许多任务上实现了最先进的性能,但在处理具有大量数据和严格延迟要求的实际应用程序时,面临可扩展性挑战。为了应对这些挑战,已经进行了许多关于如何加速GNN的研究。这些加速技术涉及GNN的各个方面,从智能训练和推理算法到高效系统和定制硬件。本综述提供了GNN加速的分类,回顾了现有的方法,并提出了未来的研究方向。
RIFT (Rotation-Invariant Feature Transform)
本文介绍的是 ICLR 2020 论文《Measuring and Improving the Use of GraphInformation in Graph Neural Networks》,作者为香港中文大学计算机系的硕士二年级研究生侯逸帆。
注意,代码中判断下个状态是否有细胞存在这句改了一下,之前理解的有点问题,另外规则也不完全对。判断规则参考https://conwaylife.com/wiki/Main_Page
我最近进行了有关基因序列的研究工作。我想到的主要问题是:"哪一种最简单的神经网络能与遗传数据最匹配"。经过大量文献回顾,我发现与该主题相关的最接地气却非常有趣的工作是在Yoshua Bengio 教授的实验室中进行的。这篇论文的题目是:"饮食网络:脂肪基因组学的瘦参数",它的主要目标是将基因序列划分为26个种族。我从那篇论文中得到了灵感,在这里我想解释一下建立神经网络来解决这类问题的基本原理。要阅读这篇博客,不需要生物学方面的背景知识;为了直接进入计算部分,我将尝试覆盖大部分必要的部分。
论文链接:Inductive Representation Learning on Large Graphs https://papers.nips.cc/paper/6703-inductive-representation-learning-on-large-graphs.pdf
深度学习是机器学习的子集,它基于人工神经网络。学习过程之所以是深度性的,是因为人工神经网络的结构由多个输入、输出和隐藏层构成。每个层包含的单元可将输入数据转换为信息,供下一层用于特定的预测任务。得益于这种结构,机器可以通过自身的数据处理进行学习。
这次我们使用 Python 来实现生命游戏,这是一种简单的元胞自动机。基于一定规则,程序可以自动从当前状态推演到下一状态。制作的成品如下:
大家好,又见面了,我是你们的朋友全栈君。 P2P技术原理及应用 作 者:金海 廖小飞 摘要:对等网络(P2P)有3种主要的组织结构:分布式哈希表(DHT)结构、树形结构、网状结构。P2P技术已经延伸到几乎所有的网络应用领域,如分布式科学计算、文件共享、流媒体直播与点播、语音通信及在线游戏支撑平台等方面。现在人们已经开始将重心转入到覆盖层网络的节点延时聚集研究、覆盖网之间(Inter-Overlay)优化研究、P2P支撑平台研究以及P2P安全研究等方面。 关键词:对等网络;分布式哈希表;覆盖层网络 Abstract:ThePeer-to-peer(P2P)network has three main structures: Distributed Hash Table (DHT) structure, tree structure, and mesh structure. P2P technology has been extended to almost all areas of network applications, including distributed scientific computing, file sharing, streaming media on-demand and live broadcast, voice communications, and online gaming support platform. Now, study areas such as node latency aggregation for overlay network, Inter-Overlay optimization, P2P supporting platform, and P2P security are receiving more attention. Keywords:P2P;distributedHash table; overlay network 1 P2P技术原理 什么是对等网络(P2P)技术?P2P技术属于覆盖层网络(Overlay Network)的范畴,是相对于客户机/服务器(C/S)模式来说的一种网络信息交换方式。在C/S模式中,数据的分发采用专门的服务器,多个客户端都从此服务器获取数据。这种模式的优点是:数据的一致性容易控制,系统也容易管理。但是此种模式的缺点是:因为服务器的个数只有一个(即便有多个也非常有限),系统容易出现单一失效点;单一服务器面对众多的客户端,由于CPU能力、内存大小、网络带宽的限制,可同时服务的客户端非常有限,可扩展性差。P2P技术正是为了解决这些问题而提出来的一种对等网络结构。在P2P网络中,每个节点既可以从其他节点得到服务,也可以向其他节点提供服务。这样,庞大的终端资源被利用起来,一举解决了C/S模式中的两个弊端。 P2P网络有3种比较流行的组织结构,被应用在不同的P2P应用中。 (1)DHT结构 分布式哈希表(DHT)[1]是一种功能强大的工具,它的提出引起了学术界一股研究DHT的热潮。虽然DHT具有各种各样的实现方式,但是具有共同的特征,即都是一个环行拓扑结构,在这个结构里每个节点具有一个唯一的节点标识(ID),节点ID是一个128位的哈希值。每个节点都在路由表里保存了其他前驱、后继节点的ID。如图1(a)所示。通过这些路由信息,可以方便地找到其他节点。这种结构多用于文件共享和作为底层结构用于流媒体传输[2]。 (2)树形结构 P2P网络树形结构如图1(b)所示。在这种结构中,所有的节点都被组织在一棵树中,树根只有子节点,树叶只有父节点,其他节点既有子节点也有父节点。信息的流向沿着树枝流动。最初的树形结构多用于P2P流媒体直播[3-4]。 (3)网状结构
除了将二值图中的局部处理结果直接加起来以外,我们还可以用这些局部处理结果来生成一张新的二值图。根据原图中的对应图像单元的局部计算结果,我们可以确定:新的二值图中相应图像单元的值。新的二值图可以被作为:另一个计算周期的输入。这个操作被称为:迭代修正。
图神经网络是近年来很火的一个研究方向,在生物化学,推荐系统,自然语言处理等领域都得到了广泛应用。其中图神经网络在推荐系统的应用方面,已有几篇综述[1][2][3]做过详细的归纳总结。但是让人感到美中不足的是,综述中总结的多是学术型工作,偏向于GNN模型上的微调,部分工作其实就是将上游的SGC[4],GrapSage[5],JKNet[6]等模型在几个祖传玩具数据集上刷一下结果讲一个故事,很少关心模型的扩展性,也很少关心图的构建,特征处理,线上打分等不可或缺的环节。
本文是一篇综述文章 「A Survey on Causal Inference」 的阅读笔记(大部分内容参照原文进行了较为通俗易懂的翻译,小部分内容加入了自己的理解)。
大数据文摘授权转载自zzllrr小乐 作者:Noah Giansiracusa 译者:zzllrr小乐 如今,人工智能 (AI) 的突破越来越频繁地成为新闻头条。至少就目前而言,人工智能是深度学习的代名词,这意味着基于神经网络的机器学习(如果你不知道神经网络是什么,不要担心——在这篇文章中你不需要它们)。 深度学习的一个领域引起了很多兴趣,也有很多很酷的结果,那就是图神经网络(GNN,graph neural networks)。 这种技术使我们能够喂送自然存在于图上的神经网络数据,而不是像欧几里得空间这
最简单的寻路算法设计就是将图作为数据结构。一个图包含了多个节点,连接任意邻近的点组成边。在内存中表示图有很多种方法,但是最简单的是邻接表。在这种表示中,每个节点包含了一系列指向任意邻近节点的指针。图中的完整节点集合可以存储在标准的数据结构容器里。下图演示了简单的图的可视化形象和数据表示。
模拟生命 模拟生命类似一个小游戏,可以假设有很多个小生命,或小细胞,可生可灭,具体k看这个细胞邻居的多少,规则如下,更多参见: The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, live or dead. Every cell interacts with its ei
【编者按】本文由CSDN博主 @松子茶 翻译自Quora的问题:“Is there any summary of top models for the Netflix prize?”答主位为Edwin
问题导读: 1.什么是容器? 2.容器是如何发展起来的? 3.容器技术有哪些优势? 4.传统游戏后台架构存在哪些问题? 5.容器对于开发人员带来哪些好处? 什么是容器? 容器(Container)是一种轻量级的虚拟化技术,所谓轻量级虚拟化,就是使用了一种操作系统层虚拟化技术,这种技术允许一个操作系统上用户空间被分割成几个独立的单元在内核中运行,彼此互不干扰,这样一个独立的空间,就称之为一个容器。举个例子,一个操作系统,可以类比成一套公寓,那么容器,就相当于公寓中的一个房间,大家共享同一个客厅,厨房
本期更新第6篇文章, 聊聊“推荐系统”。 推荐系统核心的是推荐算法,常用有这几种: 基于内容推荐 协同过滤推荐 基于关联规则推荐 基于效用推荐 基于知识推荐 组合推荐。 最常用的还是组合推荐 Hybrid Recommendation 由于各种推荐方法都有优缺点,所以在实际中,组合推荐经常被采用。 最简单的做法就是分别用基于内容的方法和协同过滤推荐方法去产生一个推荐预测结果,然后用某方法组合其结果。 用的最多的是协同过滤算法,这也是本文要重点介绍的。 协同过滤推荐 Collaborative Filteri
半监督图卷积神经网络(Semi-GCN)对原始的GCN进行了约束与简化,也因此诞生了诸多研究方向。GraphSAGE首先归纳出了Neighbor Aggregate模式;GAT将Attention机制引入到了GCN当中;GeniePath尝试将GCN的层次做深。本次讨论将主要介绍semi-GCN之后的这些变体与它们之间的联系,以及当前GCN研究当中的问题与挑战。
领取专属 10元无门槛券
手把手带您无忧上云