Cargue el modelo de RNN entrenado con la Biblia: https://github.com/lin99/NLPTM-2016/blob/gh-pages/4.Docs/grnn_best.tar
In [3]:
def next_word(word):
# Su código aquí
return ''
Explique claramente como es su estrategia. Pruebe la función con diferentes ejemplos. Discuta los resultados.
In [4]:
def hangman(word):
### Su código debe ir aquí
return ''
Explique claramente como es su estrategia. Pruebe la función con diferentes ejemplos. Discuta los resultados.
Cargue el modelo de RNN entrenado con un conjunto de datos alternativo: https://github.com/lin99/NLPTM-2016/blob/gh-pages/4.Docs/reg1_best.tar.
Genere texto con el modelo y trate de determinar con qué tipo de datos se entrenó originalmente el modelo.
Pruebe las funciones del punto 1 y 2 con el nuevo modelo. Discuta los resultados.
Cuando cargue el archivo de texto de entrenamiento utilice el siguiente código:
In [ ]:
# Load training file to get vocabulary
text_file = 'reg1.txt' # input file
with codecs.open(text_file, 'r', 'utf-8') as f:
data = f.read()
chars = [u'\u0432', u'\u1293', u'\u2014', u'\u2018', u'\u201c', u'\U00061ba1', u' ', u'$', u'(', u',', u'\xaf', u'\\', u'\u03b1', u'0', u'\xb3', u'4', u'\xb7', u'8', u'\xbb', u'\u203c', u'\xbf', u'@', u'\u9839', u'\xd7', u'\u263b', u'\u05e1', u'`', u'\xe3', u'd', u'\xe7', u'h', u'l', u'\xef', u'p', u'\xf3', u't', u'x', u'\ufffd', u'|', u'\ufeff', u'\u2003', u'j', u'\u200b', u'\U000ee28c', u'\u2013', u'\xa0', u'#', u"'", u'\xa8', u'+', u'/', u'\xb0', u'3', u'\xb4', u'7', u';', u'?', u'\U00065ca1', u'\u044b', u'\u2022', u'[', u'_', u'\u0161', u'\xe0', u'c', u'\U00061b65', u'\xe4', u'g', u'\xe8', u'k', u'\u2026', u'\xec', u'o', u's', u'\u0434', u'\xf4', u'w', u'{', u'\xfc', u'\U00061285', u'\u2030', u'\n', u'\ud299', u'\xa1', u'"', u'&', u'\xa9', u'*', u'\xad', u'.', u'\xb1', u'2', u'6', u':', u'\xbd', u'>', u'\u0436', u'\u2663', u'\u2665', u'^', u'\xe1', u'b', u'f', u'\xe9', u'\u266a', u'\xed', u'n', u'\xf1', u'r', u'v', u'\xf9', u'z', u'\xfd', u'\u266b', u'~', u'\t', u'\u2113', u'\x92', u'\u2019', u'\u201d', u'!', u'\u9ba0', u'\xa2', u'%', u'\u1ba4', u')', u'\xaa', u'-', u'\U0006192f', u'\xae', u'1', u'5', u'9', u'\xba', u'=', u'\u0441', u'\u0430', u'\U000ee825', u']', u'a', u'\xe2', u'e', u'i', u'\xea', u'm', u'q', u'\xf2', u'u', u'\u92a8', u'y', u'\xfa', u'}']
vocab_size = len(chars)
char_to_ix = {ch: i for i, ch in enumerate(chars)}
ix_to_char = {i: ch for i, ch in enumerate(chars)}
print "Total number of chars:", len(data)
print "Vocabulary size:", vocab_size
Nota: no olvide incluir los nombres de los integrantes del grupo (máximo 2) en el encabezado del notebook. Remita el notebook al siguiente file request de Dropbox: https://www.dropbox.com/request/k4GFiKHjl8OuE9sCiq1N.