| from tensorflow.keras.preprocessing.sequence import pad_sequences | |
| from tensorflow.keras.optimizers import Adam | |
| from tensorflow.keras.models import load_model | |
| from tqdm import tqdm | |
| import numpy as np | |
| import csv | |
| dataset = "dataset.csv" | |
| inp_len = 32 | |
| X = [] | |
| y = [] | |
| with open(dataset, 'r') as f: | |
| csv_reader = csv.reader(f) | |
| for row in tqdm(csv_reader): | |
| if row == []: continue | |
| label = int(row[0]) | |
| text = row[1] | |
| text = [ord(char) for char in text] | |
| X.append(text) | |
| y.append(label) | |
| X = np.array(pad_sequences(X, maxlen=inp_len, padding='post')) | |
| y = np.array(y) | |
| model = load_model("net.h5") | |
| model.compile(optimizer=Adam(learning_rate=0.00001), loss="mse", metrics=["accuracy",]) | |
| model.fit(X, y, epochs=2, batch_size=4, workers=4, use_multiprocessing=True) | |
| model.save("net.h5") | |