DIETClassifier文档

Dual Intent Entity Transformer (DIET) 用于意图分类和实体提取

输出

entitiesintentintent_ranking

需要

dense_features和/或sparse_features用于用户消息和可选的意图

输出示例

{"intent": {"name": "greet", "confidence": 0.8343},"intent_ranking": [{"confidence": 0.385910906220309,"name": "goodbye"},{"confidence": 0.28161531595656784,"name": "restaurant_search"}],"entities": [{"end": 53,"entity": "time","start": 48,"value": "2017-04-10T00:00:00.000+02:00","confidence": 1.0,"extractor": "DIETClassifier"}]
}

描述

DIET(Dual Intent and Entity Transformer)是一种用于意图分类和实体识别的多任务架构。该架构基于为两个任务共享的转换器。实体标签序列通过位于与输入标记序列相对应的转换器输出序列之上的条件随机场 (CRF) 标记层进行预测。对于意图标签,完整话语的转换器输出和意图标签被嵌入到单个语义向量空间中。我们使用点积损失来最大化与目标标签的相似性并最小化与负样本的相似性。

如果您想了解有关模型的更多信息,请查看YouTube 上的 算法白板系列,我们在其中详细解释了模型架构。

注意:
如果在预测时间内,消息中只包含训练中未看到的单词,并且没有使用Out-Of-Vocabulary预处理器,则以0.0的置信度预测空意图None。如果您只使用countvectorsfeatuizer和一个单词分析器作为featuizer,这可能会发生。如果你使用char_wb分析器,你应该总是得到一个有置信度值> 0.0的意图。

配置

如果您想将DIETClassifierjust 用于意图分类,请设置entity_recognition为False。如果只想做实体识别,设置intent_classification为False。默认情况下DIETClassifier,两者都进行,即entity_recognition和intent_classification设置为 True。
您可以定义许多超参数来调整模型。如果要调整模型,请先修改以下参数:

  • epochs:此参数设置算法将看到训练数据的次数(默认值:)300。一个epoch等于所有训练样例的一次前向传递和一次后向传递。有时模型需要更多的 epochs 才能正确学习。有时更多的时代不会影响性能。epoch 数越少,模型训练得越快。

  • hidden_layers_sizes:此参数允许您为用户消息和意图定义前馈层的数量及其输出维度(默认值:text: [], label: [])。列表中的每个条目对应一个前馈层。例如,如果您设置text: [256, 128],我们将在transformer前面添加两个前馈层。输入标记的向量(来自用户消息)将传递到这些层。第一层的输出维度为 256,第二层的输出维度为 128。如果使用空列表(默认行为),则不会添加前馈层。确保仅使用正整数值。通常,使用 2 的幂数。此外,通常的做法是在列表中减少值:下一个值小于或等于前一个值。

  • embedding_dimension:此参数定义模型内部使用的嵌入层的输出维度(默认值:)20。我们在模型架构中使用了多个嵌入层。例如,完整话语和意图的向量在比较之前传递到嵌入层并计算损失。

  • number_of_transformer_layers:此参数设置要使用的转换器层数(默认值:)2。transformer层数对应于用于模型的transformer blocks 。

  • transformer_size:此参数设置transformer中的单元数(默认值:256)。来自transformer的向量将具有给定的transformer_size。

  • connection_density:此参数定义了模型中所有前馈层设置为非零值的内核权重的分数(默认值:)0.2。该值应介于 0 和 1 之间。如果设置connection_density 为 1,则不会将内核权重设置为 0,该层充当标准前馈层。您不应设置connection_density为 0,因为这会导致所有内核权重为 0,即模型无法学习。

  • BILOU_flag:该参数决定是否使用 BILOU 标记。默认True.

上述配置参数是您应该配置以使模型适合您的数据的参数。但是,存在可以调整的附加参数。

其他参数




注意:
将参数maximum_negative_similarity设为负值,模拟原始星空间算法, 在这种情况下,maximum_negative_similarity = maximum_positive_similarity,并使用use_maximum_negative_similarity = False。详情请参阅starspace论文。

参考

https://rasa.com/docs/rasa/components#dietclassifier-2

DIETClassifier文档相关推荐

  1. Rasa 文档 中英文翻译版本 3 - Tutorial: Building Assistants

    Rasa 文档 中英文翻译版本 3 - Tutorial: Building Assistants https://rasa.com/docs/rasa/user-guide/building-ass ...

  2. 导出swagger2生成的文档

    百度了好多篇用法,没法用.特此记录一下 一.下载项目 下载https://github.com/Swagger2Markup/spring-swagger2markup-demo下的项目,保存,注意文 ...

  3. README 规范和项目文档规范

    1. README 规范 我们直接通过一个 README 模板,来看一下 README 规范中的内容: # 项目名称<!-- 写一段简短的话描述项目 -->## 功能特性<!-- 描 ...

  4. FastAPI 自动生成的docs文档没法使用

    FastAPI 自动生成的docs文档没法使用,当展开路径时候一直在转圈,具体就是这样 这个是由于swagger-ui 3.30.1 中的bug导致,具体bug可以看这里 我们可以通过在FastAPI ...

  5. 【软件工程】VB版机房文档总结

    前言: 软工视频+软工文档+UML视频+UML图的学习过程图! 这部分的知识很厚,只是知道了个大概!最开始 慢悠悠的像个老爷爷走进度,后来遇到点什么事,妈呀,管不了那么多了,赶紧弄完在说,拖了多久了都 ...

  6. 智能文档理解:通用文档预训练模型

    预训练模型到底是什么,它是如何被应用在产品里,未来又有哪些机会和挑战? 预训练模型把迁移学习很好地用起来了,让我们感到眼前一亮.这和小孩子读书一样,一开始语文.数学.化学都学,读书.网上游戏等,在脑子 ...

  7. 基于javaGUI的文档识别工具制作

    基于javaGUI的文档识别工具制作 对于某些文本,其中富含了一些标志,需要去排除,以及去获得段落字数,以下是我个人写的一个比较简单的文档识别工具,含导入文件.导出文件以及一个简单的识别功能. 1.功 ...

  8. 从单一图像中提取文档图像:ICCV2019论文解读

    从单一图像中提取文档图像:ICCV2019论文解读 DewarpNet: Single-Image Document Unwarping With Stacked 3D and 2D Regressi ...

  9. 函数小知识点(文档字符串,闭包等)

    1 文档字符串(Documentation Strings) 一般被称为docstring,一款你应当使用的重要工具,它能够帮助你更好地记录程序并让其更加易于理解.令人惊叹的是,当程序实际运行时,我们 ...

最新文章

  1. Android中设置EditText默认无焦点
  2. 对提高squid命中率的一些研究
  3. 腾讯游戏4名技术专家详解:《御龙在天移动版》服务器性能优化
  4. ubuntu19.10下面的redis的启动与关闭
  5. 软件工程学习笔记《三》代码优化和性能测试
  6. 01 掌握运算符的分类 1204
  7. 解压版mysql中文变成_解压版MYSQL中文乱码问题解决方案
  8. KEIL C51软件使用教程
  9. IBM SL400驱动
  10. 中科院-杨力祥视频教程 02课程
  11. 电容器指南(一)-基本性能介绍
  12. Python三维绘图--Matplotlib
  13. 【Windows安装RabbitMQ详细教程】
  14. c语言程序判断一个字符串是否是回文数,详解判断回文字符串和回文数算法的C语言代码!...
  15. 戴愫-有效提升与陌生人的社交能力
  16. Github: fatal: Unsupported SSL backend ‘“openssl”‘. Supported SSL backends: openssl schannel
  17. linux下使用ftp命令匿名登录
  18. Linux安装Googlepinyin
  19. flutter开发android部分页面,Flutter(Android 混合开发)
  20. Android 控件 RecyclerView

热门文章

  1. Unity Remote使用说明
  2. python人工智能入门纳米学位_项目心得-Udacity机器学习纳米学位项目(一)
  3. Cloudflare 5秒盾自定义页面教程加源代码
  4. 树莓派系列(4)-手把手教你打造智能小车
  5. CMPP协议对长短信的支持
  6. 国标平台视频流抓取及rtp包解析
  7. X-ray数据处理笔记:Chandra Timing Analysis
  8. 在波音的助攻下,“英国钢铁侠”将10颗卫星送上了天
  9. cmd命令行乱码 oracle_cmd 命令行模式下输出中文时显示乱码的解决方案
  10. 2022 John Locke 论文竞赛题目