ЁЯУЦ рдзрдбрд╛ 01 тАФ AI рдореНрд╣рдгрдЬреЗ рдХрд╛рдп: рдирд┐рдпрдордкреБрд╕реНрддрдХреЗ рд╡рд┐рд░реБрджреНрдз рдЙрджрд╛рд╣рд░рдгрд╛рдВрддреВрди рд╢рд┐рдХрдгреЗ
ЁЯУН рддреБрдореНрд╣реА рдЗрдереЗ рдЖрд╣рд╛рдд: 12 рдкреИрдХреА рдзрдбрд╛ 01 ┬╖ рдкреБрдвреЗ: lesson-02-training
ЁЯУж рдпрд╛ рдмреНрд░рдБрдЪрдордзреНрдпреЗ рдХрд╛рдп рдЖрд╣реЗ
рдкрд╛рдпрд╛: "AI" рдореНрд╣рдгрдЬреЗ рдЦрд░реЛрдЦрд░ рдХрд╛рдп, machine learning рд╣реЗ рдиреЗрд╣рдореАрдЪреНрдпрд╛ programming рдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│реЗ рдХрд╕реЗ, рдЖрдгрд┐ deep learning рд╡ LLMs рдХреБрдареЗ рдмрд╕рддрд╛рдд. рдЦрд░реА file: demo/bigram_model.py тАФ рдЖрдЬ рддреБрдореНрд╣реА рдПрдХ рдЦрд░рд╛ (рдЫреЛрдЯрд╛рд╕рд╛) рд╢рд┐рдХрд▓реЗрд▓рд╛ model рдЪрд╛рд▓рд╡рдгрд╛рд░ рдЖрд╣рд╛рдд.
ЁЯзТ 5 рд╡рд░реНрд╖рд╛рдВрдЪреНрдпрд╛ рдореБрд▓рд╛рд▓рд╛ рд╕рдордЬрд╛рд╡рд▓реНрдпрд╛рд╕рд╛рд░рдЦреЗ
рдореБрд▓рд╛рд▓рд╛ рдорд╛рдВрдЬрд░ рдУрд│рдЦрд╛рдпрд▓рд╛ рдХрд╕реЗ рд╢рд┐рдХрд╡рд╛рдпрдЪреЗ? ЁЯР▒
рдирд┐рдпрдордкреБрд╕реНрддрд┐рдХреЗрдЪрд╛ рдорд╛рд░реНрдЧ (classic programming): рдирд┐рдпрдо рд▓рд┐рд╣рд╛ тАФ "рдЯреЛрдХрджрд╛рд░ рдХрд╛рди AND рдорд┐рд╢рд╛ AND рд╢реЗрдкреВрдЯ тЖТ рдорд╛рдВрдЬрд░." рдордЧ рджреБрдордбрд▓реЗрд▓реНрдпрд╛ рдХрд╛рдирд╛рдВрдЪреА рдорд╛рдВрдЬрд░ рдпреЗрддреЗ. рдПрдХ рдирд┐рдпрдо рд╡рд╛рдврд╡рд╛. рд╢реЗрдкреВрдЯ рдирд╕рд▓реЗрд▓реА рдорд╛рдВрдЬрд░. рдЖрдгрдЦреА рдПрдХ рдирд┐рдпрдо. рдХрд╛рд░реНрдЯреВрди рдорд╛рдВрдЬрд░. рдЪрд╛рд│реАрд╕ рдирд┐рдпрдорд╛рдВрдирдВрддрд░ рддреБрдореНрд╣реА рд╣рд╛рд░ рдорд╛рдирддрд╛ тАФ рдХрд╛рд╣реА рдЧреЛрд╖реНрдЯреАрдВрд╕рд╛рдареА рд▓рд┐рд╣рд┐рддрд╛ рдпреЗрдИрд▓ рдЕрд╢реА рдирд┐рдпрдордкреБрд╕реНрддрд┐рдХрд╛рдЪ рдирд╕рддреЗ.
рдЙрджрд╛рд╣рд░рдгрд╛рдВрдЪрд╛ рдорд╛рд░реНрдЧ (machine learning): рдореБрд▓рд╛рд▓рд╛ 10,000 рдлреЛрдЯреЛ рджрд╛рдЦрд╡рд╛ тАФ "рдорд╛рдВрдЬрд░, рдорд╛рдВрдЬрд░, рдорд╛рдВрдЬрд░-рдирд╛рд╣реА, рдорд╛рдВрдЬрд░тАж" тАФ рдЖрдгрд┐ рдирдореБрдирд╛ рддрд┐рд▓рд╛ рд╕реНрд╡рддрдГрдЪ рд╢реЛрдзреВ рджреНрдпрд╛. рдХреЛрдгреАрд╣реА рдПрдХрд╣реА рдирд┐рдпрдо рд▓рд┐рд╣рд┐рд▓рд╛ рдирд╛рд╣реА; рдирд┐рдпрдо рдЙрджрд╛рд╣рд░рдгрд╛рдВрддреВрди рдореБрд▓рд╛рдЪреНрдпрд╛ рдЖрдд рд╡рд╛рдврд▓реЗ. рддрд┐рд▓рд╛ рд╕рдордЬрд╛рд╡реВрди рд╕рд╛рдВрдЧрд╛рдпрд▓рд╛ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рддрд░ рддреА рдЦрд╛рдВрджреЗ рдЙрдбрд╡рддреЗ: "рдорд▓рд╛ рдлрдХреНрддтАж рдХрд│рддреЗ." ЁЯд╖
рддреЗ рдЦрд╛рдВрджреЗ рдЙрдбрд╡рдгреЗ рд╣реАрдЪ machine learning рдЪреА рдорд╣рд╛рд╢рдХреНрддреА AND рддрд┐рдЪреА рдкреНрд░рд╕рд┐рджреНрдз рдХрдордЬреЛрд░реА рдЖрд╣реЗ: рддреЗ рдЕрдкреНрд░рддрд┐рдо рдХрд╛рдо рдХрд░рддреЗ, рдЖрдгрд┐ рдХрд╛ рддреЗ рдХреЛрдгреАрд╣реА рдкреВрд░реНрдгрдкрдгреЗ рдмреЛрдЯ рдареЗрд╡реВрди рджрд╛рдЦрд╡реВ рд╢рдХрдд рдирд╛рд╣реА (рдирд┐рдпрдо рдХреБрдареЗрд╣реА рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рдирд╕рддрд╛рдд, рд▓рд╛рдЦреЛ рдЖрдХрдбреНрдпрд╛рдВрдордзреНрдпреЗ рдкрд╕рд░рд▓реЗрд▓реЗ рдЕрд╕рддрд╛рдд).
рдХреБрдЯреБрдВрдмрд╡реГрдХреНрд╖: AI (рд╕рдВрдкреВрд░реНрдг рдорд╣рддреНрддреНрд╡рд╛рдХрд╛рдВрдХреНрд╖рд╛: рдпрдВрддреНрд░рд╛рдВрдиреА рд╣реБрд╢рд╛рд░ рдХрд╛рдореЗ рдХрд░рдгреЗ) тКГ machine learning (рдЙрджрд╛рд╣рд░рдгрд╛рдВрдЪрд╛ рдорд╛рд░реНрдЧ) тКГ deep learning (рдЕрдиреЗрдХ рдерд░рд╛рдВрдЪреНрдпрд╛ neural networks рдиреЗ рд╢рд┐рдХрдгреЗ) тКГ LLMs (рднрд╛рд╖реЗрдХрдбреЗ рд╡рд│рд╡рд▓реЗрд▓реЗ deep learning тАФ courses 03тАУ07 рддреА рдкреЗрдЯреА рдЙрдШрдбрддрд╛рдд).
ЁЯЧ║я╕П рдЖрдХреГрддреА
flowchart LR
subgraph old["ЁЯУЬ classic programming"]
r["rules, written by humans"] --> p1["program"] --> a1["answers"]
end
subgraph ml["ЁЯза machine learning"]
e["examples: 10,000 cats"] --> t["training"] --> m["model - the grown rules"]
m --> a2["answers - even for NEW cats"]
end
old -.->|"1 breaks when rules<br/>can't be written"| ml
тЭУ рдХрд╛рдп
- Model = рд╢рд┐рдХрд▓реЗрд▓реА рд╡рд╕реНрддреВ: рдЖрдХрдбреНрдпрд╛рдВрдЪрд╛ рдвреАрдЧ (weights/ parameters) рдЬреЛ рдирдореБрдирд╛ рд╕рд╛рдард╡рддреЛ. "Training" рддреЛ рддрдпрд╛рд░ рдХрд░рддреЗ; "inference" рддреЛ рд╡рд╛рдкрд░рддреЗ. GPT-class models: рдЕрдмреНрдЬрд╛рд╡рдзреА weights.
- Classic programming:
rules + data тЖТ answers. Machine learning:data + answers тЖТ rules. рд╣рд╛ рдЙрд▓рдЯрд╛ рдХреНрд░рдо рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛; рдХреЛрд░реНрд╕рдордзреАрд▓ рдмрд╛рдХреА рд╕рдЧрд│реЗ рддреНрдпрд╛рддреВрдирдЪ рд╕рдордЬрддреЗ. - Deep learning = рдЕрд╕реЗ ML рдЬрд┐рдереЗ model рд╣реЗ рдерд░рд╛рдВрдЪреЗ neural network рдЕрд╕рддреЗ рдЬреЗ рд╕реНрд╡рддрдГрдЪреА features рд╕реНрд╡рддрдГ рд╢рд┐рдХрддреЗ (рддреНрдпрд╛рд▓рд╛ "рдХрд╛рди рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ" рдЕрд╕реЗ рдХреЛрдгреА рд╕рд╛рдВрдЧрдд рдирд╛рд╣реА).
- рдХреЛрдг рдХреБрдареЗ рдЬрд┐рдВрдХрддреЗ: рдЕрдЪреВрдХ, рддрдкрд╛рд╕рддрд╛ рдпреЗрдгрд╛рд▒реНрдпрд╛ logic рд╕рд╛рдареА рдирд┐рдпрдордкреБрд╕реНрддрдХреЗ (рдкрдЧрд╛рд░, рдХрд░); рдЕрд╕реНрдкрд╖реНрдЯ рдирдореБрдиреНрдпрд╛рдВрдЪреНрдпрд╛ рдХрд╛рдорд╛рд╕рд╛рдареА рд╢рд┐рдХрдгреЗ (images, speech, рднрд╛рд╖рд╛) тАФ trade-offs рдкрд╛рди рд╣реЗ рдиреЗрдордХреЗ рдХрд░реВрди рджрд╛рдЦрд╡рддреЗ.
ЁЯдФ рдХрд╛
AI рдмрджреНрджрд▓рдЪреА рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рддрдореА, рднреАрддреА рдЖрдгрд┐ product рдирд┐рд░реНрдгрдп рдпрд╛ рдПрдХрд╛рдЪ рдмрджрд▓рд╛рдХрдбреЗ рдкрд░рдд рдЬрд╛рддреЛ: рдирд┐рдпрдо рд▓рд┐рд╣рд┐рд▓реЗ рдЬрд╛рдд рдирд╛рд╣реАрдд, рд╡рд╛рдврд╡рд▓реЗ рдЬрд╛рддрд╛рдд. рд╡рд╛рдврд╡рд▓реЗрд▓реЗ рдирд┐рдпрдо рд╕реБрдВрджрд░рдкрдгреЗ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдХрд░рддрд╛рдд (рдирд╡реА рдорд╛рдВрдЬрд░? рдХрд╛рд╣реА рд╣рд░рдХрдд рдирд╛рд╣реА) рдЖрдгрд┐ рд╡рд┐рдЪрд┐рддреНрд░рдкрдгреЗ рдЪреБрдХрддрд╛рдд (рдХреЗрд│реНрдпрд╛рд╡рд░ рдПрдХ sticker тЖТ "toaster"), рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреА рдкреВрд░реНрдг рддрдкрд╛рд╕рдгреА рдХрд░рддрд╛ рдпреЗрдд рдирд╛рд╣реА. рд╣рд╛ рд╕реМрджрд╛ рдбреЛрдХреНрдпрд╛рдд рдареЗрд╡рд╛ рдЖрдгрд┐ рдмрд╛рдХреАрдЪрд╛ рдХреЛрд░реНрд╕ рдЙрддрд╛рд░рд╛рдЪрд╛ рд░рд╕реНрддрд╛ рдЖрд╣реЗ.
ЁЯзк рдХрд░реВрди рдкрд╛рд╣рд╛ (60 рд╕реЗрдХрдВрдж, рд╕рд╛рдзреЗ Python)
python3 demo/bigram_model.py
рдкрд╛рд╣рд╛: рддреЗ рдкрд╛рдЪ рд╡рд╛рдХреНрдпрд╛рдВрдордзреВрди рд╢рд┐рдХрддреЗ (рдирдореБрдиреЗ рдореЛрдЬрдгреЗ тАФ рд╣реЗрдЪ training, рдзрдбрд╛ 02), рдордЧ рддреНрдпрд╛рд▓рд╛ рдХрдзреАрдЪ рди рджрд┐рд▓реЗрд▓рд╛ рдирд╡рд╛ text рд▓рд┐рд╣рд┐рддреЗ (inference). рдПрдХрд╣реА рдирд┐рдпрдо рд▓рд┐рд╣рд┐рд▓рд╛ рдирд╛рд╣реА; model рдЪрд╛ рд╕рдВрдкреВрд░реНрдг "рдореЗрдВрджреВ" рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рдЫрд╛рдкрд▓реЗрд▓рд╛ рдЖрд╣реЗ тАФ рдлрдХреНрдд рдореЛрдЬрд▓реЗрд▓реЗ рдЖрдХрдбреЗ. рдореЛрдареЗ рдЖрдХрдбреЗ, рддреАрдЪ рдХрд▓реНрдкрдирд╛ тАФ рдХреЛрд░реНрд╕рдЪрд╛ рдмрд░рд╛рдЪ рднрд╛рдЧ рд╣реЗрдЪ рдЖрд╣реЗ, рд╡рд┐рд╢реНрд╡рд╛рд╕ рдмрд╕рдгрд╛рд░ рдирд╛рд╣реА рдЗрддрдХрд╛. ЁЯШД
тПня╕П рдкреБрдвреЗ
"рдЙрджрд╛рд╣рд░рдгреЗ рджрд╛рдЦрд╡рдгреЗ" model рд▓рд╛ рдЦрд░реЛрдЦрд░ рдХрд╕реЗ рдмрджрд▓рддреЗ? рд▓рд╛рд▓ рдкреЗрди: training, loss, рдЖрдгрд┐ gradient descent.
git checkout lesson-02-training