问题标签 [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.

0 投票
1 回答
825 浏览

python - 将值转换为 ids 的 torchtext 字段得到错误整数是必需的

我按照本教程 http://www.programmersought.com/article/2609385756/

使用已标记化并转换为 id 的数据创建 TabularDataset,我不想使用 vocab 或构建 vocab,因为数据是数字的

所以我将我的字段变量定义为:

火车输出:

我使用了 BucketIterator:

当我运行此代码时:

我得到 TypeError: an integer is required (得到类型列表)


TypeError Traceback (最近一次调用最后一次) in () ----> 1 batch = next(iter(train_iter))

3 帧 /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 if not self.repeat: 159 return

/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:

TypeError:需要一个整数(获取类型列表)

0 投票
1 回答
323 浏览

pytorch - torchtext 数据 build_vocab / data_field

我想问你一些关于torchtext的问题。

我有一个关于抽象文本摘要的任务,我用 pytorch 构建了一个 seq2seq 模型。

我只是想知道torchtext中build_vocab函数构造的data_field。

在机器翻译中,我接受需要两个 data_fields(input, output)。

但是,总而言之,输入数据和输出数据是相同的语言。

在这里,我应该在这里创建两个 data_field(full_sentence, abstract_sentence) 吗?

还是可以只使用一个data_field?

恐怕我的错误选择会使模型的性能下降。

请给我一个提示。

0 投票
1 回答
3185 浏览

python - 溢出错误:Python int 太大而无法转换为 C long torchtext.datasets.text_classification.DATASETS['AG_NEWS']()

我有 64 位 Windows 10 操作系统 我已经安装了 python 3.6.8 我已经使用 pip 安装了 torch 和 torchtext。火炬版本是 1.2.0

我正在尝试使用以下代码加载 AG_NEWS 数据集:

在上面代码的最后一条语句中,我收到以下错误:

我认为问题出在 windows os 或 torchtext 上,因为下面的代码也出现了同样的错误。

有人可以帮忙吗?主要是我在文件中没有任何大的数值。

0 投票
2 回答
3303 浏览

python - 了解 TypeError:“示例”和“示例”的实例之间不支持“<”

我正在使用多头注意力转换器模型进行文本简化项目。同样,我使用 torchtext 进行标记化和数字化。数据集包含两个用于训练的对齐文件和两个用于测试的对齐文件。在训练文件中,一个文件包含复杂句子,而另一个文件包含相应的简化句子。

我是这样阅读文件的:

接下来,我将它们标记为:

然后我转换成 torchtext 的 TabularDataset 对象。

然后创建词汇

但是,这样做我得到了这个错误:

TypeError:“示例”和“示例”的实例之间不支持“<”

在搜索时,我在这里遇到了这个解决方案,错误消失了。但是,我不明白这是否使模型只采用一个实例还是采用所有数据集?我想知道索引的重要性,[0]以便我可以为我的模型有效地操纵它。

0 投票
2 回答
1174 浏览

python - How to make prediction from train Pytorch and PytorchText model?

General speaking, after I have successfully trained a text RNN model with Pytorch, using PytorchText to leverage data loading on an origin source, I would like to test with other data sets (a sort of blink test) that are from different sources but the same text format.

First I defined a class to handle the data loading.

Here is the detail of load_data which I load data that trained successfully.

Next is my code (load_data_but_error) to load others source but causing error

When I was executing code, I had an error AttributeError: 'Field' object has no attribute 'vocab' which has a question at here but it doesn't like my situation as here I had vocab from load_data and I want to use it for blink tests.

My question is what the correct way to load and feed new data with a trained PyTorch model for testing current model is?

0 投票
1 回答
1625 浏览

nlp - torch 中 build_vocab 的解释及其与预训练嵌入的关联

有人可以解释一下什么是火炬中的 build_vocab,在线文档中不清楚吗?为什么我们需要它以及它与预训练嵌入的关系?

0 投票
2 回答
2502 浏览

python - 如何从 Pytorch 张量中去掉每一列都用零填充?

我有一个如下所示的 pytorch 张量A

我想:

  • 识别所有条目都等于 0 的所有列
  • 仅删除所有条目都等于 0 的列

我可以想象这样做:

识别其元素只有 0 的列,但我不确定如何从原始张量中删除这些填充为 0 的列。

如何根据索引号从 pytorch 张量中删除零列?

谢谢,

0 投票
1 回答
216 浏览

pytorch - 从列表而不是文件创建 SequenceTaggingDataset

我想从我在代码中动态创建的两个列表创建一个SequenceTaggingDatasettrain_sentences -和train_tags. 我想写这样的东西:

但是,构造函数必须接收路径。不仅如此 - 从代码中看起来,即使我要提供示例,它也会覆盖这些示例,并初始化examples为一个空列表。

由于各种原因,我不想将创建的列表保存在SequenceTaggingDataset可以读取的文件中。有什么办法可以解决这个问题,除了定义我自己的自定义类吗?

0 投票
0 回答
331 浏览

python - argmax_cuda" 没有为 'Bool 实现

我在谷歌合作中面临这个错误。我尝试了其他数据类型,例如 bool 张量,但没有用,请帮忙

代码

错误

0 投票
1 回答
366 浏览

deep-learning - 使用 TorchText (PyTorch) 进行语言翻译

我最近开始使用 PyTorch 进行 ML/DL。以下 pytorch 示例说明了我们如何训练一个简单的模型来将德语翻译成英语。

https://pytorch.org/tutorials/beginner/torchtext_translation_tutorial.html

但是,我对如何使用模型对自定义输入进行推理感到困惑。据我目前的理解:

1) 我们需要保存德语(输入)和英语(输出)的“词汇”[使用 torch.save()],以便以后可以使用它们进行预测。

2)在对德语段落进行推理时,我们首先需要使用德语词汇文件将德语文本转换为张量。

3) 将上述张量传递给模型的forward方法进行翻译

4) 模型将再次返回目标语言的张量,即当前示例中的英语。

5)我们将使用第一步保存的英语词汇将此张量转换回英文文本。

问题:

1)如果上述理解是正确的,如果我们知道源语言和目标语言并且拥有相同的词汇文件,上述步骤是否可以被视为在任何语言翻译模型上运行推理的通用方法?或者我们可以使用像 spacy 这样的第三方库提供的词汇吗?

2)我们如何将模型返回的输出张量转换回目标语言?我找不到任何关于如何做到这一点的例子。上面的博客解释了如何使用源语言词汇将输入文本转换为张量。

我可以很容易地找到图像/视觉模型的各种示例和详细说明,但对于文本来说却不多。