рд╕рднреА рдХреЛ рд╢реБрдн рджрд┐рди!
рдФрд░ рд╣рдордиреЗ рдлрд┐рд░ рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд
рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рдзрд╛рд░рд╛ рдЦреЛрд▓реА рд╣реИ: рдПрдХ рдФрд░
рдЙрддреНрдХреГрд╖реНрдЯ рд╢рд┐рдХреНрд╖рдХ , рдЕрдкрдбреЗрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдереЛрдбрд╝рд╛ рдкрд░рд┐рд╖реНрдХреГрдд рдХрд╛рд░реНрдпрдХреНрд░рдоред рдЦреИрд░, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рджрд┐рд▓рдЪрд╕реНрдк
рдЦреБрд▓рд╛ рд╕рдмрдХ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╕рд╛рдордЧреНрд░реА рдХрд╛ рд╕рдВрдЧреНрд░рд╣ред рдЖрдЬ рд╣рдо рдЯреЗрдВрд╕рд░ рдлреНрд▓реЛ рд╕реЗ seq2seq рдореЙрдбрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗред
рдЪрд▓реЛ рдЪрд▓рддреЗ рд╣реИрдВред
рдЬреИрд╕рд╛ рдХрд┐
рдЖрд░рдПрдирдПрди рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд░реНрдЪрд╛ рд╣реИ (рд╣рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдкрд░рд┐рдЪрд┐рдд рдХрд░реЗрдВ), рднрд╛рд╖рд╛ рдХреЛ рдореЙрдбрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд░реНрддрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рд╕рд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ: рдХреНрдпрд╛ рд╕рд╛рд░реНрдердХ рдЙрддреНрддрд░ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдбреЗрдЯрд╛ рдкрд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рд╣рдо рдЕрдВрдЧреНрд░реЗрдЬреА рд╕реЗ рдлреНрд░реЗрдВрдЪ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╕рд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ? рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдПрдЧреА рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдВрдб-рдЯреВ-рдПрдВрдб рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдФрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
GitHub рд╕реЗ Tensor Flow рдХреЗ рдХреЛрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдФрд░
TensorFlow рдореЙрдбрд▓ рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреЙрдкреА
рдХрд░реЗрдВ ред рдлрд┐рд░, рдЖрдк рдЕрдиреБрд╡рд╛рдж рдХрд╛рд░реНрдпрдХреНрд░рдо рд╢реБрд░реВ рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
cd models/tutorials/rnn/translate python translate.py --data_dir [your_data_directory]

рд╡рд╣
WMT'15 рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдлреНрд░реЗрдВрдЪ рд╕реЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдЧреА, рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдФрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░
рдХрд░реЗрдЧреА ред рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рдкрд░ рд▓рдЧрднрдЧ 20GB рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧреЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЕрднреА рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреЛ рдкрдврд╝рдирд╛ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдиреБрдЕрд▓ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлрд╛рдЗрд▓реЛрдВ рддрдХ рдкрд╣реБрдВрдЪреЗрдЧрд╛:
рдлрд╝рд╛рдЗрд▓ | рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд╣реИ? |
---|
рдЯреЗрдВрд╕рд░рдлрд╝реНрд▓реЛ / рдЯреЗрдВрд╕рд░рдлрд╝реНрд▓реЛ / рдЕрдЬрдЧрд░ / рдСрдкреНрд╕ / seq2seq.py | рдЕрдиреБрдХреНрд░рдо рд╕реЗ рдЕрдиреБрдХреНрд░рдо рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА |
рдореЙрдбрд▓ / рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ / rnn / рдЕрдиреБрд╡рд╛рдж / seq2seq_model.py | рдЕрдиреБрдХреНрд░рдо рд╕реЗ рдЕрдиреБрдХреНрд░рдо рддрдВрддреНрд░рд┐рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдореЙрдбрд▓ |
рдореЙрдбрд▓ / рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ / rnn / рдЕрдиреБрд╡рд╛рдж / data_utils.py | рдЕрдиреБрд╡рд╛рдж рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ |
рдореЙрдбрд▓ / рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ / rnn / рдЕрдиреБрд╡рд╛рдж / Transl.py | рдмрд╛рдЗрдирд░реА рдЬреЛ рдЕрдиреБрд╡рд╛рдж рдореЙрдбрд▓ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдФрд░ рдЪрд▓рд╛рддрд╛ рд╣реИ |
рдЕрдиреБрдХреНрд░рдо рд╕реЗ рдЕрдиреБрдХреНрд░рдо рдореВрд▓ рдмрд╛рддреЗрдВрдмреБрдирд┐рдпрд╛рджреА рдЕрдиреБрдХреНрд░рдо-рд╕реЗ-рдЕрдиреБрдХреНрд░рдо рдореЙрдбрд▓, рдЬреИрд╕рд╛ рдХрд┐
рдЪреЛ рдПрдЯ рдЕрд▓ред, 2014 (
рдкреАрдбреАрдПрдл ) рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореЗрдВ рджреЛ рдЖрд╡рд░реНрддрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ (рдЖрд░рдПрдирдПрди) рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдПрдХ рдПрдирдХреЛрдбрд░ (рдПрдирдХреЛрдбрд░) рдЬреЛ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдбрд┐рдХреЛрдбрд░ (рдбрд┐рдХреЛрдбрд░) рдЬреЛ рдбреЗрдЯрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдЙрддреНрдкрд╛рджрдиред рдмреБрдирд┐рдпрд╛рджреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдиреАрдЪреЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рдКрдкрд░ рджреА рдЧрдИ рддрд╕реНрд╡реАрд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЖрдпрдд RNN рдореЗрдВ рдПрдХ рд╕реЗрд▓ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИ, рдЖрдорддреМрд░ рдкрд░ рдПрдХ GRU рд╕реЗрд▓ - рдПрдХ рдирд┐рдпрдВрддреНрд░рд┐рдд рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдмреНрд▓реЙрдХ, рдпрд╛ рдПрдХ LSTM рд╕реЗрд▓ - рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдореЗрдореЛрд░реА (рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП
RNN рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдкрдврд╝реЗрдВ)ред рдПрдирдХреЛрдбрд░ рдФрд░ рдбрд┐рдХреЛрдбрд░ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд╡рдЬрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛, рдЕрдзрд┐рдХ рдмрд╛рд░, рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдорд▓реНрдЯреАрд▓реЗрдпрд░ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреБрдХреНрд░рдо-рдЯреВ-рд╕реАрдХреНрд╡реЗрдВрд╕ рдореЙрдбрд▓ рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
Sutskever рдПрдЯ рдЕрд▓ред, 2014 (
рдкреАрдбреАрдПрдл ) рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдореВрд▓ рдореЙрдбрд▓ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдЗрдирдкреБрдЯ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рдПрдХ рд░рд╛рдЬреНрдп рд╡реЗрдХреНрдЯрд░ рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рдбрд┐рдХреЛрдбрд░ рдХреЛ рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддреА рд╣реИред рдбрд┐рдХреЛрдбрд░ рдХреЛ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рддрдХ рдЕрдзрд┐рдХ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдзреНрдпрд╛рди рддрдВрддреНрд░
рдмрд╣рджрд╛рдирд╛рдК рдПрдЯ рдЕрд▓ред, 2014 (
рдкреАрдбреАрдПрдл ) рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдо рдзреНрдпрд╛рди рддрдВрддреНрд░ рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдПрдВрдЧреЗ (рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдк рдпрд╣рд╛рдВ рдХрд╛рдо рд╕реЗ рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ); рдпрд╣ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдХрд┐ рдпрд╣ рдбрд┐рдХреЛрдбрд░ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдХрджрдо рдкрд░ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред LSTM рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдФрд░ рдбрд┐рдХреЛрдбрд░ рдореЗрдВ рдзреНрдпрд╛рди рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдмрд╣реБрдкрд░рдд рдЕрдиреБрдХреНрд░рдо-рд╕реЗ-рдЕрдиреБрдХреНрд░рдо рдиреЗрдЯрд╡рд░реНрдХ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
TensorFlow рдкреБрд╕реНрддрдХрд╛рд▓рдп seq2seqрдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдКрдкрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдХреНрд░рдо-рд╕реЗ-рдЕрдиреБрдХреНрд░рдо рдореЙрдбрд▓ рд╣реИрдВред рд╡реЗ рд╕рднреА рд╡рд┐рднрд┐рдиреНрди рдЖрд░рдПрдирдПрди рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рд╕рднреА рдПрдирдХреЛрдбрд░ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдФрд░ рдбрд┐рдХреЛрдбрд░ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ TensorFlow seq2seq рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ (рдЯреЗрдВрд╕рд░рдлрд╝реНрд▓реЛ / рдЯреЗрдирд╕рдлрд╝реНрд▓реЛ / рдкрд╛рдЗрдерди / рдСрдкреНрд╕ / seq2seq.py) рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред рдпрд╣ рдореВрд▓, RNN, рдХреЛрдбреЗрдХ, рдЕрдиреБрдХреНрд░рдо рд╕реЗ рдЕрдиреБрдХреНрд░рдо рдореЙрдбрд▓ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
outputs, states = basic_rnn_seq2seq(encoder_inputs, decoder_inputs, cell)
рдКрдкрд░ рдмрддрд╛рдП рдЧрдП рдХреЙрд▓ рдореЗрдВ,
encoder_inputs
,
encoder_inputs
рдХреЗ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ
encoder_inputs
рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬреЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рд╕реЗ рдП, рдмреА, рд╕реА рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред рдЗрд╕реА рдкреНрд░рдХрд╛рд░,
decoder_inputs
, рдбрд┐рдХреЛрдбрд░ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ
decoder_inputs
рд╣реИрдВред рдкрд╣рд▓реА рддрд╕реНрд╡реАрд░ рд╕реЗ рдЬреАрдУ, рдбрдмреНрд▓реНрдпреВ, рдПрдХреНрд╕, рд╡рд╛рдИ, рдЬреЗрдбред
cell
рддрд░реНрдХ
tf.contrib.rnn.RNNCell
рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдореЙрдбрд▓ рдореЗрдВ рдХрд┐рд╕ рд╕реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рдореМрдЬреВрджрд╛ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
GRUCell
рдпрд╛
LSTMCell
, рдпрд╛ рдЖрдк рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
tf.contrib.rnn
рд╕реЗрд▓ рдмрдирд╛рдиреЗ, рд╕реЗрд▓ рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдпрд╛ рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреЛрд▓реЗ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
RNN рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рджреЗрдЦреЗрдВ ред
basic_rnn_seq2seq
рдХреЙрд▓ рджреЛ рддрд░реНрдХ рджреЗрддрд╛ рд╣реИ:
outputs
рдФрд░
states
ред рд╡реЗ рджреЛрдиреЛрдВ
decoder_inputs
рдХреЗ рд╕рдорд╛рди рд▓рдВрдмрд╛рдИ рдХреЗ
decoder_inputs
рдХреА рд╕реВрдЪреА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред
outputs
рд╣рд░ рдмрд╛рд░ рдХрджрдо рдкрд░ рдбрд┐рдХреЛрдбрд░ рдЖрдЙрдЯрдкреБрдЯ рдбреЗрдЯрд╛ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдкрд╣рд▓реА рддрд╕реНрд╡реАрд░ рдореЗрдВ рдпрд╣ рдбрдмреНрд▓реНрдпреВ, рдПрдХреНрд╕, рд╡рд╛рдИ, рдЬреЗрдб, рдИрдУрдПрд╕ рд╣реИред рд▓реМрдЯрд╛рдП рдЧрдП рд░рд╛рдЬреНрдп рдкреНрд░рддреНрдпреЗрдХ рд╕рдордп рдХрджрдо рдкрд░ рдбрд┐рдХреЛрдбрд░ рдХреА рдЖрдВрддрд░рд┐рдХ рд╕реНрдерд┐рддрд┐ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред
рд╕реАрдХреНрд╡реЗрдВрд╕-рдЯреВ-рд╕реАрдХреНрд╡реЗрдВрд╕ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рд╕рдордп рдЯреА рдкрд░ рдбреАрдХреЛрдбрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЯреА + 1 рдкрд░ рдбрд┐рдХреЛрдбрд░ рдХреЗ рдЗрдирдкреБрдЯ рдкрд░ рд╡рд╛рдкрд╕ рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди, рдЕрдиреБрдХреНрд░рдо рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рдпрд╣ рдПрдХ рдирдпрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛрддрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди, рдбрд┐рдХреЛрдбрд░ рдХреЛ рд╣рд░ рдмрд╛рд░ рдХрджрдо рдкрд░ рд╕рд╣реА рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдерд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдбрд┐рдХреЛрдбрд░ рдкрд╣рд▓реЗ рдЧрд▓рдд рдерд╛ред
seq2seq.py
рдореЗрдВ рдХрд╛рд░реНрдп
seq2seq.py
рдореЛрдб рдХреЗ рд╕рд╛рде рджреЛрдиреЛрдВ рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдиреЗрд╕реНрдЯреЗрдб RNN рдореЙрдбрд▓ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
outputs, states = embedding_rnn_seq2seq( encoder_inputs, decoder_inputs, cell, num_encoder_symbols, num_decoder_symbols, embedding_size, output_projection=None, feed_previous=False)
embedding_rnn_seq2seq
рдореЙрдбрд▓ рдореЗрдВ, рд╕рднреА рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ (рджреЛрдиреЛрдВ
encoder_inputs
рдФрд░
decoder_inputs
) рдкреВрд░реНрдгрд╛рдВрдХ рдЯреЗрдВрд╕рд░ рд╣реИрдВ рдЬреЛ рдЕрд╕рддрдд рдореВрд▓реНрдпреЛрдВ рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдПрдХ рддрдВрдЧ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рд╕рдВрд▓рдЧреНрдирдХ рдкрд░ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП,
рд╡реЗрдХреНрдЯрд░ рд╡реНрдпреВ рдЧрд╛рдЗрдб рджреЗрдЦреЗрдВ ), рд▓реЗрдХрд┐рди рдЗрди рдЕрдиреБрд▓рдЧреНрдирдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрд╕рддрдд рд╡рд░реНрдгреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдПрдирдХреЛрдбрд░ рдХреА рддрд░рдл
num_decoder_symbols
рдФрд░ рдбрд┐рдХреЛрдбрд░ рдкрдХреНрд╖ рдкрд░
num_decoder_symbols
ред
рдКрдкрд░ рдХреА рдХреЙрд▓ рдореЗрдВ, рд╣рдордиреЗ
feed_previous
рдХреЛ рдЧрд▓рдд рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдбрд┐рдХреЛрдбрд░
decoder_inputs
рдЙрдкрдпреЛрдЧ рдЙрд╕ рд░реВрдк рдореЗрдВ рдХрд░реЗрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рд╣рдо
feed_previous
рдХреЛ True рдкрд░ рд╕реЗрдЯ
feed_previous
, рддреЛ рдбрд┐рдХреЛрдбрд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ
decoder_inputs
рддрддреНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред рд╕реВрдЪреА рд╕реЗ рдЕрдиреНрдп рд╕рднреА рдЯреЗрдВрд╕рд░реЛрдВ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдбрд┐рдХреЛрдбрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдкрд┐рдЫрд▓реЗ рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдорд╛рд░реЗ рдЕрдиреБрд╡рд╛рдж рдореЙрдбрд▓ рдореЗрдВ рдЕрдиреБрд╡рд╛рджреЛрдВ рдХреЛ рдбрд┐рдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдореЙрдбрд▓ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХреЗред рд▓рдЧрднрдЧ
рдмреЗрдВрдЧрд┐рдпреЛ рдПрдЯ рдЕрд▓ред, 2015 (
рдкреАрдбреАрдПрдл ) рдХреЗ рд░реВрдк рдореЗрдВред
рдКрдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рдЕрдиреНрдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрд░реНрдХ
output_projection
ред рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рдмрд┐рдирд╛, рдПрдореНрдмреЗрдбреЗрдб рдореЙрдбрд▓ рдХрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рд╕рдВрдЦреНрдпрд╛ рдХреЗ
num_decoder_symbols
рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рдирдореВрдиреЗ рдкреНрд░рддрд┐
num_decoder_symbols
, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрддреНрдкрдиреНрди рдкреНрд░рддреАрдХ рдХреЗ рд▓реЙрдЧ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рдмрдбрд╝реЗ рдЖрдЙрдЯрдкреБрдЯ рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрдбрд╝реЗ
num_decoder_symbols
рд╕рд╛рде, рдЗрди рдмрдбрд╝реЗ
num_decoder_symbols
рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдЫреЛрдЯреЗ
output_projection
рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдмрд╛рдж рдореЗрдВ
output_projection
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдбрд╝реЗ рдЯреЗрдВрд╕рд░ рдкрд░ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╣рдорд╛рд░реЗ seq2seq рдореЙрдбрд▓ рдХреЛ рдирдореВрдирд╛ рдХрд┐рдП рдЧрдП рд╕реЙрдлреНрдЯрдореИрдХреНрд╕ рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐
рдЬреАрди рдПрдЯ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИ
ред рдЕрд▓ред, 2014 (
рдкреАрдбреАрдПрдл )ред
basic_rnn_seq2seq
рдФрд░
embedding_rnn_seq2seq
рдЕрд▓рд╛рд╡рд╛,
basic_rnn_seq2seq
рдореЗрдВ рдХрдИ рдФрд░ рдЕрдиреБрдХреНрд░рдо-рд╕реЗ-рдЕрдиреБрдХреНрд░рдо рдореЙрдбрд▓ рд╣реИрдВред рдЙрди рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдЗрди рд╕рднреА рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЙрдирдХреЗ рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рддрд▓реНрд▓реАрди рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдиреАрдЪреЗ рд╣рдорд╛рд░реЗ рдЕрдиреБрд╡рд╛рдж рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП,
embedding_attention_seq2seq
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛рдПред