def test_simple_long(lstm_kwargs_1): model = lstm.LSTMModel('test-simple-long', 2, use_long=True, **lstm_kwargs_1) model.train([[1, 0] * 6000]) s = model.sample([1]) assert isinstance(s, list) print(s) model.analyze([1, 0]) model.save_to_file() model.sample([1]) model = lstm.LSTMModelFromFile('test-simple-long', **lstm_kwargs_1) s = model.sample([1]) assert isinstance(s, list) print(s) model.analyze([1, 0]) model.train([[1, 0] * 6000]) model.sample([1]) model.analyze([1, 0]) model.save_to_file() model.train([[1, 0]]) model.train([[1, 0] * 6000], count=True)
def test_simple_long_skip_padding(lstm_kwargs_1): model = lstm.LSTMModel('test-simple-long', 2, use_long=True, skip_padding=True, **lstm_kwargs_1) model.train([[1, 0] * 1000]) model.train([[1, 0]]) model.save_to_file() model = lstm.LSTMModelFromFile('test-simple-long', **lstm_kwargs_1) model.train([[1, 0] * 1000]) model.train([[1, 0]]) model.save_to_file()
def test_simple_short(lstm_kwargs_1, lstm_kwargs_2): model = lstm.LSTMModel('test-simple', 2, **lstm_kwargs_1) model.train([[1, 0]] * 1000) s = model.sample() assert isinstance(s, list) print(s) model.analyze([1, 0]) model.save_to_file() model.sample([1]) model = lstm.LSTMModelFromFile('test-simple', **lstm_kwargs_1) s = model.sample() assert isinstance(s, list) print(s) model.analyze([1, 0]) model.train([[1, 0]] * 1000) model.sample() model.analyze([1, 0]) model.save_to_file() # Double saving is ok model.save_to_file() model = lstm.LSTMModel('test-simple', 2, **lstm_kwargs_1) model.train([[1, 0]] * 1000, autosave=30) model = lstm.LSTMModel('test-simple', 2, **lstm_kwargs_2) model.train([[1, 0]] * 1000, autosave=30) model.train([[1, 0]] * 1000, autosave=True) model = lstm.LSTMModel('test-simple', 2, **lstm_kwargs_2) model.train([[1, 0]] * 1000, autosave=30, count=True) model = lstm.LSTMModelFromFile('test-simple-copy', from_name='test-simple', training_steps=100, **lstm_kwargs_1) model.train([[1, 0]] * 1000, autosave=30)
#!/usr/bin/env python3 import setup from models import lstm model = lstm.LSTMModel('simple', 2, tag=setup.tag) model.train([[1, 0]] * 10000) model.save_to_file()
#!/usr/bin/env python3 import setup from models import lstm import numpy as np model = lstm.LSTMModel('count-1-0', 2, tag=setup.tag) data = [(lambda n: [1] * n + [0] * n)(np.random.randint(0, 10)) for i in range(100000)] model.train(data, count=True, autosave=True) model.save_to_file()
#!/usr/bin/env python3 import setup from models import lstm # Use skip_padding to remove the last training example which is padded # to prevent spikes in loss_max model = lstm.LSTMModel('simple-long', 2, use_long=True, skip_padding=True, tag=setup.tag) data = [[1, 0] * 100000] model.train(data, autosave=300, cont=True)