贝叶斯学习自动机

国科大《自然语言处理》复习(宗成庆老师) 国科大自然语言处理课程笔记(宗成庆老师课堂) 阅读详情

problem

在强化学习中,有一个经典的问题是双臂老虎机问题(two-armed bandit),agent需要每次摇动老虎机中的一个臂,每次摇动会获得一个奖励(reward)或者一个惩罚(penalty)。对于每个老虎机来说,奖励/惩罚服从伯努利分布(Bernoulli process),获得奖励的概率为ri,获得惩罚的概率为1 - ri,其中ri对于agent来说是未知的。agent的目标是,通过实验,学习到最优的选择,使获得的回报(return)最大。

solution

在提及贝叶斯自动机之前,首先说一下Beta分布,它是贝叶斯自动机的核心。

Beta distribution

Beta分布可视为一个概率的概率分布,当我们不知道一个时间发生的具体概率时,它能够给出这个事件所有可能发生的概率的可能性大小。
Beta分布是一种连续型概率密度分布,其分布函数如下:
在这里插入图片描述
其中,
在这里插入图片描述
Beta分布的期望为:
在这里插入图片描述
Beta分布的方差为:
在这里插入图片描述
由于Beta分布是概率密度分布,我们可以通过积分,得到它的概率分布函数:
在这里插入图片描述
贝叶斯推断:我们称各种假设为先验分布,先验分布加上实验数据后,得到后验分布。其中,一般用Beta分布作为先验分布。
共轭先验:对于伯努利分布,用Beta分布作为先验分布,通过贝叶斯推断后得到的后验分布依然时Beta分布的特性。
Beta分布与二项分布的关系:
进行n次实验,出现实验成功的概率p服从一个显眼概率密度分布Beta( α \alpha α, β \beta β),实验出现了k次成功,那么实验成功后概率p的后验概率为Beta( α \alpha α + k, β \beta β + n - k)。
如何理解Beta( α \alpha α, β \beta β)中的 α \alpha α,和 β \beta β呢?
α \alpha α可看作是实验成功的次数, β \beta β为实验失败的次数(具体可查找Beta分布的推导过程)

Bayesian learning automaton

贝叶斯自动机的核心是Beta分布,Beta分布的概率密度函数(probability density function)和累积分布函数(cumulative distribution function)如下:
在这里插入图片描述
在这里插入图片描述

algorithm

BLA的状态为两个贝叶斯概率密度函数的参数,分别代表两个臂。BLA推断后做出选择arm1或arm2的选择,返回给老虎机,老虎机则根据自身的伯努利分布给出该步选择是获得奖励还是惩罚。奖励/惩罚返回给BLA进行学习。不断迭代,直至选出最优的一个arm。
在这里插入图片描述
算法如下:
在这里插入图片描述

  1. 初始化参数,将 α \alpha α1, β \beta β1, α \alpha α2, β \beta β2在第一轮时设置为1,表示无信息先验,两个arm选择概率是相同的。
  2. 对于迭代的N轮,在每轮中,画出arm1和arm2的Beta分布,在Beta分布上随机选择x1, x2。
  3. 比较x1和x2,若x1大于x2,那么选择arm1,得到对应的奖励或惩罚。
  4. 若得到奖励,更新 α \alpha% α(即成功次数加一);若得到惩罚,更新 β \beta β(即惩罚次数加一)。

定义p1N为选择arm1的概率,即P(X1N > X2N | infoN)。 infoN为第N轮的参数信息。

example

给定arm1获得奖励的概率r1为 0.9,arm2获得奖励的概率r2为0.6,均服从伯努利分布。
初始化: α \alpha α1 = β \beta β1 = α \alpha α2 = β \beta β2 = 1, agent选择arm1的概率为0.5。
step1: 画出图像选择,得到随机变量x2 > x1, 选择arm2并获得了惩罚,更新选择两个arm的Beta分布,估计arm2获得奖励的概率下降,agent选择arm1的概率变成2/3。此时的Beta分布如下:
在这里插入图片描述
step2:再次画出图像选择,得到随机变量x2 > x1, 选择arm2并获得了奖励,更新选择两个arm的Beta分布,估计arm2获得奖励的概率下降,agent选择arm1的概率变成0.5。此时的Beta分布如下:
在这里插入图片描述
step3:第三次选择中,x1 > x2,选择arm1并获得了奖励,更新选择两个arm的Beta分布,估计arm1获得奖励的概率上升,agent选择arm1的概率变成0.7。此时的Beta分布如下:
在这里插入图片描述
…
step10:经过10轮迭代,agent选择arm1的概率变成0.95。Beta分布如下:
在这里插入图片描述
…
step100:经过100轮迭代,gent选择arm1的概率变成0.98。
最后agent学习到了选择arm1是最优的。

result analysis

  1. BLA是可以自动更正学习的
    假设有这样一个场景,agent在学习过程中,出现了对r1的估计值小于r2的估计值,那么agent会倾向于选择arm2,尽管r1的真实值大于r2。而BLA对于这样的场景是能够自动更正,使得agent向选择arm1作为最优的方向前进。
  2. BLA只会收敛到最优的arm
    当N趋近于无穷时,选择arm1的概率也会接近1(当r1 > r2)
    【具体的证明参见原文,参考文献第一个】

————————————————————————————
参考文献or资料:
【1】 O. -C. Granmo, “A Bayesian Learning Automaton for Solving Two-Armed Bernoulli Bandit Problems,” 2008 Seventh International Conference on Machine Learning and Applications, San Diego, CA, USA, 2008, pp. 23-30, doi: 10.1109/ICMLA.2008.67.
【2】https://zhuanlan.zhihu.com/p/149964631
【3】https://www.zhihu.com/question/30269898
【4】https://zhuanlan.zhihu.com/p/69606875

从规则到智能:构建多层内容安全过滤与意图识别系统 内容安全过滤是保障互联网平台稳定运行和用户体验的关键技术,其核心在于识别并处置用户生成内容中的风险信息。从技术原理上看,系统通常采用分层架构:基础层依赖正则表达式和AC自动机进行高效的模式匹配与关键词拦截;进阶层则运用自然语言处理(NLP)技术,如基于TF-IDF和朴素贝叶斯的统计模型进行文本分类,以实现更通用的意图识别。在工程实践中,这种分层策略的价值在于平衡效率与精度,绝大部分内容能在计算成本低的规则层快速处理,复杂语义则交由深度学习模型分析。典型的应用场景包括UGC社区、社交平台的内容审核以及聊天机器 阅读详情

相关推荐

60、强化学习与概率贝叶斯网络详解

本文详细介绍了强化学习与概率贝叶斯网络的核心概念与应用。在强化学习部分,涵盖了时间差分学习、Q学习和SARSA算法的更新机制,以及学习自动机的概率更新策略及其收敛性;通过Java示例展示了Q学习在路径规划中的实现。在贝叶斯网络部分,阐述了其作为因果概率模型在不确定性推理中的作用,对比了经典频率主义与贝叶斯方法的差异,解析了贝叶斯定理、条件独立性与d-分离等关键原理,并介绍了图形模型的基本分类与动态贝叶斯网络的应用。文章最后总结了两类技术在人工智能领域的重要地位。

berry的博客 64

数学建模实战:从数据清洗到决策优化,解析2021美赛C题“确认黄蜂”解题框架

在数据分析与数学建模领域,处理现实世界中的复杂问题通常遵循一套系统性的方法论:从数据预处理与特征工程开始,通过构建统计模型或机器学习模型(如逻辑回归、随机森林)来提取有效信息并量化不确定性;进而基于模型输出,运用优化算法(如整数规划、动态规划)进行资源分配与策略寻优,最终实现数据驱动的科学决策。这一流程在环境监测、公共卫生、物流调度等多个场景中具有广泛应用价值。本文以2021年美国大学生数学建模竞赛(MCM)C题“确认黄蜂”为具体案例,深入剖析如何将这一通用技术框架应用于物种入侵管理这一具体领域,其中重点探

weixin_26742753的博客 292

45、机器学习与数据挖掘算法设计

本文系统介绍了机器学习与数据挖掘中的核心算法与模型,涵盖自动机泛化、粗糙集理论、版本空间与候选消除算法、决策树、归纳逻辑编程、频繁模式挖掘、关联规则发现以及多种概率模型(如朴素贝叶斯、贝叶斯网络、CRF和HMM)。文章详细阐述了各算法的原理、流程与应用场景,并通过性能对比和应用建议帮助读者根据问题类型和数据特征选择合适方法。最后探讨了算法融合、复杂数据处理、深度学习结合及强化学习等未来发展趋势,为实际应用提供全面指导。

rice5的博客 64

自动机,即有限状态机

时间是离散的(t=0,1,2……依赖自动机停止时的状态,称呼这个自动机要么是“接受”要么“拒绝”这个输入。我们的程序在每个时刻有一个状态 s,每次从序列中输入一个字符 c,并根据字符 c 转移到下一个状态 s’。FSM 是给定符号输入,依据(可表达为一个表格的)转移函数“跳转”过一系列状态的一种机器。在常见的 FSM 的“Mealy”变体中,这个转移函数告诉自动机给定当前状态和当前字符的时候下一个状态是什么。逐个读取输入中的符号,直到被完全耗尽(把它当作有一个字写在其上的磁带,通过自动机的读磁头来读取它。

m0_46638350的博客 1596

10、智能算法:贝叶斯网络构建与数据聚类的创新探索

本文探讨了两种创新的智能算法:基于语法引导进化的贝叶斯网络构建算法EvoBANE和基于一维细胞自动机的数据聚类算法。EvoBANE通过上下文无关语法自动生成有效的贝叶斯网络结构,在分类任务中表现出高准确性和避免局部最优的能力;而一维细胞自动机聚类算法则利用简单规则实现无监督数据聚类,具有易实现和广泛应用潜力。文章分析了两种算法的优势、应用场景及未来发展方向,为数据分类与聚类提供了新的研究思路和技术路径。

vvv99的博客 70

27、随机环境中基于学习自动机的服务选择解决方案

在服务选择日益复杂的环境中,声誉系统面临诸如不公平评价和服务质量动态变化等挑战。本文提出了一种基于学习自动机(Learning Automata, LA)的服务选择解决方案,能够自适应地识别公平和欺骗性代理,智能结合两者反馈,并对欺骗性代理比例变化具有鲁棒性。该方法无需先验知识、计算简单且适合去中心化处理,在在线购物平台、共享经济和社交网络服务推荐等场景中具有广泛的应用前景。实验结果表明,该方案在处理不公平评价和跟踪动态变化方面表现出色,为提升声誉系统的性能提供了有效支持。

b9c0d的博客 53

AC 自动机 学习笔记(暂存)

AC 自动机详解

hugocaicai的博客 271

基于学习自动机的k-覆盖算法

本文提出一种基于学习自动机的算法,用于解决视觉传感器网络中传感器数量不足时的不平衡k-覆盖问题。该算法通过动态选择最少数量的传感器方向,实现对所有目标的均衡覆盖,并引入平衡指数评估覆盖质量。实验结果表明,该方法在覆盖均衡性和能效方面优于传统贪心算法。

tech5的博客 715

AC自动机学习笔记

先简单复习一下学习AC自动机所需要的前缀知识。 #前缀知识 1-Trie树 字典树,也称Trie树,前缀树,主要用于存储大量的字符串以及查询操作。 对于Trie树,一般有两个操作: 1.insert操作,在Trie树中存储一个字符串 2.query操作,在Trie树中查询一个字符串 举个例子,对于这样几个字符串,{abcde,abcgf,hello,her}我们看他们在Trie树中是如何存储的: 这里需要注意,字符是边,而不是节点,但都是一一对应的 代码 int son[N][26],cnt[N],i

Moon`light的博客 388

【STM32】STM32 CANFD外设的几种消息接收过滤模式

在控制器区域网络(CAN)系统中,正确配置消息过滤器对于有效管理网络通信至关重要。特别是在使用Flexible Data-rate Controller Area Network(FDCAN)时,选择合适的过滤器类型可以大大提高网络效率和消息处理速度。

林愿留的博客 6226

Arduino程序设计(十)8×8 共阴极LED点阵显示(MAX7219)

本文主要介绍8×8 LED点阵显示实验,分别是:1、介绍MAX7219点阵模块;2、点阵显示部分图形;3、点阵显示数字 0~9 及 26 个英文字母。1、通过上述两个点阵实验,了解了8*8点阵显示的基本原理;2、通过SPI通信控制点阵显示,学会了Arduino用SPI通信方式控制外设。

Alice的博客 1万+

正则表达式的学习之路(为学习 自动机 )

一开始想要学习正则表达式是想学习自动机算法,后来看自动机算法是正则表达式的引擎,就决定先学一下正则表达式 以下资源取自很多网上资源,包括但不限于 百度百科 , 优快云,博客园的一些博客,我还包括一些国外文章的翻译,在此就不一一给出连接了,如有侵权,请及时联系我,我会尽量按照被侵权方要求解决问题 (辣鸡需要看其他人的资料才能学习)QAQ。。。 /*---------------------...

永远鲜红の幼月的博客 1013

k3s快速搭建k8s集群环境

k8s 搭建方式有多种,如果你是内网环境,希望占用服务器资源少或是边缘系统(如ARM系统),强烈推荐您使用 k3s进行安装 目录k3s 简介k3s架构中文官方文档三台服务器快速搭建k8s集群安装说明步骤1 修改主机名,保持唯一步骤2 安装docker步骤3 安装master节点步骤4 安装worker节点加入集群步骤5 查看集群步骤6 部署 k8s仪表盘 dashboard k3s 简介 轻量级 Kubernetes。安装简单,内存只有一半,所有的二进制都不到 100MB K3s 是一个完全符合 Ku.

gzt19881123的专栏 2445

从基础理论开始学习人工智能(二):应用和方法——从拼图游戏到神经网络

人工智能不是一个单一的"魔法技术",而是一个问题域极广、方法极多的学科集群。教材指出,AI 的研究与应用几乎渗透到人类智力活动的方方面面。机器学习与数据挖掘、自然语言处理、计算机视觉、专家系统、机器人、自动定理证明、博弈与游戏、知识工程等。图 3 人工智能研究的典型应用领域。不同领域看似分散,但底层共享搜索、表示、推理、学习等通用方法。值得注意的是,这些领域并非彼此割裂:一个自动驾驶系统,既要用到计算机视觉感知环境(感知),又要用规划与搜索决定行驶路径(决策),还可能用机器学习持续优化策略(学习)。

Bruce_xiaowei的博客 479

4090显卡实测:PointPillars在KITTI数据集上的3D目标检测复现全流程(附避坑指南)

本文详细记录了在NVIDIA RTX 4090显卡上,从环境搭建、数据处理到模型训练与评估,完整复现PointPillars算法在KITTI数据集上进行3D目标检测的全流程。重点分享了版本配置、数据预处理、性能调优及常见问题的避坑指南,帮助开发者高效利用硬件资源,成功跑通并理解这一经典3D检测项目。

purple的博客 914

TensorRT-LLM环境配置避坑指南:从安装到实战

本文是一份详尽的TensorRT-LLM环境配置避坑指南。文章重点解析了从Python、CUDA、PyTorch版本选择,到解决mpi4py安装这一核心难题的完整流程,并提供了经过验证的稳定版本组合与实战排错方案,帮助开发者高效部署大语言模型推理优化环境。

a0b1c2d3的专栏 985

LDA模型学习之贝叶斯公式

近几天在学习LDA模型。真的是让人纠结!都看了两天了,不知所云! 看到网上一大牛说:“其实这个模型不难理解”真的想吐血!想想也释然了: 好歹也比我多读了八年书嘛!八年,日本鬼子也搞定了,别说一个小小的模型。      好了,抱怨一下也就可以了,模型还是得研究的!  从贝叶斯开始吧!       把已经出尘脱俗的《概率论》翻出来,好好看了一个上午:感觉不难理解。

july_2的专栏 5928

比利时风电光伏负荷一体化数据集解析与应用

本文深度解析了由比利时输电系统运营商Elia集团提供的风电光伏负荷一体化数据集。该数据集整合了负荷、风电与光伏出力数据,并包含多时间尺度的官方预测值,时间跨度长达四年,是研究能源转型、构建电力预测模型及分析电网运行的宝贵资源。文章详细介绍了数据价值、字段含义、实战应用场景(如预测模型基准测试、风光互补性分析)以及数据处理指南,为相关领域的研究与开发提供了高质量数据基础和实践参考。

weixin_29200741的博客 429

机器学习-贝叶斯分类

算法杂货铺——分类算法之朴素贝叶斯分类(Naive Bayesian classification)<div class="entry"> <div id="cnblogs_post_body" class="blogpost-body"><h1>0、写在前面的话</h1>       我个人一直很喜欢算法一类的东西,在我看来算法是人类智慧的精华,其中蕴含着无与伦比的美感。而每次将学过的算法

Snail_Moved_Slowly的博客 516

SCI投稿Title Page、Cover letter、Highlights、Manuscript模板

(简要介绍一下论文的创新性). I hope this paper issuitable for “Journal Name”.版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.youkuaiyun.com/weixin_48615832/article/details/120317336。

qq_15963745的博客 3700

【头歌】链栈的基本操作及应用

另外,在算法的开始和结束时,栈都应该是空的,所以匹配到最后还要判断栈是否为空,若空,则说明匹配成功,返回1。其中表达式只包含三种括号,花括号{}、中括号[]、圆括号(),即它仅由 (、)、[、]、{、}六个字符组成。预期输出: 栈中元素依次为:12 47 5 8 6 92 45 63 75 38 4 29 弹出的栈顶元素 e=29 栈空否:0(1:空 0:否) 栈顶元素 e=4 栈的长度为11 清空栈后,栈空否:1(1:空 0:否)// 若栈不空,则用e返回S的栈顶元素,并返回OK;

qq_39977056的博客 4383

【贝叶斯分类】基于朴素贝叶斯实现西储大学轴承数据时频特征提取和分类附matlab代码

本文介绍了如何使用朴素贝叶斯分类器对西储大学轴承数据进行时频特征提取和分类。西储大学轴承数据是一个广泛用于机器学习和故障诊断的公开数据集。朴素贝叶斯是一种简单但有效的分类算法,它基于贝叶斯定理。本文将详细介绍朴素贝叶斯分类器的原理,并展示如何将其应用于西储大学轴承数据的时频特征提取和分类。引言轴承是旋转机械中的关键部件,其故障会导致严重的设备损坏和停机。因此,对轴承进行故障诊断非常重要。时频分析是一种强大的工具,可用于从轴承振动信号中提取故障特征。

matlab_dingdang的博客 1187

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

半贝叶斯方法:理论基础、算法实现与应用全景

半贝叶斯方法(Semi-Bayesian Methods)是统计学和机器学习中一类重要的建模与推断技术,它巧妙地结合了频率主义的稳健性和贝叶斯主义的灵活性🤖。半贝叶斯方法并非指某个特定算法,而是一类方法的统称,主要包括半参数贝叶斯模型(Semi-parametric Bayesian Models)和半朴素贝叶斯分类器(Semi-Naive Bayesian Classifiers)两大分支。半贝叶斯方法的核心思想是在完全参数化和完全非参数化方法之间寻找平衡点。

拒绝AI玄学,只聊真技术▲ 1256

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

机器学习之朴素贝叶斯算法

转载自:http://www.cnblogs.com/leoo2sk/archive/2010/09/17/naive-bayesian-classifier.html 0、写在前面的话       我个人一直很喜欢算法一类的东西,在我看来算法是人类智慧的精华,其中蕴含着无与伦比的美感。而每次将学过的算法应用到实际中,并解决了实际问题后,那种快感更...

baidu_38634017的博客 163

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

机器视觉学习之--贝叶斯学习 MATLAB二维正态分布二维图

党的

yangdeshun888的博客 9254

机器学习算法实战——基于朴素贝叶斯算法的敏感词识别系统的设计与实现

敏感词识别是自然语言处理(NLP)中的一个重要应用领域,其主要目标是从文本内容中自动检测和过滤不适当、违规或有害的词汇和表达。随着互联网内容的爆炸式增长和社交媒体平台的普及,敏感词识别技术已成为内容审核、网络安全管理、社交媒体监控等领域不可或缺的工具。政治敏感内容:涉及国家主权、领导人、政治事件等暴力恐怖内容:包含暴力、恐怖主义、极端主义等色情低俗内容:色情、淫秽、低俗信息侮辱诽谤内容:人身攻击、侮辱、诽谤等商业违规内容:欺诈、虚假广告、非法营销等隐私信息:个人身份证号、电话号码、银行账户等。

m0_65481401的博客 2530
上一篇: 多智能体解决数据缓存
下一篇: 《Joint Caching and Transmission in the Mobile Edge Network: An Multi-Agent Learning Approach》阅读笔记
code120302
博客等级 码龄7年 195粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值