Closed jwc19890114 closed 4 years ago
似乎我这边可以直接运行,如果你还是无法run起来,建议通过一下方式重新安装一下, 先卸载现在的fastNLP,pip uninstall fastNLP, 然后通过pip install git+https://github.com/fastnlp/fastNLP安装最新版的fastNLP
似乎我这边可以直接运行,如果你还是无法run起来,建议通过一下方式重新安装一下, 先卸载现在的fastNLP,pip uninstall fastNLP, 然后通过pip install git+https://github.com/fastnlp/fastNLP安装最新版的fastNLP
好的,我试一下,谢谢啦
似乎我这边可以直接运行,如果你还是无法run起来,建议通过一下方式重新安装一下, 先卸载现在的fastNLP,pip uninstall fastNLP, 然后通过pip install git+https://github.com/fastnlp/fastNLP安装最新版的fastNLP
好的,我试一下,谢谢啦
额,刚把上面的图加载出来,我看了你的回复,就是说在运行了我的提问中那段代码后,生成的dataset导入model中是可以运行的是么
如果直接train的话,会有一个问题是输入的x是LongTensor的,是没法直接做运算的, 所以用(把x转为Float类型的Tensor)
def generate_psedo_dataset(num_samples):
data=torch.randint(2,size=(num_samples,10))
print(data.shape)
list=[]
for n in range(num_samples):
label=torch.sum(data[n])%2
list.append(label)
list=torch.stack(list)
dataset = DataSet({'x':data.float(), 'label': list})
dataset.set_input('x')
dataset.set_target('label')
return dataset
tr_dataset=generate_psedo_dataset(1000)
dev_dataset=generate_psedo_dataset(100)
我测试下来已经可以run了,但可能仍需要update一下你的fastNLP到github这个版本才行哈。
如果直接train的话,会有一个问题是输入的x是LongTensor的,是没法直接做运算的, 所以用(把x转为Float类型的Tensor)
def generate_psedo_dataset(num_samples): data=torch.randint(2,size=(num_samples,10)) print(data.shape) list=[] for n in range(num_samples): label=torch.sum(data[n])%2 list.append(label) list=torch.stack(list) dataset = DataSet({'x':data.float(), 'label': list}) dataset.set_input('x') dataset.set_target('label') return dataset tr_dataset=generate_psedo_dataset(1000) dev_dataset=generate_psedo_dataset(100)
我测试下来已经可以run了,但可能仍需要update一下你的fastNLP到github这个版本才行哈。
额,我卸载了原有版本,但是好像pip install的话仍然是0.5.0这个版本,请问这个版本是最新的吗? 重新安装之后,使用你上面提供的这段代码生成dataset仍然会报错
如果直接train的话,会有一个问题是输入的x是LongTensor的,是没法直接做运算的, 所以用(把x转为Float类型的Tensor)
def generate_psedo_dataset(num_samples): data=torch.randint(2,size=(num_samples,10)) print(data.shape) list=[] for n in range(num_samples): label=torch.sum(data[n])%2 list.append(label) list=torch.stack(list) dataset = DataSet({'x':data.float(), 'label': list}) dataset.set_input('x') dataset.set_target('label') return dataset tr_dataset=generate_psedo_dataset(1000) dev_dataset=generate_psedo_dataset(100)
我测试下来已经可以run了,但可能仍需要update一下你的fastNLP到github这个版本才行哈。
啊,搞定了,用pycharm调试了,发现问题在label那边,教程里面的label需要指定类型为int,否则会被认定为intc。
def generate_psedo_dataset(num_samples):
data = np.random.randint(2, size=(num_samples, 10))
label = np.sum(data, axis=1)%2
dataset = DataSet({'x':data.astype(float), 'label': label.astype(int)})
dataset.set_input('x')
dataset.set_target('label')
return dataset
谢谢啦
在学习Trainer部分的时候,运行了这一节最开始部分的代码 但是原始的实例代码会报错
我尝试在数据生成部分直接使用torch生成tensor
但是在训练中会报如下错误
是不是我的数据生成写错了。。。 gitbook部分的实例代码应该如何调整呢? torch:1.2.0+cu92 FastNLP:0.5.0