tflearn文档,比tensorflow更高一级的API: http://tflearn.org
tensorflow中文文档:http://www.tensorfly.cn/tfdoc/get_started/introduction.html
#-*-coding:utf-8-*-
from __future__ import division, print_function, absolute_import
import tflearn
from tflearn.data_utils import to_categorical, pad_sequences
from tflearn.datasets import imdb
# IMDB Dataset loading
train, test, _ = imdb.load_data(path='imdb.pkl', n_words=10000,
valid_portion=0.1)
trainX, trainY = train
testX, testY = test
# Data preprocessing
# Sequence padding
trainX = pad_sequences(trainX, maxlen=100, value=0.)
testX = pad_sequences(testX, maxlen=100, value=0.)
# print("trainX:",trainX)
# Converting labels to binary vectors
trainY = to_categorical(trainY,2)
testY = to_categorical(testY,2)
# print("trainY:",trainY)
# Network building
net = tflearn.input_data([None, 100])
# print("net1:",net)
# print(net.shape())
net = tflearn.embedding(net, input_dim=10000, output_dim=128)
# print("net2:",net)
# print(net.shape())
net = tflearn.lstm(net, 128, dropout=0.8)
net = tflearn.fully_connected(net, 2, activation='softmax')
net = tflearn.regression(net, optimizer='adam', learning_rate=0.001,
loss='categorical_crossentropy')
# Training
# model = tflearn.DNN(net, tensorboard_verbose=0)
# model.fit(trainX, trainY, validation_set=(testX, testY), show_metric=True,
# batch_size=32)