In [14]:
import itertools
import string
vocab = list(string.ascii_lowercase) + [' ']
perms = itertools.permutations(vocab, 2)
product = itertools.product(vocab, repeat=2)
In [15]:
p = list(product)
len(p)
p[4]
Out[15]:
('a', 'e')
In [16]:
p
Out[16]:
[('a', 'a'),
('a', 'b'),
('a', 'c'),
('a', 'd'),
('a', 'e'),
('a', 'f'),
('a', 'g'),
('a', 'h'),
('a', 'i'),
('a', 'j'),
('a', 'k'),
('a', 'l'),
('a', 'm'),
('a', 'n'),
('a', 'o'),
('a', 'p'),
('a', 'q'),
('a', 'r'),
('a', 's'),
('a', 't'),
('a', 'u'),
('a', 'v'),
('a', 'w'),
('a', 'x'),
('a', 'y'),
('a', 'z'),
('a', ' '),
('b', 'a'),
('b', 'b'),
('b', 'c'),
('b', 'd'),
('b', 'e'),
('b', 'f'),
('b', 'g'),
('b', 'h'),
('b', 'i'),
('b', 'j'),
('b', 'k'),
('b', 'l'),
('b', 'm'),
('b', 'n'),
('b', 'o'),
('b', 'p'),
('b', 'q'),
('b', 'r'),
('b', 's'),
('b', 't'),
('b', 'u'),
('b', 'v'),
('b', 'w'),
('b', 'x'),
('b', 'y'),
('b', 'z'),
('b', ' '),
('c', 'a'),
('c', 'b'),
('c', 'c'),
('c', 'd'),
('c', 'e'),
('c', 'f'),
('c', 'g'),
('c', 'h'),
('c', 'i'),
('c', 'j'),
('c', 'k'),
('c', 'l'),
('c', 'm'),
('c', 'n'),
('c', 'o'),
('c', 'p'),
('c', 'q'),
('c', 'r'),
('c', 's'),
('c', 't'),
('c', 'u'),
('c', 'v'),
('c', 'w'),
('c', 'x'),
('c', 'y'),
('c', 'z'),
('c', ' '),
('d', 'a'),
('d', 'b'),
('d', 'c'),
('d', 'd'),
('d', 'e'),
('d', 'f'),
('d', 'g'),
('d', 'h'),
('d', 'i'),
('d', 'j'),
('d', 'k'),
('d', 'l'),
('d', 'm'),
('d', 'n'),
('d', 'o'),
('d', 'p'),
('d', 'q'),
('d', 'r'),
('d', 's'),
('d', 't'),
('d', 'u'),
('d', 'v'),
('d', 'w'),
('d', 'x'),
('d', 'y'),
('d', 'z'),
('d', ' '),
('e', 'a'),
('e', 'b'),
('e', 'c'),
('e', 'd'),
('e', 'e'),
('e', 'f'),
('e', 'g'),
('e', 'h'),
('e', 'i'),
('e', 'j'),
('e', 'k'),
('e', 'l'),
('e', 'm'),
('e', 'n'),
('e', 'o'),
('e', 'p'),
('e', 'q'),
('e', 'r'),
('e', 's'),
('e', 't'),
('e', 'u'),
('e', 'v'),
('e', 'w'),
('e', 'x'),
('e', 'y'),
('e', 'z'),
('e', ' '),
('f', 'a'),
('f', 'b'),
('f', 'c'),
('f', 'd'),
('f', 'e'),
('f', 'f'),
('f', 'g'),
('f', 'h'),
('f', 'i'),
('f', 'j'),
('f', 'k'),
('f', 'l'),
('f', 'm'),
('f', 'n'),
('f', 'o'),
('f', 'p'),
('f', 'q'),
('f', 'r'),
('f', 's'),
('f', 't'),
('f', 'u'),
('f', 'v'),
('f', 'w'),
('f', 'x'),
('f', 'y'),
('f', 'z'),
('f', ' '),
('g', 'a'),
('g', 'b'),
('g', 'c'),
('g', 'd'),
('g', 'e'),
('g', 'f'),
('g', 'g'),
('g', 'h'),
('g', 'i'),
('g', 'j'),
('g', 'k'),
('g', 'l'),
('g', 'm'),
('g', 'n'),
('g', 'o'),
('g', 'p'),
('g', 'q'),
('g', 'r'),
('g', 's'),
('g', 't'),
('g', 'u'),
('g', 'v'),
('g', 'w'),
('g', 'x'),
('g', 'y'),
('g', 'z'),
('g', ' '),
('h', 'a'),
('h', 'b'),
('h', 'c'),
('h', 'd'),
('h', 'e'),
('h', 'f'),
('h', 'g'),
('h', 'h'),
('h', 'i'),
('h', 'j'),
('h', 'k'),
('h', 'l'),
('h', 'm'),
('h', 'n'),
('h', 'o'),
('h', 'p'),
('h', 'q'),
('h', 'r'),
('h', 's'),
('h', 't'),
('h', 'u'),
('h', 'v'),
('h', 'w'),
('h', 'x'),
('h', 'y'),
('h', 'z'),
('h', ' '),
('i', 'a'),
('i', 'b'),
('i', 'c'),
('i', 'd'),
('i', 'e'),
('i', 'f'),
('i', 'g'),
('i', 'h'),
('i', 'i'),
('i', 'j'),
('i', 'k'),
('i', 'l'),
('i', 'm'),
('i', 'n'),
('i', 'o'),
('i', 'p'),
('i', 'q'),
('i', 'r'),
('i', 's'),
('i', 't'),
('i', 'u'),
('i', 'v'),
('i', 'w'),
('i', 'x'),
('i', 'y'),
('i', 'z'),
('i', ' '),
('j', 'a'),
('j', 'b'),
('j', 'c'),
('j', 'd'),
('j', 'e'),
('j', 'f'),
('j', 'g'),
('j', 'h'),
('j', 'i'),
('j', 'j'),
('j', 'k'),
('j', 'l'),
('j', 'm'),
('j', 'n'),
('j', 'o'),
('j', 'p'),
('j', 'q'),
('j', 'r'),
('j', 's'),
('j', 't'),
('j', 'u'),
('j', 'v'),
('j', 'w'),
('j', 'x'),
('j', 'y'),
('j', 'z'),
('j', ' '),
('k', 'a'),
('k', 'b'),
('k', 'c'),
('k', 'd'),
('k', 'e'),
('k', 'f'),
('k', 'g'),
('k', 'h'),
('k', 'i'),
('k', 'j'),
('k', 'k'),
('k', 'l'),
('k', 'm'),
('k', 'n'),
('k', 'o'),
('k', 'p'),
('k', 'q'),
('k', 'r'),
('k', 's'),
('k', 't'),
('k', 'u'),
('k', 'v'),
('k', 'w'),
('k', 'x'),
('k', 'y'),
('k', 'z'),
('k', ' '),
('l', 'a'),
('l', 'b'),
('l', 'c'),
('l', 'd'),
('l', 'e'),
('l', 'f'),
('l', 'g'),
('l', 'h'),
('l', 'i'),
('l', 'j'),
('l', 'k'),
('l', 'l'),
('l', 'm'),
('l', 'n'),
('l', 'o'),
('l', 'p'),
('l', 'q'),
('l', 'r'),
('l', 's'),
('l', 't'),
('l', 'u'),
('l', 'v'),
('l', 'w'),
('l', 'x'),
('l', 'y'),
('l', 'z'),
('l', ' '),
('m', 'a'),
('m', 'b'),
('m', 'c'),
('m', 'd'),
('m', 'e'),
('m', 'f'),
('m', 'g'),
('m', 'h'),
('m', 'i'),
('m', 'j'),
('m', 'k'),
('m', 'l'),
('m', 'm'),
('m', 'n'),
('m', 'o'),
('m', 'p'),
('m', 'q'),
('m', 'r'),
('m', 's'),
('m', 't'),
('m', 'u'),
('m', 'v'),
('m', 'w'),
('m', 'x'),
('m', 'y'),
('m', 'z'),
('m', ' '),
('n', 'a'),
('n', 'b'),
('n', 'c'),
('n', 'd'),
('n', 'e'),
('n', 'f'),
('n', 'g'),
('n', 'h'),
('n', 'i'),
('n', 'j'),
('n', 'k'),
('n', 'l'),
('n', 'm'),
('n', 'n'),
('n', 'o'),
('n', 'p'),
('n', 'q'),
('n', 'r'),
('n', 's'),
('n', 't'),
('n', 'u'),
('n', 'v'),
('n', 'w'),
('n', 'x'),
('n', 'y'),
('n', 'z'),
('n', ' '),
('o', 'a'),
('o', 'b'),
('o', 'c'),
('o', 'd'),
('o', 'e'),
('o', 'f'),
('o', 'g'),
('o', 'h'),
('o', 'i'),
('o', 'j'),
('o', 'k'),
('o', 'l'),
('o', 'm'),
('o', 'n'),
('o', 'o'),
('o', 'p'),
('o', 'q'),
('o', 'r'),
('o', 's'),
('o', 't'),
('o', 'u'),
('o', 'v'),
('o', 'w'),
('o', 'x'),
('o', 'y'),
('o', 'z'),
('o', ' '),
('p', 'a'),
('p', 'b'),
('p', 'c'),
('p', 'd'),
('p', 'e'),
('p', 'f'),
('p', 'g'),
('p', 'h'),
('p', 'i'),
('p', 'j'),
('p', 'k'),
('p', 'l'),
('p', 'm'),
('p', 'n'),
('p', 'o'),
('p', 'p'),
('p', 'q'),
('p', 'r'),
('p', 's'),
('p', 't'),
('p', 'u'),
('p', 'v'),
('p', 'w'),
('p', 'x'),
('p', 'y'),
('p', 'z'),
('p', ' '),
('q', 'a'),
('q', 'b'),
('q', 'c'),
('q', 'd'),
('q', 'e'),
('q', 'f'),
('q', 'g'),
('q', 'h'),
('q', 'i'),
('q', 'j'),
('q', 'k'),
('q', 'l'),
('q', 'm'),
('q', 'n'),
('q', 'o'),
('q', 'p'),
('q', 'q'),
('q', 'r'),
('q', 's'),
('q', 't'),
('q', 'u'),
('q', 'v'),
('q', 'w'),
('q', 'x'),
('q', 'y'),
('q', 'z'),
('q', ' '),
('r', 'a'),
('r', 'b'),
('r', 'c'),
('r', 'd'),
('r', 'e'),
('r', 'f'),
('r', 'g'),
('r', 'h'),
('r', 'i'),
('r', 'j'),
('r', 'k'),
('r', 'l'),
('r', 'm'),
('r', 'n'),
('r', 'o'),
('r', 'p'),
('r', 'q'),
('r', 'r'),
('r', 's'),
('r', 't'),
('r', 'u'),
('r', 'v'),
('r', 'w'),
('r', 'x'),
('r', 'y'),
('r', 'z'),
('r', ' '),
('s', 'a'),
('s', 'b'),
('s', 'c'),
('s', 'd'),
('s', 'e'),
('s', 'f'),
('s', 'g'),
('s', 'h'),
('s', 'i'),
('s', 'j'),
('s', 'k'),
('s', 'l'),
('s', 'm'),
('s', 'n'),
('s', 'o'),
('s', 'p'),
('s', 'q'),
('s', 'r'),
('s', 's'),
('s', 't'),
('s', 'u'),
('s', 'v'),
('s', 'w'),
('s', 'x'),
('s', 'y'),
('s', 'z'),
('s', ' '),
('t', 'a'),
('t', 'b'),
('t', 'c'),
('t', 'd'),
('t', 'e'),
('t', 'f'),
('t', 'g'),
('t', 'h'),
('t', 'i'),
('t', 'j'),
('t', 'k'),
('t', 'l'),
('t', 'm'),
('t', 'n'),
('t', 'o'),
('t', 'p'),
('t', 'q'),
('t', 'r'),
('t', 's'),
('t', 't'),
('t', 'u'),
('t', 'v'),
('t', 'w'),
('t', 'x'),
('t', 'y'),
('t', 'z'),
('t', ' '),
('u', 'a'),
('u', 'b'),
('u', 'c'),
('u', 'd'),
('u', 'e'),
('u', 'f'),
('u', 'g'),
('u', 'h'),
('u', 'i'),
('u', 'j'),
('u', 'k'),
('u', 'l'),
('u', 'm'),
('u', 'n'),
('u', 'o'),
('u', 'p'),
('u', 'q'),
('u', 'r'),
('u', 's'),
('u', 't'),
('u', 'u'),
('u', 'v'),
('u', 'w'),
('u', 'x'),
('u', 'y'),
('u', 'z'),
('u', ' '),
('v', 'a'),
('v', 'b'),
('v', 'c'),
('v', 'd'),
('v', 'e'),
('v', 'f'),
('v', 'g'),
('v', 'h'),
('v', 'i'),
('v', 'j'),
('v', 'k'),
('v', 'l'),
('v', 'm'),
('v', 'n'),
('v', 'o'),
('v', 'p'),
('v', 'q'),
('v', 'r'),
('v', 's'),
('v', 't'),
('v', 'u'),
('v', 'v'),
('v', 'w'),
('v', 'x'),
('v', 'y'),
('v', 'z'),
('v', ' '),
('w', 'a'),
('w', 'b'),
('w', 'c'),
('w', 'd'),
('w', 'e'),
('w', 'f'),
('w', 'g'),
('w', 'h'),
('w', 'i'),
('w', 'j'),
('w', 'k'),
('w', 'l'),
('w', 'm'),
('w', 'n'),
('w', 'o'),
('w', 'p'),
('w', 'q'),
('w', 'r'),
('w', 's'),
('w', 't'),
('w', 'u'),
('w', 'v'),
('w', 'w'),
('w', 'x'),
('w', 'y'),
('w', 'z'),
('w', ' '),
('x', 'a'),
('x', 'b'),
('x', 'c'),
('x', 'd'),
('x', 'e'),
('x', 'f'),
('x', 'g'),
('x', 'h'),
('x', 'i'),
('x', 'j'),
('x', 'k'),
('x', 'l'),
('x', 'm'),
('x', 'n'),
('x', 'o'),
('x', 'p'),
('x', 'q'),
('x', 'r'),
('x', 's'),
('x', 't'),
('x', 'u'),
('x', 'v'),
('x', 'w'),
('x', 'x'),
('x', 'y'),
('x', 'z'),
('x', ' '),
('y', 'a'),
('y', 'b'),
('y', 'c'),
('y', 'd'),
('y', 'e'),
('y', 'f'),
('y', 'g'),
('y', 'h'),
('y', 'i'),
('y', 'j'),
('y', 'k'),
('y', 'l'),
('y', 'm'),
('y', 'n'),
('y', 'o'),
('y', 'p'),
('y', 'q'),
('y', 'r'),
('y', 's'),
('y', 't'),
('y', 'u'),
('y', 'v'),
('y', 'w'),
('y', 'x'),
('y', 'y'),
('y', 'z'),
('y', ' '),
('z', 'a'),
('z', 'b'),
('z', 'c'),
('z', 'd'),
('z', 'e'),
('z', 'f'),
('z', 'g'),
('z', 'h'),
('z', 'i'),
('z', 'j'),
('z', 'k'),
('z', 'l'),
('z', 'm'),
('z', 'n'),
('z', 'o'),
('z', 'p'),
('z', 'q'),
('z', 'r'),
('z', 's'),
('z', 't'),
('z', 'u'),
('z', 'v'),
('z', 'w'),
('z', 'x'),
('z', 'y'),
('z', 'z'),
('z', ' '),
(' ', 'a'),
(' ', 'b'),
(' ', 'c'),
(' ', 'd'),
(' ', 'e'),
(' ', 'f'),
(' ', 'g'),
(' ', 'h'),
(' ', 'i'),
(' ', 'j'),
(' ', 'k'),
(' ', 'l'),
(' ', 'm'),
(' ', 'n'),
(' ', 'o'),
(' ', 'p'),
(' ', 'q'),
(' ', 'r'),
(' ', 's'),
(' ', 't'),
(' ', 'u'),
(' ', 'v'),
(' ', 'w'),
(' ', 'x'),
(' ', 'y'),
(' ', 'z'),
(' ', ' ')]
In [17]:
joined_p = [''.join(x) for x in p]
In [19]:
joined_p
Out[19]:
['aa',
'ab',
'ac',
'ad',
'ae',
'af',
'ag',
'ah',
'ai',
'aj',
'ak',
'al',
'am',
'an',
'ao',
'ap',
'aq',
'ar',
'as',
'at',
'au',
'av',
'aw',
'ax',
'ay',
'az',
'a ',
'ba',
'bb',
'bc',
'bd',
'be',
'bf',
'bg',
'bh',
'bi',
'bj',
'bk',
'bl',
'bm',
'bn',
'bo',
'bp',
'bq',
'br',
'bs',
'bt',
'bu',
'bv',
'bw',
'bx',
'by',
'bz',
'b ',
'ca',
'cb',
'cc',
'cd',
'ce',
'cf',
'cg',
'ch',
'ci',
'cj',
'ck',
'cl',
'cm',
'cn',
'co',
'cp',
'cq',
'cr',
'cs',
'ct',
'cu',
'cv',
'cw',
'cx',
'cy',
'cz',
'c ',
'da',
'db',
'dc',
'dd',
'de',
'df',
'dg',
'dh',
'di',
'dj',
'dk',
'dl',
'dm',
'dn',
'do',
'dp',
'dq',
'dr',
'ds',
'dt',
'du',
'dv',
'dw',
'dx',
'dy',
'dz',
'd ',
'ea',
'eb',
'ec',
'ed',
'ee',
'ef',
'eg',
'eh',
'ei',
'ej',
'ek',
'el',
'em',
'en',
'eo',
'ep',
'eq',
'er',
'es',
'et',
'eu',
'ev',
'ew',
'ex',
'ey',
'ez',
'e ',
'fa',
'fb',
'fc',
'fd',
'fe',
'ff',
'fg',
'fh',
'fi',
'fj',
'fk',
'fl',
'fm',
'fn',
'fo',
'fp',
'fq',
'fr',
'fs',
'ft',
'fu',
'fv',
'fw',
'fx',
'fy',
'fz',
'f ',
'ga',
'gb',
'gc',
'gd',
'ge',
'gf',
'gg',
'gh',
'gi',
'gj',
'gk',
'gl',
'gm',
'gn',
'go',
'gp',
'gq',
'gr',
'gs',
'gt',
'gu',
'gv',
'gw',
'gx',
'gy',
'gz',
'g ',
'ha',
'hb',
'hc',
'hd',
'he',
'hf',
'hg',
'hh',
'hi',
'hj',
'hk',
'hl',
'hm',
'hn',
'ho',
'hp',
'hq',
'hr',
'hs',
'ht',
'hu',
'hv',
'hw',
'hx',
'hy',
'hz',
'h ',
'ia',
'ib',
'ic',
'id',
'ie',
'if',
'ig',
'ih',
'ii',
'ij',
'ik',
'il',
'im',
'in',
'io',
'ip',
'iq',
'ir',
'is',
'it',
'iu',
'iv',
'iw',
'ix',
'iy',
'iz',
'i ',
'ja',
'jb',
'jc',
'jd',
'je',
'jf',
'jg',
'jh',
'ji',
'jj',
'jk',
'jl',
'jm',
'jn',
'jo',
'jp',
'jq',
'jr',
'js',
'jt',
'ju',
'jv',
'jw',
'jx',
'jy',
'jz',
'j ',
'ka',
'kb',
'kc',
'kd',
'ke',
'kf',
'kg',
'kh',
'ki',
'kj',
'kk',
'kl',
'km',
'kn',
'ko',
'kp',
'kq',
'kr',
'ks',
'kt',
'ku',
'kv',
'kw',
'kx',
'ky',
'kz',
'k ',
'la',
'lb',
'lc',
'ld',
'le',
'lf',
'lg',
'lh',
'li',
'lj',
'lk',
'll',
'lm',
'ln',
'lo',
'lp',
'lq',
'lr',
'ls',
'lt',
'lu',
'lv',
'lw',
'lx',
'ly',
'lz',
'l ',
'ma',
'mb',
'mc',
'md',
'me',
'mf',
'mg',
'mh',
'mi',
'mj',
'mk',
'ml',
'mm',
'mn',
'mo',
'mp',
'mq',
'mr',
'ms',
'mt',
'mu',
'mv',
'mw',
'mx',
'my',
'mz',
'm ',
'na',
'nb',
'nc',
'nd',
'ne',
'nf',
'ng',
'nh',
'ni',
'nj',
'nk',
'nl',
'nm',
'nn',
'no',
'np',
'nq',
'nr',
'ns',
'nt',
'nu',
'nv',
'nw',
'nx',
'ny',
'nz',
'n ',
'oa',
'ob',
'oc',
'od',
'oe',
'of',
'og',
'oh',
'oi',
'oj',
'ok',
'ol',
'om',
'on',
'oo',
'op',
'oq',
'or',
'os',
'ot',
'ou',
'ov',
'ow',
'ox',
'oy',
'oz',
'o ',
'pa',
'pb',
'pc',
'pd',
'pe',
'pf',
'pg',
'ph',
'pi',
'pj',
'pk',
'pl',
'pm',
'pn',
'po',
'pp',
'pq',
'pr',
'ps',
'pt',
'pu',
'pv',
'pw',
'px',
'py',
'pz',
'p ',
'qa',
'qb',
'qc',
'qd',
'qe',
'qf',
'qg',
'qh',
'qi',
'qj',
'qk',
'ql',
'qm',
'qn',
'qo',
'qp',
'qq',
'qr',
'qs',
'qt',
'qu',
'qv',
'qw',
'qx',
'qy',
'qz',
'q ',
'ra',
'rb',
'rc',
'rd',
're',
'rf',
'rg',
'rh',
'ri',
'rj',
'rk',
'rl',
'rm',
'rn',
'ro',
'rp',
'rq',
'rr',
'rs',
'rt',
'ru',
'rv',
'rw',
'rx',
'ry',
'rz',
'r ',
'sa',
'sb',
'sc',
'sd',
'se',
'sf',
'sg',
'sh',
'si',
'sj',
'sk',
'sl',
'sm',
'sn',
'so',
'sp',
'sq',
'sr',
'ss',
'st',
'su',
'sv',
'sw',
'sx',
'sy',
'sz',
's ',
'ta',
'tb',
'tc',
'td',
'te',
'tf',
'tg',
'th',
'ti',
'tj',
'tk',
'tl',
'tm',
'tn',
'to',
'tp',
'tq',
'tr',
'ts',
'tt',
'tu',
'tv',
'tw',
'tx',
'ty',
'tz',
't ',
'ua',
'ub',
'uc',
'ud',
'ue',
'uf',
'ug',
'uh',
'ui',
'uj',
'uk',
'ul',
'um',
'un',
'uo',
'up',
'uq',
'ur',
'us',
'ut',
'uu',
'uv',
'uw',
'ux',
'uy',
'uz',
'u ',
'va',
'vb',
'vc',
'vd',
've',
'vf',
'vg',
'vh',
'vi',
'vj',
'vk',
'vl',
'vm',
'vn',
'vo',
'vp',
'vq',
'vr',
'vs',
'vt',
'vu',
'vv',
'vw',
'vx',
'vy',
'vz',
'v ',
'wa',
'wb',
'wc',
'wd',
'we',
'wf',
'wg',
'wh',
'wi',
'wj',
'wk',
'wl',
'wm',
'wn',
'wo',
'wp',
'wq',
'wr',
'ws',
'wt',
'wu',
'wv',
'ww',
'wx',
'wy',
'wz',
'w ',
'xa',
'xb',
'xc',
'xd',
'xe',
'xf',
'xg',
'xh',
'xi',
'xj',
'xk',
'xl',
'xm',
'xn',
'xo',
'xp',
'xq',
'xr',
'xs',
'xt',
'xu',
'xv',
'xw',
'xx',
'xy',
'xz',
'x ',
'ya',
'yb',
'yc',
'yd',
'ye',
'yf',
'yg',
'yh',
'yi',
'yj',
'yk',
'yl',
'ym',
'yn',
'yo',
'yp',
'yq',
'yr',
'ys',
'yt',
'yu',
'yv',
'yw',
'yx',
'yy',
'yz',
'y ',
'za',
'zb',
'zc',
'zd',
'ze',
'zf',
'zg',
'zh',
'zi',
'zj',
'zk',
'zl',
'zm',
'zn',
'zo',
'zp',
'zq',
'zr',
'zs',
'zt',
'zu',
'zv',
'zw',
'zx',
'zy',
'zz',
'z ',
' a',
' b',
' c',
' d',
' e',
' f',
' g',
' h',
' i',
' j',
' k',
' l',
' m',
' n',
' o',
' p',
' q',
' r',
' s',
' t',
' u',
' v',
' w',
' x',
' y',
' z',
' ']
In [21]:
ngram_vocab = [''.join(x) for x in itertools.product(vocab, repeat=2)]
In [22]:
print(len(ngram_vocab))
729
In [23]:
ngram_vocab[0:10]
Out[23]:
['aa', 'ab', 'ac', 'ad', 'ae', 'af', 'ag', 'ah', 'ai', 'aj']
In [24]:
ngram_vocab[-1]
Out[24]:
' '
In [25]:
ngram_vocab[729]
IndexErrorTraceback (most recent call last)
<ipython-input-25-94ed3b56fffe> in <module>()
----> 1 ngram_vocab[729]
IndexError: list index out of range
In [26]:
import numpy as np
In [30]:
range(4,4+1)
Out[30]:
[4]
In [ ]:
batch_size = 8
nvo_size = 729
batch = np.zeros(shape=(batch_size, nvo_size), dtype=np.float) # initialise a matrix of 64 * 27
# I.e. each batch in this case involves 64 different sets of character sequences.
for b in range(batch_size): # repeat for each of these 64 character sequences
batch[
b,
self._nvo.ngram2id(
''.join(
self._text[position]
for position in range(self._cursor[b], self._cursor[b]+self._nvo.size)
)
)
] = 1.0 # for each row representing a sequence in the batch
self._cursor[b] = (self._cursor[b] + ngram_size) % self._text_size # % just enables cycling of data
Content source: benhoyle/udacity-tensorflow
Similar notebooks: