рдШрд░реЗрд▓реВ рд▓реЛрд╣реЗ рдкрд░ рдП.рдЖрдИ.
рд╣рдо рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рд╣рдордиреЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдврд╛рдВрдЪреЗ рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдФрд░ рд░реВрд╕реА рдПрд▓рдмреНрд░рд╕ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ред

рдпрд╣ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдХрд╛рдо рдерд╛, 2019 рдХреЗ рд╡рд╕рдВрдд рдореЗрдВ рд╣рдордиреЗ рдПрд▓реНрдмреНрд░рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрдбрд╝реА рдмреИрдардХ рдореЗрдВ рдпреИрдВрдбреЗрдХреНрд╕ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА, рдЕрдм рд╣рдо рд╣реЗрдмрд░ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ - рдПрд▓реНрдмреНрд░рд╕ рдХреНрдпрд╛ рд╣реИ
рдпрд╣ рдПрдХ рд░реВрд╕реА рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ рдЬрд┐рд╕рдХреА рдЕрдкрдиреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╣реИ, рдЬрд┐рд╕реЗ
MCST рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдХреНрд╕рд┐рдо рдЧреЛрд░реНрд╕реЗрдирд┐рди рдЕрдкрдиреЗ рдЪреИрдирд▓ рдкрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ:
www.youtube.com/watch?v=H8eBgJ58EPYрд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ - рдкрд╣реЗрд▓реАрд▓реАрдм рдХреНрдпрд╛ рд╣реИ
рдпрд╣ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рдордВрдЪ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо 2015 рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред Google TensorFlow рдФрд░ Facebook PyTorch рдХрд╛ рдПрдирд╛рд▓реЙрдЧред рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐, PuzzleLib рди рдХреЗрд╡рд▓ NVIDIA рдФрд░ рдЗрдВрдЯреЗрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ AMD рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдб рднреА рд╣реИред
рдпрджреНрдпрдкрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЫреЛрдЯреА рд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ (TensorFlow рдореЗрдВ рд▓рдЧрднрдЧ 2 рдорд┐рд▓рд┐рдпрди рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 100 рд╣рдЬрд╛рд░ рд╣реИрдВ), рд╣рдо рдЧрддрд┐ рдореЗрдВ рдмреЗрд╣рддрд░ рд╣реИрдВ - рдереЛрдбрд╝рд╛, рд▓реЗрдХрд┐рди рдмреЗрд╣рддрд░ =)
рд╣рдо рдЕрднреА рддрдХ рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреВрд░реНрдг рд╣реИ: рдпрд╣ рджреЛрдиреЛрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдЪрд░рдг рдФрд░ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдЗрдВрдЬреЗрдХреНрд╢рди рдЪрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЖрд╡рд░реНрддрдХ, рджреГрдврд╝ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЧрдгрдирд╛ рдХреЗ рдордирдорд╛рдиреЗ рд░реЗрдЦрд╛рдВрдХрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рднреА рд╣реИред
PuzzleLib рд╣реИ
- рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ (рд╕рдХреНрд░рд┐рдпрдг (рд╕рд┐рдЧреНрдореЙрдЗрдб, рддрди, рд░реЗрдпреВ, рдПрд▓рдпреВ, рд▓реАрдХреЗрд░реЗрдЙрд▓реВ, рд╕реЙрдлреНрдЯрдореИрдХреНрд╕рдкреНрд▓рд╕), рдПрдХреНрд╕рдкреНрд░реЗрд╕рдкреВрд▓ (1 рдбреА, 2 рдбреА, 3 рдбреА), рдмреИрдЪрдиреЙрд░реНрдо (1 рдбреА, 2 рдбреА, 3 рдбреА, рдПрдирдбреА), рдХрдиреНрд╡реЗрдВрд╢рди (1 рдбреА, 2 рдбреА, 3 рдбреА, рдПрдирдбреА) рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ , CrossMapLRN, Deconv (1D, 2D, 3D, ND), рдбреНрд░реЙрдкрдЖрдЙрдЯ (1D, 2D), рдЖрджрд┐)
- рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ (AdaDelta, AdaGrad, Adam, Hooks, LBFGS, MomentumSGD, NesterovSGD, RMSProp, рдЖрджрд┐)
- рд░реЗрдбреА-рдЯреВ-рдпреВрдЬрд╝ рдиреНрдпреВрд░рд▓ рдиреЗрдЯрд╡рд░реНрдХ (Resnet, Inception, YOLO, U-Net, рдЖрджрд┐)
рдпреЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдЙрди рд╕рднреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдХ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рднреА рдврд╛рдВрдЪреЗ рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдмреНрд▓реЙрдХреЛрдВ рдФрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕реЗ рдорд┐рд▓рдХрд░ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рд╣реИрдВ)ред
рд╣рдореЗрдВ рдПрд▓реНрдмреНрд░рд╕ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдкрд░ рдЕрдкрдиреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред
рд╣рдо рдПрд▓реНрдмреНрд░рд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ?
- рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд░реВрд╕реА рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ, рдореИрдВ рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдЪреАрдЬреЗрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЪрд▓ рд░рд╣реА рд╣реИрдВ, рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред
- рд╣рдордиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд░рд╛рдЬреНрдп рд╕рдВрдЧрдардиреЛрдВ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд░реВрд╕реА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЬреЛ рд╣рдо рд░реВрд╕реА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред
- рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рдо рдмрд╕ рджрд┐рд▓рдЪрд╕реНрдкреА рд░рдЦрддреЗ рдереЗ, рдХреНрдпреЛрдВрдХрд┐ рдПрд▓реНрдмреНрд░рд╕ рдПрдХ рд╡реАрдПрд▓рдЖрдИрдбрдмреНрд▓реНрдпреВ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ , рдЬреЛ рдХрд┐ рд▓рдВрдмреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ, рдФрд░ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреВрд░реНрдг-рд╕рд╛рдорд╛рдиреНрдп, рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдирд╣реАрдВ рд╣реИрдВред
рдпрд╣ рд╕рдм рдЗрд╕ рддрдереНрдп рд╕реЗ рд╢реБрд░реВ рд╣реБрдЖ рдХрд┐ рд╣рдо MCST рдХреЗ рд╕рд╛рде рдорд┐рд▓реЗ, рдмрд╛рдд рдХреА рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП
рдПрд▓реНрдмреНрд░рд╕ 401 рдХрдВрдкреНрдпреВрдЯрд░ рдХреЛ рдЙрдзрд╛рд░ рджрд┐рдпрд╛ред
рдореБрдЭреЗ рдХреНрдпрд╛ рдкрд╕рдВрдж рдЖрдпрд╛ : рд▓рд┐рдирдХреНрд╕ рдПрд▓реНрдмреНрд░рд╕ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ, рдЗрд╕ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдЕрдЬрдЧрд░ рд╣реИ, рдФрд░ рдпрд╣ рдПрдореБрд▓реЗрд╢рди рдореЛрдб рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рдПрдХ рдкреВрд░реНрдг рд╡рд┐рдХрд╕рд┐рдд, рджреЗрд╢реА рдЕрдЬрдЧрд░ рд╣реИ, рдЬреЛ рдПрд▓реНрдмреНрд░рд╕ рдХреЗ рд▓рд┐рдП рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдорд╛рдирдХ рдЕрдЬрдЧрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдПрдХ рдмрдВрдбрд▓ рднреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реБрдиреНрди, рдЬрд┐рд╕реЗ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдмрд╣реБрдд рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред
рдХреБрдЫ рдХрд╛рд░реНрдп рдереЗ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдерд╛: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, PuzzleLib рдореЗрдВ рд╣рдо рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд╡рдЬрди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдЪрдбреАрдПрдл рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░, рддрджрдиреБрд╕рд╛рд░, рд╣рдореЗрдВ lcc рд╕рдВрдХрд▓рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ libhdf рдФрд░ h5py рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдерд╛ред рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред
OpenCV рдХрдВрдкреНрдпреВрдЯрд░ рджреГрд╖реНрдЯрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдЬрдЧрд░ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдмрдВрдзрди рдирд╣реАрдВ рдерд╛ - рд╣рдордиреЗ рдЗрд╕реЗ рдЕрд▓рдЧ рд╕реЗ рдмрдирд╛рдпрд╛ред
рдкреНрд░рд╕рд┐рджреНрдз dlib рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдХреЗрд╡рд▓ рдЫреЛрдЯреА-рдореЛрдЯреА рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рдереАрдВ: рдЗрд╕ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдХреБрдЫ рдлрд╛рдЗрд▓реЗрдВ utf-8 рдХреЗ рдирд┐рд░реНрдзрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдмрдо-рдорд╛рд░реНрдХрд░ рдХреЗ рдмрд┐рдирд╛ рдереАрдВ, рдЬреЛ рдХрд┐ lcc lexer рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░рддреА рд╣реИрдВред рджрд░рдЕрд╕рд▓, рдмрд╕ рдПрдХ рдЧрд▓рдд рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рд░реВрдк рдерд╛, рдЬрд┐рд╕реЗ рд╕реНрд░реЛрдд рдореЗрдВ рд╕реБрдзрд╛рд░рдирд╛ рдерд╛ред
рд╣рдордиреЗ рдкрд╣рд▓реЗ рдлреЗрд╕ рд░рд┐рдХрдЧреНрдирд┐рд╢рди рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрд╣ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рддрд░рд╣, рдкрд╣реЗрд▓реА рд▓рд╛рдЗрдм рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдмреИрдХрдПрдВрдб рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдХреЛрдб рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред
рд╣рдорд╛рд░реЗ рдмреИрдХрдПрдВрдб:- CUDA (NVIDIA)
- рдУрдкрди рд╕реАрдПрд▓ + рдПрдордЖрдИ рдУрдкрди (рдПрдПрдордбреА)
- mlkDNN (рдЗрдВрдЯреЗрд▓)
- CPU (рд╕рдВрдЦреНрдпрд╛рддреНрдордХ)
рдПрд▓реНрдмреНрд░рд╕ рдкрд░, рд╣рдордиреЗ рдПрдХ рдЦрддрдирд╛ рдмреИрдХрдПрдВрдб рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛, рдЬреЛ рдмрд╣реБрдд рд╕рд░рд▓ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЛ рд╣рд░ рдЪреАрдЬрд╝ рдХреА рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ:
рдордВрдЪ -> c90 рд╕рдВрдХрд▓рдХ -> рдЕрдЬрдЧрд░ -> рд╕реБрдиреНрдирд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЬрдЯрд┐рд▓ рдХрд╛рд░рдХреЛрдВ рдХреЗ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЗ) - рдЗрд╕ рддрдереНрдп рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд┐ рд╣рдореЗрдВ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдЧреНрд░рд╣ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рд╣рдордиреЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдП, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рджреЛрдиреЛрдВ рджреГрдврд╝ рдЧреНрд░рд┐рдб рдФрд░ рдЖрд╡рд░реНрддрдХред рдлреЗрд╕ рд░рд┐рдХрдЧреНрдирд┐рд╢рди рдЬреЛ рд╣рдордиреЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдЗрдирд╕реЗрдкреНрд╢рди-рд░реЗрд╕рдиреЗрдЯ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред
рдХрд╛рдо рдХреЗ рдкрд╣рд▓реЗ рдкрд░рд┐рдгрд╛рдордЗрдВрдЯреЗрд▓ рдХреЛрд░ i7 7700 рдкрд░, рдПрдХ рдЫрд╡рд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдордп 0.1 рд╕реЗрдХрдВрдб рдерд╛, рдФрд░ рдпрд╣рд╛рдВ - 15. рдпрд╣ рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдмреЗрд╢рдХ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╕реБрдиреНрди рдордХреНрдЦреА рдкрд░ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЧрд▓рдд рд╣реЛрдЧрд╛ред
рд╣рдордиреЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЛ рдХреИрд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛
рд╣рдордиреЗ рдкрд╛рдпрдерди рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрдорд╛рди рдЧрддрд┐ рдХреЛ рдорд╛рдкрд╛ рдФрд░ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд▓рдЧрднрдЧ рд╕рднреА рд╕рдордп рдЦрд╕реНрддрд╛ рдореЗрдВ рдореИрдЯреНрд░рд┐рд╕реЗрд╕ рдХреЛ рдЧреБрдгрд╛ рдХрд░рдирд╛ рдерд╛ред рдирдореВрдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓, рдореИрдиреБрдЕрд▓ рдЧреБрдгрди рд▓рд┐рдЦрд╛ рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рддреЗрдЬ рд╣реЛ рдЧрдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдХреНрдпреЛрдВред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ numpy.dot рдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЧреБрдгрд╛ рд╕реЗ рдереЛрдбрд╝рд╛ рдХрдо рднреЛрд▓рд╛ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдлрд┐рд░ рднреА, рд╣рдордиреЗ рдЖрд╢реНрд╡рд╕реНрдд рдХрд┐рдпрд╛, рдЬрд╛рдБрдЪ рдХреА - рдпрд╣ рддреЗрдЬреА рд╕реЗ рдирд┐рдХрд▓рд╛ (15 рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рддрд┐ рдлреНрд░реЗрдо 12 рд╕реЗрдХрдВрдб)ред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдордиреЗ рд░реИрдЦрд┐рдХ рдмреАрдЬрдЧрдгрд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдИрдПрдордПрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдЦрд╛, рдЬрд┐рд╕реЗ рдЖрдИрд╕реАрдПрд╕рдЯреА рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ np.dot рдХреЙрд▓ рдХреЛ cblas_sgemm рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ 10 рдЧреБрдирд╛ рддреЗрдЬ (1.5 рд╕реЗрдХрдВрдб) рд╣реЛ рдЧрдпрд╛ - рд╣рдо рдмрд╣реБрдд рдкреНрд░рд╕рдиреНрди рдереЗред
рдЗрд╕рдХреЗ рдмрд╛рдж рдХрдИ рдЪрд░рдг-рджрд░-рдЪрд░рдг рдЕрдиреБрдХреВрд▓рди рдХрд┐рдП рдЧрдПред рдЪреВрдВрдХрд┐ рд╣рдо рдХреЗрд╡рд▓ рдЪреЗрд╣рд░реЗ рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЖрдо рддреМрд░ рдкрд░ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдирд╣реАрдВ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЕрдкрдиреЗ рдСрдкрд░реЗрд╢рди рдХреЛ рдХреЗрд╡рд▓ 4d рдЯреЗрдирд░реНрд╕ рдХреЗ рддрд╣рдд рддреЗрдЬ рдХрд░рдиреЗ рдФрд░ рдлреНрдпреВрдЬрди рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ - рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдордп 2 рдЧреБрдирд╛ - 0.75 рд╕реЗрдХрдВрдб рддрдХ рдХрдо рд╣реЛ рдЧрдпрд╛ред
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг: рд╕рдВрд▓рдпрди рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХрдИ рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рдПрдХ рдореЗрдВ рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджреГрдврд╝ рд╕рдВрдХрд▓реНрдк, рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдФрд░ рд╕рдХреНрд░рд┐рдпрдгред рддреАрди рдЪрдХреНрд░реЛрдВ рдореЗрдВ рдПрдХ рдкрд╛рд╕ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдПрдХ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп NVIDIA (
TensorRT ) рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рдПрдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧреНрд░рд╛рдл рдХреЛ рдЗрд╕рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдПрдХ рдЕрдиреБрдХреВрд▓рд┐рдд, рддреНрд╡рд░рд┐рдд рдЧреНрд░рд╛рдлрд╝ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддреА рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдпрд╣ рдПрдХ рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдзреНрд╡рд╕реНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрдВрдЯреЗрд▓ рдореЗрдВ рднреА рдПрдХ рд╕рдорд╛рди (nGraph рдФрд░
OpenVINO ) рд╣реИред
рддрдм рд╣рдордиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЪреВрдВрдХрд┐ рд░рд┐рд╕реЗрдкреНрд╢рди-рд░реЗрд╕рдиреЗрдЯ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ 1x1 рдХреЙрдиреНрдлреЛрд▓реНрдпреВрд╢рди рдереЗ, рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рдбреЗрдЯрд╛ рдХреЙрдкреА рдерд╛ред рд╣рдордиреЗ рдЗрд╕ рддрдереНрдп рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реЛрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рд╣рдо 1 рдлреЛрдЯреЛ рд╕реЗ рдмреИрдЪреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ (рдпрд╛рдиреА, рдмреИрдЪреЛрдВ рдореЗрдВ 100 рддрд╕реНрд╡реАрд░реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдореЛрдб рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ) - рдРрд╕реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрдм рдЖрдкрдХреЛ рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдзрд╛рд░рд╛ рдХреЗ рд╕рд╛рде (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реАрдбрд┐рдпреЛ рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдпрд╛ рдПрд╕реАрдПрд╕)ред рд╣рдордиреЗ
im2col рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рд░реНрдЧ рдмрдирд╛рдпрд╛ (рдмрдбрд╝реА рдкреНрд░рддрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛) - рдпрд╣ 0.45 рд╕реЗрдХрдВрдб рд╣реЛ рдЧрдпрд╛ред
рдлрд┐рд░ рд╣рдордиреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрд╛, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдм рдХреБрдЫ рдЙрд╕реА рддрд░рд╣ рдерд╛ - рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕рднреА рдЪрд░рдг рд╕рдордп рдХреЗ рд╕рд╛рде рд╕рд┐рдХреБрдбрд╝ рдЧрдП, рд╣рдо рдЕрднреА рднреА рд╕рдордп рдХрд╛ 80% рд╕рдЬрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдХреА рдЧрдгрдирд╛ рдкрд░ рдЦрд░реНрдЪ рдХрд░рддреЗ рд╣реИрдВред
рд╣рдореЗрдВ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рд╣рдореЗрдВ
рдЬреЗрдо (рд╕рд╛рдорд╛рдиреНрдп рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрд╛) рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд╣ рд░рддреНрди, рдЬреЛ рдИрдПрдордПрд▓ рдореЗрдВ, рдПрдХрд▓-рдкрд┐рд░реЛрдпрд╛ рдЧрдпрд╛ рдерд╛ред рддрджрдиреБрд╕рд╛рд░, рд╣рдореЗрдВ рд╕реНрд╡рдпрдВ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд░рддреНрди рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ: рдПрдХ рдмрдбрд╝реА рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рд╕рдмрдмреНрд▓реЙрдХ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрди рдЫреЛрдЯреЗ рдореИрдЯреНрд░рд┐рд╕реЗрд╕ рдХрд╛ рдЧреБрдгрд╛ рд╣реЛрддрд╛ рд╣реИред рд╣рдордиреЗ рдУрдкрдирдПрдордкреА рдХреЗ рд╕рд╛рде рдПрдХ рд░рддреНрди рд▓рд┐рдЦрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛, рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдИрдВред рд╣рдордиреЗ рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдПрдХ рдореИрдиреБрдЕрд▓ рдкреВрд▓ рд▓рд┐рдпрд╛, рд╕рдорд╛рдирд╛рдВрддрд░рдХрд░рдг рдиреЗ рдкреНрд░рддрд┐ рдлреНрд░реЗрдо 0.33 рд╕реЗрдХрдВрдб рджрд┐рдПред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ
рдПрд▓реНрдмреНрд░рд╕ 8 рд╕реА рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдзрд┐рдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╕рд░реНрд╡рд░ рдХреЛ рд░рд┐рдореЛрдЯ рдПрдХреНрд╕реЗрд╕ рджрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдХреА рдЧрддрд┐ рдкреНрд░рддрд┐ рдлреНрд░реЗрдо 0.2 рд╕реЗрдХрдВрдб рддрдХ рдмрдврд╝ рдЧрдИред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реАрдбрд┐рдпреЛ рдПрдХ рдПрд▓реНрдмреНрд░рд╕ 4C рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдПрд▓реНрдмреНрд░рд╕ 401-рдкреАрд╕реА рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЪреЗрд╣рд░реЗ рдХреА рдкрд╣рдЪрд╛рди рдХреЗ рд╕рд╛рде рдбреЗрдореЛ рд╕реНрдЯреИрдВрдб рдХрд╛ рдХрд╛рдо рджрд┐рдЦрд╛рддрд╛ рд╣реИ:
рдирд┐рд╖реНрдХрд░реНрд╖ рдФрд░ рднрд╡рд┐рд╖реНрдп рдХреА рдпреЛрдЬрдирд╛рдПрдВ
- рд╣рдо рди рдХреЗрд╡рд▓ рдкрд╣рдЪрд╛рди рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдХрд┐рд╕реА рднреА рдбрд┐рдЯреЗрдХреНрдЯрд░, рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдорд▓рдмреЗ рдкрд░ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
- рд╣рдордиреЗ PuzzleLib рдкрд░ рдЪреЗрд╣рд░рд╛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрдм-рдпреВрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдХ рдбреЗрдореЛ рд╕реНрдЯреИрдВрдб рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рд╣реИред
- рдПрд▓реНрдмреНрд░рд╕ рдкрд░ рдЪреЗрд╣рд░реЗ рдХреА рдкрд╣рдЪрд╛рди рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рддреЗрдЬ рд╣реИ, рдлрд┐рд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЖрдк рдЗрд╕реЗ рдЧрддрд┐ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред
- рдЖрдк рдПрд▓реНрдмреНрд░рд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рд╡рд┐рджреЗрд╢реА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рдереЗ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджрд╕рд┐рдпреЛрдВ рд░реВрд╕реА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдЬреЛ рдЕрднреА рднреА рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣реЗ рд╣реИрдВ, рдПрдПрдордбреА рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдб рдФрд░ рдЙрдирдХреЗ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рдеред рд╡рд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИред рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рд╣рдо рдПрдордПрдо рдУрдкрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдПрдПрдордбреА рд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЦрд░рд╛рдм рд▓рд┐рдЦрд┐рдд рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реНрдЯреНрд░рд╛рдЗрдбреНрд╕, рдкреИрдбрд┐рдВрдЧ рдФрд░ рдлрд┐рд▓реНрдЯрд░ рд╕рд╛рдЗрдЬ рдХреЗ рд╕рднреА рд╕рдВрдпреЛрдЬрди рд╕рдлрд▓ рдЧрдгрдирд╛ рдХреА рдУрд░ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдПрд▓реНрдмреНрд░рд╕ рд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдЕрдЪреНрдЫреА рд╣реИ - рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╛рдпрдерди, рд╕реА рдпрд╛ рд╕реА ++ рдореЗрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдПрд▓реНрдмреНрд░рд╕ рдкрд░ рдЪрд▓рд╛рдирд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред
- рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рд╣рдордиреЗ рдЬрд┐рд╕ рдЪрд░рдг-рджрд░-рдЪрд░рдг рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереА, рд╡рд╣ рдПрд▓реНрдмреНрд░рд╕ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЪрд╛рд▓рди рдирд╣реАрдВ рд╣реИред рдпреЗ рдорд╛рдирдХ рдорд▓реНрдЯреА-рдХреЛрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдВрдЪрд╛рд▓рди рд╣реИрдВред рд╣рдорд╛рд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рдЗрдВрдЯреЗрд▓ / рдПрдирд╡реАрдЖрдИрдбреАрдЖрдИрдП рд╕реЗ рдирд┐рдпрдорд┐рдд рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпреЛрдЬрдирд╛рдУрдВ:
- рдЪреВрдВрдХрд┐ рдПрд▓рдмреНрд░рд╕ рдХреА рдЦрд╝рд╛рд╕рд┐рдпрдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╡реАрдПрд▓рдЖрдИрдбрдмреНрд▓реНрдпреВ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрд▓рдмреНрд░рд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреБрдЫ рдЕрдиреБрдХреВрд▓рди рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
- рдкрд░рд┐рдорд╛рдгреАрдХрд░рдг (рдлреНрд▓реЛрдЯ 32 рдХреЗ рдмрдЬрд╛рдп int8 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛) рдХрд░реЗрдВ, рдЬреЛ рд╕реНрдореГрддрд┐ рдХреЛ рдмрдЪрд╛рддрд╛ рд╣реИ рдФрд░ рдЧрддрд┐ рдмрдврд╝рд╛рддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЧрдгрдирд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдореЗрдВ рдПрдХ рдЧрд┐рд░рд╛рд╡рдЯ рд╣реЛ рд╕рдХрддреА рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рдордиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдХреЛ рджреЗрдЦрд╛ рд╣реИред
рд╣рдо рдЖрдЧреЗ рд╕рдордЭрдиреЗ, рд╡реАрдПрд▓рдЖрдИрдбрдмреНрд▓реНрдпреВ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдХреЗрд╡рд▓ рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рд╣рдо рдЕрдЪреНрдЫрд╛ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЗрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрд▓реНрдмреНрд░рд╕ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рдерд╛, рд╣рдо рдЖрдЧреЗ рд╕рдордЭреЗрдВрдЧреЗред рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ - рд╕рднреА рдкреЛрд░реНрдЯрд┐рдВрдЧ рдСрдкрд░реЗрд╢рдиреЛрдВ рдореЗрдВ рдХреБрд▓ рдПрдХ рд╕рдкреНрддрд╛рд╣ рдХрд╛ рд╕рдордп рд▓рдЧрд╛ред
рдЬрдирд╡рд░реА 2020 рдореЗрдВ рд╣рдордиреЗ рдкрд╣реЗрд▓реАрд▓рд┐рдм рдХреЛ рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рд╣реИ, рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рд▓рд┐рдЦреЗрдВрдЧреЗ =)
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!