mirror of
https://github.com/clearml/clearml
synced 2025-01-31 17:17:00 +00:00
commit
b9f5cdf8bf
53
examples/autokeras/autokeras_imdb_example.py
Normal file
53
examples/autokeras/autokeras_imdb_example.py
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
import autokeras as ak
|
||||||
|
import numpy as np
|
||||||
|
import tensorflow as tf
|
||||||
|
from tensorflow import keras
|
||||||
|
from trains import Task
|
||||||
|
|
||||||
|
task = Task.init(project_name="autokeras", task_name="autokeras imdb example with scalars")
|
||||||
|
|
||||||
|
def imdb_raw():
|
||||||
|
max_features = 20000
|
||||||
|
index_offset = 3 # word index offset
|
||||||
|
|
||||||
|
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.imdb.load_data(
|
||||||
|
num_words=max_features,
|
||||||
|
index_from=index_offset)
|
||||||
|
x_train = x_train
|
||||||
|
y_train = y_train.reshape(-1, 1)
|
||||||
|
x_test = x_test
|
||||||
|
y_test = y_test.reshape(-1, 1)
|
||||||
|
|
||||||
|
word_to_id = tf.keras.datasets.imdb.get_word_index()
|
||||||
|
word_to_id = {k: (v + index_offset) for k, v in word_to_id.items()}
|
||||||
|
word_to_id["<PAD>"] = 0
|
||||||
|
word_to_id["<START>"] = 1
|
||||||
|
word_to_id["<UNK>"] = 2
|
||||||
|
|
||||||
|
id_to_word = {value: key for key, value in word_to_id.items()}
|
||||||
|
x_train = list(map(lambda sentence: ' '.join(
|
||||||
|
id_to_word[i] for i in sentence), x_train))
|
||||||
|
x_test = list(map(lambda sentence: ' '.join(
|
||||||
|
id_to_word[i] for i in sentence), x_test))
|
||||||
|
x_train = np.array(x_train, dtype=np.str)
|
||||||
|
x_test = np.array(x_test, dtype=np.str)
|
||||||
|
return (x_train, y_train), (x_test, y_test)
|
||||||
|
|
||||||
|
|
||||||
|
# Prepare the data.
|
||||||
|
(x_train, y_train), (x_test, y_test) = imdb_raw()
|
||||||
|
print(x_train.shape) # (25000,)
|
||||||
|
print(y_train.shape) # (25000, 1)
|
||||||
|
print(x_train[0][:50]) # <START> this film was just brilliant casting <UNK>
|
||||||
|
|
||||||
|
# Initialize the TextClassifier
|
||||||
|
clf = ak.TextClassifier(max_trials=3)
|
||||||
|
|
||||||
|
tensorboard_callback_train = keras.callbacks.TensorBoard(log_dir='log')
|
||||||
|
tensorboard_callback_test = keras.callbacks.TensorBoard(log_dir='log')
|
||||||
|
|
||||||
|
# Search for the best model.
|
||||||
|
clf.fit(x_train, y_train, epochs=2, callbacks=[tensorboard_callback_train])
|
||||||
|
clf.fit(x_test, y_test, epochs=2, callbacks=[tensorboard_callback_test])
|
||||||
|
# Evaluate on the testing data.
|
||||||
|
print('Accuracy: {accuracy}'.format(accuracy=clf.evaluate(x_test, y_test)))
|
Loading…
Reference in New Issue
Block a user