自然语言处理学习2:英语分词1word_tokenize, WordPunctTokenizer, TreebankWordTokenizer , WhitespaceTokenizer等

1. 分词word tokenize

(1) 使用nltk.word_tokenize(text), 其中"isn't"被分割为"is"和"n't"

(2)使用WordPunctTokenizer(),单词标点分割,其中"isn't"被分割为"isn","'"  和“t"

(3) 使用TreebankWordTokenizer (宾夕法尼亚州立大学 Treebank单词分割器), 其中"isn't"被分割为"is"和"n't"

(4) 使用WhitespaceTokenizer(), 空格符号分割,就是split(' ') 最简单的一个分词器。"isn't"作为一个整体,没有被分割。

(5) PunktWordTokenizer():导入失败,未找到原因,欢迎交流讨论。

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个比较典型的Rasa NLU配置文件,主要分为三个部分: 1. language:指定了使用的语言类型,这里是英文(en); 2. pipeline:定义了整个NLU pipeline的结构,包括预处理、特征提取、意图分类和实体识别等步骤; 3. data:指定了NLU模型训练所使用的数据路径和格式。 下面是每个部分的具体内容: 1. language: ```yaml language: "en" ``` 2. pipeline: ```yaml pipeline: - name: "WhitespaceTokenizer" intent_split_symbol: "_" - name: "RegexFeaturizer" - name: "CRFEntityExtractor" - name: "EntitySynonymMapper" - name: "CountVectorsFeaturizer" - name: "EmbeddingIntentClassifier" ``` 这里定义了一个完整的NLU pipeline,包括五个组件: - `WhitespaceTokenizer`:使用空格分词器将输入文本分成单词; - `RegexFeaturizer`:提取输入文本中匹配预设正则表达式的特征; - `CRFEntityExtractor`:使用条件随机场(CRF)模型识别实体,并将其标注到文本中; - `EntitySynonymMapper`:将一些同义词映射到统一的实体名称上,以便更好地识别用户意图; - `CountVectorsFeaturizer`:将输入文本转换成向量表示; - `EmbeddingIntentClassifier`:使用预训练的词向量表征输入文本,并通过softmax分类器预测用户意图。 3. data: ```yaml data: - nlu.md ``` 这里只使用了一个数据文件 `nlu.md`,它包含了一系列标注好的用户输入文本和对应的意图和实体标签。在训练过程中,Rasa NLU会根据这些数据不断优化模型参数,以逐渐提高模型的准确性和泛化能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值