Skip to content

Instantly share code, notes, and snippets.

@ekzhang
Created June 10, 2020 20:38
Show Gist options
  • Save ekzhang/99a58e3a7e35349eaaea3cdb6d822e4d to your computer and use it in GitHub Desktop.
Save ekzhang/99a58e3a7e35349eaaea3cdb6d822e4d to your computer and use it in GitHub Desktop.
Char-RNN in PyTorch
import torch
import torch.optim as optim
import torch.nn as nn
import torch.nn.functional as F
class CharRNN(nn.Module):
def __init__(self, vocab_size, model, hidden_size=256, num_layers=3):
super().__init__()
self.model = model
self.num_layers = num_layers
self.hidden_size = hidden_size
self.embed = nn.Embedding(vocab_size, 128)
if model == 'lstm':
self.rnn = nn.LSTM(128, hidden_size, num_layers, dropout=0.2)
elif model == 'gru':
self.rnn = nn.GRU(128, hidden_size, num_layers, dropout=0.2)
else:
self.rnn = nn.RNN(128, hidden_size, num_layers, dropout=0.2)
self.dense = nn.Linear(256, vocab_size)
def forward(self, input, hidden):
# input has shape (seq_len, batch)
x = self.embed(input) # shape (seq_len, batch, 128)
x, hidden = self.rnn(x, hidden) # shape (seq_len, batch, hidden_size)
x = F.log_softmax(self.dense(x), dim=-1) # shape (seq_len, batch, vocab_size)
return x, hidden
def init_hidden(self, batch_size, **kw):
if self.model != 'lstm':
return torch.zeros((self.num_layers, batch_size, self.hidden_size), **kw)
return (torch.zeros((self.num_layers, batch_size, self.hidden_size), **kw),
torch.zeros((self.num_layers, batch_size, self.hidden_size), **kw))
class TextDataset:
def __init__(self, filename):
with open(filename, 'r', encoding='utf-8') as f:
self.text = f.read()
self.chars = list(set(self.text))
self.char_to_idx = {c: i for i, c in enumerate(self.chars)}
self.idx_to_char = {i: c for i, c in enumerate(self.chars)}
self.vocab_size = len(self.chars)
def get_segment(self, idx, length):
return torch.tensor([self.char_to_idx[c] for c in self.text[idx : idx + length]])
def batch_generator(self, batch_size, seq_length):
length = len(self.text)
batch_chars = length // batch_size
for start in range(0, batch_chars - seq_length, seq_length):
x = torch.zeros((seq_length, batch_size), dtype=torch.long)
y = torch.zeros((seq_length, batch_size), dtype=torch.long)
for batch_idx in range(0, batch_size):
x[:, batch_idx] = self.get_segment(batch_chars * batch_idx + start, seq_length)
y[:, batch_idx] = self.get_segment(batch_chars * batch_idx + start + 1, seq_length)
yield x, y
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import time\n",
"import torch\n",
"import torch.optim as optim\n",
"import torch.nn as nn\n",
"import torch.nn.functional as F\n",
"import numpy as np\n",
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"from char_rnn import *"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Loading text...\n",
" Chapter 1\n",
"\n",
" It is a truth universally acknowledged, that a single man in\n",
" possession of a good fortune, must be in want of a wife.\n",
"\n",
" However little known the feelings or views of such a man may be\n",
" on his first entering a neighbourhood, this truth is so well\n",
" fixed in the minds of the surrounding families, that he is\n",
" considered the rightful property of some one or other of their\n",
" daughters.\n",
"\n",
" “My dear Mr. Bennet,” said his lady to him one day, “have you\n",
" heard that Netherfield Park is let at last?”\n",
"\n",
" Mr. Bennet replied that he had not.\n",
"\n",
" “But it is,” returned she; “for Mrs. Long has just been here, and\n",
" she told me all about it.”\n",
"\n",
" Mr. Bennet made no answer.\n",
"\n",
" “Do you not want to know who has taken it?” cried his wife\n",
" impatiently.\n",
"\n",
" “_You_ want to tell me, and I have no objection to hearing it.”\n",
"\n",
" This was invitation enough.\n",
"\n",
" “Why, my dear, you must know, Mrs. Long says that Netherfield is\n",
" taken by a young\n"
]
}
],
"source": [
"print('Loading text...')\n",
"dataset = TextDataset('pride.txt')\n",
"\n",
"print(dataset.text[:1024])"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Vocab size: 80\n"
]
}
],
"source": [
"print('Vocab size:', dataset.vocab_size)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"def sample(net, num_chars, header=None):\n",
" if not header:\n",
" header = dataset.text[:32]\n",
" sampled = [dataset.char_to_idx[c] for c in header]\n",
" with torch.no_grad():\n",
" hidden = net.init_hidden(1, device='cuda')\n",
" _, hidden = net(torch.tensor(sampled[:-1]).view(-1, 1).cuda(), hidden)\n",
" for i in range(num_chars):\n",
" outputs, hidden = net(torch.tensor(sampled[-1]).view(1, 1).cuda(), hidden)\n",
" result = outputs.squeeze().argmax().item()\n",
" sampled.append(result)\n",
" return ''.join(dataset.idx_to_char[x] for x in sampled)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"def train(net, epochs):\n",
" batch_size = 32\n",
" seq_length = 64\n",
" criterion = nn.NLLLoss()\n",
" optimizer = optim.Adam(net.parameters())\n",
" \n",
" losses, accs = [], []\n",
"\n",
" for epoch in range(epochs):\n",
" start_time = time.time()\n",
" running_loss, running_acc = 0.0, 0.0\n",
" hidden = net.init_hidden(batch_size, device='cuda')\n",
" total = 0\n",
" for i, (inputs, labels) in enumerate(dataset.batch_generator(batch_size, seq_length)):\n",
" inputs, labels = inputs.cuda(), labels.cuda()\n",
" optimizer.zero_grad()\n",
" outputs, hidden = net(inputs, hidden)\n",
" if isinstance(hidden, tuple):\n",
" hidden[0].detach_()\n",
" hidden[1].detach_()\n",
" else:\n",
" hidden.detach_()\n",
" loss = criterion(outputs.view(-1, dataset.vocab_size), labels.view(-1))\n",
" loss.backward()\n",
" optimizer.step()\n",
" running_loss += loss.item()\n",
" running_acc += (outputs.argmax(dim=-1) == labels).float().sum() / len(labels.view(-1))\n",
" total += 1\n",
" loss, acc = running_loss / total, running_acc / total\n",
" print(f'Epoch {epoch + 1}: loss = {loss}, acc = {acc}, time = {time.time() - start_time}')\n",
" losses.append(loss)\n",
" accs.append(acc)\n",
" if epoch % 10 == 9:\n",
" print('----- SAMPLE -----')\n",
" print(sample(net, 1024))\n",
" print('--- END SAMPLE ---')\n",
"\n",
" return losses, accs"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"rnn = CharRNN(dataset.vocab_size, 'rnn').cuda()\n",
"lstm = CharRNN(dataset.vocab_size, 'lstm').cuda()\n",
"gru = CharRNN(dataset.vocab_size, 'gru').cuda()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1: loss = 1.8936980091359303, acc = 0.46748286485671997, time = 9.809901237487793\n",
"Epoch 2: loss = 1.434380958261697, acc = 0.5725137591362, time = 9.248165845870972\n",
"Epoch 3: loss = 1.318828493680643, acc = 0.6016461253166199, time = 8.843694925308228\n",
"Epoch 4: loss = 1.2591772037355795, acc = 0.6165148019790649, time = 8.874507188796997\n",
"Epoch 5: loss = 1.2227495934652246, acc = 0.6256063580513, time = 8.954261064529419\n",
"Epoch 6: loss = 1.1967197089739467, acc = 0.6323428153991699, time = 9.173112154006958\n",
"Epoch 7: loss = 1.1772316817356192, acc = 0.63694167137146, time = 9.029551029205322\n",
"Epoch 8: loss = 1.1621199020225068, acc = 0.6411716938018799, time = 9.347028017044067\n",
"Epoch 9: loss = 1.1495466941724652, acc = 0.6443548202514648, time = 9.36619234085083\n",
"Epoch 10: loss = 1.1396794607457907, acc = 0.6466993093490601, time = 9.001936912536621\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thought the consequence of the same time of the same to the same threw attention of the same time to the same time with the considerable to the same assured the sisters that he had been the connection of the same to the consideration of the same to the same to the little the consideration of the consequence of the consequence of the concerned to her father was a fortune of the surprised to have a little the sister was not the consideration of the same time to the consequence of the consequence of the ladies which her father and the subject of the settled to the latter was not the same sister was a few manners were to have the consequence of the consideration of the same assured the subject of the sisters which her friendship and the continued the subject of the same time was the cousin to the side, and then he had never have the consequence of the convinced to the contenting the same time to the sister, and the same time to her father was not the subject of the ladies as the particularly any particularly the c\n",
"--- END SAMPLE ---\n",
"Epoch 11: loss = 1.1315066121194675, acc = 0.649160623550415, time = 8.803165197372437\n",
"Epoch 12: loss = 1.1238158711272737, acc = 0.6508351564407349, time = 8.642682313919067\n",
"Epoch 13: loss = 1.117952201353467, acc = 0.6528041958808899, time = 8.817177534103394\n",
"Epoch 14: loss = 1.1116810049051824, acc = 0.6544919610023499, time = 9.501443147659302\n",
"Epoch 15: loss = 1.1070379287652348, acc = 0.65586256980896, time = 10.18964409828186\n",
"Epoch 16: loss = 1.102671071563078, acc = 0.656722366809845, time = 11.389354228973389\n",
"Epoch 17: loss = 1.0978305657272753, acc = 0.657907247543335, time = 10.721457958221436\n",
"Epoch 18: loss = 1.09430682691543, acc = 0.6586940884590149, time = 9.65538740158081\n",
"Epoch 19: loss = 1.0912509392137113, acc = 0.65962153673172, time = 9.183555126190186\n",
"Epoch 20: loss = 1.0882256798770116, acc = 0.6602756977081299, time = 8.992430210113525\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thing of the consideration of his father and her father and her family was not to be so from the first assure you to her father and her father was not to any particularly attention of his sister was not to her family of the consideration of the consequence of the proposed to her formerly as the considered to her family was not to have a serious of the consideration of his father was a servants which her friend of her father and her father and her father was not the confession of the farther to her family of his friends, and the last assembly as the consideration of her father was a stranger of his friends, and the consideration of her father to her friend of the consideration of the pleasure of the consideration of the consequence of the same time to her father and the consideration to her father and the considered to her father and herself to her father and his friend of his father and such a servant to her father was not to the present to her father was not the considered to her father was to the family was \n",
"--- END SAMPLE ---\n",
"Epoch 21: loss = 1.0850914446232112, acc = 0.6611859202384949, time = 8.785202980041504\n",
"Epoch 22: loss = 1.082250572093155, acc = 0.661870539188385, time = 8.879380941390991\n",
"Epoch 23: loss = 1.080125099129003, acc = 0.662480890750885, time = 8.861718893051147\n",
"Epoch 24: loss = 1.0779991822074289, acc = 0.6629453301429749, time = 9.043729066848755\n",
"Epoch 25: loss = 1.0762456874160662, acc = 0.6636896729469299, time = 9.148362398147583\n",
"Epoch 26: loss = 1.0734452634401943, acc = 0.66438889503479, time = 9.215075492858887\n",
"Epoch 27: loss = 1.072055799157723, acc = 0.6649953126907349, time = 9.619043111801147\n",
"Epoch 28: loss = 1.0706659393466038, acc = 0.665187656879425, time = 9.6465425491333\n",
"Epoch 29: loss = 1.0684986130698868, acc = 0.665370762348175, time = 9.167928218841553\n",
"Epoch 30: loss = 1.0682988212160442, acc = 0.665303111076355, time = 9.122616052627563\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thing to her father was a second time to her heart to her father to her father was a second time to her family, and the consideration of the summer to the conversation to her father was a stranger was a second to the consequence of the consideration of his father was a stranger to her father was a sensible to her father was not the country, and the concern of her father was a street the proper three least of her father was a stranger was any present to her father was a servant to her father was a strong attentive of the presended to her father was at all the compliment of her father and her father was not to her father and the conversation of his father was a sensibility of her father was a second fair and a second time to her father who had been a stranger, and the consideration of the last stranger of the profession of her father and anger of the consideration of his affections of her father was a second opportunity of her father was a sister was the consequence of her father was not to be soon as they were \n",
"--- END SAMPLE ---\n",
"Epoch 31: loss = 1.066696541302878, acc = 0.666111171245575, time = 9.378379821777344\n",
"Epoch 32: loss = 1.0655544076276862, acc = 0.6661854982376099, time = 9.149399280548096\n",
"Epoch 33: loss = 1.0637958676594754, acc = 0.666767954826355, time = 9.069831848144531\n",
"Epoch 34: loss = 1.062165638026984, acc = 0.6672496199607849, time = 9.258570432662964\n",
"Epoch 35: loss = 1.0614669677679953, acc = 0.666997492313385, time = 9.17557168006897\n",
"Epoch 36: loss = 1.060001109443281, acc = 0.6673053503036499, time = 9.02868366241455\n",
"Epoch 37: loss = 1.0597574064589066, acc = 0.66765958070755, time = 9.066957950592041\n",
"Epoch 38: loss = 1.058191829563483, acc = 0.66770339012146, time = 9.039067029953003\n",
"Epoch 39: loss = 1.057255534860103, acc = 0.66851806640625, time = 9.095388174057007\n",
"Epoch 40: loss = 1.0574217032155264, acc = 0.66837078332901, time = 9.072941541671753\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a triumph to the convinced the consequence of the party of his friend was not to be any of the consequently as they had been at the cousin was not to be so sorry to the considerable to be at least to the consented the conversation of the conversation to her father was not the considered in the course of the country to her father was not the course of her father was not to the country to the consideration of her father was they were not the consideration of the consideration of his consequence of her father was not the considerable the consent of the country, and the convinced the considerable of the particulars of the party who had not the considered to her father was to her father was not to the consideration of his friend the connection of the consideration of his friend which she had not the conversation which she was a servant to her father was a secrecy of her father was not to the consideration of her father was not to the considerable than the conversation of her father was to the course of the course of \n",
"--- END SAMPLE ---\n",
"Epoch 41: loss = 1.0563375128676062, acc = 0.668681263923645, time = 9.185505867004395\n",
"Epoch 42: loss = 1.0548378817089226, acc = 0.66886305809021, time = 9.065644025802612\n",
"Epoch 43: loss = 1.0549123445930688, acc = 0.668874979019165, time = 8.848103046417236\n",
"Epoch 44: loss = 1.053537661290687, acc = 0.6697467565536499, time = 9.16455888748169\n",
"Epoch 45: loss = 1.0536101497709751, acc = 0.6690236330032349, time = 9.335762739181519\n",
"Epoch 46: loss = 1.0533577066076838, acc = 0.668771505355835, time = 9.858723640441895\n",
"Epoch 47: loss = 1.0526509667220323, acc = 0.6693115234375, time = 9.947900533676147\n",
"Epoch 48: loss = 1.0518174053210279, acc = 0.6695331335067749, time = 10.127278089523315\n",
"Epoch 49: loss = 1.0518840384548125, acc = 0.669661819934845, time = 8.889836549758911\n",
"Epoch 50: loss = 1.0523284064686818, acc = 0.6691045761108398, time = 8.809900045394897\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a trith of the consideration of the profession of his friends in the countenance of her father and her father was not to the countenance of his friends, and the consideration of his attention of the point of her father was not to be any of the consequence of the propose to the propose to her father and her father was not to be at the proposal of the present and tried to her father was not to be so from the particularly assurances of his friends were to be so from the proportion of the partiality of his father and her father was a mother was the consequence of the concern of the proposals, and the consideration of the present and her father was to be any of the countence of the proper attention which her father was not to be so from the proposal of the consideration of the present and her father was not to her father was not to be so disappointment to her father was to her father was not to be so far from the particular and her father was a mind, and the consequence of his friend to her father and herself and her\n",
"--- END SAMPLE ---\n",
"Epoch 51: loss = 1.0504107154581859, acc = 0.66981440782547, time = 8.770620584487915\n",
"Epoch 52: loss = 1.0493162416893502, acc = 0.670282781124115, time = 8.795633554458618\n",
"Epoch 53: loss = 1.0501329276872717, acc = 0.6703809499740601, time = 8.972702741622925\n",
"Epoch 54: loss = 1.0497472052988799, acc = 0.67050701379776, time = 9.02010202407837\n",
"Epoch 55: loss = 1.0491683330872785, acc = 0.6708400845527649, time = 9.38261890411377\n",
"Epoch 56: loss = 1.0480997539732768, acc = 0.6707074046134949, time = 9.356086254119873\n",
"Epoch 57: loss = 1.0485532414977965, acc = 0.67071133852005, time = 9.576013326644897\n",
"Epoch 58: loss = 1.0488160529538342, acc = 0.67011958360672, time = 9.519990921020508\n",
"Epoch 59: loss = 1.0482540344414504, acc = 0.67094886302948, time = 9.037782907485962\n",
"Epoch 60: loss = 1.0487410722543364, acc = 0.670623779296875, time = 9.295721292495728\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a think of her father had been to the contrasted to the party with the proposal of the consentment of the letter to the particular to be sure, that he was not to be so far and the conviction of her father was the consideration of the party with the particular respectable than the concerned to the proper throw the particular of the family was not to be a sort of her father was not to be the present and a proposalf of the particular to the present as they were to the proposals, and the considerable to the proper of the power to her father, “that he had been to the particular to the contempt to the consideration of her father was not to be a strong and aunt to the contents which he was not to be at least of the proceeded to the particular of the present person who had been to the particulars of his friends were to be something to the country of the lady for the contrary of the proposal of the particular to her friend was not to the consequence of her father was not to be and her father was not to be a sentiment of \n",
"--- END SAMPLE ---\n",
"Epoch 61: loss = 1.0473508998427703, acc = 0.671173095703125, time = 9.371883869171143\n",
"Epoch 62: loss = 1.0470172068023162, acc = 0.671341598033905, time = 10.25293755531311\n",
"Epoch 63: loss = 1.0479412778564121, acc = 0.6703809499740601, time = 9.460886001586914\n",
"Epoch 64: loss = 1.0472368960795195, acc = 0.6706224679946899, time = 9.603772163391113\n",
"Epoch 65: loss = 1.0472277916319992, acc = 0.670613169670105, time = 10.219521522521973\n",
"Epoch 66: loss = 1.047618417636208, acc = 0.67044597864151, time = 9.17666220664978\n",
"Epoch 67: loss = 1.047345179092625, acc = 0.6705959439277649, time = 8.793729782104492\n",
"Epoch 68: loss = 1.0466810103667818, acc = 0.6712049245834351, time = 8.928383827209473\n",
"Epoch 69: loss = 1.0456425077889278, acc = 0.67100989818573, time = 8.760246276855469\n",
"Epoch 70: loss = 1.046609628945589, acc = 0.6707843542098999, time = 9.663372993469238\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a tender of the contempt of the consequence of the concern of the consent of the consequence of her father was not to be a father was a fortnight to the contents to the lady was not to be any of the conversation of the concern to the country to the consequence of the contrived to the consequence of the conversation which was a family were to be a servant which her father was not to be a sense of the particular to the conversation was not to the considerable thread the consequence of the confidence to be a stronger of the conversation of the considerable threw and the consequence of the connections of the proprieties of the considerable than the considerable to the contrived her to the conversation to the conversation of the contempt of the connection of the conversation of the conversation to her sister was a strong the connections of the partial to the contrare of the country to the consequence of the country to the connection of his family and her father was not to be a strong the cousin her family was not to \n",
"--- END SAMPLE ---\n",
"Epoch 71: loss = 1.046252402112536, acc = 0.6710842251777649, time = 9.946503400802612\n",
"Epoch 72: loss = 1.045711340787618, acc = 0.67109614610672, time = 9.900417804718018\n",
"Epoch 73: loss = 1.045280704193789, acc = 0.671396017074585, time = 9.528156042098999\n",
"Epoch 74: loss = 1.0456186852053455, acc = 0.6714106202125549, time = 9.059415102005005\n",
"Epoch 75: loss = 1.0451182455796262, acc = 0.6711704730987549, time = 8.646764278411865\n",
"Epoch 76: loss = 1.0459808506395505, acc = 0.671090841293335, time = 9.598849773406982\n",
"Epoch 77: loss = 1.0464748034010762, acc = 0.6712208986282349, time = 10.364758968353271\n",
"Epoch 78: loss = 1.0450925151615038, acc = 0.6711240410804749, time = 10.628720760345459\n",
"Epoch 79: loss = 1.0456032077579394, acc = 0.67142254114151, time = 13.10185694694519\n",
"Epoch 80: loss = 1.0454414758993231, acc = 0.670928955078125, time = 11.818487882614136\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a tolerable aunt to her father and angry to her father was not the consideration of the proper from her family was not the proper to her father was not to the present day at the same for her father and her family was not the propretty of the proper to her father was not the conversation was not to be a servant to her father was not to be a sisters were to think it was to the present as they were to the present particular to the proper than the same time to the conviction of her family was not to be attended to her family of the proper of the consent of her father was not the present and real person who was not to be attended to her father was not to the present of the preference of the present design of her family was a few moments were all the present of the letter was not to be a few manner of the present party of his respects of his father was to be so much as to the present delightful present particular and her father was not to be the other and aunt and see her to the present conversation of his friend was \n",
"--- END SAMPLE ---\n",
"Epoch 81: loss = 1.044779784815467, acc = 0.6710377931594849, time = 10.534715175628662\n",
"Epoch 82: loss = 1.0463777339976768, acc = 0.6708613038063049, time = 10.213438034057617\n",
"Epoch 83: loss = 1.045021334744018, acc = 0.67138671875, time = 9.451223134994507\n",
"Epoch 84: loss = 1.044989198770212, acc = 0.6707803606987, time = 8.784337043762207\n",
"Epoch 85: loss = 1.045730360986098, acc = 0.6707034111022949, time = 9.061071157455444\n",
"Epoch 86: loss = 1.0455607817224835, acc = 0.6708201766014099, time = 9.225793600082397\n",
"Epoch 87: loss = 1.0465735224602015, acc = 0.6709104180335999, time = 9.299643993377686\n",
"Epoch 88: loss = 1.0460874752505966, acc = 0.670695424079895, time = 9.263065099716187\n",
"Epoch 89: loss = 1.0455269700159198, acc = 0.6707949638366699, time = 8.80411958694458\n",
"Epoch 90: loss = 1.0448743179440498, acc = 0.6712885499000549, time = 8.708807945251465\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a third awakened to her father was not the country the consequence of the particularly as the country to the present anxiety to be a most and second that her father was not the contrary of the proper than the conversation of her father was a street with the partiality of his friends and her father and her father was not the subject of the like the profession of the consideration of his father was not to be so far from the proper than they were to be asked her for the proposals of her sister, and the partice to her father was not to be so sure of her father was a few likely to be so far at the proper from the proper than the property of her father was not to be soon as they were to be something to her father was not to be any of the partiality of her father was not to be something to her father was not to be so far at light with the present admiration to the present party with the present answer to her father was not to be soon after the proper friends which he had been a sensibility of her father, “that he had b\n",
"--- END SAMPLE ---\n",
"Epoch 91: loss = 1.045806508835243, acc = 0.6709422469139099, time = 8.747465133666992\n",
"Epoch 92: loss = 1.046146957770638, acc = 0.6705813407897949, time = 8.586632251739502\n",
"Epoch 93: loss = 1.045853360839512, acc = 0.6708002686500549, time = 8.834828615188599\n",
"Epoch 94: loss = 1.0464469630109228, acc = 0.671011209487915, time = 8.80323076248169\n",
"Epoch 95: loss = 1.0470489736484445, acc = 0.67046058177948, time = 8.981307029724121\n",
"Epoch 96: loss = 1.046500048721614, acc = 0.6710789203643799, time = 8.924864768981934\n",
"Epoch 97: loss = 1.0465796763158364, acc = 0.6704698801040649, time = 8.863451480865479\n",
"Epoch 98: loss = 1.0459896790916505, acc = 0.6705747246742249, time = 8.788755416870117\n",
"Epoch 99: loss = 1.0454081415158252, acc = 0.6708360910415649, time = 8.779781341552734\n",
"Epoch 100: loss = 1.0468210194097913, acc = 0.6703929305076599, time = 8.824681997299194\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a time to the conversation of the contented at the constantly and her father was not to the proper as the consideration of her father, “and then the consequence of her father was not to the present that he had not the conversation of her father was not to be a great deal of the proper friends were to be answered her farther of the convinced the consideration of the ladies of her father was not to be at the consideration of his family was a servants of his friend with the contrived at the conversation of her father was a sensibility to the proportioned the latter to her father and her father was a senticers of his father and her father was not to be at the last seen to her father was a great deal to the consequence of his friends and her father was not to be a strongly as the country to her father was not to be a street, and the cousin was not to be answered her from the particulars of her father was not to be at the considering the constantly and her father was not to be at the particular friend of her father wa\n",
"--- END SAMPLE ---\n"
]
}
],
"source": [
"rnn_l, rnn_a = train(rnn, 100)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1: loss = 2.3400829489464345, acc = 0.36644446849823, time = 12.70078420639038\n",
"Epoch 2: loss = 1.629060405427995, acc = 0.52647864818573, time = 12.820578813552856\n",
"Epoch 3: loss = 1.4179415803240694, acc = 0.5791347622871399, time = 13.161407232284546\n",
"Epoch 4: loss = 1.3088542977752893, acc = 0.6047084927558899, time = 12.97214388847351\n",
"Epoch 5: loss = 1.2328964867021726, acc = 0.62259441614151, time = 13.221066236495972\n",
"Epoch 6: loss = 1.1840219585144, acc = 0.6354848146438599, time = 14.366303205490112\n",
"Epoch 7: loss = 1.1489633742881857, acc = 0.64461749792099, time = 15.182956457138062\n",
"Epoch 8: loss = 1.1180110946297646, acc = 0.6531664133071899, time = 15.176042795181274\n",
"Epoch 9: loss = 1.0936999784215637, acc = 0.659174382686615, time = 13.86583423614502\n",
"Epoch 10: loss = 1.0731575020953366, acc = 0.664358377456665, time = 13.72323489189148\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thousand to be as the country of the parturance of her\n",
" consideration of her father was a most settled to her family was\n",
" the considence of the proper of the particular the considerance\n",
" which her father was a serious to her father was a servant\n",
" of the particular family with the contradiction of her family\n",
" were some to be a most sensible to the consideration of her\n",
" sisters was not to be as the proper of the consideration of\n",
" the constant of his considence of the proposal of the considence\n",
" and the consequence of her father was a most sisters and\n",
" she was not to be as the compliments of the concern of the concern\n",
" to the probably consideration of the consideration of the\n",
" silent and the contrary of her family was now as the consideration\n",
" the consequence of the concern of the conversation of his father\n",
" and the composure of the pain to her father was a strong\n",
" the conversation of the probability of the particulars of the\n",
" streakfast c\n",
"--- END SAMPLE ---\n",
"Epoch 11: loss = 1.0540494790867618, acc = 0.6689280867576599, time = 13.671772480010986\n",
"Epoch 12: loss = 1.0381876602768898, acc = 0.6735667586326599, time = 13.21381425857544\n",
"Epoch 13: loss = 1.025384278886992, acc = 0.6763597726821899, time = 13.845752716064453\n",
"Epoch 14: loss = 1.0125213289714379, acc = 0.6799847483634949, time = 13.280500888824463\n",
"Epoch 15: loss = 1.0017925562418026, acc = 0.6827565431594849, time = 14.258113384246826\n",
"Epoch 16: loss = 0.9901827828067801, acc = 0.6863071918487549, time = 13.830030679702759\n",
"Epoch 17: loss = 0.9809270240366459, acc = 0.6886106133460999, time = 14.063064098358154\n",
"Epoch 18: loss = 0.9726081833891247, acc = 0.690952479839325, time = 14.029831171035767\n",
"Epoch 19: loss = 0.9646438313243182, acc = 0.69266277551651, time = 14.102327823638916\n",
"Epoch 20: loss = 0.957042579093705, acc = 0.695267379283905, time = 14.810657978057861\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thind of the whole consequence of the same time to\n",
" herself to the consent to her father with the consequence of the\n",
" subject of the contents of the parting of the party were\n",
" seeing her from the country to the conversation which her\n",
" consequence was now as the country with her father, and the country\n",
" to the consequence of her family, and the consequence of her\n",
" father was at least to be at the conversation which her father\n",
" could not be so far as the constant conversation was a friend of\n",
" the proposal of her father’s attention to her face, and the\n",
" same time with the rest of the conversation of the subject, and\n",
" affection to the same time the great dear of the proper of her\n",
" family, and the country which her father was a stranged to her\n",
" sisters, and who had not been so much as the contrary to her\n",
" father’s respectable to her father’s reading to her friends,\n",
" and the countenance of her father was at least to be as to be\n",
" nothing to he\n",
"--- END SAMPLE ---\n",
"Epoch 21: loss = 0.9495948101191417, acc = 0.6970227956771851, time = 14.092252254486084\n",
"Epoch 22: loss = 0.9435259908761667, acc = 0.699105978012085, time = 13.821040391921997\n",
"Epoch 23: loss = 0.9374338966672835, acc = 0.7002497315406799, time = 13.93525218963623\n",
"Epoch 24: loss = 0.9299435934618764, acc = 0.7026035785675049, time = 13.990510940551758\n",
"Epoch 25: loss = 0.9248349269771058, acc = 0.7041811943054199, time = 14.759845495223999\n",
"Epoch 26: loss = 0.9189194928368797, acc = 0.705539882183075, time = 14.693823099136353\n",
"Epoch 27: loss = 0.9141885072964689, acc = 0.7066637277603149, time = 15.346817016601562\n",
"Epoch 28: loss = 0.9085257571676503, acc = 0.7084218263626099, time = 15.879383325576782\n",
"Epoch 29: loss = 0.9043973237276077, acc = 0.70950847864151, time = 15.923829555511475\n",
"Epoch 30: loss = 0.9008651597668296, acc = 0.71075838804245, time = 14.63273286819458\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thount of his father and a sister of her father and attention\n",
" to her father and consent to her father and consent and her\n",
" conversation with her father and consent of her father and\n",
" consequence of her family, and the concern of her hand happened to\n",
" have her family who had been so manner of her family. He had been\n",
" absolutely attention to her happiness which her family was at\n",
" her husband and her family who had been so manner of her\n",
" cousin with her father, and had her father was a short of her\n",
" cousin that he had been a man who had been so many of her\n",
" consequence, and when he had a short conversation which her\n",
" conversation was a story of her family, and he had not been\n",
" attention to her father and attention of her father and attention\n",
" to her father who had been so many of her family when he\n",
" had never been attenting her from her father and attention\n",
" to her father who had been so many of her father and attention\n",
" to her family whi\n",
"--- END SAMPLE ---\n",
"Epoch 31: loss = 0.8947359559976537, acc = 0.712784469127655, time = 14.638426303863525\n",
"Epoch 32: loss = 0.890539943524029, acc = 0.7137491106987, time = 14.489845275878906\n",
"Epoch 33: loss = 0.8871429836296517, acc = 0.714547872543335, time = 14.87949252128601\n",
"Epoch 34: loss = 0.8831362815006919, acc = 0.71592116355896, time = 14.511050462722778\n",
"Epoch 35: loss = 0.8792315980662471, acc = 0.7168751955032349, time = 14.613404750823975\n",
"Epoch 36: loss = 0.8753369461906992, acc = 0.7179645299911499, time = 14.776345491409302\n",
"Epoch 37: loss = 0.8719382371915423, acc = 0.7186465263366699, time = 14.679386854171753\n",
"Epoch 38: loss = 0.8693755413203136, acc = 0.71923828125, time = 14.533149719238281\n",
"Epoch 39: loss = 0.8651178163354811, acc = 0.720876932144165, time = 14.70665431022644\n",
"Epoch 40: loss = 0.8628074630447056, acc = 0.72189861536026, time = 14.880399465560913\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thousand a very good ball in the words are not to\n",
" leave the match of his favour, and the contrary with the world,\n",
" and the contracted so service of manner and consequence of the\n",
" strength of the consequence of the connections of the world. I\n",
" was not the concern of the words were to be able to be afraid\n",
" of his father’s sisters. I am sure I have not the contempt of\n",
" the world to be able to be able to be so far as to be a few\n",
" stranger and consent of the rest of the present party to his\n",
" consenting to the particular of the whole party. I will not think\n",
" of his friend and the consequence of the world at the world to\n",
" the pretty whole of the whole of the present party to be so fortunately\n",
" asked to make her father and consenting to the world. I have not\n",
" married in the world to be so soon as they were all the consent\n",
" of the words were always see the word of the party were\n",
" anything of the words and her sister’s letter.”\n",
"\n",
" “I am sure I do\n",
"--- END SAMPLE ---\n",
"Epoch 41: loss = 0.8597702865043412, acc = 0.7221454381942749, time = 14.259485483169556\n",
"Epoch 42: loss = 0.8567822619300821, acc = 0.72422194480896, time = 14.507115364074707\n",
"Epoch 43: loss = 0.8543356953431731, acc = 0.7241330742835999, time = 14.42507266998291\n",
"Epoch 44: loss = 0.8506322344360144, acc = 0.72501140832901, time = 14.448314905166626\n",
"Epoch 45: loss = 0.847841969974663, acc = 0.7253590822219849, time = 13.763115167617798\n",
"Epoch 46: loss = 0.8452069918098657, acc = 0.7263316512107849, time = 14.277358055114746\n",
"Epoch 47: loss = 0.8431890574486359, acc = 0.7269459962844849, time = 15.654972791671753\n",
"Epoch 48: loss = 0.8400710066375525, acc = 0.72798752784729, time = 15.167606830596924\n",
"Epoch 49: loss = 0.8365018769450809, acc = 0.7292600274085999, time = 15.02816891670227\n",
"Epoch 50: loss = 0.8342784924999528, acc = 0.730032205581665, time = 14.205198764801025\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a true to be sure, and the latter was all adacted to\n",
" the library of her family in the world who had been at all\n",
" addressed the distance of her father and adder. Her father was\n",
" all to be discovered to be a short survivor of her family. The\n",
" subject was not to be an air of an affection to his friend.\n",
"\n",
" “I am not to be settled the greatest considering my family, and\n",
" as to the rest of the day of the liversion of his father, and\n",
" as to the park of his family. I was not to be as to be a strong\n",
" manners. I cannot see how happy that he has not the comfortable\n",
" of the horror, and the consequent concern of the words where the\n",
" subject was not so much as to think it in the world at all, and\n",
" are not to be a strong attachment. I have not the concern of the\n",
" distress of the man of the consequence of the world.”\n",
"\n",
" “I have not any such a scheme, and were always so far as to think\n",
" to the consequence of the word.”\n",
"\n",
" “I am sure is not to be sure, and t\n",
"--- END SAMPLE ---\n",
"Epoch 51: loss = 0.8331432201616142, acc = 0.7302113771438599, time = 13.89641284942627\n",
"Epoch 52: loss = 0.8305644995492437, acc = 0.731033980846405, time = 13.973014831542969\n",
"Epoch 53: loss = 0.8292578977087269, acc = 0.7316602468490601, time = 13.90748381614685\n",
"Epoch 54: loss = 0.8275464225722395, acc = 0.7315753698348999, time = 14.458658933639526\n",
"Epoch 55: loss = 0.8252928682967372, acc = 0.732233464717865, time = 14.725374698638916\n",
"Epoch 56: loss = 0.8225873554854289, acc = 0.733235239982605, time = 14.771684169769287\n",
"Epoch 57: loss = 0.8202730825413829, acc = 0.73423171043396, time = 15.158368587493896\n",
"Epoch 58: loss = 0.8193883738763954, acc = 0.73415607213974, time = 15.382778882980347\n",
"Epoch 59: loss = 0.8177239170864873, acc = 0.735163152217865, time = 14.75264286994934\n",
"Epoch 60: loss = 0.8144053638629292, acc = 0.73595130443573, time = 13.265102863311768\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thousand pounds,” said her father, “I am not one of the\n",
" disappointment of his father’s attention. I do not know what\n",
" must be a most accept of the present consequence of any\n",
" of the world of the conferere of the room. In the great\n",
" of the house which I am sure I shall not be able to see her\n",
" and say. I would not have been the consequence of the\n",
" subject.”\n",
"\n",
" “I am not to be sure,” said he, “that is not a great\n",
" consent of the present consequence. I am sure I had not any\n",
" anxious to be sure there. I am sure I shall be aware that he\n",
" should be a self-consequence of the country.”\n",
"\n",
" “I do not know what I should be a short silly and come\n",
" and more father to be able to receive him to be an angely. It\n",
" was not to be as to be sure, and I am sure I had not been\n",
" married to the present window, and the consequence of the\n",
" same time intended to be a great deal of marriage with her. I\n",
" am sure I was not to be a short consequence.”\n",
"\n",
" “I am \n",
"--- END SAMPLE ---\n",
"Epoch 61: loss = 0.814129137960465, acc = 0.73609459400177, time = 14.640561580657959\n",
"Epoch 62: loss = 0.8107849545776844, acc = 0.7370420098304749, time = 14.697513818740845\n",
"Epoch 63: loss = 0.8103177409781062, acc = 0.7366399765014648, time = 13.848447322845459\n",
"Epoch 64: loss = 0.8075374612665694, acc = 0.737895131111145, time = 13.604378938674927\n",
"Epoch 65: loss = 0.8071171733672204, acc = 0.7381870746612549, time = 14.654176950454712\n",
"Epoch 66: loss = 0.8048917204141617, acc = 0.73841792345047, time = 17.002081155776978\n",
"Epoch 67: loss = 0.8037487229575282, acc = 0.73880535364151, time = 14.95551085472107\n",
"Epoch 68: loss = 0.8025431153566941, acc = 0.73907470703125, time = 13.589770555496216\n",
"Epoch 69: loss = 0.801050228431173, acc = 0.7395404577255249, time = 13.167396783828735\n",
"Epoch 70: loss = 0.7983165499956711, acc = 0.740290105342865, time = 13.847847700119019\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a turn of a couriging for her father and moments, and the\n",
" distance was all that they were not to be able to say to her sister\n",
" who was a servant before they were all to be attriculed to her and\n",
" that her family was not all the other day at the same time as might\n",
" be a sensed consequence of her family, and who had been\n",
" more than one of the housekeeper, and said they were able to be\n",
" soon after the compliment of her family. Come the most\n",
" park of an agreement to her sister’s sisters. It was not to be\n",
" as much as they were all the concern of the house, the confirmed\n",
" of the lady’s concern and consequence of his family, and the\n",
" consequence of the whole party were all the consequence of the\n",
" morning to be able to see her again of him. He was not the most\n",
" consequent and fortune, and was as far from a fortnight. It was\n",
" not to be something to be so far from so much for her again.”\n",
"\n",
" “I have not the consented of gratitude than the first plan?”\n",
"\n",
" \n",
"--- END SAMPLE ---\n",
"Epoch 71: loss = 0.7971340456734533, acc = 0.741054356098175, time = 13.633200883865356\n",
"Epoch 72: loss = 0.7947390369423057, acc = 0.74151611328125, time = 13.194554805755615\n",
"Epoch 73: loss = 0.7957480243690636, acc = 0.7412335276603699, time = 13.189621210098267\n",
"Epoch 74: loss = 0.7926409074469752, acc = 0.7421808838844299, time = 13.461417198181152\n",
"Epoch 75: loss = 0.7925127202078052, acc = 0.74174964427948, time = 14.368059396743774\n",
"Epoch 76: loss = 0.7916342536716358, acc = 0.7420880198478699, time = 13.800390720367432\n",
"Epoch 77: loss = 0.7884884701798791, acc = 0.7428045272827148, time = 13.766549825668335\n",
"Epoch 78: loss = 0.7881428864987, acc = 0.7435223460197449, time = 14.208887815475464\n",
"Epoch 79: loss = 0.7873527514545814, acc = 0.74357670545578, time = 14.409582614898682\n",
"Epoch 80: loss = 0.7854108786129433, acc = 0.743896484375, time = 14.948366641998291\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a truth of his coming to Longbourn, and among the\n",
" advantage of the door, and then you would not be as my opinion\n",
" of domesticy of marriage in the word.”\n",
"\n",
" “I am sure I would not have a very single among his friend and\n",
" young lady who was not to be a very possible conversation. It is a\n",
" strong attention of his country. I am sure I have not any\n",
" attentive and advantage of the housekeeper, I am sure. It is not\n",
" aware that they were at all consequently to be attempted to\n",
" marry what I have been my reproach. I am sure I would not\n",
" something to be able to do with any of the word, and who was\n",
" not the consequence of the country.”\n",
"\n",
" “I am sure I would not have been at all come to Bingley.”\n",
"\n",
" “I am sure you will not think of me, there is nothing of the\n",
" dinanest of the world.”\n",
"\n",
" “I have not the compliment of his cousin, and then I am afraid of\n",
" your sister and consequence, I am sure you will not be as\n",
" possible to think of my own conduct of \n",
"--- END SAMPLE ---\n",
"Epoch 81: loss = 0.7837861454033334, acc = 0.7447509765625, time = 14.514817476272583\n",
"Epoch 82: loss = 0.782551902629759, acc = 0.7450137138366699, time = 14.864444255828857\n",
"Epoch 83: loss = 0.782546048902947, acc = 0.7450535297393799, time = 15.01508903503418\n",
"Epoch 84: loss = 0.780756262657435, acc = 0.745539128780365, time = 14.402031660079956\n",
"Epoch 85: loss = 0.781246478466884, acc = 0.7453441023826599, time = 14.49675464630127\n",
"Epoch 86: loss = 0.7796896681513475, acc = 0.7459729909896851, time = 14.500328779220581\n",
"Epoch 87: loss = 0.7775970903103766, acc = 0.7468447685241699, time = 15.805309534072876\n",
"Epoch 88: loss = 0.7772179600661215, acc = 0.746231734752655, time = 14.629230499267578\n",
"Epoch 89: loss = 0.7764934643131235, acc = 0.7468129396438599, time = 14.057865381240845\n",
"Epoch 90: loss = 0.7740530172443908, acc = 0.7474949359893799, time = 14.088515520095825\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thing to be a very decent and consequence.”\n",
"\n",
" “I do not know what I have nothing to do all the words were\n",
" as far as they do not make yourself and the consequence of my\n",
" sisters.”\n",
"\n",
" “I have not your manners says what I have been at all are the\n",
" stranger of the family.”\n",
"\n",
" “I am not afraid you are such a proveretion of his cousin, and that\n",
" they were at all the consequence of my sisters, and what are you\n",
" desirable in the world of the world.”\n",
"\n",
" “I am sure you will not be able to receive your sister, and the\n",
" letters will be at all more transfords to anything. I am afraid of my\n",
" friend whom I shall have a great deal of a little more than her\n",
" mother. It is of the world, and work of some time, and therefore\n",
" your sister was so far as to be a most pleasing party. It is a\n",
" great deal to him, and then I have now been at all there will\n",
" be as for his friend.”\n",
"\n",
" “I have nothing to be able to see the probable man. I would not\n",
" take the \n",
"--- END SAMPLE ---\n",
"Epoch 91: loss = 0.7756331292507441, acc = 0.747226893901825, time = 14.569879293441772\n",
"Epoch 92: loss = 0.7721328738590946, acc = 0.7482167482376099, time = 14.172821044921875\n",
"Epoch 93: loss = 0.7714799292709517, acc = 0.748881459236145, time = 13.593773126602173\n",
"Epoch 94: loss = 0.7697360813617706, acc = 0.7490526437759399, time = 13.468825578689575\n",
"Epoch 95: loss = 0.7705861809461013, acc = 0.74861079454422, time = 14.09052038192749\n",
"Epoch 96: loss = 0.7695520312889762, acc = 0.7490049004554749, time = 13.63641095161438\n",
"Epoch 97: loss = 0.7683389572345692, acc = 0.749430775642395, time = 13.512815475463867\n",
"Epoch 98: loss = 0.7663010630918585, acc = 0.749883234500885, time = 13.384782314300537\n",
"Epoch 99: loss = 0.7667334756773451, acc = 0.7499018311500549, time = 13.639140605926514\n",
"Epoch 100: loss = 0.7648766978603342, acc = 0.7504590749740601, time = 13.820388555526733\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a true to be a doubt, I am sure I can be no very little\n",
" addressed with your father.”\n",
"\n",
" “I am sure I have nothing to do in the liberty of delight. It is not\n",
" attentively to be a very desirous of thinkins of your own family! I\n",
" do not know what I like the particulars of the first place?”\n",
"\n",
" “I am sure you will not have been so far as to be as much as\n",
" they are not so well know to me. I am not afraid of his\n",
" designing manner. I am sure I have not the consolation of the\n",
" distress of the family, that I am afraid he has little to be\n",
" suspected them to be done to her face, and want to be at all\n",
" adarted.”\n",
"\n",
" “I am sure you could not have the country at all things that he\n",
" should be able to receive them to see them.”\n",
"\n",
" “I have been the meating of your ladyship’s conduct,” said Mr.\n",
" Collins, “I have not the compliment of her ladyship’s connections.”\n",
"\n",
" “I am sure I have not think of my lovely at all.”\n",
"\n",
" “I do not know where I have not the least\n",
"--- END SAMPLE ---\n"
]
}
],
"source": [
"lstm_l, lstm_a = train(lstm, 100)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1: loss = 1.8846620049165643, acc = 0.46865314245224, time = 12.080411195755005\n",
"Epoch 2: loss = 1.3143164055502934, acc = 0.59951251745224, time = 12.167237520217896\n",
"Epoch 3: loss = 1.1869014109606328, acc = 0.63142329454422, time = 12.423434257507324\n",
"Epoch 4: loss = 1.1235383927174236, acc = 0.647775411605835, time = 12.877832174301147\n",
"Epoch 5: loss = 1.0856895642760007, acc = 0.65715092420578, time = 12.58285641670227\n",
"Epoch 6: loss = 1.059025726078645, acc = 0.66500324010849, time = 13.135128736495972\n",
"Epoch 7: loss = 1.0388311367967855, acc = 0.6702840924263, time = 12.67487120628357\n",
"Epoch 8: loss = 1.023623021238524, acc = 0.67425936460495, time = 13.173827409744263\n",
"Epoch 9: loss = 1.0093817707637083, acc = 0.6787030100822449, time = 14.850155353546143\n",
"Epoch 10: loss = 0.9968198944369088, acc = 0.68218994140625, time = 14.336584091186523\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a treat of the same time to her father, and the continued\n",
" to her father was not to be so far from the whole of the strangers\n",
" which her father was a great deal of her father and affection of\n",
" the world when they were the letter to her father had been the\n",
" consequence of the whole party which her father was not\n",
" disposition to her father was the father was not to be at least\n",
" with the consent to her father was at all the consequence of her\n",
" father was not the ladies which had not been some other with\n",
" her father was at the world of his father was an answered to her\n",
" father and her father, and the letter was not to be an expectation of\n",
" the word of her father was not to the letter was not to be so\n",
" conduct of her father was at an expression of her father, and\n",
" the consequence of his sisters were to be a strangers which her\n",
" consideration which her father was a very distress of her\n",
" father, and then the letter was not to be an expectation of his\n",
"--- END SAMPLE ---\n",
"Epoch 11: loss = 0.9884034719156183, acc = 0.6845371723175049, time = 13.158560752868652\n",
"Epoch 12: loss = 0.9785933157672053, acc = 0.6874973773956299, time = 13.384447574615479\n",
"Epoch 13: loss = 0.9710231742457204, acc = 0.6898432374000549, time = 16.135111331939697\n",
"Epoch 14: loss = 0.9646275631435539, acc = 0.690973699092865, time = 13.833107948303223\n",
"Epoch 15: loss = 0.9581496848360352, acc = 0.69300776720047, time = 14.758883237838745\n",
"Epoch 16: loss = 0.9524572601784831, acc = 0.69469153881073, time = 14.75863528251648\n",
"Epoch 17: loss = 0.9483165817092294, acc = 0.695622980594635, time = 13.090101957321167\n",
"Epoch 18: loss = 0.945021231699249, acc = 0.6964642405509949, time = 13.184027433395386\n",
"Epoch 19: loss = 0.9380158524474372, acc = 0.6986269950866699, time = 12.561939477920532\n",
"Epoch 20: loss = 0.9337173013583474, acc = 0.6999087333679199, time = 12.18635606765747\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thing to be so far from the words of the subject. I have\n",
" not done to her family and answer. I am sure you will be more to be\n",
" done to be surprised. I have not the prospect of the promise of my\n",
" consent. I have not the proposal of the first proposals of his\n",
" connections to her father and depending to her family. I am sure you\n",
" were always likewise from the same time to be a present in the\n",
" consequence of the subject. I have not the proposal of the\n",
" consequence of the proposals. There is a great deal of the same\n",
" consequence of the first trut. I am sure you will not be soon as\n",
" many more than the consideration in the word. I am sure you will not\n",
" be so farther to be a short interesting to her father. It was the\n",
" consideration of the subject. I have been most transider, and the\n",
" consequence of the present particulars at the wish of having a few\n",
" design of the room. I have not been so far from the same time to\n",
" desire how aunt and her father is\n",
"--- END SAMPLE ---\n",
"Epoch 21: loss = 0.9305008656304815, acc = 0.7010458111763, time = 12.179292440414429\n",
"Epoch 22: loss = 0.9274523483346337, acc = 0.7018154263496399, time = 12.555766820907593\n",
"Epoch 23: loss = 0.9251140866266645, acc = 0.7019574046134949, time = 12.432402849197388\n",
"Epoch 24: loss = 0.9223908501798692, acc = 0.7031528949737549, time = 12.506385803222656\n",
"Epoch 25: loss = 0.9202107968537704, acc = 0.70292067527771, time = 12.547194004058838\n",
"Epoch 26: loss = 0.914509752360375, acc = 0.70542311668396, time = 13.006872177124023\n",
"Epoch 27: loss = 0.9143935211974642, acc = 0.705575704574585, time = 13.19467306137085\n",
"Epoch 28: loss = 0.9119723345274511, acc = 0.7058994770050049, time = 12.890261173248291\n",
"Epoch 29: loss = 0.910072424651488, acc = 0.7065310478210449, time = 12.67060112953186\n",
"Epoch 30: loss = 0.9087438533163589, acc = 0.706960916519165, time = 14.177953958511353\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a time of the parting with the word which had been at the\n",
" same time to be a sense of his family and admiration, and the\n",
" contents of the rooms were to be a little attention to her friend.\n",
"\n",
" “I am sure I should not be able to be a servant in the course of my\n",
" father and distressed and considerable. I hope you will not be so\n",
" seen him in the word in the words and make the man of the person.”\n",
"\n",
" “I am sure I should be a very great deal of consequent and distress,\n",
" and therefore, that the consciousness of the first consideration of\n",
" the countenance with the words which must be a good of the subject. It\n",
" was not to be a great deal of any of the world. It is not to be\n",
" distressed to be assured him to be a compliment to the fortune of\n",
" his consequence of his friend with the rest of the course. It is not\n",
" more than the consciention of the subject. I am sure you must have\n",
" had been a very great lady who has not all the greatest politeness\n",
" which I had \n",
"--- END SAMPLE ---\n",
"Epoch 31: loss = 0.9060043117598348, acc = 0.7072581648826599, time = 13.774552583694458\n",
"Epoch 32: loss = 0.9045409105070259, acc = 0.7078486084938049, time = 13.682372808456421\n",
"Epoch 33: loss = 0.9025736507838187, acc = 0.7086314558982849, time = 12.42667531967163\n",
"Epoch 34: loss = 0.9014219908934572, acc = 0.7090733051300049, time = 12.574653625488281\n",
"Epoch 35: loss = 0.8994834261096042, acc = 0.709040105342865, time = 12.543891906738281\n",
"Epoch 36: loss = 0.8976440820033136, acc = 0.7097592949867249, time = 12.865176439285278\n",
"Epoch 37: loss = 0.89758359964775, acc = 0.7095151543617249, time = 12.52101755142212\n",
"Epoch 38: loss = 0.8944167914273946, acc = 0.7113156914710999, time = 12.493580341339111\n",
"Epoch 39: loss = 0.8955651989773564, acc = 0.7103033065795898, time = 12.261144638061523\n",
"Epoch 40: loss = 0.8923537710114665, acc = 0.7113926410675049, time = 12.48277497291565\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a triumph to be a second time, and the consideration of\n",
" the rooms of the court of his father was a very great proper\n",
" than the contents of the constant parties, and then she was\n",
" soon after the consequence of the consequence, and the\n",
" ladies were to be of the same time to be a great deal of\n",
" discovery, and the consequence of the first partiality which\n",
" have been a very good humour to her friends at the same time,\n",
" and the proposal of the room which had been the consequence of\n",
" the room, and the contempt of the first person who had been\n",
" in the world in the contrary, and the country which her father\n",
" was not to be a servant of the country. He had been always\n",
" assured her to the little time to be at her the proper to the\n",
" family of her father who had not the proposal of the profession\n",
" to her friend the consequence of the proportion of his friend.\n",
" He was a great deal of repeating the contents of the room. Her\n",
" consequence of the family wh\n",
"--- END SAMPLE ---\n",
"Epoch 41: loss = 0.8918759864957436, acc = 0.711618185043335, time = 12.771296739578247\n",
"Epoch 42: loss = 0.8926098806702573, acc = 0.71112060546875, time = 12.472137928009033\n",
"Epoch 43: loss = 0.8917952762997668, acc = 0.711090087890625, time = 12.459559679031372\n",
"Epoch 44: loss = 0.8885293701744598, acc = 0.712106466293335, time = 12.447072505950928\n",
"Epoch 45: loss = 0.8893645303728788, acc = 0.712346613407135, time = 12.121548891067505\n",
"Epoch 46: loss = 0.8891933997688086, acc = 0.7119777798652649, time = 12.190182447433472\n",
"Epoch 47: loss = 0.8890023748187915, acc = 0.71184241771698, time = 11.893077850341797\n",
"Epoch 48: loss = 0.8860619176665078, acc = 0.7131360769271851, time = 11.745479822158813\n",
"Epoch 49: loss = 0.8863906512117904, acc = 0.7130100727081299, time = 12.113723516464233\n",
"Epoch 50: loss = 0.8859490282509638, acc = 0.7130551934242249, time = 12.142202854156494\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a trouble of concern for her family, and the contentment of the\n",
" difference which had been so far from the first of the rest of the\n",
" conversation with her family were to be seen the country and her\n",
" than she had been so far from the subject. It was to be soon after\n",
" some of the words of her ladyship to her aunt as they were all the\n",
" conversation with his companion of her father’s consent\n",
" of the rest of the rest of her family. She had not been a very\n",
" feelings that he had not been so far from the sake of her friends and\n",
" aunt, and the consequence of the first party was therefore at all\n",
" attending them all the contrary. He was not to be a serious at\n",
" last woman. He had not been at last recollection to her father’s\n",
" contrary, and the contraritation of the course of her father had been\n",
" uneasy. Her father had been so far as to see him to be a second\n",
" than the contents of the room. Her father was not so far as soon as\n",
" they were not to be a servan\n",
"--- END SAMPLE ---\n",
"Epoch 51: loss = 0.8846572712063789, acc = 0.71378093957901, time = 12.010286092758179\n",
"Epoch 52: loss = 0.8836780585672545, acc = 0.71401047706604, time = 11.938862085342407\n",
"Epoch 53: loss = 0.8837982777344144, acc = 0.7137411236763, time = 11.691951513290405\n",
"Epoch 54: loss = 0.8823441108283789, acc = 0.714127242565155, time = 12.539905071258545\n",
"Epoch 55: loss = 0.8810153156518936, acc = 0.7148822546005249, time = 14.533393621444702\n",
"Epoch 56: loss = 0.8809544499153676, acc = 0.71509850025177, time = 12.254330396652222\n",
"Epoch 57: loss = 0.8818147485346898, acc = 0.714407205581665, time = 12.013652086257935\n",
"Epoch 58: loss = 0.8807673708576224, acc = 0.714432418346405, time = 12.109204292297363\n",
"Epoch 59: loss = 0.8819928153053574, acc = 0.713796854019165, time = 12.37199330329895\n",
"Epoch 60: loss = 0.8799083467734896, acc = 0.714630126953125, time = 12.450881004333496\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a told out of the rest of the room, “that he has been all the\n",
" present proposals and considering him to be asked him the\n",
" present profess that he had not been a very far from the course.\n",
" The contrary, the lady who had been so far as to be a consistence of\n",
" the comfort to her father’s design, and the consideration of her\n",
" family, and was at least to be an inclination to the last of the\n",
" family and fortune to her friend had been at all the contrary. It\n",
" was to be a second family to her friend with a few days and her\n",
" design, and the ladies were to be so far from the first of the family\n",
" and as we should not be a little fair from the party. When they were\n",
" not a little friend that he had been at least to be a great deal to\n",
" be a good address. The considering the family did not see her to\n",
" be a serious content of the family. It was not the pleasure of\n",
" having his approaching himself with the room to be a stroke than the\n",
" particular of the room. H\n",
"--- END SAMPLE ---\n",
"Epoch 61: loss = 0.8792337180803651, acc = 0.7152391672134399, time = 11.978406190872192\n",
"Epoch 62: loss = 0.8796949469200943, acc = 0.714608907699585, time = 11.785520076751709\n",
"Epoch 63: loss = 0.8779009253434513, acc = 0.7153241038322449, time = 12.934688091278076\n",
"Epoch 64: loss = 0.8800002553540728, acc = 0.71457839012146, time = 12.381029605865479\n",
"Epoch 65: loss = 0.8781855971268986, acc = 0.7151967287063599, time = 12.595285892486572\n",
"Epoch 66: loss = 0.8800142869029356, acc = 0.7145054340362549, time = 12.383339166641235\n",
"Epoch 67: loss = 0.8794524237189604, acc = 0.7148358225822449, time = 12.319308280944824\n",
"Epoch 68: loss = 0.8805328942835331, acc = 0.71422278881073, time = 12.607990026473999\n",
"Epoch 69: loss = 0.8797972576449746, acc = 0.71478271484375, time = 12.914108753204346\n",
"Epoch 70: loss = 0.8796355510535447, acc = 0.7142108678817749, time = 12.13434648513794\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a trial to the proper design of any other partners, and who\n",
" were to be so very gracious as to make her from the sake of doing to\n",
" me to be a servant from the contrary, and the conduct of the\n",
" family would have been a great deal of the present personal\n",
" contempt of the world. He has been at all in the consequence\n",
" of his constant. The constant contrady of the present of the\n",
" family will be designed to do for her family. I hope there is nothing\n",
" to be so well to be a sensible of the feelings and her family. It\n",
" was too much for the prospect of the country.”\n",
"\n",
" “I am sure I should be able to see you at all, and the proposals were\n",
" at all fortune, and I would not be a sensible man as the consequence\n",
" of the proposals and consequence of her sister’s contrary. It is\n",
" not a little design of any of the present days of the sake of\n",
" its inducement. I have not been a servant for the proper of the\n",
" manners. He has been always so far from the present of th\n",
"--- END SAMPLE ---\n",
"Epoch 71: loss = 0.879230834543705, acc = 0.714695155620575, time = 12.284392595291138\n",
"Epoch 72: loss = 0.878175944575797, acc = 0.71510249376297, time = 12.32070279121399\n",
"Epoch 73: loss = 0.878177680561076, acc = 0.7152484655380249, time = 11.758561372756958\n",
"Epoch 74: loss = 0.876250156889791, acc = 0.71553635597229, time = 11.822288990020752\n",
"Epoch 75: loss = 0.87780910908528, acc = 0.7153201103210449, time = 11.602450370788574\n",
"Epoch 76: loss = 0.8778345419660859, acc = 0.7151516079902649, time = 11.776660919189453\n",
"Epoch 77: loss = 0.8788077920351339, acc = 0.7146022915840149, time = 11.858922481536865\n",
"Epoch 78: loss = 0.8781553066295126, acc = 0.7152643799781799, time = 12.51028299331665\n",
"Epoch 79: loss = 0.8779367292704789, acc = 0.7154726982116699, time = 13.260969161987305\n",
"Epoch 80: loss = 0.8780344627473665, acc = 0.7151807546615601, time = 11.39198899269104\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a thought to her friend Lydia. A smile of the first consequence\n",
" which the contents of the following way of the family was the\n",
" stranger which had been settled to her face, and the contrary which\n",
" Elizabeth was not to be attentively for her friend the contempt of\n",
" the words whom he was a great deal of disapprobation to her\n",
" family. It was not to be asked the contrary, and the contents of\n",
" the family were to be all the contrivance of her family which her\n",
" father was settled by his friend. Her father was not the pleasure of\n",
" seeing her to be so far from the work of the room. He was the great\n",
" difference of her father than she would be able to be able to\n",
" have been at least to see her a little and her family and her\n",
" father, and the consideration who had been so far from the subject\n",
" of her father was the late party. She was not to be so far from\n",
" the same time the consequence of her family when they were at least\n",
" to be a second time, and the pa\n",
"--- END SAMPLE ---\n",
"Epoch 81: loss = 0.8778121230071005, acc = 0.7149472832679749, time = 12.078064680099487\n",
"Epoch 82: loss = 0.8784534088943315, acc = 0.7150494456291199, time = 12.323145389556885\n",
"Epoch 83: loss = 0.877840188048456, acc = 0.7155443429946899, time = 13.054484367370605\n",
"Epoch 84: loss = 0.8780251877463382, acc = 0.714859664440155, time = 13.03411078453064\n",
"Epoch 85: loss = 0.880883910085844, acc = 0.7138592600822449, time = 12.53745698928833\n",
"Epoch 86: loss = 0.8784073385531488, acc = 0.71470707654953, time = 12.134407043457031\n",
"Epoch 87: loss = 0.8784699072332486, acc = 0.71482253074646, time = 12.33221435546875\n",
"Epoch 88: loss = 0.87909284412213, acc = 0.7145929932594299, time = 12.381581544876099\n",
"Epoch 89: loss = 0.878675629425308, acc = 0.71485435962677, time = 12.268603086471558\n",
"Epoch 90: loss = 0.8796066029564195, acc = 0.714888870716095, time = 12.490903377532959\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a tone of his friend, the contrartive of the first pleasure of\n",
" her sister, the contrary, and the contrast of the first part of\n",
" the family were the concern of her father, and the contrary\n",
" of the family were the present party which her father had\n",
" been the concertable of the family were to her father and\n",
" a family of her sisters. The contrary of the family were to her\n",
" friend to her feelings to her from the world, and was a very\n",
" farther than the possibility of her family. A very first servant\n",
" was the conversation which he had been able to be a second time\n",
" than any of the family of her family. A small surprise was to\n",
" see her to see her from the course of the family. He had\n",
" been the considerable of the favourable partiality of the whole\n",
" particulars, and the consideration was at least and affection for\n",
" her family. A short of hearing her affectionate sisters were\n",
" the contrary, and the consequence of the former of the family\n",
" were aft\n",
"--- END SAMPLE ---\n",
"Epoch 91: loss = 0.8809902280893015, acc = 0.713632345199585, time = 12.63519024848938\n",
"Epoch 92: loss = 0.876876562833786, acc = 0.7152948975563049, time = 12.231329202651978\n",
"Epoch 93: loss = 0.8795929437746173, acc = 0.7142665982246399, time = 12.361215591430664\n",
"Epoch 94: loss = 0.8805831455342148, acc = 0.714314341545105, time = 12.341085195541382\n",
"Epoch 95: loss = 0.8794919484011505, acc = 0.7151874303817749, time = 12.274136304855347\n",
"Epoch 96: loss = 0.8812334309129611, acc = 0.714163064956665, time = 12.319008588790894\n",
"Epoch 97: loss = 0.8817192821399026, acc = 0.7137278914451599, time = 12.360325813293457\n",
"Epoch 98: loss = 0.8800909373423328, acc = 0.714630126953125, time = 12.263676166534424\n",
"Epoch 99: loss = 0.8804560363616633, acc = 0.7145319581031799, time = 12.728366613388062\n",
"Epoch 100: loss = 0.8805143240353336, acc = 0.7146221995353699, time = 12.51049542427063\n",
"----- SAMPLE -----\n",
" Chapter 1\n",
"\n",
" It is a trees that he had not been so far as they were all the confirmed\n",
" of her father who had been so far from the room. He was then a strong\n",
" of the last wood of her father, and the contrivance of the family\n",
" of the family were to be supposed to be a word. Her father was\n",
" so far from the room where they were always paid her for the house of her\n",
" favourite from the consequence of the family which had been so far\n",
" from the fortune to be sensible to her from the family of her\n",
" family when the ladies were not more than a few days as to be a sense\n",
" from the family when the contrast of her favourite was to be at leisure to\n",
" hear the room. Her father had been so far from the family did not have\n",
" been a great deal of the constant confession of her family. A\n",
" subject was not really answered in the contraction of her favour. He\n",
" could not be a little expected to see her from the present politeness of\n",
" the family who was a most interesting to her friend the whol\n",
"--- END SAMPLE ---\n"
]
}
],
"source": [
"gru_l, gru_a = train(gru, 100)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Chapter 62\n",
"\n",
" “I am sure I should have been a great deal of deceive months are therefore\n",
" dislike as to be the gentleman’s concerns to my father, and I am not\n",
" long to be a great deal of dependent for the consequence of the\n",
" subject of the room. I am sure I should not be able to be a servan\n",
" from the first consideration of the first confidence of the same and\n",
" his family and friends—which I have been at the same time of his conscience\n",
" to me, therefore, to be a great deal of the family which had been\n",
" so far from the rest of the former. I have not been a good son of the\n",
" present proposals. I will not be a sensible confidence of his\n",
" father, and the consciousness of his consent and friends with him. He\n",
" has not the conversation with the room. He has been allowed to be the\n",
" conversation with the present person of the converse of the former.”\n",
"\n",
" “I do not know the sake of the great deal of things of marriage?”\n",
"\n",
" “I am sure,” said he, “that is to be so far from the first conversation in\n",
" the world of the room.”\n",
"\n",
" “I am sure you are very soon as the consequence of the first pleasant\n",
" manners mestianable to his friends with the same time to be a very\n",
" interesting three young man at all the conscience of the constermy of\n",
" the family of meeting your sister’s confidence of the world. They were\n",
" always got to her and me to be a serious in the country. He is a\n",
" long into the first partner which I have been so far from the world. It is\n",
" not to be a sense of delight in the country and her father and complete\n",
" of the family drevere. I will not be a proper deal from the rest of the\n",
" morning to his conscience of his connection in the country. He is a\n",
" servant for the conversing to the conscience of the first proposals, and\n",
" the consideration of the family is a servant for the family. I am\n",
" serious to be to be a strong interruption of the word of his friend. I\n",
" am sure I shall not be a serious family and amusement. But my dear\n",
" single,” said Elizabeth, “and I was not dead as to be so farther and\n",
" any of the concern of the family and compliment of my favourable\n",
" partner. I can attend to be so far from the respects to myself\n",
" of the world. The first of the fear of doing it with him to be the\n",
" sense of the first conversation with him to be the consequence of the\n",
" mother of the first degree of doing the whole of the first pleasure.”\n",
"\n",
" Elizabeth was not to be at any other sister, and the particular party were\n",
" the consequence of the family of the contrast of her family. Mrs.\n",
" Bennet was not to be at last the great pleasure of conversation with\n",
" her father and her father, and the rest of the former was not in the\n",
" family of discourse of her contrasting at her family. Mr. Darcy would not\n",
" help from the party in the word were to be a great deal of the family\n",
" would be a second danger of her father’s consideration. The family\n",
" were to be the conscience of her father and herself and her friend had\n",
" been so far as to the present day which she had not been so far from\n",
" the family with her sister’s resolving to be a sensible from the\n",
" first pleasant conversation with her family. She was not the case,\n",
" and the contrariety of the first proposal of her father, and the\n",
" contription of the first parties which had been so far as to be so far\n",
" from the first particular reply. Mr. Collins said she was a very present\n",
" admiration of her family and assurance to her address, and the particular\n",
" consequence of the family were to be a struck when they were to be\n",
" concerned for the following moment, and the contrast of her father\n",
" was the consequence of the family who had not been at all the great\n",
" present proper confusion, and the rest of the first particular reply\n",
" to her father’s friend her family which had been some offer of her\n",
" descent in the country. Her father was not to do it with her family. He\n",
" had not been so far from the room to be a great deal of the first\n",
" contempt of her father and her family. She was a great deal of the\n",
" same time at the great deal of the park, when the real continued\n",
" which he had been some of the room, and when the ladies were to have a\n",
" servant who had not been able to be at last the conversation with her\n",
" friend her friend with her friend the conversation with the house\n",
" of her family. Mr. Collins was the pleasure of seeing him to be\n",
" all the rest of the family who was not the great deal of her family\n",
" would be at last, and the contrarity of her father was a sense of\n",
" her family, and the contrary to her feelings which had been a\n",
" sense of the family were not a little advantage of her father’s\n",
" friends, and then the rest of the former was not to be a second\n",
" manner of her family, and the contempt of the favourite of the\n",
" family were always attended to her aunt with the first complacence of\n",
" her family. The letter was not the least pleasure of doing the consolation\n",
" of her family. Mr. Darcy was not at all the consideration of her family. The\n",
" subject was not the considerable particular from the subject which had\n",
" been so farther at least to be so far as to be so far from the party. Mr.\n",
" Collins was a very great dead of the first pleasure of discovery, and\n",
" the contrary, and the consequence of the family were all the conversation\n",
" of the family when they were all the conversation with her friend\n",
" with her family. As they were not to be soon afterwards to be\n",
" always perfectly answered. His father had not the pleasure of seeing\n",
" her father and depend upon the course of the room. Elizabeth was not\n",
" at any of the family who had been surprised to be so far from the\n",
" first particulars of his friends. The former was not to be so far as to\n",
" the same time to be a great deal of seeing her to see her from the\n",
" family of the library, and when the respect of her father, and the\n",
" contrary was the contrary to the library to her friend he had been\n",
" at all. The ladies were not the considerable of the subject of her\n",
" companion to her friend from the present performer whom he was the\n",
" distress of her father, who had been some time to be sure to be a\n",
" fortune to be surprised them in the course of the following woman,\n",
" and the contented of her father was a little expected for her friend when\n",
" the park of her father had been so far from the first point of doing the\n",
" conversation with him to be a serious at any other sister, and the\n",
" contrast of her father had been able to see her from the subject of\n",
" the first sentence of her conversation with her family in the\n",
" conversation with her family. She was not soon after the party when\n",
" the contraction of her father had been the consideration of his\n",
" father, and the contrary, and the rest of the first place was the\n",
" convenience of the subject of the first pleasant contempt of the\n",
" families of her family with her daughter, and the conversation was\n",
" in the conversation with the following Lazable partners, and who had\n",
" been so from the first convenience of the family which had been\n",
" always pleased with the rest of the family which had been some of\n",
" the first pleasure of the rest of the family who had been so far\n",
" from the fortune of the family did not help father and saying to the\n",
" distress of the family discovered to her from the particular of the\n",
" family which had been so far from the first point of her father had\n",
" been seen to her friend and her father had for the following man\n",
" of her father, and the contrary to her fame with the prospect of the\n",
" family who had been so far from the rest of the first partiality of\n",
" his friend. He was not the consideration of the first concern in the\n",
" contrant designs of her father, and the sentiment of her father\n",
" had been so far at his consequence of the hou\n"
]
}
],
"source": [
"print(sample(gru, 8192, ' Chapter 62'))"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"plt.plot(rnn_l, label='RNN')\n",
"plt.plot(lstm_l, label='LSTM')\n",
"plt.plot(gru_l, label='GRU')\n",
"plt.legend()\n",
"plt.xlabel('Training Epoch')\n",
"plt.ylabel('Loss')\n",
"plt.title('RNN Training Loss (width=256, depth=3, dropout=0.2)')\n",
"plt.tight_layout()\n",
"plt.savefig('train_loss.png')"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"plt.plot(rnn_a, label='RNN')\n",
"plt.plot(lstm_a, label='LSTM')\n",
"plt.plot(gru_a, label='GRU')\n",
"plt.legend()\n",
"plt.xlabel('Training Epoch')\n",
"plt.ylabel('Accuracy')\n",
"plt.title('RNN Training Accuracy (width=256, depth=3, dropout=0.2)')\n",
"plt.tight_layout()\n",
"plt.savefig('train_acc.png')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment