рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛
рдЖрдк рдореЗрдВ рд╕реЗ рдХреБрдЫ рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕реНрдЯреИрдирдлреЛрд░реНрдб рдкрд╛рдареНрдпрдХреНрд░рдо рд▓рд┐рдпрд╛ рд╣реЛрдЧрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ
рдПрдЖрдИ-рдХреНрд▓рд╛рд╕ рдФрд░
рдПрдордПрд▓-рдХреНрд▓рд╛рд╕ ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХрдИ рд╡реАрдбрд┐рдпреЛ рд▓реЗрдХреНрдЪрд░ рджреЗрдЦрдиреЗ, рдХреНрд╡рд┐рдЬрд╝ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдФрд░
Matlab
/
Octave
рдореЗрдВ рдПрдХ рджрд░реНрдЬрди рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрд╛рдд рд╣реИ, рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рджреВрд╕рд░реА рдмрд╛рдд рд╣реИред рддрд╛рдХрд┐ рдПрдВрдбреНрд░рдпреВ рдПрдирдЬреА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдореЗрд░реЗ рдорд╕реНрддрд┐рд╖реНрдХ рдХреЗ рдЙрд╕реА рдЕрдВрдзреЗрд░реЗ рдХреЛрдиреЗ рдореЗрдВ рди
рдкрдбрд╝реЗ , рдЬрд╣рд╛рдВ
dft ,
рд╡рд┐рд╢реЗрд╖ рдереНрдпреЛрд░реА рдСрдл рд░рд┐рд▓реЗрдЯрд┐рд╡рд┐рдЯреА рдФрд░
рдпреВрд▓рд░ рд▓реИрдЧрд░реЗрдВрдЬ рд╕рдореАрдХрд░рдг рдЦреЛ рдЧрдП, рдореИрдВрдиреЗ рд╕рдВрд╕реНрдерд╛рди рдХреА рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдирд╣реАрдВ рджреЛрд╣рд░рд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░, рдЬрдмрдХрд┐ рдЬреНрдЮрд╛рди рдЕрднреА рднреА рдореЗрд░реА рд╕реНрдореГрддрд┐ рдореЗрдВ рддрд╛рдЬрд╛ рд╣реИ, рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВред
рдФрд░ рддрднреА DDoS рд╣рдорд╛рд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЖрдпрд╛ред рдпрд╣ рдмрдВрдж рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ-рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ (
grep
/
awk
/ etc) рд╡рд┐рдзрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдпрд╛ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓реЗрдирд╛ рд╕рдВрднрд╡ рдерд╛ред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо Python 2.7 /
PyBrain рдореЗрдВ рдПрдХ рдиреНрдпреВрд░рд▓ рдиреЗрдЯрд╡рд░реНрдХ рдмрдирд╛рдиреЗ рдФрд░ DDoS рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред
рдкрд░рд┐рдЪрдп
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ: рдПрдХ рдФрд╕рдд рдмреЙрдЯрдиреЗрдЯ (20,000-50,000) рдХреЗ рд╕рд╛рде DDoS рдХреЗ рддрд╣рдд рдПрдХ рд╕рд░реНрд╡рд░ рдФрд░ рдЙрд╕рд╕реЗ рдПрдХреНрд╕реЗрд╕ .logред DDoS рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ access.log рд╣реЛрдирд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд▓рдЧрднрдЧ 100% рд╡реИрдз рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП, рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдбреЗрдЯрд╛рд╕реЗрдЯред
рд╣рдо рдХреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░рд┐рдпрд░, рдЬреЛ рдПрдХреНрд╕реЗрд╕.рд▓реЙрдЧ рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╣рдореЗрдВ рдХреБрдЫ рд╣рдж рддрдХ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдмрддрд╛рдПрдЧрд╛ рдХрд┐ рдЕрдиреБрд░реЛрдз рдХрд╣рд╛рдВ рд╕реЗ рдЖрдпрд╛: рдмреЙрдЯ рд╕реЗ рдпрд╛ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рд╕реЗред рдЗрд╕ рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо рдПрдХ рд╣рдорд▓реЗ рд╡реЗрдХреНрдЯрд░ (рд╕рдмрдиреЗрдЯ рдХрд╛ рдПрдХ рд╕реЗрдЯ) рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ / рд╣реЛрд╕реНрдЯрд░ рдХреЛ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред
рдЯреНрд░реЗрдирд┐рдВрдЧ
рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░рд┐рдпрд░ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рджреЛ рд╕реЗрдЯ рдЪрд╛рд╣рд┐рдП: "рдЦрд░рд╛рдм" рдФрд░ "рдЕрдЪреНрдЫреЗ" рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд▓рд┐рдПред рд╣рд╛рдБ, рдпрд╣ рдмрд╣реБрдд рдордЬрд╝реЗрджрд╛рд░ рд╣реИ рдХрд┐ рдмреЙрдЯреНрд╕ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдмреЙрдЯреНрд╕ рдЦреЛрдЬрдиреЗ рд╣реЛрдВрдЧреЗред рдпрд╣рд╛рдВ рд╣рдореЗрдВ рдХреЗрд╡рд▓ grep рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 503 рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ (nginx рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ) рдХреЗ рд╕рд╛рде IP рдХреАhnikov рд╕реЗ рд▓реЙрдЧ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдПред
рдирддреАрдЬрддрди, рд╣рдореЗрдВ 3 access.logs рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП:
- DDoS рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ access.log рд╕реЗ "рдЕрдЪреНрдЫреЗ" рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рд╕реЗрдЯ
- "рдЦрд░рд╛рдм" рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЛ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рд╕реНрдХреЛрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
- рдбреЗрдЯрд╛рд╕реЗрдЯ, рдЬрд┐рд╕реЗ рд╣рдореЗрдВ рд╡рд░реНрдЧреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдЪреНрдЫреЗ рдФрд░ рдмреБрд░реЗ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ред рдЖрдорддреМрд░ рдкрд░ рдпрд╣ DDoS рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╕рд░реНрд╡рд░ рд╕реЗ
tail -f
рдСрдлрд╝ access.log рд╣реИ
рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдпрд╣ рд╕реАрдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рддрдерд╛рдХрдерд┐рдд рдкрд╛рд░реНрд╕ рдХреИрд╕реЗ рдХрд░реЗрдВ рд╕рдВрдпреБрдХреНрдд рдирдЧреНрдиреЗрдХреНрд╕ рд▓реЙрдЧред рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдПрдХ рд░реЗрдбреА-рдореЗрдб рдирд┐рдпрдорд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрдкрдиреА рдмрд╛рдЗрдХ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ:
(?P<ip>[0-9.:af]+) [^ ]+ [^ ]+ \[.*\] "(?P<url>.*)" (?P<code>[0-9]+) (?P<size>[0-9]+) "(?P<refer>.*)" "(?P<useragent>.*)"$
/ * рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдореИрдВрдиреЗ
yet another log parser
рд▓рд┐рдЦрд╛ рдерд╛, рдореБрдЭреЗ рдПрдХ рдмрд╛рд░ рдлрд┐рд░
рд╕реЗ рд▓реЙрдЧ рдЗрди рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХреНрд░рдорд╛рдВрдХрди рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдпрд╛рдж рдЖрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдбрдХреНрд╢рди рдкрд░ рд▓реЙрдЧ рдЬреНрдпрд╛рджрд╛рддрд░ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд▓рд┐рдПред * /
рд╣рдордиреЗ рд▓реЙрдЧ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕реАрдЦрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рдж рд╕реБрд╡рд┐рдзрд╛рдУрдВ (рд╕реБрд╡рд┐рдзрд╛рдУрдВ / рдорд╛рд░реНрдХрд░ / рд╕реБрд╡рд┐рдзрд╛рдУрдВ) рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЙрдирдХреЗ рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛рд╕реЗрдЯ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП рдлреАрдЪрд░-рд╡реЗрдХреНрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕ рдкрд░ рдФрд░ рдмрд╛рдж рдореЗрдВред
рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕реАрдЦрдиреЗ рдХреА рдорд╢реАрди
рд╣рдо рд▓реЙрдЧ рд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдкрд░ рдмрд╕реЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо "рдЕрдЪреНрдЫрд╛" рдФрд░ "рдЦрд░рд╛рдм" рд▓реЙрдЧ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдореЗрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдЙрд░реНрдл тАЛтАЛрд╕рдВрдХреЗрддреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред рд╕рдВрдпреБрдХреНрдд рд▓реЙрдЧ рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдирд╣реАрдВ рд╣реИрдВ, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдпрд╛:
- рдЕрдиреБрд░реЛрдз рд╣реА, рдЕрдиреБрд░реЛрдз рдкреНрд░рдХрд╛рд░ (
HEAD
/ GET
/ POST
/ etc), url
рдФрд░ http_version
ред Url
рдкреНрд░реЛрдЯреЛрдХреЙрд▓, hostname, path рдФрд░ query_string
рд╕рднреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ Referer
рдиреЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ url
рд╕рдорд╛рди рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛редUser-Agent
, рдЬрд╛рджреБрдИ рд╕рдбрд╝рдХ рдЬрд╛рджреВ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рддрдХ рдХрд╛рдлреА рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИред RFC2616 рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдХрд╣рддрд╛ рд╣реИред рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдмреЗрд╣рддрд░редstatus
, рдХреЗрд╡рд▓ рдХреЛрдб 503/404/403 рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, DDoS рдХреЗ рджреМрд░рд╛рди, рд╕рд░реНрд╡рд░ 500/502 рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдХреЗрд╡рд▓ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХреЛрдбреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред
/ * рд╡реИрд╕реЗ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрд╣рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг рдЬреЛ рдореИрдВрдиреЗ DDoS рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдерд╛, рдЙрд╕рдореЗрдВ рдПрдХ рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг рдмрдЧ рдерд╛, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рд▓рдЧрднрдЧ рдЖрдзреЗ рд╕рдВрдХреЗрддреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рд░рд╛рдЬреНрдп рдореЗрдВ рднреА, рдХреЛрдб рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдЬрд┐рд╕рдХреА рдмрджреМрд▓рдд рдпрд╣ рдмрдЧ рдЦреБрдж рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЫрд┐рдкрд╛ рд░рд╣рд╛ред рдПрдВрдбреНрд░рдпреВ рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдмрд╣реБрдд рд╕рд╣реА рдирд┐рдХрд▓рд╛, рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рдЪрддреБрд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЬреАрддрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╣ рдЬреЛ рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рдЦрд┐рд▓рд╛рддрд╛ рд╣реИред * /
рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЙрд╕ рдХреНрд╖рдг рдореЗрдВ рдЖ рдЧрдП рд╣реИрдВ рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдПрдХ рд╡рд┐рд╢рд╛рд▓ рд╕реВрдЪреА рд╣реИ рдЬреЛ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдореМрдЬреВрдж рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдпрд╣ рд╣рдорд╛рд░рд╛ рд╢рдмреНрджрдХреЛрд╢ рд╣реИред рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдЕрдиреБрд░реЛрдз рд╕реЗ
feature-vector
рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рдмреНрджрдХреЛрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдмрд╛рдЗрдирд░реА (рд╢реВрдиреНрдп рдФрд░ рд▓реЛрдЧреЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░) рдПрдо-рдЖрдпрд╛рдореА рд╡реЗрдХреНрдЯрд░ (рдЬрд╣рд╛рдВ рдПрдо рд╢рдмреНрджрдХреЛрд╢ рдХреА рд▓рдВрдмрд╛рдИ рд╣реИ), рдЬреЛ рдХреНрд╡реЗрд░реА рдореЗрдВ рд╢рдмреНрджрдХреЛрд╢ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдпрджрд┐ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╢рдмреНрджрдХреЛрд╢ рдПрдХ рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рд╣реИ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐
if word in dictionary
рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЙрд▓ рд╣реЛрдВрдЧреЗред
рд▓реЗрдХреНрдЪрд░ рдиреЛрдЯреНрд╕ 11 рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ
: рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдбрд┐рдЬрд╝рд╛рдЗрдирд╢рдмреНрджрдХреЛрд╢ рдФрд░ рдлреАрдЪрд░-рд╡реЗрдХреНрдЯрд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдЕрдкрдиреЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдХреЗрд╡рд▓ рджреЛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ: рдПрдХ рдЕрдЪреНрдЫрд╛ рдФрд░ рдПрдХ рдмреБрд░рд╛ред рдлрд┐рд░ рд╣рдо рдЗрд╕реЗ рдкрд░реАрдХреНрд╖рдг рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдкрд░ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред
"рдЦрд░рд╛рдм" рд▓реЙрдЧ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб:
0.0.0.0 - - [20/Dec/2011:20:00:08 +0400] "POST /forum/index.php HTTP/1.1" 503 107 "http://www.mozilla-europe.org/" "-"
"рдЕрдЪреНрдЫрд╛" рд▓реЙрдЧ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб:
0.0.0.0 - - [20/Dec/2011:15:00:03 +0400] "GET /forum/rss.php?topic=347425 HTTP/1.0" 200 1685 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9) Gecko/2008052906 Firefox/3.0"
рдкрд░рд┐рдгрд╛рдореА рд╢рдмреНрджрдХреЛрд╢:
['__UA___OS_U', '__UA_EMPTY', '__REQ___METHOD_POST', '__REQ___HTTP_VER_HTTP/1.0', '__REQ___URL___NETLOC_', '__REQ___URL___PATH_/forum/rss.php', '__REQ___URL___PATH_/forum/index.php', '__REQ___URL___SCHEME_', '__REQ___HTTP_VER_HTTP/1.1', '__UA___VER_Firefox/3.0', '__REFER___NETLOC_www.mozilla-europe.org', '__UA___OS_Windows', '__UA___BASE_Mozilla/5.0', '__CODE_503', '__UA___OS_pl', '__REFER___PATH_/', '__REFER___SCHEME_http', '__NO_REFER__', '__REQ___METHOD_GET', '__UA___OS_Windows NT 5.1', '__UA___OS_rv:1.9', '__REQ___URL___QS_topic', '__UA___VER_Gecko/2008052906']
рдЯреЗрд╕реНрдЯ рд░рд┐рдХреЙрд░реНрдб:
0.0.0.0 - - [20/Dec/2011:20:00:01 +0400] "GET /forum/viewtopic.php?t=425550 HTTP/1.1" 502 107 "-" "BTWebClient/3000(25824)"
рдЙрд╕рдХреА
feature-vector
:
[False, False, False, False, True, False, False, True, True, False, False, False, False, False, False, False, False, True, True, False, False, False, False]
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐
feature-vector
рдХреИрд╕реЗ
sparse
рд╣реИ - рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рднреА рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд▓рд┐рдП рджреЗрдЦрд╛ рдЬрд╛рдПрдЧрд╛ред
рджрд╛рддрд╛рд╕реЗрдЯ рдбрд┐рд╡реАрдЬрди
dataset
рдХреЛ рдХрдИ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИред рдореИрдВрдиреЗ 70/30 рдХреЗ рдЕрдиреБрдкрд╛рдд рдореЗрдВ рджреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╣рд░рд╛рдпрд╛:
Training set
ред рдЗрд╕ рдкрд░ рд╣рдо рдЕрдкрдиреЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВредTest set
ред рд╣рдо рдЙрдирдХреЗ рд╕рд╛рде рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░рд╛ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХрд┐рддрдирд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╡рд┐рднрд╛рдЬрди рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рдЫреЛрдЯреА
training error
(
training set
рдкрд░ рддреНрд░реБрдЯрд┐) рдХреЗ рд╕рд╛рде рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдирдП рдбреЗрдЯрд╛ рдкрд░
рдПрдХ рдмрдбрд╝реА рддреНрд░реБрдЯрд┐ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ "рд╕реЗрдЯ" рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕реЗрдЯ рдХреЗ рддрд╣рдд рдЗрд╕реЗ рддреЗрдЬ рдХрд░рддреЗ рд╣реИрдВред
рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдпрджрд┐ рдЖрдкрдХреЛ рдЗрд╖реНрдЯрддрдо рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреА рдкрд╕рдВрдж рд╕реЗ рд╣реИрд░рд╛рди рд╣реЛрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ
dataset
рдХреЛ 60/20/20 рдХреЗ рдЕрдиреБрдкрд╛рдд рдореЗрдВ 3 рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
Training set
,
Test set
рдФрд░
Cross validation
ред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рд╕рд┐рд░реНрдл рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдЗрд╖реНрдЯрддрдо рдорд╛рдкрджрдВрдбреЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
weightdecay
) рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ
рдЕрдм рдЬрдм рд╣рдорд╛рд░реЗ рд╣рд╛рде рдореЗрдВ рдХреЛрдИ рдкрд╛рда рд▓реЙрдЧ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓
feature-vector
рдореЗрдЯреНрд░рд┐рд╕реЗрд╕, рд╣рдо рд╕реНрд╡рдпрдВ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдЗрдП рд╕рдВрд░рдЪрдирд╛ рдХреА рдкрд╕рдВрдж рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдореИрдВрдиреЗ рдПрдХ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдПрдХ рдЫрд┐рдкреА рд╣реБрдИ рдкрд░рдд рд╕реЗ рджреЛрдЧреБрдиреА рдЗрдирдкреБрдЯ рдкрд░рдд рдХреЗ рдЖрдХрд╛рд░ рдореЗрдВ рдЪреБрдирд╛ред рдХреНрдпреЛрдВ? рдпрд╣ рд╕рд░рд▓ рд╣реИ:
рдЗрд╕рд▓рд┐рдП рдПрдВрдбреНрд░рдпреВ рдПрдирдЬреА рдХреЛ рдорд╛рдорд▓реЗ рдореЗрдВ
рддрдмрд╛рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдмрд╛рдж рдореЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдХрд░ рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдЫрд┐рдкреА рд╣реБрдИ рдкрд░рдд рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдпрдг рдлрд╝рдВрдХреНрд╢рди рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкреАрдбрд╝рд┐рдд
рд╕рд┐рдЧреНрдореЛрдЗрдб рд╣реИ , рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд░рдд,
рд╕реЙрдлреНрдЯрдореИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╣реИ ред рдмрд╛рдж рдореЗрдВ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ
рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдирдиреНрдп рд╡рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБ-рд╢реНрд░реЗрдгреА рд╡рд░реНрдЧреАрдХрд░рдгред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмреИрдХрдПрдВрдб рдкрд░ "рдЕрдЪреНрдЫрд╛" рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВ, рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдореЗрдВ "рдЦрд░рд╛рдм" рдЕрдиреБрд░реЛрдз, рдФрд░ рдХреИрдкреНрдЪрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдЧреНрд░реЗ" рдЕрдиреБрд░реЛрдзред
рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдиреНрдпреВрдирддрдо рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡рдг рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдХреЛрдб рдореЗрдВ рдореИрдВ рдХрдИ рдиреЗрдЯрд╡рд░реНрдХ рдмрдирд╛рддрд╛ рд╣реВрдВ рдФрд░ рд╕рдмрд╕реЗ рдЫреЛрдЯреА
Test error
рд╕рд╛рде рдЪрдпрди рдХрд░рддрд╛ рд╣реВрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдПрдХ
test set
рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИ, рди рдХрд┐ рдПрдХ
trainig set
)ред
рддреНрдпрд╛рдЧ
рдореИрдВ рдЕрд╕рд▓реА рд╡реЗрд▓реНрдбрд░ рдирд╣реАрдВ рд╣реВрдВред рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣реА рдЬрд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВрдиреЗ рдПрдордПрд▓-рдХреНрд▓рд╛рд╕ рдФрд░ рдПрдЖрдИ-рдХреНрд▓рд╛рд╕ рд╕реЗ рдХреНрдпрд╛ рд╕реАрдЦрд╛ред рдореИрдВрдиреЗ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдЬрдЧрд░ рдкрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╢реБрд░реВ рдХреА, рдФрд░ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 30 рдорд┐рдирдЯ (рд╕рдордп, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдмрд╛рд╣рд░ рдЪрд▓ рд░рд╣рд╛ рдерд╛) рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рджрд╛рдпрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдХреЛрдб
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрд╡рдпрдВ рдЫреЛрдЯреА рд╣реИ - рдлрд╝реЙрдиреНрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ 2-3 рдП 4 рдкреГрд╖реНрдаред рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдБ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
github.com/SaveTheRbtz/junk/tree/master/neural_networks_vs_ddosрд╕рд╛рде рд╣реА рдпрд╣ рдХреЛрдб рдЖрддреНрдордирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реИред рдЙрд╕реЗ рдЕрднреА рднреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдЧрд░ рдЖрдИрдкреА рдиреЗ рдПрдХреНрд╕ рдорд┐рдирдЯреЛрдВ рдореЗрдВ рдПрди рдЦрд░рд╛рдм рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛ рджреЗрдВред
рдЙрддреНрдкрд╛рджрдХрддрд╛
- lfu_cacheред ActiveState рдХреЗ рд╕рд╛рде рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛, рддрд╛рдХрд┐ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддреЗрдЬреА рдЖрдП, "рдЙрдЪреНрдЪ-рдЖрд╡реГрддреНрддрд┐"ред рдбрд╛рдЙрди-рд╕рд╛рдЗрдб - рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдореЗрдВ рд╡реГрджреНрдзрд┐ред
- PyBrain, рдЕрдЪрд╛рдирдХ, рдЕрдЬрдЧрд░ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдмрд╣реБрдд рддреЗрдЬ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣
arac
ATLAS-based
arac
рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдиреЗрдЯрд╡рд░реНрдХ рдмрдирд╛рддреЗ рд╕рдордп Fast=True
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк PyBrain рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред - рд╕рд╛рде рдореЗрдВ рдЪрд▓рд╛рдирд╛ред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдПрдХ "рдореЛрдЯреА" рд╕рд░реНрд╡рд░ рдиреЗрд╣реЗрд▓реНрдо рдкрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд╣рд╛рдВ рднреА, рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд╛ рджреЛрд╖ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЖрдк рдПрдХ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рд╕рд░рд▓ рдЙрдкрд╛рдп рдпрд╣ рд╣реИ рдХрд┐ рдХрдИ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдПрдХ рд╕рд╛рде рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдХреЛ рдЪреБрдирд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдореЗрдореЛрд░реА рдкрд░ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рднрд╛рд░ рдкреИрджрд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рднреА рдирд╣реАрдВ рд╣реИред рдореИрдВ рдПрдХ рдЕрдзрд┐рдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣реВрдВрдЧрд╛ред рд╢рд╛рдпрдж рдпрд╣ рд╕реА рдореЗрдВ рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдордПрд▓-рдХреНрд▓рд╛рд╕ рдореЗрдВ рдкреВрд░реЗ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рдХреЛ рдЪрдмрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
- рд╕реНрдореГрддрд┐ рдХреА рдЦрдкрдд рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдПрдХ рдЕрдЪреНрдЫрд╛ рдореЗрдореЛрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдорд╛рдирдХ рдкрд╛рдпрдерди рд╕рд░рдгрд┐рдпреЛрдВ рд╕реЗ рд╕реБрдиреНрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд░рдордг рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╢рдмреНрджрдХреЛрд╢ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдФрд░ / рдпрд╛ рдкреАрд╕реАрдП рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рдиреАрдЪреЗред
рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП
- рд▓реЙрдЧ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реАрд▓реНрдбред рдЖрдк
combined
рд▓реЙрдЧ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рдлрд╝реАрд▓реНрдб рдмреЙрдЯ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗред рд╢рд╛рдпрдж рдпрд╣ рдЖрдИрдкреА рдкрддреЗ рдХреЗ рдкрд╣рд▓реЗ рдСрдХреНрдЯреЗрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдЧреИрд░-рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рд╡реЗрдм-рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рдЪреАрдиреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╡рд╛рд▓реЗ рдмреЙрдЯ рд╣реИрдВред - рдкреНрд░рдзрд╛рди рдШрдЯрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг ред рдпрд╣
feature-vector
рдХреЗ рдЖрдпрд╛рдо рдХреЛ рдмрд╣реБрдд рдХрдо рдХрд░ рджреЗрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕рдордп рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛ред - рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ / рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдгред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рдЬреЛ regexp
[a-fA-F0-9]{32}
__MD5__
, рдЙрд╕реЗ __MD5__
рд╢рдмреНрдж рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╡рд╣ рд╕рдм рдХреБрдЫ рдЬреЛ __DATE__
, рдЖрджрд┐ рд╢рдмреНрдж рдХреЗ рд╕рд╛рде рдбреЗрдЯ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдХрдо-рдЖрд╡реГрддреНрддрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИ рдФрд░ рддрджрдиреБрд╕рд╛рд░ рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рдЖрдХрд╛рд░ред - рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдЯреНрдпреВрдирд┐рдВрдЧ рд╕реНрдерд┐рд░рд╛рдВрдХ рдФрд░ рд╕рдВрд░рдЪрдирд╛рдПрдВред рд╡рд░реНрддрдорд╛рди рд▓реЛрдЧреЛрдВ рдХреЛ рдЫрдд рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрд░реНрдерд╛рддреН PyBrain рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░рд┐рдпрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдиреБрдЕрд▓ (рд╣рд╛рдВ, рдпрд╛рдж рд╣реИ, рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рдерд╛ рдХрд┐ рдХреЛрдб рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛)ред рдпрд╣ рд╡рд┐рднрд┐рдиреНрди рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд░реЗрдЦрд╛рдВрдХрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐
matplotlib
рд╣рд╛рде рдореЗрдВ рд╣реИред - рдСрдирд▓рд╛рдЗрди рдкреНрд░рд╢рд┐рдХреНрд╖рдгред рд╕реНрдорд╛рд░реНрдЯ рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдХреА рд░рдгрдиреАрддрд┐ рдЕрдХреНрд╕рд░ рдмрджрд▓рддреА рд░рд╣рддреА рд╣реИред рдЬрд╛рдиреЗ рдкрд░ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреВрд░реНрд╡ / рд╡рд╛рдкрд╕реА рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдХрд╣рд╛ рд╕реЗ рдЖрд╕рд╛рди рд╣реИред
рдФрд░ рдкрдврд╝реЗрдВ
рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд▓реЗрдХреНрдЪрд░ рдиреЛрдЯреНрд╕ - рдПрдордПрд▓-рдХреНрд▓рд╛рд╕ рдХреЛрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡реЗрд╢ред
UFLDL - Unsupervised рдлрд╝реАрдЪрд░ рд▓рд░реНрдирд┐рдВрдЧ рдФрд░ рдбреАрдк рд▓рд░реНрдирд┐рдВрдЧред рдкреНрд░реЛрдлреЗрд╕рд░ рдПрдВрдбреНрд░рдпреВ рдПрдирдЬреА рд╕реЗ рднреАред
рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп
рдпрд╣ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реЗрд▓реНрдбрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
рд╣рд╛рдИрд▓реЛрдбреНрд▓рд╛рдм , рд╡рд░реНрдЧреАрдХрд░рдг рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдореБрдЭреЗ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдпрд╛рдВрдбреЗрдХреНрд╕ рд░реИрдВрдХрд┐рдВрдЧ рдлреЙрд░реНрдореВрд▓рд╛ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕реЗ рдПрдХ рд░рд╣рд╕реНрдп рд╣реИрдВред