рдПрдордПрд▓-рдмреНрд▓рд┐рдЯреНрдЬ: рдкрд╣рд▓реЗ рдпреЛрдЧреНрдпрддрд╛ рджреМрд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг

23 рдЬреВрди, 2018 рдХреЛ, рдпреИрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЖрдпреЛрдЬрд┐рдд рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛, рдПрдордПрд▓-рдмреНрд▓рд┐рдЯреНрдЬ рдХрд╛ рдлрд╛рдЗрдирд▓ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рд╣рдордиреЗ рд╣реИрдмреЗ рдкрд░ рдЗрд╕рдХреА рдШреЛрд╖рдгрд╛ рдХреА рдФрд░ рдмрддрд╛рдпрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рдореЗрдВ рдХреМрди рд╕реЗ рдХрд╛рд░реНрдп рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред


рдЕрдм рд╣рдо рдЖрдкрдХреЗ рд╕рд╛рде рдХреНрд╡рд╛рд▓рд┐рдлрд┐рдХреЗрд╢рди рд░рд╛рдЙрдВрдб рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рджреЛ рдкреНрд░рддрд┐рднрд╛рдЧреА рдЗрд╕ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рдХреА рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ; 57 рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдиреЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛, рдФрд░ 110 рдиреЗ рдХрд╛рд░реНрдп рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдПрдХ рдкреНрд░рдпрд╛рд╕ рдкреВрд░рд╛ рдХрд┐рдпрд╛ред


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


рдкреНрд░рддрд┐рдпреЛрдЧрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЕрдЬрдЧрд░ рдереА, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрдм рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред


рдореЗрд░реЗ рд╕рднреА рд╕рдорд╛рдзрд╛рди GitHub рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред


рдЫрд╡рд┐


рд╕рдорд╕реНрдпрд╛ рдПред рдирд┐рд░реНрдгрд╛рдпрдХ рд╕реНрдЯрдВрдк


рдХрд╛рд░реНрдп
рдЕрдЬрдЧрд░ рдХрд╛ рд╣рд▓
рд╕реА ++ рд╕рдорд╛рдзрд╛рди


рдирд┐рд░реНрдгрд╛рдпрдХ рд╕реНрдЯрдВрдк рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдирд┐рд░реНрдгрд╛рдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╕реНрдерд┐рд░ рдХрд╛рд░реНрдп рд╣реИ:


f (x) = \ left \ {\ {start \ array} {ll} a, & \ quad x <c \\ b, & \ quad x \ ge c \ end {array} \ rightред


рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ, рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдирдореВрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрд╖реНрдЯрддрдо рдирд┐рд░реНрдгрдп рд╕реНрдЯрдВрдк рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдпрд╛рдиреА рджреА рдЧрдИ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ (x1,y1), ldots,(xn,yn), рджреНрд╡рд┐рдШрд╛рдд рд╣рд╛рдирд┐ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдгрд╛рдпрдХ рд╕реНрдЯрдВрдк рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЗрд╖реНрдЯрддрдо рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред


Q(f,x,y)= sumi=1n(f(xi)тИТyi)2


рдЙрддреНрддрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╖реНрдЯрддрдо рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ рдП,рдмреА,рд╕реАред


рдирд┐рд░реНрдгрдп

рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдЬреНрдЮрд╛рдд рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдПрдХ рдЯреБрдХрдбрд╝реЗ-рдЯреБрдХрдбрд╝реЗ-рдЪрд┐рдХрдиреА рдирд┐рд░реНрдорд╛рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реАрдЬреНрдЮрд╛рдд рддреЛ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рддреЗ рд╣реИрдВ рдПрдХрдФрд░ рдмрдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдЖрдк рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрдХреВрд▓рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЧрдгрд┐рддреАрдп рд░реВрдк рд╕реЗ рд╕рдорд╛рдзрд╛рди рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдкреИрд░рд╛рдореАрдЯрд░ рдПрдХрдХреНрдпрд╛ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдкрд░ рдирд┐рд░реНрдгрд╛рдпрдХ рд╕реНрдЯрдВрдк рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгрд┐рдпреЛрдВ рдХрд╛ рдкрд░рд┐рдорд╛рдг рд╣реИ (xi,yi)рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдирдореВрдирд╛ xi<cред рдЗрд╕реА рддрд░рд╣, рдмрдЙрди рд╡рд╕реНрддреБрдУрдВ рдкрд░ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгрд┐рдпреЛрдВ рдХрд╛ рдкрд░рд┐рдорд╛рдг рд╣реИ (xi,yi)рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдирдореВрдирд╛ xi gecред


рд╣рдо рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕реЗрдЯ рдХреЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдмрд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрддрди рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ: рдПрд▓(рд╕реА)рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдПрдХ рд╕рдмрд╕реЗрдЯ рд╣реИ рд╕реАред рдЖрд░(рд╕реА)- рдмрд┐рдВрджреБ рдХреЗ рджрд╛рдИрдВ рдУрд░ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕рдмрд╕реЗрдЯ рд╕реАред


L (c) = \ {(x_i, y_i) | x_i <c \}


R (c) = \ {(x_i, y_i) | x_i \ ge c \}


рдлрд┐рд░ рдЗрд╖реНрдЯрддрдо рдореВрд▓реНрдп рдПрдХрд╕реЗрдЯ рдореЗрдВ рдЙрддреНрддрд░реЛрдВ рдХреЗ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдорд╛рдзреНрдп рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛ рдПрд▓(рд╕реА), рдФрд░ рдЗрд╖реНрдЯрддрдо рдореВрд▓реНрдп рдм- рдХреНрд░рдорд╢рдГ, рд╕реЗрдЯ рдореЗрдВ рдЙрддреНрддрд░реЛрдВ рдХреЗ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдорд╛рдзреНрдп рдЖрд░(рд╕реА)ред


рдЗрд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЙрдЪрд┐рдд рдард╣рд░рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

a= arg mint in mathbbR sum(xi,yi) in(c)(tтИТyi)2


b = \ arg \ min_ {t \ in \ mathbb {R}} {\ _ _ {{(x_i, y_i) \ _ in R (c)} (t - y_i) ^ 2}


рдпрд╣ рд╕рд░реНрд╡рд╡рд┐рджрд┐рдд рд╣реИ рдХрд┐ рдРрд╕реА рдЕрдиреБрдХреВрд▓рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдЙрддреНрддрд░ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдорд╛рдзреНрдп рд╣реИ:


a = \ frac {\ _ _ _ (x_i, y_i) \ _ рдореЗрдВ (c)} yii} {!! L (c) |}


b = \ frac {\ _ _ _ (x_i, y_i) \ _ in R (c)} yii} {!! L (c) |}


рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЖрд╕рд╛рди рд╣реИред рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдореВрд▓реНрдп рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдиреБрдХрд╕рд╛рди рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХрд╛ рдЖрдВрд╢рд┐рдХ рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░реЗрдВ:


 frac рдЖрдВрд╢рд┐рдХ рдЖрдВрд╢рд┐рдХt sumyinY(tтИТy)2=2 cdot sumy inY(tтИТy)=2 cdot|рд╡рд╛рдИ| cdottтИТ2 cdot sumy inYy


рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЛ рд╢реВрдиреНрдп рдХреЗ рдмрд░рд╛рдмрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ


t= frac1|Y| sumy inYy


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


рддреЛ рдЕрдм рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХреИрд╕реЗ рдЦреЛрдЬрдирд╛ рд╣реИ рдПрдХрдФрд░ рдмрдПрдХ рдЬреНрдЮрд╛рдд рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рд╕реАред рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд░рд╣рддрд╛ рд╣реИ рдХрд┐ рдЗрд╖реНрдЯрддрдо рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди рдХреИрд╕реЗ рдкрд╛рдпрд╛ рдЬрд╛рдП рд╕реАред


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


рд╕рднреА рд╕рдВрднрд╡ рд╡рд┐рднрд╛рдЬрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЧреИрд░-рдШрдЯрддреА рд╡рд┐рд╢реЗрд╖рддрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:


(xi1,yi1), ldots(xin,yin)


xi1 lexi2 le ldots lexin


рдЕрдм рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рджрд┐рд▓рдЪрд╕реНрдк рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди рд╕реАрдорд╛рддреНрд░рд╛рдПрдБ рд╣реИрдВ


 fracxi1+xi22, fracxi2+xi32, ldots, fracxinтИТ1+xin2


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


рд╡рд╣ рд╕рдм рдХреБрдЫ рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рдкреНрд░рднрд╛рд╡реА рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред рд╡рд░реНрдгрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреА рджреНрд╡рд┐рдШрд╛рдд рдЬрдЯрд┐рд▓рддрд╛ рд╣реЛ рдЬрд╛рдПрдЧреА, рдЬреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред


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


рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рдореИрдВ рд╡реЗрд▓рдлреЛрд░реНрдб рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ "рдорд╛рдирдХ" рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрдгрдирд╛ рд╕реЗ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдиреБрдХреАрд▓реЗ рдФрд░ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЕрдЬрдЧрд░ рднрд╛рд╖рд╛ рдХреЗ рдкреНрд░рд╛рдердорд┐рдХ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХрд╛ рдЬреНрдЮрд╛рди рдПрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред


рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рд╡рд░реНрдзрд┐рдд рд╡рд┐рдЪрд▓рди рдХреЗ рдФрд╕рдд рдФрд░ рдпреЛрдЧ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рджреЛ рд╡рд░реНрдЧреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ:


class MeanCalculator: def __init__(self): self.Count = 0. self.Mean = 0. def Add(self, value, weight = 1.): self.Count += weight self.Mean += weight * (value - self.Mean) / self.Count def Remove(self, value, weight = 1.): self.Add(value, -weight) class SumSquaredErrorsCalculator: def __init__(self): self.MeanCalculator = MeanCalculator() self.SSE = 0. def Add(self, value, weight = 1.): curDiff = value - self.MeanCalculator.Mean self.MeanCalculator.Add(value, weight) self.SSE += weight * curDiff * (value - self.MeanCalculator.Mean) def Remove(self, value, weight = 1.): self.Add(value, -weight) 

рдЕрдм рд╣рдореЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕реЗрдЯ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдФрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд░реНрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдЗрд╕рдХреЗ рдХреНрд╖реЗрддреНрд░ рдФрд░ рдЗрдирдкреБрдЯ рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ:


 class Instances: def __init__(self): self.Items = [] self.OverAllSSE = SumSquaredErrorsCalculator() def Read(self): fin = open('stump.in') for line in fin.readlines()[1:]: x, y = map(float, line.strip().split()) self.Items.append([x, y]) self.OverAllSSE.Add(y) self.Items.sort() 

рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА рдбреЗрдЯрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЗ рд╕рд╛рде, рд╣рдо рддреБрд░рдВрдд рдЪрдпрди рдореЗрдВ рд╕рднреА рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП SumSquaredErrorsCalculator рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рдкреВрд░реЗ рдирдореВрдиреЗ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдЗрд╕реЗ рдЧреИрд░-рдШрдЯрддреЗ рд╡рд┐рд╢реЗрд╖рддрд╛ рдорд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕реЙрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВред


рдЕрдм рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд: рдЗрд╖реНрдЯрддрдо рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди рдЦреЛрдЬрдиреЗ рдХреА рд╡рд┐рдзрд┐ред


рдЖрдЗрдП рдЖрд░рдВрдн рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рд╕рд╣реА рд╕рдмрдорд┐рд╢рди рдореЗрдВ рд╣реИрдВред рдлрд┐рд░ рдкреИрд░рд╛рдореАрдЯрд░ рдПрдХрдХреБрдЫ рднреА, рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдмрдкреВрд░реЗ рдирдореВрдиреЗ рдореЗрдВ рдФрд╕рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░, рдФрд░ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реАрдРрд╕реЗ рдХрд┐ рдЪрдпрди рдореЗрдВ рд╕рднреА рд╡рд╕реНрддреБрдПрдВ рдЗрд╕рдХреЗ рдЕрдзрд┐рдХрд╛рд░ рдореЗрдВ рд╣реИрдВред


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


 left = SumSquaredErrorsCalculator() right = self.OverAllSSE bestA = 0 bestB = right.MeanCalculator.Mean bestC = self.Items[0][0] bestQ = right.SSE 

рдЕрдм рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред рд╣рдо рдПрдХ рд╕рдордп рдореЗрдВ рдЪрдпрди рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдВрдЧреЗред рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рдмрд╛рдИрдВ рд╕рдмрд╕реЗрдЯ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдЖрдкрдХреЛ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд┐рднрд╛рдЬрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ - рдЕрд░реНрдерд╛рдд, рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдореВрд▓реНрдп рдЕрдЧрд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдореВрд▓реНрдп рд╕реЗ рдЕрд▓рдЧ рд╣реИред


 for i in range(len(self.Items) - 1): item = self.Items[i] nextItem = self.Items[i + 1] left.Add(item[1]) right.Remove(item[1]) if item[0] == nextItem[0]: continue a = left.MeanCalculator.Mean b = right.MeanCalculator.Mean c = (item[0] + nextItem[0]) / 2 q = left.SSE + right.SSE if q < bestQ: bestA = a bestB = b bestC = c bestQ = q 

рдЕрдм рдХреЗрд╡рд▓ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреА рд░рдЪрдирд╛ рдХрд░рдирд╛ рд╢реЗрд╖ рд░рд╣ рдЧрдпрд╛ рд╣реИ:


 instances = Instances() instances.Read() a, b, c = instances.BestSplit() print >> open('stump.out', 'w'), a, b, c 

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


рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ C ++ рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ ред рдпрд╣ рд╕рдорд╛рдзрд╛рди рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ 60 рдорд┐рд▓реАрд╕реЗрдХреЗрдВрдб рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ред


рд╕рдорд╕реНрдпрд╛ рдмреА рдЧреБрдгрд╛рдВрдХреЛрдВ рдХреА рд╡рд╕реВрд▓реА


рдХрд╛рд░реНрдп
рд╕реНрдХреЗрд▓реЗрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╛рдпрдерди рд╕рдорд╛рдзрд╛рди


рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдПрдХред рдмред рд╕реАрдХрд╛рд░реНрдпреЛрдВ рдЪрдкреНрд░рд╕рд┐рджреНрдз рдЬреЛрдбрд╝реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрдиреЗ (x1,f(x1)), ldots,(xn,f(xn))рдФрд░ рдпрд╣ рдЬрд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рди рдирд┐рдореНрди рд╕реВрддреНрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ:


f(x)= Big((a+ varepsilona) sinx+(b+ varepsilonb) lnx Big)2+(c+ varepsilonc)x2


рдирд┐рд░реНрдгрдп

рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЪрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реБрдП рдХреЛрд╖реНрдардХ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реЗрдВ:


f(x)=a2 cdot sin2(x)+b2 cdot ln2(x)+2ab cdot sin(x) cdot ln(x)+c cdotx2


рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдореБрдХреНрдд рдЧреБрдгрд╛рдВрдХ рдХреЗ рдмрд┐рдирд╛ рдмрд╣реБрдЖрдпрд╛рдореА рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдорд╛рддреНрд░рд╛рдПрдБ рд╣реИрдВ  sin2(x)ред  ln2(x)ред  sin(x) cdot ln(x)ред x2ред


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


рдмрд╣реБрдЖрдпрд╛рдореА рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╕рдордп, рдХреБрдЫ рдЧреБрдгрд╛рдВрдХ рд╕рдВрд╢реЛрдзрд┐рдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдорд┐рд▓реЗрдВрдЧреЗред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдорд┐рд▓реЗрдЧрд╛ рдЪ:


f(x)=t1 cdot sin2(x)+t2 cdot ln2(x)+t3 cdot sin(x) cdot ln(x)+t44 cdotx2


рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдк рдЧреБрдгрд╛рдВрдХ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдПрдХред рдмред рд╕реА:


a= sqrt(t1),b= sqrt(t2),c=t4


рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдпрд╣ рдЬрд╛рдБрдЪрдиреЗ рдпреЛрдЧреНрдп рд╣реИ 2 cdota cdotb рд▓рдЧрднрдЧt3


рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕рдВрдХреЗрдд рдмрдирд╛рдиреЗ рдЪрд╛рд╣рд┐рдП:


 x = [] y = [] for line in open('data.txt'): xx, yy = map(float, line.strip().split()) x.append(xx) y.append(yy) features = [] for xx in x: curFeatures = [ math.sin(xx) ** 2, # a^2 math.log(xx) ** 2, # b^2 math.sin(xx) * math.log(xx), # 2ab xx ** 2 # c ] features.append(curFeatures) 

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


 linearModel = lm.LinearRegression() linearModel.fit(features, y) coeffs = linearModel.coef_ a = math.sqrt(coeffs[0]) b = math.sqrt(coeffs[1]) c = coeffs[3] print "free coeff: ", linearModel.intercept_ print "2ab error: ", coeffs[2] - 2 * a * b print a, b, c 

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдореБрдХреНрдд рдЧреБрдгрд╛рдВрдХ -0.0007 рд╣реИ, рдФрд░ рдЧрдгрдирд╛ рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реИ t30.00135 рдХреА рд░рд╛рд╢рд┐ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкрд╛рдпрд╛ рдЧрдпрд╛ рд╕рдорд╛рдзрд╛рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реБрд╕рдВрдЧрдд рд╣реИред


рдЧреБрдгрд╛рдВрдХ рдХреЗ рд╕рд╛рде рдЕрдВрддрд┐рдо рдкрдВрдХреНрддрд┐:


 3.14172883822 2.71842889253 3.999957864335599 

рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЙрддреНрддрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдпреЛрдЧреНрдп рдУрдХреЗ рдкрд╛рддреЗ рд╣реИрдВ!


рдЯрд╛рд╕реНрдХ рд╕реАред рдлреНрд░реЗрд╢рдиреЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░


рдХрд╛рд░реНрдп
рдХреИрдЯрдмреЙрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ


рдЗрд╕ рдХрд╛рд░реНрдп рдореЗрдВ, рдХрд╛рд░рдХреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдФрд░ рдЙрджреНрджреЗрд╢реНрдп рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рддреИрдпрд╛рд░ рдирдореВрдирд╛ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдирдП рдХреНрд╡реЗрд░реА рдбрд┐рдЯреЗрдХреНрдЯрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдПрдХ рдЕрдиреБрд░реЛрдз рд╡рд░реНрдгрд┐рдд рд╣реИред рдХрд╛рд░рдХ рдЕрддреАрдд рдореЗрдВ рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЖрд╡реГрддреНрддрд┐ рдереЗ: рдЕрдВрддрд┐рдо рдШрдВрдЯреЗ рдХреЗ рд▓рд┐рдП, рджреЛ рдШрдВрдЯреЗ, рдЫрд╣ рдШрдВрдЯреЗ, 12, 24, 72 рдШрдВрдЯреЗред рдЙрджреНрджреЗрд╢реНрдп рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд┐рдЖрдзрд╛рд░реА рд╣реИ: рдпрджрд┐ рдПрдХ рдХреНрд▓рд┐рдХ рдкрд░ рдПрдХ рддрд╛рдЬрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╣ рдПрдХ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдпрд╣ рд╢реВрдиреНрдп рд╣реИред


рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдпрд╛ рддреЛ рд╢реВрдиреНрдп рдпрд╛ рдПрдХ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдЯ рдкрд░ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ F1-рдорд╛рддрд╛ 0.25 рдкрд░ред


рдирд┐рд░реНрдгрдп

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


рдХреИрдЯрдмреЙрд╕реНрдЯ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреЛ рдлрд╛рдЗрд▓реЗрдВ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдФрд░ рдкрд░реАрдХреНрд╖рдг, рд╕рд╛рде рд╣реА рдХреЙрд▓рдо рд╡рд┐рд╡рд░рдгред рд╕реНрддрдВрднреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рд╕рдВрдХрд▓рди рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ: рдкрд╣рд▓реЗ рджреЛ рдХреЙрд▓рдо рдЕрдиреБрд░реЛрдз рдкрд╛рда рдФрд░ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЕрдВрддрд┐рдо рдХреЙрд▓рдо рдЙрддреНрддрд░ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рд╕реНрддрдВрднреЛрдВ рдХрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╡рд░рдг рдорд┐рд▓рддрд╛ рд╣реИ:


 0 Auxiliary 1 Auxiliary 8 Target 

рдЪреВрдВрдХрд┐ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрддреНрддрд░ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП, рдЕрдВрддрд┐рдо рдХреЙрд▓рдо, рд╣рдо рдЗрд╕ рдХреЙрд▓рдо рдХреЛ рдХреЗрд╡рд▓ рд╢реВрдиреНрдп рд╕реЗ рднрд░рдХрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп awk рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ:


 awk -F "\t" -vOFS="\t" '{print $0, 0}' fr_test.tsv > fr_test.fixed 

рдЕрдм рдЖрдк рдХреИрдЯрдмреЙрд╕реНрдЯрд▓ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ


 catboost calc --input-path fr_test.fixed --cd fields.cd 

рдЙрд╕рдХреЗ рдмрд╛рдж, рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгрд┐рдпрд╛рдВ рдлрд╝рд╛рдЗрд▓ output.tsv ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпреЗ рднреМрддрд┐рдХ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгрд┐рдпрд╛рдВ рд╣реЛрдВрдЧреА рдЬрд┐рдиреНрд╣реЗрдВ рдЕрднреА рднреА рдмрд┐рдирд╛рд░рд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред


рд╣рдо рдЗрд╕ рддрдереНрдп рд╕реЗ рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗ рдХрд┐ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдФрд░ рдкрд░реАрдХреНрд╖рдг рдирдореВрдиреЛрдВ рдореЗрдВ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдирдореВрдиреЗ рдореЗрдВ, рд╕рднреА рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рд╕реЗ рд▓рдЧрднрдЧ 3/4 рдореЗрдВ рд╣рд╛рд▓ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдкрд░ рдХреНрд▓рд┐рдХ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╡рд░реНрдЧреАрдХрд░рдг рдереНрд░реЗрд╢реЛрд▓реНрдб рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдирдореВрдирд╛ рд╕реЗ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рд▓рдЧрднрдЧ 3/4 рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЗ рд╕рд╛рде рд╣реЛред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 0.04 рдХреА рджрд╣рд▓реАрдЬ рдХреЗ рд▓рд┐рдП, 200,000 рдореЗрдВ рд╕реЗ 178925 рд╣реИрдВред


рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕рдорд╛рдзрд╛рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдмрдирд╛рддреЗ рд╣реИрдВ:


 awk -F "\t" -vOFS="\t" 'NR > 1 {if ($2 > 0.04) print 1; else print 0}' output.tsv > solution.tsv 

рдпрд╣рд╛рдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдХреИрдЯрдмреЙрд╕реНрдЯ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕реНрддрдВрдн рдирд╛рдореЛрдВ рдХреЛ рдЗрд╕рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реИред


рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХреА рдЧрдИ solution.tsv рдлрд╝рд╛рдЗрд▓ рд╕рддреНрдпрд╛рдкрди рдкреНрд░рдгрд╛рд▓реА рдХреЛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдлреИрд╕рд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╡реИрдз рдУрдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреА рд╣реИред


рдЯрд╛рд╕реНрдХ рдбреАред рдлреАрдЪрд░ рдЪрдпрди


рдХрд╛рд░реНрдп
рд╕рдорд╛рдзрд╛рди рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ


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


рдирд┐рд░реНрдгрдп

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рд▓рдХреНрд╖рдгреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВред


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


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


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


рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдореЙрдбрд▓ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:


 catboost fit --cd train.cd -f train.txt 

рдлрд┐рд░ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдЪрд▓рд╛рдПрдБ:


 catboost fstr --input-path train.txt --cd train.cd 

рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдорд╣рддреНрд╡ рддрдм feature_strength.tsv рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдкрд╣рд▓реЗ рдХреЙрд▓рдо рдореЗрдВ, рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдорд╣рддреНрд╡ рдХреЛ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рджреВрд╕рд░реЗ рдореЗрдВ - рдЙрдирдХреЗ рдирд╛рдоред рдлрд╝рд╛рдЗрд▓ рдХреЛ рддреБрд░рдВрдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдЧреИрд░-рдмрдврд╝рддреЗ рдорд╣рддреНрд╡ рджреНрд╡рд╛рд░рд╛ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


 head feature_strength.tsv 9.897213004 f193 9.669603844 f129 7.500907599 f292 5.903810044 f48 5.268100711 f337 2.508377813 f283 2.024904488 f111 1.933500313 f208 1.878848285 f345 1.652808387 f110 

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


рдХрд╣рддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рд╢реАрд░реНрд╖ 50 рд╕рдВрдХреЗрддреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯ рдкрд░ рдЖрдкрдХреЛ 3.6 рдЕрдВрдХ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВ; рдпрджрд┐ рдЖрдк рд╢реАрд░реНрд╖ 40, рд╢реАрд░реНрд╖ 30 рдпрд╛ рд╢реАрд░реНрд╖ 20 рдЪреБрдирддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдареАрдХ 4 рдЕрдВрдХ рдорд┐рд▓рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рд╢реАрд░реНрд╖ 20 рд╕рдВрдХреЗрддреЛрдВ рдХреЛ рдЪреБрдирд╛ - рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рдПрдХ рдмрдВрдж рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдкрд░ 4 рдЕрдВрдХ рдкреНрд░рд╛рдкреНрдд рд╣реБрдПред


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


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдлреАрдЪрд░ рд╕реНрдкреЗрд╕ рдХреЗ рдЖрдпрд╛рдо рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд┐рдзрддрд╛ рд╣реИ ред

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


All Articles