精华内容
参与话题
问答
  • TorchText

    2020-07-30 10:22:24
    TorchText是一款优秀的NLP数据处理工具,可以方便的对文本进行预处理,例如截断补长、构建词表等。但是因为nlp的热度远不如cv,对于torchtext介绍的相关博客数量也远不如torchvision torchtext对数据的处理可以概括...

    TorchText是一款优秀的NLP数据处理工具,可以方便的对文本进行预处理,例如截断补长、构建词表等。但是因为nlp的热度远不如cv,对于torchtext介绍的相关博客数量也远不如torchvision

    torchtext对数据的处理可以概括为Field,Dataset和迭代器三部分。

     

     

    Field对象

    Field对象指定要如何处理某个字段.

     

    Dataset

    Dataset定义数据源信息.

     

    迭代器

    迭代器返回模型所需要的处理后的数据.迭代器主要分为Iterator, BucketIerator, BPTTIterator三种。

     


     

    torchtext还自带Multi30k数据集,这是一个包含约30000个平行的英语、德语和法语句子的数据集,每个句子包含约12个单词。

     

    展开全文
  • torchtext

    2020-09-04 20:26:51
    pytorch torch.randn pytorch torch.normal pytorch torch.randint pytorch torch.rand pytorch torch.full pytorch torch.empty pytorch torch.eye pytorch torch.linspace pytorch torch.arange ...

    NLP预处理过程:
    (1)Train/Validation/Test数据集划分
    (2)文本数据的导入
    (3)分词(Tokenization),将文本字符串切分为词语列表
    (4)构建词典(Vocabulary)
    (5)数字映射(Numericalize),根据词典,将数据从词语映射成数字
    (6)导入预训练好的词向量
    (7)将数据分Batch
    (8)Embedding Lookup,将每个词语对应的索引值变成词语向量

    1.数据集划分

    一般使用pandas

    2.文本数据导入 与 3.分词

    1)torchtext.data.Field 3.分词
    对要导入的每个字段设置处理方法,比如分词

    text_field = data.Field(tokenize='spacy', lower=True, include_lengths=True, fix_length=60)
    Label_field = data.Field(sequential=False, use_vocab=False, dtype=torch.long)
    
    参数 描述
    tokenize 句子分词的方法,如果是’spacy’,则使用spacy分词器,对英文文本分词;
    lower 是否将文本的所有字母变成小写;
    include_lengths 是否返回一个带有各自长度的padded的minibatch数据;
    fix_length 是所有的Text都是固定的长度,长度不足的用padding补全,超过的截取;
    sequential 是否连续的数据,如果False,则不用分词;如果True,则要分词,并且默认是True的。

    Label数据来说,并不是连续的,所以sequential要设置为False,同时并不需要用到vocab,所以也设置为False。

    2)torchtext.data.TabularDataset 2.文本数据导入
    加载csv,tsv或json格式

    train = data.TabularDataset(path='/home/chiyeung/Desktop/Code/DL/Try/data/smallTrain.csv',
                               format="csv",
                               skip_header=True,
                               fields=[('sentence', text_field), ('label', Label_field)])
    print(len(train.examples))
    
    参数 描述
    path 数据文件地址;
    format 数据文件格式,可以是’csv’, ‘tsv’, or ‘json’;
    skip_header 是否跳过数据文件的第一行;
    fields 是一个包含很多个tuple的list,(name, field)。

    也可以同时加载训练集和验证集。

    train, dev = data.TabularDataset.splits(path='/home/chiyeung/Desktop/Code/DL/Try/data',
                                           train='smallTrain.csv',
                                           validation='smallDev.csv',
                                           format='csv',
                                           skip_header=True,
                                           fields=[('sentence', text_field), ('label', Label_field)])
    

    4.构建词典 &5.数字映射 &6导入预训练好的词向量

    上述代码所做的事情就是把预训练的glove.6B.300d词向量读取到vocabularyvec中。

    vec = vocab.Vectors(name='/home/chiyeung/Datasets/glove/glove.6B.300d.txt')
    Label_field.build_vocab(train, dev)
    text_field.vocab.stoi['you']
    text_field.vocab.itos[271]
    text_field.vocab.vectors[text_field.vocab.stoi['you']] # 查看词向量embedding,可以通过词向量计算词语的相似性
    
    
    参数 描述
    max_size 詞典的最大词数,
    vectors 所使用的词向量,
    min_freq=50 词典中的词语保证至少出现50次,
    unk_init 词典中没有的词语对应的向量统一用torch.Tensor.normal_填充。

    7.将数据分Batch

    train_iter = data.BucketIterator(train, batch_size=5, sort_key=lambda x:len(x.sentence), sort_within_batch=True,
                                    shuffle=True, repeat=False)
    
    参数 描述
    train TabularDataset构造的训练集;
    batch_size 批量的大小;
    sort_key 数据的排序方法;
    sort_within_batch 在一个批量中是否存储;
    shuffle 是否随机打乱数据;
    repeat 是否重复迭代器;
    device 放在CPU还是GPU

    参考:
    http://ziyangluo.tech/2020/01/17/torchtext1/

    展开全文
  • Torchtext

    2020-09-22 22:21:55
    pytorch学习笔记-Torchtext 总述 Torchtext是pytorch处理文本的一个工具包。做过NLP的项目,预处理过程是一个相当繁琐的过程。一般在训练模型之前,需要对处理的文本文件做一些处理:从磁盘中将数据读入内存;切分词...

    pytorch学习笔记-Torchtext

    总述

    Torchtext是pytorch处理文本的一个工具包。做过NLP的项目,预处理过程是一个相当繁琐的过程。一般在训练模型之前,需要对处理的文本文件做一些处理:从磁盘中将数据读入内存;切分词;将每一个词映射到一个对应的整数上;将文本转化为一个整数的序列;转化数据格式满足模型的要求;将文本处理成等长的;

    Torchtext将不同类型的文件转化为Datasets。Torchtext之后将Dataset传向了Iterator,Iterators可以处理数值化、batching、打包,之后将数据移动向GPU。基本上,它完成了将数据传递给神经网络所需的所有繁重工作。

    Fields

    Torchtext采用了一种声明式的方法来加载数据:你来告诉Torchtext你希望的数据是什么样子的,剩下的由torchtext来处理。
    实现这种声明的是Field,Field确定了一种你想要怎么去处理数据。
    我们这里有这样一个数据集:
    在这里插入图片描述
    torchtext常见API一览

    torchtext.data.Example : 用来表示一个样本,数据和标签
    torchtext.vocab.Vocab: 词汇表,可以导入一些预训练词向量
    torchtext.data.Datasets: 数据集类,__getitem__返回 Example实例, torchtext.data.TabularDataset是其子类。
    torchtext.data.Field : 用来定义字段的处理方法(文本字段,标签字段)创建 Example时的 预处理,batch 时的一些处理操作。
    torchtext.data.Iterator: 迭代器,用来生成 batch
    torchtext.datasets: 包含了常见的数据集.

    链接: TorchText教程1TorchText教程2.

    展开全文
  • torchtext 安装

    千次阅读 2019-07-30 16:06:02
    在Anaconda Prompt窗口中输入命令:conda install -c derickl torchtext 即可安装成功

    在Anaconda Prompt窗口中输入命令:conda install -c derickl torchtext
    即可安装成功

    展开全文
  • 安装torchtext

    千次阅读 2019-05-16 13:22:02
    本文主要介绍如何使用Torchtext读取文本数据集。 Torchtext是非官方的、一种为pytorch提供文本数据处理能力的库, 类似于图像处理库Torchvision。 Install 下载地址:https://github.com/text 安装:pip install...
  • torchtext.zip

    2017-06-20 13:33:29
    https://github.com/Shawn1993/cnn-text-classification-pytorch
  • torchtext问题

    2019-10-23 09:52:06
  • torchtext使用

    2019-08-26 16:14:24
    torchtext预处理流程: 1.定义Field:声明如何处理数据 2.定义Dataset:得到数据集,此时数据集里每一个样本是一个 经过 Field声明的预处理 预处理后的 wordlist 3.建立vocab:在这一步建立词汇表,词向量(word ...
  • Torchtext 教程

    2019-02-21 13:37:33
    1.可以把pytorch当成GPU版的Numpy 2.可以作为深度学习平台 创建 import torch x = torch.empty(5, 3) # 无初始化的矩阵 ...x = torch.zeros(5, 3, dtype=torch.long) # 0元素,long类型元素 ...prin...
  • pytorch torchtext

    2019-12-16 19:14:57
    参考https://blog.csdn.net/qq_42564846/article/details/83584028 https://blog.csdn.net/qq_42564846/article/details/83584028 https://blog.csdn.net/leo_95/article/details/87708267 ...
  • TorchText 详解

    2020-07-15 20:43:57
    TorchText 流程 TorchText 对数据的处理可以概括为: Filed、Dataset以及迭代器 1.torchtext.data.Field : 用来定义字段的处理方法(文本字段,标签字段) 创建 Example时的预处理 from torchtext.data import ...
  • 下载 torchtext

    2020-11-05 08:54:51
    本来使用 pip install torchtext 下载完了, 但是 from torchtext import data 时报错 “OSError: python3.6/site-packages/torchtext/_torchtext.so: undefined symbol: _ZN3c1023_fastEqualsForContainerERKNS_6...
  • torchtext 使用

    2020-08-06 21:21:25
    文章目录torchtext.data.Field NLP常见的数据预处理工作如下: Load File:数据文件加载; Tokenization:分词; Create Vocabulary:创建字典; Indexify:将词与索引进行映射; Word Vectors:创建或加载词向量; ...

空空如也

1 2 3 4 5 ... 20
收藏数 765
精华内容 306
关键字:

torchtext