рд░реЗ: рдПрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА

рдирдорд╕реНрдХрд╛рд░ рд╕рд╛рдерд┐рдпреЛрдВ!

рд╣рдо рдЕрдЧрд╕реНрдд рдХреЗ рдЕрдВрдд рд╕реЗ рдкрд╣рд▓реЗ рдкрд╛рдпрдерди рдореЗрдВ рдПрдЖрдИ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдПрдХ рдЫреЛрдЯреА, рд▓реЗрдХрд┐рди рд╕рд╣реА рдорд╛рдпрдиреЗ рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдкреБрд╕реНрддрдХ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВред



рдорд┐ред рдЧрд┐рдлреНрдЯ, рд╢рд╛рдпрдж, рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ (рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рдХреЗ рд▓рд┐рдП - рдЬрд┐рд╣реБрдд рдкрд░ рдЧреБрд░реБ рдХрд╛ рдкреНрд░реЛрдлрд╛рдЗрд▓ ):



рдЖрдЬ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рд▓реЗрдЦ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд░реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдЧрд╛, рдЬрд┐рд╕реЗ рдХреИрд▓рд┐рдлреЛрд░реНрдирд┐рдпрд╛ рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдп (рдмрд░реНрдХрд▓реЗ) рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдкреАрдЯрд░ рдХреА рдХрд┐рддрд╛рдм рдореЗрдВ рдкреЗрдЯрд┐рдЯ рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╢реБрд░реБрдЖрддреА рдЯреАрдЬрд╝рд░ рдХреЗ рд░реВрдк рдореЗрдВ - рдЖрдкрдХреЛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдПред рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ

рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдФрд░ рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде, рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдХрдИ рдорд╢реАрдиреЛрдВ рдкрд░ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рд╡реЗ рдмрд┐рдирд╛ рд╕рдВрдЧрд╛рдорд┐рддрд┐ рдХреЗ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪрд╛ рдЕрднреА рднреА рд╕реНрдерд┐рддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдмрдирддрд╛ рд╣реИред рдЕрдм рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдЪреНрдЫреЗ рд╕рдорд╛рдзрд╛рди рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдпрд╛ рд╣рд╛рдЗрдкрд░рдкрд░рдореЗрдЯрд░реНрд╕ рдХреА рдЦреЛрдЬ) рдФрд░ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рд╡рд┐рддрд░рд┐рдд рд╕рд┐рд╕реНрдЯрдо (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдкрд╛рд░реНрдХ рдпрд╛ рд╣рдбреЛрдк), рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдмрдирд╛рдП рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЪрд┐рдХрд┐рддреНрд╕рдХ рдЕрдХреНрд╕рд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдкрд░ рдмрд╣реБрдд рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдПрдХ рд╡реИрдЪрд╛рд░рд┐рдХ рд╕рд░рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдХрд╣рддреЗ рд╣реИрдВ, рд╕реБрджреГрдвреАрдХрд░рдг рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕рд╡рд╛рджреА рд░рдгрдиреАрддрд┐рдпрд╛рдБ ред рдЫрджреНрдо рдХреЛрдб рдкрд░, рдпрд╣ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд▓рдЧрднрдЧ рдПрдХ рджрд░реНрдЬрди рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ, рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдЗрд╕рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдереЛрдбрд╝рд╛ рдмрдбрд╝рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рдмрдбрд╝реА рдорд╢реАрди рдпрд╛ рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдкреНрд░рднрд╛рд╡реА рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЕрдзрд┐рдХ рдкрд░рд┐рд╖реНрдХреГрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд▓реЗрдЦрдХреЛрдВ рд╕реЗ рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рдХреЛрдб рдХреА рд╣рдЬрд╛рд░реЛрдВ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ, рдпрд╣рд╛рдВ рд╕рдВрдЪрд╛рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓, рд╕рдВрджреЗрд╢ рдХреНрд░рдорд╛рдВрдХрди рдФрд░ рдбреАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдбреЗрдЯрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рд░реЗ рдХреЗ рд▓рдХреНрд╖реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╡реНрдпрд╡рд╕рд╛рдпреА рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рд╣реИ рдЬреЛ рд▓реИрдкрдЯреЙрдк рдкрд░ рдПрдХ рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рд╡рд╛рд▓реЗ рд╡рд┐рддрд░рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ рдЬреЛ рдХреЛрдб рдХреА рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ (рдпрд╛ рдПрдХрд▓ рдорд▓реНрдЯреА-рдХреЛрд░ рдорд╢реАрди) рдкрд░ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рднреА рдлрд╛рдпрджреЗ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ, рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдФрд░ рдорд╢реАрди рдХреНрд░реИрд╢ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдлреНрд░реА рдПрдЖрдИ рдлреНрд░реЗрдорд╡рд░реНрдХ

рдЕрдиреНрдп рдЧрд╣рд░реА рд╢рд┐рдХреНрд╖рдг рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ : рд░реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЧрд╣рд░реА рд╕реАрдЦрдиреЗ рдХреА рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдЬреИрд╕реЗ рдХрд┐ рдЯреЗрдирд╕реЙрд░рдлреНрд▓реЛ, рдкрд┐рдПрдЯреЛрд░, рдФрд░ рдПрдордПрдХреНрд╕рдиреЗрдЯ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд░реЗ рдХреЗ рд╕рд╛рде рдПрдХ рдпрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЕрдиреНрдп рдЧрд╣рди рд╢рд┐рдХреНрд╖рдг рдврд╛рдВрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкреНрд░рдмрд▓рд┐рдд рд╢рд┐рдХреНрд╖рдг рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗред TensorFlow рдФрд░ PyTorch рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВ)ред

рдЕрдиреНрдп рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ : рдЖрдЬ, рдХрдИ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдПрдЖрдИ рд╕реЗ рдЬреБрдбрд╝реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗ рдмрд┐рдирд╛ рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдП рдЧрдП рдереЗ, рдЗрд╕рд▓рд┐рдП рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдЖрдИ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рд╣реИ рдФрд░ рдПрдЖрдИ рдХреЗ рд▓рд╛рдЧреВ рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рдирд╣реАрдВ рд╣реИред рдЖрдзреБрдирд┐рдХ рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдРрд╕реА (рдЖрд╡рд╢реНрдпрдХ, рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдРрд╕реА рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ:

  • рдорд┐рд▓рд┐рд╕рдХреЙрдиреНрдб-рд╕реНрддрд░реАрдп рдХрд╛рд░реНрдп рд╕рдорд░реНрдерди рдФрд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рд▓рд╛рдЦреЛрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ
  • рдиреЗрд╕реНрдЯреЗрдб рд╕рдорд╛рдирддрд╛ (рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рднреАрддрд░ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рдорд╛рдирд╛рдВрддрд░рдХрд░рдг, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рд╛рдЗрдкрд░рдкрд░рдореЗрдЯрд░реНрд╕ рдХреА рдЦреЛрдЬ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╛рдирд╛рдВрддрд░ рд╕рд┐рдореБрд▓реЗрд╢рди) (рдирд┐рдореНрди рдЖрдВрдХрдбрд╝рд╛ рджреЗрдЦреЗрдВ)
  • рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдорд╣рддреНрд╡рд╛рдХрд╛рдВрдХреНрд╖реА рдирд┐рд░реНрднрд░рддрд╛, рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдзреАрдореЗ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреА рдЧрддрд┐ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛)
  • рдПрдХ рд╕рд╛рдЭрд╛ рдЪрд░ рд╕реНрдерд┐рддрд┐ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдп (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд╡рдЬрди рдпрд╛ рдПрдХ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░)
  • рд╡рд┐рд╖рдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ (рд╕реАрдкреАрдпреВ, рдЬреАрдкреАрдпреВ, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди




рдиреЗрд╕реНрдЯреЗрдб рдХрдВрд╕реАрдбрд░ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдгред рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ, рджреЛ рдкреНрд░рдпреЛрдЧ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ (рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рдХрд╛рд░реНрдп рд╣реИ), рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдпреЛрдЧ рдореЗрдВ рдХрдИ рд╕рдорд╛рдирд╛рдВрддрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рднреА рдПрдХ рдХрд╛рд░реНрдп рд╣реИ)ред

рд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рджреЛ рдореБрдЦреНрдп рддрд░реАрдХреЗ рд╣реИрдВ: рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдФрд░ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдПрдкреАрдЖрдИ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрдирдореЗрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ Ray RLlib (рд╕реБрджреГрдвреАрдХрд░рдг рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА) рдФрд░ рд╣рд╛рдЗрдкрд░рдкрд╛рдореЗрдЯрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рд┐рдд рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреБрд╢рд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп Ray.tune рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рд░реЗ рд▓реЛ рд▓реЗрд╡рд▓ рдПрдкреАрдЖрдИ

рд░реЗ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдкреИрдЯрд░реНрди рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдПрдХ рдкреНрд░рд╛рдХреГрддрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ, рдмрд┐рдирд╛ MapReduce рдЬреИрд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рдкреИрдЯрд░реНрди рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИред

рдЧрддрд┐рд╢реАрд▓ рдХрд╛рд░реНрдп рд░реЗрдЦрд╛рдВрдХрди

рдЕрдиреБрдкреНрд░рдпреЛрдЧ (рдХрд╛рд░реНрдп) рд░реЗ рдореЗрдВ рдореВрд▓ рдЖрджрд┐рдо рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдХрд╛рд░реНрдп рдЧреНрд░рд╛рдл рд╣реИред рдпрд╣ TensorFlow рдореЗрдВ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧреНрд░рд╛рдл рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИред рдЬрдмрдХрд┐ TensorFlow рдореЗрдВ рдПрдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧреНрд░рд╛рдл рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЕрд▓рдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдХрдИ рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд░реЗ рдореЗрдВ рдХрд╛рд░реНрдп рдЧреНрд░рд╛рдлрд╝ рдкреВрд░реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддрд╛ рд╣реИред рдХрд╛рд░реНрдп рдЧреНрд░рд╛рдлрд╝ рдкрд╣рд▓реЗ рд╕реЗ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдПрдХ рдХрд╛рд░реНрдп рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдХрдИ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред



рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧреНрд░рд╛рдл рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдгред рд╕рдлреЗрдж рдЕрдВрдбрд╛рдХрд╛рд░ рдореЗрдВ, рдХрд╛рд░реНрдп рджрд┐рдЦрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдиреАрд▓реЗ рдЖрдпрддреЛрдВ рдореЗрдВ - рдСрдмреНрдЬреЗрдХреНрдЯред рддреАрд░реЛрдВ рд╕реЗ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдХрд╛рд░реНрдп рд╡рд╕реНрддреБрдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред

рдкрд╛рдпрдерди рдордирдорд╛рдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХрд┐рд╕реА рднреА рдХреНрд░рдо рдореЗрдВ рд╡реЗ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджрди рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВред

#    .      , #  . @ray.remote def multiply(x, y): return np.dot(x, y) @ray.remote def zeros(size): return np.zeros(size) #    .     , #       . x_id = zeros.remote((100, 100)) y_id = zeros.remote((100, 100)) #   .    ,     #  . z_id = multiply.remote(x_id, y_id) #  .      ,     . z = ray.get(z_id) 


рдЕрднрд┐рдиреЗрддрд╛рдУрдВ

рдЕрдХреЗрд▓реЗ рджреВрд░рд╕реНрде рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЙрдкрд░реЛрдХреНрдд рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ, рдпрд╣ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХрдИ рдХрд╛рд░реНрдп рдПрдХ рд╕рд╛рде рдПрдХ рд╣реА рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рд╕реНрдерд┐рддрд┐ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рд╕рд╛рде рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ, рдЬрд╣рд╛рдВ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреА рд╕реНрдерд┐рддрд┐, рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд╡рдЬрди рдпрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХреБрдЫ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрднрд┐рдиреЗрддрд╛ рдЕрдореВрд░реНрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рд░реЗ рдореЗрдВ рдХрдИ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рдПрдХ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд░рд╛рдЬреНрдп рдХреЛ рдПрдирдХреИрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдЕрдЯрд╛рд░реА рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред

 import gym @ray.remote class Simulator(object): def __init__(self): self.env = gym.make("Pong-v0") self.env.reset() def step(self, action): return self.env.step(action) #  ,    , ,   , #      simulator = Simulator.remote() observations = [] for _ in range(4): #     0.       #    observations.append(simulator.step.remote(0)) 


рдЕрдкрдиреА рд╕рднреА рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рдЕрднрд┐рдиреЗрддрд╛ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдмрд╣реБрдд рд▓рдЪреАрд▓рд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдпрд╛ рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдиреАрддрд┐ рдХреЛ рдПрдХ рдЕрднрд┐рдиреЗрддрд╛ рдореЗрдВ рд╕рдордЭрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рддрд░рд┐рдд рдкреНрд░рд╢рд┐рдХреНрд╖рдг (рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде) рдпрд╛ "рд▓рд╛рдЗрд╡" рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдиреАрддрд┐рдпрд╛рдВ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рд╡рд╛рдо: рдЕрднрд┐рдиреЗрддрд╛ рдХрдИ рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди / рдХрд╛рд░реНрдп рджреЗрддрд╛ рд╣реИред рд╕рд╣реА: рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЗ рдХрдИ рдХрд▓рд╛рдХрд╛рд░ рдХрдИ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рд┐рдд рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВред

рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдЙрджрд╛рд╣рд░рдг

рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЛ рдПрдХ рд░реЗ рдЕрднрд┐рдиреЗрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 @ray.remote class ParameterServer(object): def __init__(self, keys, values): #    ,     . values = [value.copy() for value in values] self.parameters = dict(zip(keys, values)) def get(self, keys): return [self.parameters[key] for key in keys] def update(self, keys, values): #        ,  #      for key, value in zip(keys, values): self.parameters[key] += value 


рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рд╣реИ ред

рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЛ рддреБрд░рдВрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред

 parameter_server = ParameterServer.remote(initial_keys, initial_values) 


рдЪрд╛рд░ рд▓рдВрдмреЗ-рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рдЧрд╛рддрд╛рд░ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдРрд╕рд╛ рдХрд░реЗрдВрдЧреЗред

 @ray.remote def worker_task(parameter_server): while True: keys = ['key1', 'key2', 'key3'] #     values = ray.get(parameter_server.get.remote(keys)) #     updates = тАж #   parameter_server.update.remote(keys, updates) #  4   for _ in range(4): worker_task.remote(parameter_server) 


рд░реЗ рдЙрдЪреНрдЪ рд╕реНрддрд░реАрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп

рд░реЗ RLlib рдПрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓ рд╕реБрджреГрдвреАрдХрд░рдг рд╕реАрдЦрдиреЗ рдХреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬрд┐рд╕реЗ рдХрдИ рдорд╢реАрдиреЛрдВ рдкрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдкрд╛рдпрдереЛ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдЗрд╕рдореЗрдВ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╢рд╛рдорд┐рд▓ рд╣реИ:

  • A3C
  • DQN
  • рд╡рд┐рдХрд╛рд╕рд╡рд╛рджреА рд░рдгрдиреАрддрд┐рдпрд╛рдБ
  • рдкреАрдкреАрдУ


рдЕрдиреНрдп рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдХрд╛рдо рдЪрд▓ рд░рд╣рд╛ рд╣реИред RLlib OpenAI рдЬрд┐рдо рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рд╣реИред

рд╣рд╛рдпрдкрд░рдкрд░реЗрдЯрд░реНрд╕ рдХреА рд╡рд┐рддрд░рд┐рдд рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП Ray.tune рдПрдХ рдХреБрд╢рд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИред рдпрд╣ рдЧрд╣рд░реА рд╢рд┐рдХреНрд╖рд╛, рд╕реБрджреГрдвреАрдХрд░рдг рд╕реАрдЦрдиреЗ рдФрд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рдпрдерди рдПрдкреАрдЖрдИ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╢рдХреНрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣рд╛рдБ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:

 from ray.tune import register_trainable, grid_search, run_experiments #   .     config def my_func(config, reporter): import time, numpy as np i = 0 while True: reporter(timesteps_total=i, mean_accuracy=(i ** config['alpha'])) i += config['beta'] time.sleep(0.01) register_trainable('my_func', my_func) run_experiments({ 'my_experiment': { 'run': 'my_func', 'resources': {'cpu': 1, 'gpu': 0}, 'stop': {'mean_accuracy': 100}, 'config': { 'alpha': grid_search([0.2, 0.4, 0.6]), 'beta': grid_search([1, 2]), }, } }) 


рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдХрд▓реНрдкрдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░реИрдирдм (рдпрд╛ рд╕реАрдзреЗ рдЬреЗрдиреНрд╕рди рд▓реЙрдЧреНрд╕ рдкрдврд╝реЗрдВ) рд╕реЗ рдЯреЗрдиреНрд╕рд░рдмреЛрд░реНрдб рдФрд░ рд╡рд┐рд╕реНрдХрд┐рдЯред Ray.tune рд╣рд╛рдЗрдкрд░рдмреИрдВрдб рдЬреИрд╕реЗ рдЧреНрд░рд┐рдб рдЦреЛрдЬ, рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЦреЛрдЬ рдФрд░ рдЕрдзрд┐рдХ рдЧреИрд░-рддреБрдЪреНрдЫ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдЯреЙрдк рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рд░реЗ рдкрд░ рдЕрдзрд┐рдХ

Source: https://habr.com/ru/post/hi420695/


All Articles