当前位置:   article > 正文

Word Averaging模型做文本分类 稳定效果好模型简单_wordavgmodel(nn.module)

wordavgmodel(nn.module)

利用WORDAVG模型做文本分类   模型简单 效果号

简单思想就是  将每个词向量在 句子维度进行求平均  可以用avgpool来做平均池化 

然后用平均后的向量作为句子向量 进行文本分类 

后面我们还会介绍将rnn表示的句子向量进行文本分类 

也可以用cnn进行文本分类 

我们这篇文章代码和注释  主要是介绍 WORDEMage进行文本分类 

  1. """
  2. 准备数据
  3. TorchText中的一个重要概念是Field。Field决定了你的数据会被怎样处理。在我们的情感分类任务中,
  4. 我们所需要接触到的数据有文本字符串和两种情感,"pos"或者"neg"。
  5. Field的参数制定了数据会被怎样处理。
  6. 我们使用TEXT field来定义如何处理电影评论,使用LABEL field来处理两个情感类别。
  7. 我们的TEXT field带有tokenize='spacy',这表示我们会用spaCy tokenizer来tokenize英文句子。
  8. 如果我们不特别声明tokenize这个参数,那么默认的分词方法是使用空格。
  9. 安装spaCy
  10. pip install -U spacy
  11. python -m spacy download en
  12. LABEL由LabelField定义。这是一种特别的用来处理label的Field。我们后面会解释dtype。
  13. 更多关于Fields,参见https://github.com/pytorch/text/blob/master/torchtext/data/field.py
  14. 和之前一样,我们会设定random seeds使实验可以复现。
  15. """
  16. import torch
  17. from torchtext import data
  18. SEED=1234
  19. torch.manual_seed(SEED)
  20. torch.cuda.manual_seed(SEED)
  21. torch.backends.cudnn.deterministic=True
  22. """
  23. 先决定怎么处理数据 Field是决定如何处理数据的
  24. 默认进行空格分词
  25. spacy 是根据点进行分词
  26. spaCy是世界上最快的工业级自然语言处理工具。 支持多种自然语言处理基本功能。
  27. 官网地址:https://spacy.io/
  28. spaCy主要功能包括分词、词性标注、词干化、命名实体识别、名词短语提取等等。
  29. """
  30. TEXT=data.Field(tokenize='spacy')
  31. LABEL=data.LabelField(dtype=torch.float)
  32. """
  33. TorchText支持很多常见的自然语言处理数据集。
  34. 下面的代码会自动下载IMDb数据集,然后分成train/test两个torchtext.datasets类别。
  35. 数据被前面的Fields处理。IMDb数据集一共有50000电影评论,每个评论都被标注为正面的或负面的。
  36. """
  37. from torchtext import datasets
  38. train_data,test_data=datasets.IMDB.splits(TEXT,LABEL)
  39. """
  40. 查看每个数据split 有多少条数据
  41. """
  42. print(f'number of training examples:{len(train_data)}')
  43. print(f"number of testing examples:{len(test_data)}")
  44. """
  45. 查看一个example
  46. {'text': ['Brilliant', 'adaptation', 'of', 'the', 'novel', 'that', 'made', 'famous', 'the', 'relatives', 'of', 'Chilean', 'President', 'Salvador', 'Allende', '
  47. killed', '.', 'In', 'the', 'environment', 'of', 'a', 'large', 'estate', 'that', 'arises', 'from', 'the', 'ruins', ',', 'becoming', 'a', 'force', 'to', 'abuse', 'and',
  48. 'exploitation', 'of', 'outrage', ',', 'a', 'luxury', 'estate', 'for', 'the', 'benefit', 'of', 'the', 'upstart', 'Esteban', 'Trueba', 'and', 'his', 'undeserved',
  49. 'family', ',', 'the', 'brilliant', 'Danish', 'director', 'Bille', 'August', 'recreates', ',', 'in', 'micro', ',', 'which', 'at', 'the', 'time', 'would', 'be', 'the',
  50. 'process', 'leading', 'to', 'the', 'greatest', 'infamy', 'of', 'his', 'story', 'to', 'the', 'hardened', 'Chilean', 'nation', ',', 'and', 'whose', 'main',
  51. 'character', 'would', 'Augusto', 'Pinochet', '(', 'Stephen', 'similarities', 'with', 'it', 'are', 'inevitable', ':', 'recall', ',', 'as', 'an', 'example', ',',
  52. '
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/421800
推荐阅读
相关标签
  

闽ICP备14008679号