def create_train_and_test(self, examples):
d = [[], []]
for i, s, dep in examples:
d[i].append((i, s, dep))
random.seed(1)
random.shuffle(d[0])
random.shuffle(d[1])
if self.equalize_classes:
l = min(len(d[0]), len(d[1]))
examples = d[0][:l] + d[1][:l]
else:
examples = d[0] + d[1]
random.shuffle(examples)
Y, X, deps = zip(*examples)
Y = np.asarray(Y)
X = sequence.pad_sequences(X, maxlen=self.maxlen)
n_train = int(self.prop_train * len(X))
self.X_train, self.Y_train = X[:n_train], Y[:n_train]
self.X_test, self.Y_test = X[n_train:], Y[n_train:]
self.deps_train = deps[:n_train]
self.deps_test = deps[n_train:]
评论列表
文章目录