Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用Tensorflow tflearn进行单词分类_Python_Tensorflow_Neural Network_Recurrent Neural Network_Tflearn - Fatal编程技术网

Python 如何使用Tensorflow tflearn进行单词分类

Python 如何使用Tensorflow tflearn进行单词分类,python,tensorflow,neural-network,recurrent-neural-network,tflearn,Python,Tensorflow,Neural Network,Recurrent Neural Network,Tflearn,我在互联网上搜索了一份像样的文档或一些描述的例子,但什么也没找到。 我想做的是,对一个单词或小短语(最多3个单词)进行分类,并给它们一个优先级“标记”。(例如:斯蒂芬·霍金=>1,雷德先生=>0) 我试着用多层感知器来做这件事,但在那里我不能用文字作为测试数据。所以我尝试使用RNN,使用TensorFlow的tflearn库。 问题是,我找不到任何关于如何预处理数据或如何将数据提供给LSTM层的文档 我写了一些代码: data, labels = load_csv(r'C:\Users\xxxx

我在互联网上搜索了一份像样的文档或一些描述的例子,但什么也没找到。 我想做的是,对一个单词或小短语(最多3个单词)进行分类,并给它们一个优先级“标记”。(例如:斯蒂芬·霍金=>1,雷德先生=>0) 我试着用多层感知器来做这件事,但在那里我不能用文字作为测试数据。所以我尝试使用RNN,使用TensorFlow的tflearn库。 问题是,我找不到任何关于如何预处理数据或如何将数据提供给LSTM层的文档

我写了一些代码:

data, labels = load_csv(r'C:\Users\xxxx\Desktop\Machine Learning\Getting Started\Data\train_dataset_rnn.csv', categorical_labels=True, n_classes=2, delim=';')

net = tflearn.input_data(shape=[None, 1])
net = tflearn.lstm(net, 128, 1)
net = tflearn.fully_connected(net, 2, activation='softmax')
net = tflearn.regression(net)
model = tflearn.DNN(net)
model.fit(data, labels, n_epoch=10, batch_size=32, show_metric=True)
数据具有shape=>“name”;0/1

当我执行此代码时,会出现以下错误:

ValueError: Invalid Activation.
有人能帮我更好地理解这些层/算法吗


事先非常感谢

据我所知,LSTM采用3D输入->[批次大小、序列长度、向量表示] 在您的情况下,可以将序列长度设置为3(序列的最大长度)。我通常将单词映射到300d手套表示。因此,输入数据将如下所示:

net=tflearn.输入数据(shape=[None,3300])

我不确定是否有错误,但我认为您还需要像这样指定回归:

net = tflearn.layers.core.fully_connected(net, 2, activation='softmax')
net = tflearn.layers.estimator.regression(net, optimizer='adam', learning_rate=LEARNING_RATE,
                     loss='categorical_crossentropy', name='target')