17 августа 2021

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π£Ρ‡Π΅Π½Ρ‹ΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈ ΠΊ.Ρ‚.Π½. Π Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽ всякиС Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ ΡˆΡ‚ΡƒΠΊΠΈ ΠΈ ΠΈΠ³Ρ€Π°ΡŽΡΡŒ Π²ΠΎ встраиваСмыС систСмы. УмСю Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ чСртовски Ρ…ΠΎΡ€ΠΎΡˆ собой :) Π–ΠΈΠ²Ρƒ Π² России, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² ΠœΠ“Π’Π£ ΠΈΠΌ. Н.Π­. Π‘Π°ΡƒΠΌΠ°Π½Π°.
Π—Π½Π°ΠΊΠΎΠΌΠΈΠΌ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ с основами Machine Learnng ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ Kaggle, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ датасСт Titanic.
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Kaggle?

Kaggle – ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠ°, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π°Ρ ΡΠΎΡ€Π΅Π²Π½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ систСму ΠΏΠΎ исслСдованию Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ рСсурс ΠΏΠΎ искусствСнному ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Ρƒ ΠΈ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΡ†ΡΠ΅Ρ‚ΡŒ спСциалистов Π² ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… областях.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° сайтС. Π—Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ ссылкС, Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Register ΠΈ заполняСм поля. Π£Π²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Π²Ρ‹ сами с этим ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΡΠΏΡ€Π°Π²ΠΈΡ‚Π΅ΡΡŒ. ПослС рСгистрации, подтвСрТдСния ΠΈ Π»ΠΎΠ³ΠΈΠ½Π° ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π½Π° Π³Π»Π°Π²Π½ΡƒΡŽ страницу рСсурса.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Kaggle
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Kaggle

Π‘Π»Π΅Π²Π° Π² столбцС ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹:

  • Home – новостная Π»Π΅Π½Ρ‚Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ вас Π·Π°ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ. Π§Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° сайтС, Ρ‚Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Π΅Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ.
  • Competitions – сорСвнования Π² области Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ находятся ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ сорСвнования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ словом Knowledge.
  • Datasets – Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒΡΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ собствСнныС датасСты.
  • Code – Ρ€Π°Π·Π΄Π΅Π», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Jupyter Notebook ΠΈΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‡ΡƒΠΆΠΎΠΉ.
  • Discussions – мСстный Π°Π½Π°Π»ΠΎΠ³ Ρ„ΠΎΡ€ΡƒΠΌΠΎΠ².
  • Courses – ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ курсы. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹ΠΉ объСм ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ΅ качСство. Раскрыты основныС Π±Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ML.

ΠžΡ‚Π²Π»Π΅Ρ‡Π΅ΠΌΡΡ ΠΏΠΎΠΊΠ° ΠΎΡ‚ Kaggle ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ машинном ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎ Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹Ρ… с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π·Π°Π΄Π°Ρ‡Π°Ρ….

ВСорСтичСский ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎ Machine Learning

МашинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ – Π½Π°Π±ΠΎΡ€ матСматичСских, статистичСских ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΏΡƒΡ‚Π΅ΠΌ поиска закономСрностСй Π² прСдставлСнных Π΄Π°Π½Π½Ρ‹Ρ….

БущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² машинного обучСния. Π—Π΄Π΅ΡΡŒ я ΠΏΠΎΠΊΠ°ΠΆΡƒ всСго нСсколько самых Π±Π°Π·ΠΎΠ²Ρ‹Ρ…, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π²Ρ‹ смоТСтС Π½Π°ΠΉΡ‚ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, пройдя ΠΏΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ссылкам Π² ΠΊΠΎΠ½Ρ†Π΅.

ВсС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ML ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° нСсколько ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏ:

  • ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ с ΡƒΡ‡ΠΈΡ‚Π΅Π»Π΅ΠΌ (ΠΎΡ‚ Π°Π½Π³Π». Supervised learning) – Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈΠ· этой Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ€Ρ‹ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… исслСдуСмых ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ², Ρ‚Π°ΠΊ ΠΈ β€œΠΎΡ‚Π²Π΅Ρ‚Ρ‹β€ Π½Π° эти Π½Π°Π±ΠΎΡ€Ρ‹. β€œΠžΡ‚Π²Π΅Ρ‚ΠΎΠΌβ€ являСтся Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π΄Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ‚.Π΅. Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ β€œΠΎΠ±ΡƒΡ‡Π°Π΅Ρ‚ΡΡβ€. К этой Π³Ρ€ΡƒΠΏΠΏΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ отнСсти Π·Π°Π΄Π°Ρ‡ΠΈ классификации ΠΈ рСгрСссии.
  • ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π±Π΅Π· учитСля (ΠΎΡ‚ Π°Π½Π³Π». Unsupervised learning) – Π³Ρ€ΡƒΠΏΠΏΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… систСма спонтанно обучаСтся Π½Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈΠ·Π²Π½Π΅. К этой Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΌΠΎΠΆΠ½ΠΎ отнСсти Π·Π°Π΄Π°Ρ‡ΠΈ кластСризации, пониТСния размСрности.
  • ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠ΄ΠΊΡ€Π΅ΠΏΠ»Π΅Π½ΠΈΠ΅ΠΌ (ΠΎΡ‚ Π°Π½Π³Π». Reinforcement learning) – Π³Ρ€ΡƒΠΏΠΏΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… систСма обучаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ взаимодСйствия со срСдой, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° находится. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ хотя Π±Ρ‹ Π² Π²ΠΈΠΊΠΈ. Π’ ΠΌΠΎΠ΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ этой Π³Ρ€ΡƒΠΏΠΏΡ‹ Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ.

Π—Π°Π΄Π°Ρ‡ΠΈ машинного обучСния

ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ

ВСроятно, это самая популярная Π·Π°Π΄Π°Ρ‡Π° машинного обучСния. Π•Π΅ ΡΡƒΡ‚ΡŒ состоит Π² присвоСнии ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ Π½Π°Π±ΠΎΡ€Ρƒ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² (Ρ‚.Π΅. свойств ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ классу. НапримСр, стоит Π·Π°Π΄Π°Ρ‡Π° автоматичСской ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ†ΠΈΠΈ токсичных ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½Π° сайтС. Алгоритм ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ тСкст коммСнтария, Π° Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ присваиваСт Π΅ΠΌΡƒ ΠΌΠ΅Ρ‚ΠΊΡƒ: токсичный ΠΈΠ»ΠΈ нСтоксичный. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ классификации. К этому ΠΆΠ΅ Ρ‚ΠΈΠΏΡƒ классификации ΠΌΠΎΠΆΠ½ΠΎ отнСсти Π·Π°Π΄Π°Ρ‡Ρƒ выявлСния сСрдСчно-сосудистых ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΠΎ Π°Π½Π°Π»ΠΈΠ·Π°ΠΌ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ спама Π² ΠΏΠΈΡΡŒΠΌΠ°Ρ… ΠΈ Ρ‚.ΠΏ. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΈΠΏ классификации – мноТСствСнная (многоклассовая). Π’ Π½Π΅ΠΉ классов большС Π΄Π²ΡƒΡ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ классификация ΠΆΠ°Π½Ρ€Π° ΠΊΠ½ΠΈΠ³ΠΈ.

Для дСмонстрации посмотрим графичСской Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ классификации. Алгоритм раздСляСт пространство ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² Π½Π° Π΄Π²Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹.

Π—Π°Π΄Π°Ρ‡Π° классификации
Π—Π°Π΄Π°Ρ‡Π° классификации

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹: логистичСская рСгрСссия, KNN, SVM, Π΄Π΅Ρ€Π΅Π²ΡŒΡ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

РСгрСссия

Π—Π°Π΄Π°Ρ‡Π° рСгрСссии – прСдсказаниС (ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° ΠΏΠΎ Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ. НапримСр, прСдсказаниС загруТСнности Π΄ΠΎΡ€ΠΎΠ³ΠΈ Π² зависимости ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ суток, дня Π½Π΅Π΄Π΅Π»ΠΈ, ΠΏΠΎΠ³ΠΎΠ΄Ρ‹, прСдсказаниС Ρ†Π΅Π½Ρ‹ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹ ΠΎΡ‚ количСства ΠΊΠΎΠΌΠ½Π°Ρ‚, этаТа, Ρ€Π°ΠΉΠΎΠ½Π°. ΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΡƒΡ‚ΡŒ ΠΈΠ· ΠΏΡƒΠ½ΠΊΡ‚Π° А Π² ΠΏΡƒΠ½ΠΊΡ‚ Π‘ Π² зависимости ΠΎΡ‚ ΠΏΡ€ΠΎΠ±ΠΎΠΊ ΠΈ Ρ‚.ΠΏ. Π’.Π΅. Π·Π°Π΄Π°Ρ‡Π° рСгрСссии это Π·Π°Π΄Π°Ρ‡Π° получСния нСизвСстного числа ΠΏΠΎ извСстным ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° рисунок. По ряду извСстных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ y(x) Π±Ρ‹Π»Π° прСдсказана кривая – линия рСгрСссии. Π•Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ значСния y для нСизвСстных x.

Π—Π°Π΄Π°Ρ‡Π° рСгрСссии
Π—Π°Π΄Π°Ρ‡Π° рСгрСссии

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹: линСйная ΠΈ полиномиальная рСгрСссии, KNN, Π΄Π΅Ρ€Π΅Π²ΡŒΡ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

ΠšΠ»Π°ΡΡ‚Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡ

Π—Π°Π΄Π°Ρ‡Π° кластСризации состоит Π² Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² ΠΎΠ΄ΠΈΠ½ кластСр, Π° кластСры сильно Π±Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π°Π»ΠΈΡΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ собой. ΠšΠ»Π°ΡΡ‚Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ для Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ поиска ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, сТатия Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ поиска Π½ΠΎΠ²ΠΈΠ·Π½Ρ‹ (Ρ‡Ρ‚ΠΎ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π½ΠΈ Π² ΠΎΠ΄ΠΈΠ½ кластСр).

Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ вопрос: Π° Ρ‡Π΅ΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ классификация ΠΈ кластСризация, вСдь ΠΎΠ½ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ? ΠŸΡ€ΠΈ классификации Π΅ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… классов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ обучаСтся Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π° Π½Π°Π±ΠΎΡ€Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ². Π”Π°Π»Π΅Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ прСдсказываСт, ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ классу ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. ΠŸΡ€ΠΈ кластСризации ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пытаСтся ΡΠ³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, сущСствуСт Π»ΠΈ какая-Π»ΠΈΠ±ΠΎ взаимосвязь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Ρ‚.Π΅. машина учится сама.

ГрафичСским ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ кластСризации ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡ.

Π—Π°Π΄Π°Ρ‡Π° кластСризации
Π—Π°Π΄Π°Ρ‡Π° кластСризации

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹: K-Means, DBSCAN.

ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ качСства рСгрСссии

НачнСм с рСгрСссии. ΠŸΡ€ΠΈ ΠΎΡ†Π΅Π½ΠΊΠ΅ качСства Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ, содСрТащСй Π΄Π²Π° столбца (ΠΏΠΎΠΌΠΈΠΌΠΎ индСкса): ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ значСния ΠΈ прСдсказанныС. Для простоты рассмотрим Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ строки, ΠΈ ΠΏΡƒΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ количСство ΠΊΠΈΠ»ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΊΠ°Ρ€Ρ‚ΠΎΡˆΠΊΠΈ для сСти рСсторанов. Для простоты расчСтов возьмСм ΠΊΡ€Π°Ρ‚Π½Ρ‹Π΅ дСсяти значСния.

НомСр Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ (сколько Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ ΠΊΠ³ ΠΊΠ°Ρ€Ρ‚ΠΎΡˆΠΊΠΈ) ΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (ΠΊΠ³)
1 200 180
2 150 190
3 140 120
4 160 220

ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ количСствС Π΄Π°Π½Π½Ρ‹Ρ… Π΄Π°ΠΆΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ качСство прСдсказанных Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ 1 ΠΈ 3 Π±Ρ‹Π»ΠΈ достаточно Ρ‚ΠΎΡ‡Π½Ρ‹, Π½ΠΎΠΌΠ΅Ρ€ 2 ΠΏΠΎΠΊΠ°Π·Π°Π» Π±ΠžΠ»ΡŒΡˆΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π° Π² строкС Π½ΠΎΠΌΠ΅Ρ€ 4 ошибка оказалась ΠΎΡ‡Π΅Π½ΡŒ большой.

Для тысяч Ρ‚Π°ΠΊΠΈΡ… строк Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ качСство Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Π°Π³Ρ€Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

Mean Absolute Error (MAE) – срСдняя Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ ошибка

Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ способ – ΡΠ»ΠΎΠΆΠΈΡ‚ΡŒ ошибки ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· прСдсказаний ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° количСство прСдсказаний. ΠŸΠΎΡΡ‡ΠΈΡ‚Π°Π΅ΠΌ для нашСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

40+20+40+604=35ΠΊΠ³

Π’ срСднСм наш Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΎΡˆΠΈΠ±Π°Π΅Ρ‚ΡΡ Π½Π° 35 ΠΊΠ³ ΠΊΠ°Ρ€Ρ‚ΠΎΡˆΠΊΠΈ. Π“Π΄Π΅-Ρ‚ΠΎ Π² плюс, Π³Π΄Π΅-Ρ‚ΠΎ Π² минус. Вакая ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° называСтся срСднСй Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΉ ошибкой, mean absolute error ΠΈΠ»ΠΈ MAE.

MAE=1nβˆ‘i=1n|yiβˆ’xi|=1nβˆ‘i=1n|ei|

Π³Π΄Π΅ yi – прСдсказанныС значСния, Π° xi – Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ извСстныС значСния, ei - ошибка i-Π³ΠΎ прСдсказания.

Mean Square Error (MSE) – БрСдняя квадратичная ошибка

Достаточно часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ похоТая ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°, MSE. Она рассчитываСтся ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ бСрСтся Π½Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ошибки ei, Π° Π΅Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚.

MSE=1nβˆ‘i=1n(yiβˆ’xi)2=1nβˆ‘i=1nei2

Для нашСго ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

MSE=400+1600+400+36004=1500ΠΊΠ³2

Но ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΊΠΈΠ»ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…, Π° β€œΠΊΠ³ Π² квадратС”. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ исходной Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΈΠ· MSE ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΡ€Π΅Π½ΡŒ:

RMSE=MSE=1500=38.72ΠΊΠ³

По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с RMSE, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° MAE Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Π°, Ρ‚.ΠΊ. ΡƒΡΡ€Π΅Π΄Π½ΡΡŽΡ‚ΡΡ сами отклонСния, Π½ΠΎ RMSE ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Π₯отя для MAE ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΆΠ΅ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ выполняСтся.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ MAE β€” ΠΎΠ½Π° Π±ΠΎΠ»Π΅Π΅ устойчива ΠΊ выбросам, Ρ‡Π΅ΠΌ RMSE. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ошибка ΠΎΡ‡Π΅Π½ΡŒ большая (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-выброс), Π° для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² – малСнькая, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ MAE подскочит ΠΎΡ‚ этого ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° мСньшС, Ρ‡Π΅ΠΌ RMSE, Ρ‚.ΠΊ. Π² RMSE ошибки возводятся Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ-выбросом являСтся Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠ΅ прСдсказаниС.

Quantile loss

Иногда ошибка Π² ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ сторону ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠ΅ влияниС Π½Π° бизнСс. НапримСр, Ссли ΠΌΡ‹ прСдскаТСм Π½Π° ΠΎΠ΄Π½Ρƒ тысячу Π΅Π΄ΠΈΠ½ΠΈΡ† Ρ‚ΠΎΠ²Π°Ρ€Π° мСньшС, Ρ‡Π΅ΠΌ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ потрСбуСтся, Ρ‚ΠΎ потСряСм ΠΏΡ€ΠΈΠ±Ρ‹Π»ΡŒ: Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ Π½Π΅ достанСтся Ρ‚ΠΎΠ²Π°Ρ€Π°. А Ссли ΠΌΡ‹ прСдскаТСм Π½Π° ΠΎΠ΄Π½Ρƒ тысячу Π΅Π΄ΠΈΠ½ΠΈΡ† большС Ρ‚ΠΎΠ²Π°Ρ€Π°, Ρ‡Π΅ΠΌ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ потрСбуСтся, Ρ‚ΠΎ появятся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ²Π°Ρ€Π°.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ²Π°Ρ€ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ°Π»ΠΎ мСста (Ρ‚.ΠΊ. ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ хранСния Π² рСсторанах Π²Π΅Π»ΠΈΠΊΠΈ) ΠΈ расходы Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π΅Π²Π΅Π»ΠΈΠΊΠΈ, Ρ‚ΠΎΠ³Π΄Π° Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡˆΠΈΠ±ΠΈΡ‚ΡŒΡΡ Π² Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ сторону, Ρ‡Π΅ΠΌ Π² ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ. Π’ этом случаС ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π΄ΠΎΠΌΠ½ΠΎΠΆΠ°ΡŽΡ‚ Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ коэффициСнты, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, возьмСм 0.5 ΠΈ 1.5.

Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, коэффициСнт 1.5 Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ ΠΊ прСдсказаниям 1 ΠΈ 3 (180 < 200 ΠΈ 120 < 140), Π° коэффициСнт 0.5 ΠΊ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ. Π’ΠΎΠ³Π΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ:

1,5β‹…20+0,5β‹…40+1.5β‹…20+0.5β‹…604=27.5ΠΊΠ³

Данная ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° называСтся ΠΊΠ²Π°Π½Ρ‚ΠΈΠ»ΡŒΠ½ΠΎΠΉ ошибкой.

Π‘Π°ΠΌΠΎ ΠΏΠΎ сСбС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ MSE ΠΈΠ»ΠΈ MAE ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ со срСдним Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ дСсятки, ΠΏΡ€ΠΈ этом допустимы ошибки порядка Π΅Π΄ΠΈΠ½ΠΈΡ†. Если хочСтся ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ значСния ошибки Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… (Β«Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² срСднСм ΠΎΡˆΠΈΠ±Π°Π΅Ρ‚ΡΡ Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ-Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ²Β»), ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ с Π½ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ.

К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° MAPE (mean average percentage error) усрСдняСт значСния ошибок, Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

MAPE=20200+40150+20140+601604=22.1

Π’ нашСм случаС, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² срСднСм ΠΎΡˆΠΈΠ±Π°Π΅Ρ‚ΡΡ Π½Π° 22.1%.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΊΠ°ΠΊ ΠΈ Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ ошибок, Π² машинном ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π½Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚: Ρ‚Π°ΠΊΠΎΠ²Π° ΡΡƒΡ‚ΡŒ этой области, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ прСдсказания. Π’Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ опрСдСляСт Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ.

ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ качСства классификации

Accuracy – доля ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ²

Π’ Π·Π°Π΄Π°Ρ‡Π΅ классификации самой простой ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΎΠΉ качСства являСтся доля ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² (accuracy). Она ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π΅ случаСв Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Π» класс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ прСдсказания токсичности ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². Π’.Π΅. ΠΈΠΌΠ΅Π΅ΠΌ Π·Π°Π΄Π°Ρ‡Ρƒ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ классификации, Π³Π΄Π΅ 0 – ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ нСтоксичСн, 1 – ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ токсичСн. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ для простоты ΠΏΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΈ свСдСм всС Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

ID коммСнтария Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Π΄Π°Π½Π½Ρ‹Ρ… (токсичСн Π»ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ) ΠŸΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
1 1 1
2 1 1
3 0 0
4 0 1
5 0 0

Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π²Ρ‹Π΄Π°Π» ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ для ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² 1,2,3,5, Ρ‚.Π΅. Π² 80% случаСв. Π­Ρ‚ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ accuracy.

Accuracy – простая ΠΈ интСрпрСтируСмая ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°, Π½ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ, Π² частности, Π² ΠΊΠ°ΠΊΡƒΡŽ сторону Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΎΡˆΠΈΠ±Π°Π΅Ρ‚ΡΡ Ρ‡Π°Ρ‰Π΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π² ситуации с нСсбалансированными классами, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ класса ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ссли Π² Π΄Π°Π½Π½Ρ‹Ρ… 95% ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ· класса 0 ΠΈ 5% ΠΈΠ· класса 1, Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ всСгда прСдсказываСт, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ относится ΠΊ классу 0, Ρ‚ΠΎ Π΅Π³ΠΎ accuracy Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 95%, хотя Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ бСсполСзный! Π’ Ρ‚Π°ΠΊΠΈΡ… случаях часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ.

Precision and Recall – Π’ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Π°, разбСрСмся сначала с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ошибок. Для этого ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΈΠ· Π²ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ.

Ошибки ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π°
Ошибки ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π°

Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ссли Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊΠ°ΠΊ токсичный, Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ особо ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π² дальнСйшСй ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ. Вакая ошибка называСтся ошибкой ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° (false positive). Если ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ распознан ΠΊΠ°ΠΊ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Π½ΠΎ ΠΎΠ½ токсичный, Ρ‚ΠΎ такая ошибка называСтся ошибкой Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° (false negative). На ΠΌΠΎΠΉ взгляд, Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ошибка Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ΡΡ‚Ρ€Π°ΡˆΠ½Π΅Π΅, Ρ‡Π΅ΠΌ ошибка ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ. Но Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.

Для отслСТивания Π΄Π²ΡƒΡ… Π²ΠΈΠ΄ΠΎΠ² ошибок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ (Precision) ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Π° (Recall).
  • Π’ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ измСряСт, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ прСдсказал класс 1, Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ относится ΠΊ классу 1. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ – это ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ количСства Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ токсичных ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΊ количСству ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΊ токсичныС. И эта ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° составляСт β…” = 66%.
  • ΠŸΠΎΠ»Π½ΠΎΡ‚Π° измСряСт, для ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса 1 Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ прСдсказал класс 1. Для нашСго ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΠΎΠ»Π½ΠΎΡ‚Π° составляСт 100%. Для простоты понимания, Π² Π²ΠΈΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ расчСты ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ.
РасчСт точности ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹
РасчСт точности ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ сразу ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΡΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΎΠ΄Π½ΠΎΠΉ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ F-ΠΌΠ΅Ρ€Ρƒ – срСднСС гармоничСскоС точности P ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ R:

F=2β‹…Pβ‹…RP+R

Π’Π°ΠΊΠΎΠΉ способ усрСднСния Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ F-ΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ высокиС значСния, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ±Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ высокиС значСния. Π˜Π½Ρ‹ΠΌΠΈ словами, Ссли хотя Π±Ρ‹ ΠΎΠ΄Π½Π° ΠΈΠ· Π΄Π²ΡƒΡ… ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ 0, F-ΠΌΠ΅Ρ€Π° Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ 0. Π­Ρ‚ΠΎ свойство Π½Π΅ выполняСтся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для срСднСго арифмСтичСского ΠΈΠ· точности ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹.

АнсамблСвыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ ансамбли – ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² машинном ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Ансамбли ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… классификации ΠΈ рСгрСссии, Π½ΠΎ ΠΎΠ½ΠΈ годятся ΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сводятся ΠΊ этим Π΄Π²ΡƒΠΌ. Π‘Ρ‚ΠΎΠΈΡ‚ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½Π° айсбСрга ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² машинного обучСния ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ. Π˜Ρ… ΠΎΠ±Π·ΠΎΡ€ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Вспомним постановку Π·Π°Π΄Π°Ρ‡ рСгрСссии ΠΈ классификации. Π’ ΠΎΠ±Π΅ΠΈΡ… трСбуСтся Π½Π°Π±ΠΎΡ€ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…: ΠΏΠΎ строкам Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π°Π΄Π°Π½Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹), Π° ΠΏΠΎ столбцам – ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ характСристики ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (возраст, заработная ΠΏΠ»Π°Ρ‚Π°, стаТ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ Ρ‚. Π΄.). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½ΡƒΠΆΠ½Π° Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…: для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ извСстно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (класс Π² Π·Π°Π΄Π°Ρ‡Π΅ классификации ΠΈΠ»ΠΈ число Π² Π·Π°Π΄Π°Ρ‡Π΅ рСгрСссии). ИмСя Π½Π°Π±ΠΎΡ€ Ρ€Π°Π·ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΡ‹ ΠΎΠ±ΡƒΡ‡Π°Π΅ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ для Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° стадии внСдрСния.

АнсамблированиС Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠΌ Π΄Π΅Ρ€Π΅Π²ΡŒΡΠΌ, поэтому Π½Π°Ρ‡Π½Π΅ΠΌ Π±Π»ΠΎΠΊ с Ρ€Π°Π·Π±ΠΎΡ€Π° этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.

Π Π΅ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π΄Π΅Ρ€Π΅Π²ΠΎ – это Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π΅Π»Π°Π΅Ρ‚ прСдсказания Π½Π° основС сСрии вопросов ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

НапримСр, ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π΄Π΅Ρ€Π΅Π²ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ проставлСния ΠΎΡ†Π΅Π½ΠΊΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ студСнту.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ Π΄Π΅Ρ€Π΅Π²Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ Π΄Π΅Ρ€Π΅Π²Π°

АнсамблированиС Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ нСсколько Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ ΡƒΡΡ€Π΅Π΄Π½ΡΡ‚ΡŒ ΠΈΡ… прСдсказания.

НапримСр, строится нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΡ… Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π², ΠΈ бСрСтся срСднСС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρ‹. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΎ ансаблированиС Π² машинном ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΡƒΡ‚.

РСшаСм Titanic на Kaggle

Для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π·Π°Π΄Π°Ρ‡Π΅ΠΉ ΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΌ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚. ИдСм Π½Π° kaggle.com/c/titanic/overview. Π˜Π·ΡƒΡ‡ΠΈΠ² описаниС, ΡƒΠ·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ прСдстоит Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ классификации: ΠΏΠΎ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π²Ρ‹ΠΆΠΈΠ²Π΅Ρ‚ Π»ΠΈ пассаТир ΠΏΡ€ΠΈ ΠΊΡ€ΡƒΡˆΠ΅Π½ΠΈΠΈ Π’ΠΈΡ‚Π°Π½ΠΈΠΊΠ° ΠΈΠ»ΠΈ Π½Π΅Ρ‚. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ (Ρ€Π°Π·Π΄Π΅Π» Data) состоят ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² .csv: train.csv – ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π°Ρ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ содСрТатся ΠΌΠ΅Ρ‚ΠΊΠΈ, Π²Ρ‹ΠΆΠΈΠ» Π»ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ пассаТир ΠΈΠ»ΠΈ Π½Π΅Ρ‚; test.csv – собствСнно Π΄Π°Π½Π½Ρ‹Π΅ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΈΠΌΠ΅Π½Π½ΠΎ Π² этом Ρ„Π°ΠΉΠ»Π΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ; gender_submission.csv – ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ выглядит Ρ„Π°ΠΉΠ»-ΠΎΡ‚Π²Π΅Ρ‚.

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ – понятно. НачинаСм ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ наши Π΄Π°Π½Π½Ρ‹Π΅. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Code ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ New notebook.

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ jupyter notebook. Π§Ρ‚ΠΎΠ±Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ систСму, Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° Π·Π½Π°Ρ‡ΠΎΠΊ Play слСва ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ ячСйки Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°. БистСма Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅, ΠΏΠΎΠ΄ ячСйкой ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΏΡƒΡ‚ΠΈ Π΄ΠΎ csv Ρ„Π°ΠΉΠ»ΠΎΠ².

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

МоТно ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ. Если Π²Ρ‹ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с jupyter notebook ΠΈ pandas, Ρ‚ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ сначала ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π».

Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· датасСта Titanic

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ, Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π² Π΄Π°Ρ‚Π°Ρ„Ρ€Π΅ΠΉΠΌΡ‹ Ρ„Π°ΠΉΠ»Ρ‹ .csv.

        train_data = pd.read_csv('/kaggle/input/titanic/train.csv')
test_data = pd.read_csv('/kaggle/input/titanic/test.csv')

    

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Ρ‚ΠΎ всС Ρƒ нас ΡƒΠ΄Π°Ρ‡Π½ΠΎ ΠΈ взглянСм Π½Π° эти Π΄Π°Ρ‚Π°Ρ„Ρ€Π΅ΠΉΠΌΡ‹. Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ train_data.

        train_data.head()
    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΎΡ†Π΅Π½ΠΈΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π΄Π°Ρ‚Π°Ρ„Ρ€Π΅ΠΉΠΌΠ°. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ свойство shape.

        train_data.shape
    

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ (891, 12), Ρ‚.Π΅. 12 столбцов ΠΈ 891 строку.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ этапом Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ количСство пустых ячССк Π² столбцах ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ. Для этого Π²Ρ‹Π·ΠΎΠ²Π΅ΠΌ:

        train_data.isnull().sum()
    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π² столбцС Age Ρƒ нас 177 пропусков, Π° Π² Cabin Π°ΠΆ 687, Ρ‡Ρ‚ΠΎ сильно большС ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹.

Π”Π°Π»Π΅Π΅, ΠΎΡ†Π΅Π½ΠΈΠΌ Π²Ρ‹ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ. Для простоты Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ seaborn. Для этого ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ ΠΈ matplotlib.

        import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
sns.countplot(x='Survived', data=train_data)

    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Как Π²ΠΈΠ΄ΠΈΠΌ, Π²Ρ‹ΠΆΠΈΠ»ΠΎ людСй мСньшС, Ρ‡Π΅ΠΌ ΠΏΠΎΠ³ΠΈΠ±Π»ΠΎ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим, ΠΊΠ°ΠΊ с Π²Ρ‹ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒΡŽ Ρƒ ΠΌΡƒΠΆΡ‡ΠΈΠ½ ΠΈ ΠΆΠ΅Π½Ρ‰ΠΈΠ½ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

        sns.countplot(x='Survived', hue='Sex', data=train_data)

    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π’ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡƒΠΆΡ‡ΠΈΠ½ ΠΏΠΎΠ³ΠΈΠ±Π»ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС, Ρ‡Π΅ΠΌ Π²Ρ‹ΠΆΠΈΠ»ΠΎ. И большая Ρ‡Π°ΡΡ‚ΡŒ ΠΆΠ΅Π½Ρ‰ΠΈΠ½ Π²Ρ‹ΠΆΠΈΠ»Π°.

Π”Π°Π»Π΅Π΅ взглянСм, ΠΊΠ°ΠΊ зависСла Π²Ρ‹ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ класса ΠΊΠ°ΡŽΡ‚Ρ‹.

        sns.countplot(x='Survived', hue='Pclass', data=train_data) 

    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π’ΠΈΠ΄ΠΈΠΌ всплСск срСди ΠΏΠΎΠ³ΠΈΠ±ΡˆΠΈΡ… пассаТиров 3 класса.

НС Π·Π°ΠΊΠ°ΠΏΡ‹Π²Π°ΡΡΡŒ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ Π² датасСт, Π²ΠΈΠ΄ΠΈΠΌ ΡΠ²Π½ΡƒΡŽ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ выТиваСмости ΠΎΡ‚ ΠΏΠΎΠ»Π° ΠΈ класса ΠΊΠ°ΡŽΡ‚Ρ‹.

Π’ качСствС ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² ΠΊΡ€ΠΎΠΌΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π° ΠΈ класса ΠΊΠ°ΡŽΡ‚Ρ‹, возьмСм количСство Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ\Π΄Π΅Ρ‚Π΅ΠΉ ΠΈ количСство Π±Ρ€Π°Ρ‚ΡŒΠ΅Π²\сСстСр Π½Π° Π±ΠΎΡ€Ρ‚Ρƒ. Π˜Ρ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ список ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

        features = ['Sex', 'Pclass', 'SibSp', 'Parch']
    

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ‹ΠΆΠΈΠ²ΡˆΠΈΡ… ΠΈ ΠΏΠΎΠ³ΠΈΠ±ΡˆΠΈΡ… пассаТирах помСстим Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ y:

        y = train_data['Survived']

    

Если Π²Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚ΠΌΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π·Π°Π΄, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π² столбцС Sex находятся Π½Π΅ числа, Π° строки, ΠΊΠΎΠ³Π΄Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π½Π½Ρ‹Π΅ Π½Π°ΠΌΠΈ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ числами. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠΌ этот столбСц Π² ΠΏΠ°Ρ€Ρƒ Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Для этого Π² Pandas Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся get_dummies(). Π‘Π΄Π΅Π»Π°Π΅ΠΌ эту ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠ°ΠΊ для ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ρ‚Π°ΠΊ ΠΈ для тСстовой.

        X = pd.get_dummies(train_data[features])
X_test = pd.get_dummies(test_data[features])

    
πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ столбСц Sex исчСз, Π° вмСсто Π½Π΅Π³ΠΎ появилось Π΄Π²Π° столбца Sex_female ΠΈ Sex_male.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ансамбля Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΡ… Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² ΠΎΠ±ΡƒΡ‡ΠΈΠΌ Π½Π°ΡˆΡƒ модСль, сдСлаСм прСдсказаниС для тСстовой Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΈ сохраним Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Ансамбль Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΡ… Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² называСтся Random Forest.

        from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(n_estimators=100, max_depth=5, random_state=1)
model.fit(X, y)  # ΠΎΠ±ΡƒΡ‡Π°Π΅ΠΌ модСль
prediction = model.predict(X_test)  # Π΄Π΅Π»Π°Π΅ΠΌ прСдсказаниС
output = pd.DataFrame({'PassengerId':test_data.PassengerId, 'Survived':prediction})
output.to_csv('my_submission.csv', index=False)  # Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Π΄Π°Ρ‚Π°Ρ„Ρ€Π΅ΠΉΠΌ ΠΈ сохраняСм Π΅Π³ΠΎ Π² csv Ρ„Π°ΠΉΠ»

    

Π’ΠΎΡ‚ ΠΈ всС. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² сорСвнованиС. Для этого Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ Π½Π°ΠΆΠΈΠ²Π°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Save version. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠ½ΠΎΡ‚ сохранится, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° Ρ†ΠΈΡ„Ρ€Ρƒ Π²ΠΎΠ·Π»Π΅ этой ΠΊΠ½ΠΎΠΏΠΊΠΈ.

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

ΠžΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ΡΡ ΠΎΠΊΠ½ΠΎ Version history. Π’ ΠΏΡ€Π°Π²ΠΎΠΌ спискС, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎΡ‡ΠΈΠ΅ ΠΎΠΊΠΎΠ»ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ сохранСнной вСрсии ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Submit to competition.

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

ΠŸΠΎΡΠ²Π»ΡΠ΅Ρ‚ΡΡ окошко, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ submit.

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΡŽ! Π’Ρ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ сорСвнованиС Π½Π° kaggle. НаТмитС Π½Π° view my submission, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

πŸ€– Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅: Ρ€Π΅ΡˆΠ°Π΅ΠΌ Titanic Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Kaggle

Π§Π΅ΠΌ Π±Π»ΠΈΠΆΠ΅ число ΠΊ 1, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅. Но 0.775, ΡΠΎΠ³Π»Π°ΡΠΈΡ‚Π΅ΡΡŒ, Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ для ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π°.

ΠŸΡƒΡ‚ΡΠΌΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ: Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ², Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ своих Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ², Π²Ρ‹Π±ΠΎΡ€ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π²Ρ‹Π±ΠΎΡ€ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° RandomForestClassifier. Для Π½Π°Ρ‡Π°Π»Π°, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ с числами Π² этой строкС (Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ эти числа Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ).
        model = RandomForestClassifier(n_estimators=100, max_depth=5, random_state=1)

    

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ для изучСния:

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ Π±Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΈΠ· Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ ΠΈ Π›Π΅Ρ‚Π½Π΅ΠΉ ΡˆΠΊΠΎΠ»Ρ‹ Π‘Π±Π΅Ρ€Π°.

ΠœΠ•Π ΠžΠŸΠ Π˜Π―Π’Π˜Π―

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Π’ΠΠšΠΠΠ‘Π˜Π˜

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ вакансию

Π›Π£Π§Π¨Π˜Π• БВАВЬИ ПО Π’Π•ΠœΠ•