准备语言pytorch中的自定义单词数据集

问题描述

我正在尝试训练一个二元神经网络,它将获取一个单词并确定这个单词是否在语言 L 中。

单词是位串,语言由模式定义。 我的数据集看起来像这样

001101000010010,False
111001001000000,False
111011101001100,False
011111000101101,False
10000110000110001100,True
011100100001010,False
....

但如果需要,我可以以其他方式创建数据集(我知道定义语言的“真实”函数是什么。

我想像这样加载数据集,但它不起作用:

class myDataset(T.utils.data.Dataset):
# WORD  T/f
# 010000101010000  FALSE

def __init__(self,src_file,m_rows=None):
    all_xy = np.loadtxt(src_file,max_rows=m_rows,usecols=[0,1],delimiter=",",skiprows=0,dtype=np.int)

    tmp_x = all_xy[:,[0]]
    tmp_y = all_xy[:,1].reshape(-1,1)  # 2-D required

    self.x_data = T.tensor(tmp_x).to(device)
    self.y_data = T.tensor(tmp_y).to(device)
    self.x_data = tmp_x
    self.y_data = tmp_y

但我收到错误

溢出错误:Python int 太大,无法转换为 C long

由于数量太大, 将位串视为文本时

tmp_x = np.loadtxt(src_file,usecols=[0],dtype=np.str)

我收到错误

类型错误:无法转换 numpy.str_ 类型的 np.ndarray。唯一支持的类型是:float64、float32、float16、complex64、complex128、int64、int32、int16、int8、uint8 和 bool。

我是 Pytorch 编程的新手,我不确定编写和加载此数据集的正确方法是什么。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...