最详尽版本:一文带你了解beam search算法
目录
文章目录
- 目录
- Beam Search算法
- 1. 简介
- 2. 算法细节
- 3. 具体实现
- 4.算法优化
Beam Search算法
1. 简介
- 在对话生成任务中,解码策略有自回归与非自回归两种方法。其中自回归的解码策略包括了greedy,beam search,top-k以及top p等方法。每种方法都有自己的优缺点。本文主要针对beam search方法做详细的介绍。其它相关的解码策略后面会有相应的文章进行介绍,这里就不多做说明。
- 在自回归的解码方法,主要是在inference阶段,输入query,然后decoder一步一步的生成词,后一个词的生成依靠前面生成的词和query,一直到生成终止符停止,最后将所有顺序生成的词连在一起就是一个完整的句子。在每一个step中,模型最后一个一般是来说是dense层,经过softmax之后,会得到一个vocab size的向量。这个过程对于所有的自回归解码策略都是一样的,不同的就是后续的处理流程,比如说,greedy则是取向量元素中最大的值的index对应的词最后生成的词。
- 通过上面的描述,我们可以将解码任务抽象为在一个高为max_len(生成句子的最大长度),
最详尽版本:一文带你了解beam search算法相关推荐
- 公式太多,读不懂? 一文带你领略KNN近邻算法~简单易懂
↑ 点击上方[计算机视觉联盟]关注我们 K近邻算法采用测量不同特征值之间的距离方法进行分类. K-近邻算法工作原理: 存在一个样本数据集合,也称作训练样本集,并且样本集中的每个数据都存在标签,即我们知 ...
- 9个元素换6次达到排序序列_一文带你读懂排序算法(三):堆排序算法
国庆节快乐~点击上方文字关注我们哦 堆是一种特殊的树形数据结构,其每一个结点都有一个值,通常提到的堆都是指一棵完全二叉树,根结点的值小于(或大于)两个子结点的值,同时,根结点的两个子树也分别是一个堆. ...
- 简单选择排序_一文带你读懂排序算法(一):冒泡 amp; 快速选择排序 amp; 简单插入排序算法...
点击上方「蓝字」关注我们 排序是确保数据规则有序的有效手段.日常开发里,我们常用到的是"冒泡"."插入排序"."选择排序"三种.大部分情况下 ...
- 归并排序时间复杂度_一文带你读懂排序算法(四):归并算法
点击上方蓝字关注我们 归并排序的基本思想核心是分治,就是把一个复杂的问题分成两个或多个相同或相似的子问题,然后把子问题分成更小的子问题,直到子问题可以简单的直接求解,最原问题的解就是子问题解的合并.算 ...
- 一文带你秒懂数据结构与算法的三大要素、五大特征!
我叫<数据结构与算法>,是计算机世界的四大基石之一. 想来我应该是惹人怜爱的吧(认真脸),因为我仿佛听到了无数个初入计算机世界的同学的呐喊声(
- 一文带你了解人脸检测算法的类型及其工作原理
在过去的几年里,人脸识别受到了广泛的关注,被认为是图像分析领域最有前途的应用之一.人脸检测可以考虑人脸识别操作的很大一部分.根据其强度将计算资源集中在持有人脸的图像部分.图片中的人脸检测方法很复杂,因 ...
- 一文带你读懂HTTP协议的前世今生
点击上方蓝字关注我们 HTTP,Hypertext Transfer Protocol,超文本协议,是在万维网上传输文件(如文本.图形图像.声音.视频和其他多媒体文件)的规则集.如果web用户打开他们 ...
- 代码统计工具1.1版本技术文档
代码统计工具1.1版本技术文档 说明:主要记录自己在做这个项目的过程中用到的方法和相关技术 1.首先面临的问题就是怎样选择一个目录,网上搜索了一下,下面是解决方案(用到目录对话框) (1)从默认的磁盘 ...
- 训练的神经网络不工作?一文带你跨过这37个坑
近日,Slav Ivanov 在 Medium 上发表了一篇题为<37 Reasons why your Neural Network is not working>的文章,从四个方面(数 ...
最新文章
- mysql 聚簇索引和非聚簇索引_聚簇索引和非聚簇索引
- 写给初学者的Tensorflow介绍
- 浅谈Struts2下
- linux如何执行平台,如何在Linux平台运行HelloWorld及测试项目
- IEnumerable 遍历用法
- Android入门(二) | 项目目录及主要文件作用分析
- 谁抢走了中国男人的老婆?
- 不起眼的小动作可能葬送安全措施
- (笔试题)和一半的组合数
- python程序收发文件_使用python脚本发送eml文件
- 这个时代,“寒门再难处贵子”【转载】
- node.js + 企业微信实现定时推送消息
- golang 字符串拼接性能比较
- HTML5简单个人主页设计
- ES中关于must和should组合使用过程中较为复杂的问题
- Nginx 使用./nginx -s reload报错 [error] open() “/opt/nginx/logs/nginx.pid“ failed (2: No such file or di
- 12种高效的管理方法
- 最新-开源可视化安全管理平台Ossim5.0使用
- 对地球生命的来源持有怀疑
- Linux 防火墙安装与配置