问题标签 [torchtext]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 将纯文本文件加载到 PyTorch
我有两个单独的文件,一个是文本文件,每一行都是一个文本。另一个文件包含相应行的类标签。如何将其加载到 PyTorch 并进行进一步的标记化、嵌入等?
python - 无法在 torchtext 迭代器中加载 one-hot 标签(ValueError: too many dimensions 'str')
我的“标签”字段是一个长度为 201 的单热向量。但是,我无法使用这种单热表示创建迭代器。如果我尝试迭代迭代器,我会收到以下错误。
() 中的 ValueError Traceback (最近一次调用最后一次) ----> 1 用于 train_iter 中的批处理:2 print(batch)
/usr/local/lib/python3.6/dist-packages/torchtext/data/iterator.py in iter (self) 155 else: 156 minibatch.sort(key=self.sort_key, reverse=True) --> 157 yield Batch(minibatch, self.dataset, self.device) 158 如果不是 self.repeat: 159 返回
/usr/local/lib/python3.6/dist-packages/torchtext/data/batch.py in init (self, data, dataset, device) 32 如果字段不是 None: 33 batch = [getattr(x, name) for x in data] ---> 34 setattr(self, name, field.process(batch, device=device)) 35 36 @classmethod
/usr/local/lib/python3.6/dist-packages/torchtext/data/field.py in process(self, batch, device) 199 """ 200 padded = self.pad(batch) --> 201 tensor = self.numericalize(padded, device=device) 202 返回张量 203
/usr/local/lib/python3.6/dist-packages/torchtext/data/field.py in numericize(self, arr, device) 321 arr = self.postprocessing(arr, None) 322 --> 323 var = torch .tensor(arr, dtype=self.dtype, device=device) 324 325 如果 self.sequential 而不是 self.batch_first:
ValueError:太多维度“str”
python - 使用带有文本序列的torchtext作为输入
我正在尝试使用 torchtext 进行序列标记,其中序列是句子。所以每个Example
都是句子及其标签的列表:
当然,我仍然想要单词级别的标记化和词汇,但似乎没有明显的方法可以做到这一点。例如,TabularDataset
需要一个Field
适用于每个示例元素的 s 列表,但我想将文本字段映射到构成输入的句子列表中。
我想也许这就是NestedField
目的,但它似乎专门针对字符嵌入。
我错过了什么吗?使用torchtext这可能(没有太多麻烦)吗?我完全愿意接受不作为答案:)
python - BucketIterator 没有返回正确大小的批次
我正在实现一个简单的 LSTM 语言模型PyTorch
,并想查看BucketIterator
由torchtext
.
事实证明,返回的批次有我整个语料库的大小,所以我在初始化期间一定做错了什么。
我已经开始BPTTIterator
工作了,但是因为我也希望能够训练成批的完整句子,所以我认为BucketIterator
应该是这样。
我使用以下设置,我的语料库是一个简单的 txt 文件,每行都包含句子。
我希望这个迭代器的一批具有 shape (batch_size, max_len)
,但它将整个语料库附加到 1 张量 shape(1, corpus_size)
中。
我的设置中缺少什么?
编辑:似乎该PennTreebank
对象与 a 不兼容BucketIterator
(它只包含 1 Example
,如此处所述http://mlexplained.com/2018/02/15/language-modeling-tutorial-in-torchtext-practical-torchtext-part-2 /)。只使用TabularDataset
1Field
就可以了。
如果有人知道如何torchtext
以更优雅的方式使用填充句子批次进行语言建模,我很想听听!
python-3.x - torchtext 的 BucketIterator 可以将所有批次填充到相同的长度吗?
我最近开始使用 torchtext 来替换我的胶水代码,我遇到了一个问题,我想在我的架构中使用注意力层。为了做到这一点,我需要知道我的训练数据的最大序列长度。
问题在于,torchtext.data.BucketIterator
它会按批次进行填充:
是否有某种方法可以确保所有训练示例都填充到相同的长度;即训练中的maxlen?
python - 自定义 torchtext 数据集
我想在自定义数据集中使用 Torch 文本提供的 BucketIterator 函数。
我有几个列表,源和目标,其中包含文本。
我没有找到任何明确的指南来构建您自己的 torchtext.data.Dataset。
vector - 如何将 BERT 词嵌入保存为 .vec,类似于 word2vec
我想使用生成的 BERT 词嵌入作为在 Torchtext 中构建词汇的向量 我可以加载诸如 GloVe 或 word2vec 之类的向量,但我不知道如何将 BERT 中的词嵌入保存为 Torchtext 词汇可接受的格式
当我尝试这段代码时
我收到此错误:
python - pytorch/torchtext 中的 one-hot 编码
我有一个Bucketiterator
从中torchtext
提供给模型的pytorch
. 如何构造迭代器的示例:
然后将数据馈送到这样的模型,我在其中使用该nn.Embedding
层。
但是,如果我希望嵌入是一次性编码的呢?我从事形式语言的工作,保留令牌之间的正交性会很好。它似乎没有pytorch
或torchtext
没有任何功能可以做到这一点。
anaconda - 如何在 conda 上安装 torchtext 0.4.0
torchtext 0.4.0 库存在(可以通过 pip 下载),但conda install torchtext=0.4.0
不会工作。如何将 torchtext 下载到 anaconda 环境?