首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用人脑生成等概率随机数,困扰人类30万年的问题解决了 | 附“源代码”

如果用计算机,我们就可以生成近乎完全随机的数,保证每个数被抽中的概率都是10%。(注:其实计算机生成的是伪随机数,并不完全随机,但效果远胜过人类。) 在这件看似超级简单的事情上,人脑输给了电脑。...人类随机函数human.random远不及Numpy里的np.random啊。 难怪有Twitter网友会调侃:智人诞生30多万年以来就没能解决这个问题。 ?...另外,我们还希望尽可能保留原始的分布,也就是让xi,i(保持不动的部分)之和最大,即不调整的部分尽可能多。 ? 现在这个问题就变成了一个线性规划问题,在这20个约束条件下,令对角元素之和最大。...人脑随机数生成器 现在你明白人类随机数生成器的工作原理了,下面就是这套程序的“源代码 向一个人问得1~10之间的随机整数n1; if n1=5 then 再向另一个人问得一个随机整数n2;...,你应该能得到一个接近平均的从1到10的随机数发生器,前提是你得有8500个人。

71020
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    普林斯顿算法讲义(三)

    以概率 p,页面指向一个随机页面;以概率(1-p),页面指向一个现有页面,概率与页面的入度成比例。 子类型检查。 给定单继承关系(一棵树),检查 v 是否是 w 的祖先。...设计一个算法来确定给定图 G 的 MST 是否唯一。 随机生成树。 给定图 G,均匀随机生成 G 的一棵生成树。...我们的方法具有线性对数运行时间。 **随机字符串。**编写一个递归函数,创建一个由字符’A’和’Z’之间的随机字符组成的字符串。...在组合 tries 时,通过选择具有最小概率的最早生成的 trie 来打破平局。 用于 Huffman 编码的双队列算法。...具有可能值 x1, …, xN 且以概率 p1, …, pN 出现的离散随机变量 X 的熵 H 定义为 H(X) = -p1 lg p1 - p2 lg p2 - … - pN lg pN,其中 0 lg

    17210

    学界 | 从零开始自学设计新型药物,UNC提出结构进化强化学习

    生成具备期望属性的新型化合物 SMILES 字符串的深度强化学习算法工作流程。(A) 生成 Stack-RNN 的训练步。(B) 生成 Stack-RNN 的生成器步骤。...该模型根据前缀(prefix)输出下一个字符的概率向量 pΘ(a_t|s_t − 1)。参数 Θ 的向量通过交叉熵损失函数最小化进行优化。在生成器步骤中,输入 token 是前一步生成的字符。...然后从分布 pΘ(a_t| s_t − 1) 中随机采样字符 a_t。(C) 生成新型化合物的强化学习系统的一般流程。(D) 预测模型机制。...Tropsha 称:「对于一个需要不断寻找新方法来缩短新药进入临床试验所需时间的行业来说,该算法极具吸引力,因为它能设计出具有特定生物活性和最佳安全性的新化学实体。」...在该概念验证研究中,我们使用ReLeaSE方法设计化学库,该化学库偏向于结构复杂性,偏向于具有最大、最小或特定物理属性范围的化合物,如熔点或疏水性,或者偏向于对Janus蛋白激酶2具有抑制活性的化合物。

    94720

    文心一言 VS 讯飞星火 VS chatgpt (223)-- 算法导论16.3 5题

    字符频率:指的是某个字符在文本中出现的次数或频率。 2. 编码:为每个字符分配一个唯一的字符串(通常由0和1组成)。 3. 码字长度:分配给每个字符的字符串的长度。 4....字符频率:字母表中各个字符出现的概率。 2. 码字长度:指的是将字符编码成二进制码字时所需的平均位数。 3. 最优编码:指的是使平均码字长度最小的编码方式。...现在,假设我们有字母表 ( \Sigma ) 和字符在 ( \Sigma ) 上的概率分布 ( P ),且 ( P ) 是单调递减的,即 ( P(a_1) \geq P(a_2) \geq \cdots...现在,我们来考虑这样一个特定情况:字母表中的字符按频率单调递减排序,即 ( P(a_1) \geq P(a_2) \geq \cdots \geq P(a_n) )。...哈夫曼编码是一种广泛用于数据压缩的算法,它为给定字母表中的字符生成具有前缀性质的编码,这意味着任何字符的编码都不是其他字符编码的前缀。

    17720

    自然语言处理起源:马尔科夫和香农的语言建模实验

    在最初的控制实验中,他先从包含 27 个符号的字母表(26 个字母,加上一个空格)中随机抽取字母以生成句子,并获得以下输出: XFOML RXKHRJFFJUJ ZLPWCFWKCYJ FFJEYVKCQSGHYD...为了解决这个问题,Shannon 修改了他的原始字母表,使得这个模型更精确地对英语的概率进行建模——他从字母表中提取出 E 的可能性比 Q 的可能性高 11%。...当他再次从经过重新校准的语料库中随机抽取字母时,生成的句子开始跟英语有点接近了: OCRO HLI RGWR NMIELWIS EU LL NBNESEBYA THEI EEI ALHENHTTPA OOBTTVA...香农通过马尔可夫的理念揭示了英语的统计框架,并表明通过对该框架建模(通过分析字母和单词相互组合出现的相关概率),这些模型可以生成真正意义上的语言。...对于马尔科夫来说,它将随机性的研究扩展到相互独立的事件之外,为概率论的新时代铺平了道路。

    1.6K20

    序列的相似性

    字母表和序列 在生物分子信息处理过程中,将生物分子序列抽象为字符串,其中的字符取自特定的字母表。字母表是一组符号或字符,字母表中的元素组成序列。...下面所讨论的内容独立于特定的字母表。...首先规定一些特定的符号: ① A — 字母表; ② A* — 由字母表A中字符所形成的一系列有限长度序列或字符串的集合; ③ a、b、c — 单独的字符; ④ s、t、u、v、x — A*中的序列; ⑤...PAM有一系列的替换矩阵,每个矩阵用于比较具有特定进化距离的两条序列。例如,PAM-120矩阵用于比较相距120个PAM单位的序列。...一个PAM-N矩阵元素(i,j)的值反映两条相距N个PAM单位的序列中第i种氨基酸替换第j种氨基酸的概率。从理论上讲,PAM-0是一个单位矩阵,主对角线上的元素值为1,其它矩阵元素的值为0。

    10610

    李航《统计学习方法》笔记之监督学习Supervised learning

    监督学习Supervised learning 1.1 监督学习(supervised learning) 指从标注数据中学习预测模型的机器学习问题。...1.1.2 符号说明 在监督学习中,将输入与输出看作是定义在输入(特征)空间与输出空间上的随机变量的取值。 输入输出变量用大写字母表示,习惯上输入变量写作X,输出变量写作Y。...输入输出变量的取值用小写字母表示,输入变量的取值写作α,输出变量的取值写作y。 变量可以是标量或向量,都用相同类型字母表示。...训练数据与预测数据被看作是依联合概率分布P(X, Y)独立同分布产生的。统计学习假设数据存在一定的统计规律,X和Y具有联合概率分布就是监督学习关于数据的基本假设。...1.6 生成模型与判别模型(Generative model and discriminant model) 生成方法: P(Y \mid X)=\frac{P(X, Y)}{P(X)} 一般只要出现联合概率分布就是生成模型

    49920

    换掉 UUID,NanoID 更快、更短、更安全

    例如,使用 NanoID 的对象小而紧凑,能够用于数据传输和存储。随着应用程序的增长,这些数字变得明显起来。 2. 更安全 在大多数随机生成器中,它们使用不安全的 Math.random()。...此外,NanoID 在 ID 生成器的实现过程中使用了自己的算法,称为 统一算法,而不是使用“随机 % 字母表” random % alphabet。 3....0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz- 由于字母表更大,需要超过 1 万亿年,才能有 1% 的概率至少发生一次碰撞...没有第三方依赖 由于 NanoID 不依赖任何第三方依赖,随着时间的推移,它能够变得更加稳定自治。 从长远来看,这有利于优化包的大小,并使其不太容易出现依赖项带来的问题。...“使用默认字母表每秒可生成超过 220 万个唯一 ID,使用自定义字母表每秒可生成超过 180 万个唯一 ID。

    69720

    NanoId取代UUID

    它使用加密的强随机 API。可在集群中使用。 紧凑. 它使用比 UUID(A-Za-z0-9_-)更大的字母表。 因此,ID 大小从36个符号减少到21个符号。 易用....它们在 ID 中有相似数量的随机位 (Nano ID 为126,UUID 为122),因此它们的冲突概率相似,要想有十亿分之一的重复机会, 必须产生103万亿个版本4的ID....区别: 1、Nano ID 使用更大的字母表,所以类似数量的随机位 被包装在21个符号中,而不是36个。...不使用不安全的 Math.random(), Nano ID 使用 Node.js 的 crypto 模块和浏览器的 Web Crypto API。 这些模块使用不可预测的硬件随机生成器。 统一性....随机 % 字母表 是编写ID生成器时常犯的一个错误。 符号的分布是不均匀的; 有些符号出现的几率会比其他符号低。因此, 它将减少刷新时的尝试次数。

    2.2K20

    浅谈几种常见的分布式ID

    在分布式环境下,如何对某对象做唯一标识是个很常规的问题。本文讨论几种常见做法,供大家参考。 1. UUID UUID是可以生成时间、空间上都独一无二的值,其本质是随机+规则组合而成的。...❖ 优点 使用UUID作为主键具有以下优点: UUID值在表,数据库甚至在服务器上都是唯一的,允许您从不同数据库合并行或跨服务器分发数据库。...此外,NanoID 在 ID 生成器的实现过程中使用了自己的算法,称为 统一算法,而不是使用“随机 % 字母表” random % alphabet。...;二、UUID是完全随机的,无法生成递增有序的UUID。...而现在流行的基于 Snowflake 雪花算法的ID生成方案就可以很好地解决了UUID存在的这两个问题。

    1.5K20

    NAACL2018 | 杰出论文:RNN作为识别器,判定加权语言一致性

    近来,许多实验都表明 RNN 在通过分配概率生成英语文本任务上显著优于其他方法(Jozefowicz et al., 2016)。 简单来说,RNN 的工作方式大致如下。...在每一个时间步,它接收一个输入词项,更新它的隐状态向量,然后通过生成一个基于词汇表的概率分布来预测下一个时间步的词项。输入字符串的概率由构成字符串的词项(后面跟随一个终止符)的预测概率乘积得到。...在这种模式下,每一个 RNN 都定义了一种加权语言,即一个从字符串到权重的全函数。...同时,我们是否能确定计算出的加权语言的一致性也尚不清楚(即它是否一组所有字符串的概率分布)。如果没有确定分配给所有有限字符串的整体概率集群,就难以对语言模型的困惑度进行公平比较。...图 1:单字母的字母表的 RNN 采样以及它们识别出的加权语言。M 是一个正的有理数,它取决于期望的误差范围。

    54250

    关于机器学习的知识点,全在这篇文章里了

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    65320

    干货 | 关于机器学习的知识点,全在这篇文章里了

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    59710

    【收藏】关于机器学习的知识点,全在这篇文章里了

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    46610

    注意:雪花算法并不是ID的唯一选择!

    当我们在分布式环境中存储一些数据的时候,不得不面对的一个选择,就是ID生成器。 使用一个唯一的字符串,来标识一条完整的记录。...为了解决这个问题,你需要增加一些其他的标识,比如机器的ID,或者更多细分的信息减少时间的碰撞。 这种自定义的ID生成器,只适合特定的业务。 做着做着你就会发现,它本质上是雪花算法的变种。...雪花算法 雪花算法生成的ID是long类型,默认字符串长度是19位,它分为4个部分。 保留位 1 位。...具有更好的紧凑性,是目前大多数业务优先采用的ID生成算法。...另外,它的速度更快,它可以使用默认字母表每秒生成超过 220 万个唯一 ID,使用自定义字母表时每秒可以生成超过 180 万个唯一 ID,且几乎没有碰撞几率。

    2.3K30

    1万+字原创读书笔记,机器学习的知识点全在这篇文章里了

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    47720

    一文总结机器学习常见知识点

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    51710

    【干货】关于机器学习的知识点,全在这篇文章里了

    数据与概率的转换:通过贝叶斯法则处理联合概率P(C,X)和条件概率P(X|C)得出P(C|X),MAP问题是训练数据中最可能的类是什么。将所有类的最终结果考虑在内的方法称为贝叶斯最优分类。...GA使用字符串(类似染色体的作用),字符串中的每个元素都是从某些字母表中选择,字母表中的值通常是二进制的相当于等位基因,对于解决方法,将被变为一个字符串,然后我们随机生产字符串作为初始种群。...随机选择字符串中的一个位置,然后用字符串1的第一部分和字符串2的第二部分组成后代。(b)多点交叉。选择多个点,后代的生成方式和前面一样。(c)均匀交叉。每个元素都随机的选自于它的父母。...对当前最好的字符串实现进化通过编译算子实现,字符串中每个元素的值以概率p(通常很小)改变。 3. 基本遗传算法 初始化 进过我们选的字母表产生N个长为L的字符事。...与采样结合的进化学习 最基础的版本是我们熟知的基于种群的增长学习算法(PBIL).该算法非常简单,像基本的GA一样,它采用一个二进制字母表,但不保留种群,而是利用一个概率向来给出每一个元素是0或1的概率

    85010
    领券