03 - Точність та відбір моделей

Machine Learning

Ігор Мірошниченко

КНЕУ::ІІТЕ

2023-03-07

Точність моделей

Огляд: навчання з вчителем

  1. Використовуючи навчальні дані \(\left( \color{#FFA500}{\mathbf{y}},\, \color{#6A5ACD}{\mathbf{X}} \right)\), ми навчаємо \(\hat{\color{#20B2AA}{f}}\), оцінюємо \(\color{#FFA500}{\mathbf{y}} = \color{#20B2AA}{f}\!(\color{#6A5ACD }{\mathbf{X}}) + \varepsilon\).
  1. Використовуючи цю розрахункову модель \(\hat{\color{#20B2AA}{f}}\), ми можемо обчислити training MSE \[\color{#314f4f}{\text{MSE}_\text{train}} = \dfrac{1}{n} \sum_{1}^n \underbrace{\left[ \color{#FFA500}{ \mathbf{y}}_i - \hat{\color{#20B2AA}{f}}\!\left( \color{#6A5ACD}{x}_i \right) \right]^{2}}_{\text{Квадрат похибки}} = \dfrac{1}{n} \sum_{1}^n \left[ \color{#FFA500}{\mathbf{y}}_i - \hat{\color{#FFA500}{ \mathbf{y}}} \right]^2\]
  1. Ми хочемо, щоб модель точно передбачала раніше невідомі (test) дані. Цю мету іноді називають узагальнення / generalization або зовнішня валідність.

Середнє \(\left[\color{#e64173}{y_0} - \hat{\color{#20B2AA}{f}}\!\left( \color{#e64173}{x_0} \right) \right]^2\) для спостережень \(\left( \color{#e64173}{y_0},\, \color{#e64173}{x_0} \right)\) на нашій тестовій вибірці.

Помилки

Елемент, який знаходиться в центрі нашої уваги, це (у тестовій вибірці) помилка передбачення \[\color{#FFA500}{\mathbf{y}}_i - \hat{\color{#20B2AA}{f}}\!\left( \color{#6A5ACD}{x}_i \right) = \color{#FFA500}{\mathbf{y}}_i - \hat{\color{#FFA500}{\mathbf{y}}}_i\] різниця між міткою \(\left( \color{#FFA500}{\mathbf{y}} \right)\) та її прогнозом \(\left( \hat{\color{#FFA500}{\mathbf{y}}} \right)\).

Відстань (тобто невід’ємне значення) між справжнім значенням і його прогнозом часто називають loss.

Loss функції

Loss функції агрегують та кількісно визначають похибки.

L1 функція втрат: \(\sum_i \big| y_i - \hat{y}_i \big|\)    MAE: \(\dfrac{1}{n}\sum_i \big| y_i - \hat{y}_i \big|\)

L2 функція втрат: \(\sum_i \left( y_i - \hat{y}_i \right)^2\)   MSE: \(\dfrac{1}{n} \sum_i \left( y_i - \hat{y}_i \right)^2\)


Зверніть увагу, що обидві функції накладають припущення.

  1. Обидві припускають, що переоцінка однаково погана, як і недооцінка.

  2. Обидві припускають, що помилки однаково шкідливі для всіх \((i)\).

  3. Вони відрізняються у своїх припущеннях щодо величини помилок.

    • L1 додаткова одиниця помилки скрізь однаково погано.
    • L2 додаткова одиниця помилки гірше, коли помилка вже велика.

Дуже простий одновимірний набір даних \(\left(\mathbf{y},\, \mathbf{x} \right)\)

… на якому ми виконуємо просту лінійну регресію.

Кожна точка \(\left( y_i,\, x_i \right)\) пов’язана з loss (помилка).

Функція втрат L1 зважує всі помилки однаково: \(\sum_i \big| y_i - \hat{y}_i \big|\)

Функція втрат L2 зважує похибки: \(\sum_i \left( y_i - \hat{y}_i \right)^2\)

Overfitting

Так у чому ж справа?

Ми зіткнулися з компромісом:

  • ускладнити модель для кращого навчання моделі

  • ризикуємо перенавчити модель

Ми можемо побачити ці компроміси в нашому test MSE (але не в training MSE).

Навчальна вибірка і сплайни моделей

Попередній приклад має досить нелінійну залежність.

Q Що відбувається, коли істина фактично лінійна?

Навчальна вибірка і сплайни моделей

Рішення?

Зрозуміло, що ми не хочемо перенавчити модель на навчальній вибірці.
Здається, наша тестова вибірка може допомогти.

Q Як щодо наступної процедури?

  1. навчіть модель \(\hat{\color{#20B2AA}{f}}\) на навчальній вибірці

  2. використовуйте тестові дані, щоб “налаштувати” гнучкість моделі

  3. повторюйте кроки 1–2, поки не знайдемо оптимальний рівень гнучкості

Це прямий шлях до перенавчання моделі.

Variance vs. Bias

Цей компроміс, до якого ми постійно повертаємося, має офіційну назву:
компроміс зміщення-дисперсії.

Variance: \(\hat{\color{#20B2AA}{f}}\) змінюється в залежності від навчальних вибірок

  • Якщо нові навчальні вибірки кардинально змінить \(\hat{\color{#20B2AA}{f}}\), тоді у нас буде багато невизначеності щодо \(\color{#20B2AA}{f}\) (і , загалом, \(\hat{\color{#20B2AA}{f}} \not\approx \color{#20B2AA}{f}\)).

  • Більш гнучкі моделі зазвичай додають дисперсії до \(\color{#20B2AA}{f}\).

Bias: Помилка, яка виникає через неточне оцінювання \(\color{#20B2AA}{f}\).

  • Більш гнучкі моделі краще пристосовані для опису складних зв’язків \(\left( \color{#20B2AA}{f} \right)\), зменшуючи зміщення. (Реальне життя рідко буває лінійним.)

  • Простіші (менш гнучкі) моделі зазвичай збільшують зміщення.

Variance vs. Bias

Очікуване значення test MSE можна записати \[ \begin{align} \mathop{E}\left[ \left(\color{#FFA500}{\mathbf{y}}_0 - \hat{\color{#20B2AA}{f}}\!(\color{#6A5ACD}{\mathbf{X}}_0) \right)^2 \right] = \underbrace{\mathop{\text{Var}} \left( \hat{\color{#20B2AA}{f}}\!(\color{#6A5ACD}{\mathbf{X}}_0) \right)}_{(1)} + \underbrace{\left[ \text{Bias}\left( \hat{\color{#20B2AA}{f}}\!(\color{#6A5ACD}{\mathbf{X}}_0) \right) \right]^2}_{(2)} + \underbrace{\mathop{\text{Var}} \left( \varepsilon \right)}_{(3)} \end{align} \]

Q1 Що говорить нам ця формула?
Q2 Як гнучкість моделі враховується у цій формулі?
Q3 Що ця формула говорить про мінімізацію test MSE?

A2 Загалом, гнучкість моделі збільшується (1) і зменшується (2).


A3 Рівень зміни дисперсії та зміщення призведе до оптимальної гнучкості.
Ми часто бачимо U-подібні криві test MSE.

U-подібний test MSE по відношенню до гнучкість моделі

Variance vs. Bias

Компроміс зміщення та дисперсії є ключем до розуміння багатьох концепцій машинного навчання.

  • Функції втрати та ефективність моделі

  • Перенавчання та гнучкість моделі

  • Навчання та тестування (і перехресна перевірка)

Поки що ми зосереджувалися на проблемах регресії; як щодо класифікації?

Проблеми класифікації

З категоріальними змінними MSE не працює, наприклад,

\(\color{#FFA500}{\mathbf{y}} - \hat{\color{#FFA500}{\mathbf{y}}} =\) (Chihuahua) - (Blueberry muffin) \(=\) не математика.

Очевидно, що нам потрібен інший спосіб визначення ефективності моделі.

Проблеми класифікації

Найпоширеніший підхід - це…

Training error rate Частка прогнозів навчання, які ми робимо неправильно. \[ \begin{align} \dfrac{1}{n} \sum_{i=1}^{n} \mathbb{I}\!\left( \color{#FFA500}{y}_i \neq \hat{\color{#FFA500} {y}}_i \right) \end{align} \] де \(\mathbb{I}\!\left( \color{#FFA500}{y}_i \neq \hat{\color{#FFA500}{y}}_i \right)\) є індикаторною функцією, яка дорівнює 1, коли наш прогноз помилковий.

Test error rate Частка прогнозів тесту, які ми помиляємося.

Середній \(\mathbb{I}\!\left( \color{#FFA500}{y}_0 \neq \hat{\color{#FFA500}{y}}_0 \right)\) у нашому тесті

Наївний Баєсовий класифікатор

НБК

НБК як класифікатор, який класифікує спостереження його найбільш ймовірним групам, враховуючи значення його предикторів, тобто,

Призначити спостереж. \(i\) до класу \(j\), для якого \(\mathop{\text{Pr}}\left(\color{#FFA500}{\mathbf{y}} = j | \color{#6A5ACD}{\mathbf{ X}} = \mathbf{x}_0\right)\) є найбільшою

Класифікатор Байєса мінімізує test error rate.

\(\mathop{\text{Pr}}\left(\mathbf{y}=j|\mathbf{X}=x_0\right)\) — це ймовірність того, що випадкова величина \(\mathbf{y}\) дорівнює \(j\), при змінній \(\mathbf{X} = x_0\).

НБК

Приклад

  • Pr(y = “chihuahua” | X = “orange and purple”) = 0,3
  • Pr(y = “blueberry muffin” | X = “orange and purple”) = 0,4
  • Pr(y = “squirrel” | X = “orange and purple”) = 0,2
  • Pr(y = “other” | X = “orange and purple”) = 0,1

Тоді класифікатор Байєса каже, що ми повинні передбачити «чорничний кекс».

Межа прийняття рішення Байєса між класами A і B

Тепер вибірка…

… і наша вибірка дає нам оцінку межі прийняття рішення.

А новий зразок дає нам ще одину оцінку межі прийняття рішення.

Один непараметричний спосіб оцінити ці невідомі умовні ймовірності: K-найближчих сусідів (KNN).

K-nearest neighbors

Setup

K-найближчі сусіди (KNN) просто призначає категорію на основі K найближчих сусідів (їх значення).

Використовуючи KNN для перевірки спостереження \(\color{#6A5ACD}{\mathbf{x_0}}\), ми обчислюємо частку спостережень, клас яких дорівнює \(j\),

\[ \begin{align} \hat{\mathop{\text{Pr}}}\left(\mathbf{y} = j | \mathbf{X} = \color{#6A5ACD}{\mathbf{x_0}}\right) = \dfrac{1}{K} \sum_{i \in \mathcal{N}_0} \mathop{\mathbb{I}}\left( \color{#FFA500}{\mathbf{y}}_i = j \right) \end{align} \]

Ці частки є нашими оцінками для невідомих умовних ймовірностей.

Потім ми призначаємо спостереження \(\color{#6A5ACD}{\mathbf{x_0}}\) класу з найвищою ймовірністю.

KNN

KNN у дії
Ліворуч: K=3 оцінка для “x”.        Праворуч: Межі рішень KNN.

Вибір K дуже важливий

Межі прийняття рішень: Bayes, K=1 і K=60

.b[KNN error rates], при збільшенні K

Tidymodels

Швидкий старт

Дані

library(palmerpenguins)

penguins <- penguins %>% 
  drop_na()

penguins
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsexyear
AdelieTorgersen39.118.71813750male2007
AdelieTorgersen39.517.41863800female2007
AdelieTorgersen40.318  1953250female2007
AdelieTorgersen36.719.31933450female2007
AdelieTorgersen39.320.61903650male2007
AdelieTorgersen38.917.81813625female2007
AdelieTorgersen39.219.61954675male2007
AdelieTorgersen41.117.61823200female2007
AdelieTorgersen38.621.21913800male2007
AdelieTorgersen34.621.11984400male2007
AdelieTorgersen36.617.81853700female2007
AdelieTorgersen38.719  1953450female2007
AdelieTorgersen42.520.71974500male2007
AdelieTorgersen34.418.41843325female2007
AdelieTorgersen46  21.51944200male2007
AdelieBiscoe37.818.31743400female2007
AdelieBiscoe37.718.71803600male2007
AdelieBiscoe35.919.21893800female2007
AdelieBiscoe38.218.11853950male2007
AdelieBiscoe38.817.21803800male2007
AdelieBiscoe35.318.91873800female2007
AdelieBiscoe40.618.61833550male2007
AdelieBiscoe40.517.91873200female2007
AdelieBiscoe37.918.61723150female2007
AdelieBiscoe40.518.91803950male2007
AdelieDream39.516.71783250female2007
AdelieDream37.218.11783900male2007
AdelieDream39.517.81883300female2007
AdelieDream40.918.91843900male2007
AdelieDream36.417  1953325female2007
AdelieDream39.221.11964150male2007
AdelieDream38.820  1903950male2007
AdelieDream42.218.51803550female2007
AdelieDream37.619.31813300female2007
AdelieDream39.819.11844650male2007
AdelieDream36.518  1823150female2007
AdelieDream40.818.41953900male2007
AdelieDream36  18.51863100female2007
AdelieDream44.119.71964400male2007
AdelieDream37  16.91853000female2007
AdelieDream39.618.81904600male2007
AdelieDream41.119  1823425male2007
AdelieDream36  17.91903450female2007
AdelieDream42.321.21914150male2007
AdelieBiscoe39.617.71863500female2008
AdelieBiscoe40.118.91884300male2008
AdelieBiscoe35  17.91903450female2008
AdelieBiscoe42  19.52004050male2008
AdelieBiscoe34.518.11872900female2008
AdelieBiscoe41.418.61913700male2008
AdelieBiscoe39  17.51863550female2008
AdelieBiscoe40.618.81933800male2008
AdelieBiscoe36.516.61812850female2008
AdelieBiscoe37.619.11943750male2008
AdelieBiscoe35.716.91853150female2008
AdelieBiscoe41.321.11954400male2008
AdelieBiscoe37.617  1853600female2008
AdelieBiscoe41.118.21924050male2008
AdelieBiscoe36.417.11842850female2008
AdelieBiscoe41.618  1923950male2008
AdelieBiscoe35.516.21953350female2008
AdelieBiscoe41.119.11884100male2008
AdelieTorgersen35.916.61903050female2008
AdelieTorgersen41.819.41984450male2008
AdelieTorgersen33.519  1903600female2008
AdelieTorgersen39.718.41903900male2008
AdelieTorgersen39.617.21963550female2008
AdelieTorgersen45.818.91974150male2008
AdelieTorgersen35.517.51903700female2008
AdelieTorgersen42.818.51954250male2008
AdelieTorgersen40.916.81913700female2008
AdelieTorgersen37.219.41843900male2008
AdelieTorgersen36.216.11873550female2008
AdelieTorgersen42.119.11954000male2008
AdelieTorgersen34.617.21893200female2008
AdelieTorgersen42.917.61964700male2008
AdelieTorgersen36.718.81873800female2008
AdelieTorgersen35.119.41934200male2008
AdelieDream37.317.81913350female2008
AdelieDream41.320.31943550male2008
AdelieDream36.319.51903800male2008
AdelieDream36.918.61893500female2008
AdelieDream38.319.21893950male2008
AdelieDream38.918.81903600female2008
AdelieDream35.718  2023550female2008
AdelieDream41.118.12054300male2008
AdelieDream34  17.11853400female2008
AdelieDream39.618.11864450male2008
AdelieDream36.217.31873300female2008
AdelieDream40.818.92084300male2008
AdelieDream38.118.61903700female2008
AdelieDream40.318.51964350male2008
AdelieDream33.116.11782900female2008
AdelieDream43.218.51924100male2008
AdelieBiscoe35  17.91923725female2009
AdelieBiscoe41  20  2034725male2009
AdelieBiscoe37.716  1833075female2009
AdelieBiscoe37.820  1904250male2009
AdelieBiscoe37.918.61932925female2009
AdelieBiscoe39.718.91843550male2009
AdelieBiscoe38.617.21993750female2009
AdelieBiscoe38.220  1903900male2009
AdelieBiscoe38.117  1813175female2009
AdelieBiscoe43.219  1974775male2009
AdelieBiscoe38.116.51983825female2009
AdelieBiscoe45.620.31914600male2009
AdelieBiscoe39.717.71933200female2009
AdelieBiscoe42.219.51974275male2009
AdelieBiscoe39.620.71913900female2009
AdelieBiscoe42.718.31964075male2009
AdelieTorgersen38.617  1882900female2009
AdelieTorgersen37.320.51993775male2009
AdelieTorgersen35.717  1893350female2009
AdelieTorgersen41.118.61893325male2009
AdelieTorgersen36.217.21873150female2009
AdelieTorgersen37.719.81983500male2009
AdelieTorgersen40.217  1763450female2009
AdelieTorgersen41.418.52023875male2009
AdelieTorgersen35.215.91863050female2009
AdelieTorgersen40.619  1994000male2009
AdelieTorgersen38.817.61913275female2009
AdelieTorgersen41.518.31954300male2009
AdelieTorgersen39  17.11913050female2009
AdelieTorgersen44.118  2104000male2009
AdelieTorgersen38.517.91903325female2009
AdelieTorgersen43.119.21973500male2009
AdelieDream36.818.51933500female2009
AdelieDream37.518.51994475male2009
AdelieDream38.117.61873425female2009
AdelieDream41.117.51903900male2009
AdelieDream35.617.51913175female2009
AdelieDream40.220.12003975male2009
AdelieDream37  16.51853400female2009
AdelieDream39.717.91934250male2009
AdelieDream40.217.11933400female2009
AdelieDream40.617.21873475male2009
AdelieDream32.115.51883050female2009
AdelieDream40.717  1903725male2009
AdelieDream37.316.81923000female2009
AdelieDream39  18.71853650male2009
AdelieDream39.218.61904250male2009
AdelieDream36.618.41843475female2009
AdelieDream36  17.81953450female2009
AdelieDream37.818.11933750male2009
AdelieDream36  17.11873700female2009
AdelieDream41.518.52014000male2009
GentooBiscoe46.113.22114500female2007
GentooBiscoe50  16.32305700male2007
GentooBiscoe48.714.12104450female2007
GentooBiscoe50  15.22185700male2007
GentooBiscoe47.614.52155400male2007
GentooBiscoe46.513.52104550female2007
GentooBiscoe45.414.62114800female2007
GentooBiscoe46.715.32195200male2007
GentooBiscoe43.313.42094400female2007
GentooBiscoe46.815.42155150male2007
GentooBiscoe40.913.72144650female2007
GentooBiscoe49  16.12165550male2007
GentooBiscoe45.513.72144650female2007
GentooBiscoe48.414.62135850male2007
GentooBiscoe45.814.62104200female2007
GentooBiscoe49.315.72175850male2007
GentooBiscoe42  13.52104150female2007
GentooBiscoe49.215.22216300male2007
GentooBiscoe46.214.52094800female2007
GentooBiscoe48.715.12225350male2007
GentooBiscoe50.214.32185700male2007
GentooBiscoe45.114.52155000female2007
GentooBiscoe46.514.52134400female2007
GentooBiscoe46.315.82155050male2007
GentooBiscoe42.913.12155000female2007
GentooBiscoe46.115.12155100male2007
GentooBiscoe47.815  2155650male2007
GentooBiscoe48.214.32104600female2007
GentooBiscoe50  15.32205550male2007
GentooBiscoe47.315.32225250male2007
GentooBiscoe42.814.22094700female2007
GentooBiscoe45.114.52075050female2007
GentooBiscoe59.617  2306050male2007
GentooBiscoe49.114.82205150female2008
GentooBiscoe48.416.32205400male2008
GentooBiscoe42.613.72134950female2008
GentooBiscoe44.417.32195250male2008
GentooBiscoe44  13.62084350female2008
GentooBiscoe48.715.72085350male2008
GentooBiscoe42.713.72083950female2008
GentooBiscoe49.616  2255700male2008
GentooBiscoe45.313.72104300female2008
GentooBiscoe49.615  2164750male2008
GentooBiscoe50.515.92225550male2008
GentooBiscoe43.613.92174900female2008
GentooBiscoe45.513.92104200female2008
GentooBiscoe50.515.92255400male2008
GentooBiscoe44.913.32135100female2008
GentooBiscoe45.215.82155300male2008
GentooBiscoe46.614.22104850female2008
GentooBiscoe48.514.12205300male2008
GentooBiscoe45.114.42104400female2008
GentooBiscoe50.115  2255000male2008
GentooBiscoe46.514.42174900female2008
GentooBiscoe45  15.42205050male2008
GentooBiscoe43.813.92084300female2008
GentooBiscoe45.515  2205000male2008
GentooBiscoe43.214.52084450female2008
GentooBiscoe50.415.32245550male2008
GentooBiscoe45.313.82084200female2008
GentooBiscoe46.214.92215300male2008
GentooBiscoe45.713.92144400female2008
GentooBiscoe54.315.72315650male2008
GentooBiscoe45.814.22194700female2008
GentooBiscoe49.816.82305700male2008
GentooBiscoe49.516.22295800male2008
GentooBiscoe43.514.22204700female2008
GentooBiscoe50.715  2235550male2008
GentooBiscoe47.715  2164750female2008
GentooBiscoe46.415.62215000male2008
GentooBiscoe48.215.62215100male2008
GentooBiscoe46.514.82175200female2008
GentooBiscoe46.415  2164700female2008
GentooBiscoe48.616  2305800male2008
GentooBiscoe47.514.22094600female2008
GentooBiscoe51.116.32206000male2008
GentooBiscoe45.213.82154750female2008
GentooBiscoe45.216.42235950male2008
GentooBiscoe49.114.52124625female2009
GentooBiscoe52.515.62215450male2009
GentooBiscoe47.414.62124725female2009
GentooBiscoe50  15.92245350male2009
GentooBiscoe44.913.82124750female2009
GentooBiscoe50.817.32285600male2009
GentooBiscoe43.414.42184600female2009
GentooBiscoe51.314.22185300male2009
GentooBiscoe47.514  2124875female2009
GentooBiscoe52.117  2305550male2009
GentooBiscoe47.515  2184950female2009
GentooBiscoe52.217.12285400male2009
GentooBiscoe45.514.52124750female2009
GentooBiscoe49.516.12245650male2009
GentooBiscoe44.514.72144850female2009
GentooBiscoe50.815.72265200male2009
GentooBiscoe49.415.82164925male2009
GentooBiscoe46.914.62224875female2009
GentooBiscoe48.414.42034625female2009
GentooBiscoe51.116.52255250male2009
GentooBiscoe48.515  2194850female2009
GentooBiscoe55.917  2285600male2009
GentooBiscoe47.215.52154975female2009
GentooBiscoe49.115  2285500male2009
GentooBiscoe46.816.12155500male2009
GentooBiscoe41.714.72104700female2009
GentooBiscoe53.415.82195500male2009
GentooBiscoe43.314  2084575female2009
GentooBiscoe48.115.12095500male2009
GentooBiscoe50.515.22165000female2009
GentooBiscoe49.815.92295950male2009
GentooBiscoe43.515.22134650female2009
GentooBiscoe51.516.32305500male2009
GentooBiscoe46.214.12174375female2009
GentooBiscoe55.116  2305850male2009
GentooBiscoe48.816.22226000male2009
GentooBiscoe47.213.72144925female2009
GentooBiscoe46.814.32154850female2009
GentooBiscoe50.415.72225750male2009
GentooBiscoe45.214.82125200female2009
GentooBiscoe49.916.12135400male2009
ChinstrapDream46.517.91923500female2007
ChinstrapDream50  19.51963900male2007
ChinstrapDream51.319.21933650male2007
ChinstrapDream45.418.71883525female2007
ChinstrapDream52.719.81973725male2007
ChinstrapDream45.217.81983950female2007
ChinstrapDream46.118.21783250female2007
ChinstrapDream51.318.21973750male2007
ChinstrapDream46  18.91954150female2007
ChinstrapDream51.319.91983700male2007
ChinstrapDream46.617.81933800female2007
ChinstrapDream51.720.31943775male2007
ChinstrapDream47  17.31853700female2007
ChinstrapDream52  18.12014050male2007
ChinstrapDream45.917.11903575female2007
ChinstrapDream50.519.62014050male2007
ChinstrapDream50.320  1973300male2007
ChinstrapDream58  17.81813700female2007
ChinstrapDream46.418.61903450female2007
ChinstrapDream49.218.21954400male2007
ChinstrapDream42.417.31813600female2007
ChinstrapDream48.517.51913400male2007
ChinstrapDream43.216.61872900female2007
ChinstrapDream50.619.41933800male2007
ChinstrapDream46.717.91953300female2007
ChinstrapDream52  19  1974150male2007
ChinstrapDream50.518.42003400female2008
ChinstrapDream49.519  2003800male2008
ChinstrapDream46.417.81913700female2008
ChinstrapDream52.820  2054550male2008
ChinstrapDream40.916.61873200female2008
ChinstrapDream54.220.82014300male2008
ChinstrapDream42.516.71873350female2008
ChinstrapDream51  18.82034100male2008
ChinstrapDream49.718.61953600male2008
ChinstrapDream47.516.81993900female2008
ChinstrapDream47.618.31953850female2008
ChinstrapDream52  20.72104800male2008
ChinstrapDream46.916.61922700female2008
ChinstrapDream53.519.92054500male2008
ChinstrapDream49  19.52103950male2008
ChinstrapDream46.217.51873650female2008
ChinstrapDream50.919.11963550male2008
ChinstrapDream45.517  1963500female2008
ChinstrapDream50.917.91963675female2009
ChinstrapDream50.818.52014450male2009
ChinstrapDream50.117.91903400female2009
ChinstrapDream49  19.62124300male2009
ChinstrapDream51.518.71873250male2009
ChinstrapDream49.817.31983675female2009
ChinstrapDream48.116.41993325female2009
ChinstrapDream51.419  2013950male2009
ChinstrapDream45.717.31933600female2009
ChinstrapDream50.719.72034050male2009
ChinstrapDream42.517.31873350female2009
ChinstrapDream52.218.81973450male2009
ChinstrapDream45.216.61913250female2009
ChinstrapDream49.319.92034050male2009
ChinstrapDream50.218.82023800male2009
ChinstrapDream45.619.41943525female2009
ChinstrapDream51.919.52063950male2009
ChinstrapDream46.816.51893650female2009
ChinstrapDream45.717  1953650female2009
ChinstrapDream55.819.82074000male2009
ChinstrapDream43.518.12023400female2009
ChinstrapDream49.618.21933775male2009
ChinstrapDream50.819  2104100male2009
ChinstrapDream50.218.71983775female2009

Швидкий старт

Дані

Train/Test

library(tidymodels)
set.seed(2023)
Auto_split <- initial_split(penguins, prop = 0.8)
Auto_split
<Training/Testing/Total>
<266/67/333>
train <- training(Auto_split)
test <- testing(Auto_split)

Лінійна регресія

lm_spec <- linear_reg() %>%
  set_mode('regression') %>%
  set_engine('lm')

lm_spec
Linear Regression Model Specification (regression)

Computational engine: lm 
lm_fit <- lm_spec %>% 
  fit(body_mass_g ~ flipper_length_mm, data = train)

lm_fit
parsnip model object


Call:
stats::lm(formula = body_mass_g ~ flipper_length_mm, data = data)

Coefficients:
      (Intercept)  flipper_length_mm  
         -5888.93              50.16  

Лінійна регресія

lm_fit %>% 
  pluck("fit")

Call:
stats::lm(formula = body_mass_g ~ flipper_length_mm, data = data)

Coefficients:
      (Intercept)  flipper_length_mm  
         -5888.93              50.16  
lm_fit %>% 
  pluck("fit") %>%
  summary()

Call:
stats::lm(formula = body_mass_g ~ flipper_length_mm, data = data)

Residuals:
     Min       1Q   Median       3Q      Max 
-1042.47  -246.76    -7.01   241.80  1102.79 

Coefficients:
                   Estimate Std. Error t value Pr(>|t|)    
(Intercept)       -5888.930    338.487  -17.40   <2e-16 ***
flipper_length_mm    50.164      1.682   29.82   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 382.1 on 264 degrees of freedom
Multiple R-squared:  0.771, Adjusted R-squared:  0.7702 
F-statistic: 888.9 on 1 and 264 DF,  p-value: < 2.2e-16

Лінійна регресія

tidy(lm_fit)
termestimatestd.errorstatisticp.value
(Intercept)-5.89e+03338   -17.41.09e-45
flipper_length_mm50.2     1.6829.81.74e-86
glance(lm_fit)
r.squaredadj.r.squaredsigmastatisticp.valuedflogLikAICBICdeviancedf.residualnobs
0.7710.773828891.74e-861-1.96e+033.92e+033.93e+033.86e+07264266

Лінійна регресія

augment(lm_fit, new_data = test) %>%
  rmse(truth = body_mass_g, estimate = .pred)
.metric.estimator.estimate
rmsestandard436
augment(lm_fit, new_data = train) %>%
  rmse(truth = body_mass_g, estimate = .pred)
.metric.estimator.estimate
rmsestandard381

Лінійна регресія

predict(lm_fit, new_data = test) %>% head()
.pred
3.89e+03
3.79e+03
3.69e+03
3.39e+03
3.99e+03
3.84e+03
predict(lm_fit, new_data = test, type = "conf_int") %>% head()
.pred_lower.pred_upper
3.84e+033.94e+03
3.74e+033.85e+03
3.64e+033.75e+03
3.32e+033.46e+03
3.95e+034.04e+03
3.79e+033.89e+03

Лінійна регресія

bind_cols(
  predict(lm_fit, new_data = train),
  train
) %>%  dplyr::select(body_mass_g, .pred)
body_mass_g.pred
46254.29e+03
33003.99e+03
41503.69e+03
54005.4e+03 
39003.34e+03
29003.49e+03
34003.39e+03
39003.34e+03
53005.2e+03 
35003.44e+03
60005.25e+03
59505.3e+03 
36503.59e+03
35753.64e+03
30503.54e+03
43004.75e+03
53505.25e+03
44004.8e+03 
48755.25e+03
36003.19e+03
45504.39e+03
37253.74e+03
36503.89e+03
36003.89e+03
52505.25e+03
33253.89e+03
35503.14e+03
42503.89e+03
48504.65e+03
44004.65e+03
33003.89e+03
30003.39e+03
45504.65e+03
37003.69e+03
58504.8e+03 
43003.54e+03
40753.94e+03
51004.9e+03 
53505.35e+03
37003.49e+03
41004.29e+03
32503.69e+03
49254.95e+03
52005e+03       
33253.59e+03
34503.64e+03
50004.9e+03 
32753.69e+03
32003.79e+03
43004.65e+03
44004.85e+03
43003.89e+03
44504.04e+03
53004.9e+03 
58005.6e+03 
38003.14e+03
54005.15e+03
55005.1e+03 
35503.49e+03
39504.65e+03
38004.14e+03
39504.19e+03
38003.64e+03
55004.6e+03 
36003.79e+03
50505.15e+03
36003.39e+03
38003.59e+03
44003.89e+03
30503.44e+03
53005.05e+03
35503.94e+03
39004.09e+03
51004.8e+03 
42004.65e+03
47504.95e+03
34503.89e+03
38254.04e+03
53005.15e+03
56505.7e+03 
28503.19e+03
36503.39e+03
39504.04e+03
39003.64e+03
43504.55e+03
33503.69e+03
37004.04e+03
47005.1e+03 
39503.64e+03
49254.85e+03
50504.9e+03 
56005.55e+03
35003.99e+03
45004.39e+03
50004.9e+03 
35503.34e+03
36753.94e+03
37003.69e+03
36503.64e+03
55005.65e+03
56505.35e+03
35503.84e+03
49504.8e+03 
41503.94e+03
37253.64e+03
31502.74e+03
41503.89e+03
41004.65e+03
37003.64e+03
39003.69e+03
41503.99e+03
33003.54e+03
39003.64e+03
48504.9e+03 
34003.79e+03
31003.44e+03
37003.64e+03
52005.1e+03 
34753.34e+03
41504.65e+03
46504.8e+03 
51505.15e+03
47504.95e+03
39503.14e+03
34002.84e+03
35004.04e+03
46004.6e+03 
49505.05e+03
34503.89e+03
33503.49e+03
38004.24e+03
51005.2e+03 
60005.15e+03
28503.34e+03
33253.34e+03
33503.89e+03
47504.75e+03
31753.69e+03
37503.99e+03
35504.24e+03
42004.65e+03
63005.2e+03 
30003.74e+03
32003.24e+03
33254.09e+03
31503.39e+03
35003.59e+03
57005.4e+03 
44004.6e+03 
37003.69e+03
34253.24e+03
46003.64e+03
32003.59e+03
43004.19e+03
40504.19e+03
35503.29e+03
40504.29e+03
55505.35e+03
51504.9e+03 
46004.65e+03
50005.15e+03
46504.85e+03
39003.94e+03
34004.24e+03
29253.79e+03
27003.74e+03
38003.79e+03
48505.1e+03 
43503.94e+03
39503.59e+03
35253.54e+03
57005.05e+03
39504.44e+03
44004.04e+03
52004.75e+03
33503.59e+03
46003.69e+03
35503.44e+03
47004.65e+03
33253.64e+03
37503.79e+03
55004.9e+03 
39754.14e+03
55005.55e+03
38003.44e+03
47004.6e+03 
47004.95e+03
38003.79e+03
37754.09e+03
42503.79e+03
37003.19e+03
56005.55e+03
40504.14e+03
32503.04e+03
45754.55e+03
36503.49e+03
31503.24e+03
47753.99e+03
50005.4e+03 
48004.65e+03
33503.49e+03
37753.79e+03
44003.94e+03
44754.09e+03
42503.64e+03
47504.75e+03
58505e+03       
40504.29e+03
54005.55e+03
35253.84e+03
34503.64e+03
46254.75e+03
32003.49e+03
41503.99e+03
41003.54e+03
57005.65e+03
38003.49e+03
39003.04e+03
46753.89e+03
34003.39e+03
36003.64e+03
52005.45e+03
48504.85e+03
43004.55e+03
55505.15e+03
41003.74e+03
55505.3e+03 
34503.99e+03
34753.49e+03
29003.04e+03
46504.85e+03
34003.64e+03
30503.69e+03
31503.49e+03
36503.79e+03
58005.65e+03
42004.55e+03
47005.15e+03
48004.7e+03 
44504.55e+03
40503.74e+03
36003.14e+03
42753.99e+03
32003.49e+03
36253.19e+03
39003.64e+03
47504.9e+03 
39503.74e+03
37503.19e+03
35503.94e+03
29003.49e+03
50005.2e+03 
37503.84e+03
49005e+03       
35003.79e+03
36754.04e+03
30753.29e+03
40004.09e+03
54004.9e+03 
34503.64e+03
50004.95e+03
46005.05e+03
37003.39e+03
56504.9e+03 
37504.09e+03
39003.89e+03

Naive Bayes

library(discrim)

nb_spec <- naive_Bayes() %>% 
  set_mode("classification") %>% 
  set_engine("klaR") %>% 
  set_args(usekernel = FALSE)

nb_spec
Naive Bayes Model Specification (classification)

Engine-Specific Arguments:
  usekernel = FALSE

Computational engine: klaR 
nb_fit <- nb_spec %>% 
  fit(species ~ ., data = train)
nb_fit
parsnip model object

$apriori
grouping
   Adelie Chinstrap    Gentoo 
0.4398496 0.2067669 0.3533835 

$tables
$tables$island
           var
grouping       Biscoe     Dream Torgersen
  Adelie    0.3247863 0.3931624 0.2820513
  Chinstrap 0.0000000 1.0000000 0.0000000
  Gentoo    1.0000000 0.0000000 0.0000000

$tables$bill_length_mm
              [,1]     [,2]
Adelie    38.66667 2.653332
Chinstrap 48.51273 3.404140
Gentoo    47.26596 2.843085

$tables$bill_depth_mm
              [,1]      [,2]
Adelie    18.29658 1.2007133
Chinstrap 18.38909 1.1825385
Gentoo    14.91809 0.9249194

$tables$flipper_length_mm
              [,1]     [,2]
Adelie    189.8462 6.083635
Chinstrap 195.6727 7.557323
Gentoo    217.1489 6.225092

$tables$body_mass_g
              [,1]     [,2]
Adelie    3675.641 439.9189
Chinstrap 3723.182 389.2019
Gentoo    5071.809 483.4802

$tables$sex
           var
grouping       female      male
  Adelie    0.5128205 0.4871795
  Chinstrap 0.5272727 0.4727273
  Gentoo    0.5000000 0.5000000

$tables$year
              [,1]      [,2]
Adelie    2008.085 0.8048629
Chinstrap 2008.000 0.8606630
Gentoo    2008.053 0.7671624


$levels
[1] "Adelie"    "Chinstrap" "Gentoo"   

$call
NaiveBayes.default(x = ~maybe_data_frame(x), grouping = ~y, usekernel = ~FALSE)

$x
       island bill_length_mm bill_depth_mm flipper_length_mm body_mass_g    sex
1      Biscoe           48.4          14.4               203        4625 female
2       Dream           50.3          20.0               197        3300   male
3       Dream           42.3          21.2               191        4150   male
4      Biscoe           50.5          15.9               225        5400   male
5       Dream           40.9          18.9               184        3900   male
6      Biscoe           34.5          18.1               187        2900 female
7       Dream           37.0          16.5               185        3400 female
8   Torgersen           37.2          19.4               184        3900   male
9      Biscoe           46.2          14.9               221        5300   male
10     Biscoe           39.6          17.7               186        3500 female
11     Biscoe           48.8          16.2               222        6000   male
12     Biscoe           45.2          16.4               223        5950   male
13      Dream           46.8          16.5               189        3650 female
14      Dream           45.9          17.1               190        3575 female
15      Dream           32.1          15.5               188        3050 female
16      Dream           49.0          19.6               212        4300   male
17     Biscoe           48.7          15.1               222        5350   male
18     Biscoe           46.5          14.5               213        4400 female
19     Biscoe           46.9          14.6               222        4875 female
20      Dream           42.4          17.3               181        3600 female
21      Dream           52.8          20.0               205        4550   male
22     Biscoe           35.0          17.9               192        3725 female
23      Dream           45.7          17.0               195        3650 female
24      Dream           49.7          18.6               195        3600   male
25     Biscoe           47.3          15.3               222        5250   male
26      Dream           36.4          17.0               195        3325 female
27      Dream           42.2          18.5               180        3550 female
28  Torgersen           42.8          18.5               195        4250   male
29     Biscoe           46.6          14.2               210        4850 female
30     Biscoe           45.1          14.4               210        4400 female
31      Dream           46.7          17.9               195        3300 female
32      Dream           37.0          16.9               185        3000 female
33     Biscoe           46.5          13.5               210        4550 female
34  Torgersen           40.9          16.8               191        3700 female
35     Biscoe           48.4          14.6               213        5850   male
36     Biscoe           40.1          18.9               188        4300   male
37     Biscoe           42.7          18.3               196        4075   male
38     Biscoe           46.1          15.1               215        5100   male
39     Biscoe           50.0          15.9               224        5350   male
40      Dream           36.0          17.1               187        3700 female
41      Dream           51.0          18.8               203        4100   male
42      Dream           45.2          16.6               191        3250 female
43     Biscoe           49.4          15.8               216        4925   male
44     Biscoe           46.5          14.8               217        5200 female
45  Torgersen           41.1          18.6               189        3325   male
46      Dream           46.4          18.6               190        3450 female
47     Biscoe           42.9          13.1               215        5000 female
48  Torgersen           38.8          17.6               191        3275 female
49     Biscoe           39.7          17.7               193        3200 female
50     Biscoe           45.3          13.7               210        4300 female
51     Biscoe           45.7          13.9               214        4400 female
52  Torgersen           41.5          18.3               195        4300   male
53  Torgersen           41.8          19.4               198        4450   male
54     Biscoe           45.2          15.8               215        5300   male
55     Biscoe           49.5          16.2               229        5800   male
56     Biscoe           38.8          17.2               180        3800   male
57     Biscoe           48.4          16.3               220        5400   male
58     Biscoe           53.4          15.8               219        5500   male
59  Torgersen           36.2          16.1               187        3550 female
60      Dream           49.0          19.5               210        3950   male
61      Dream           49.5          19.0               200        3800   male
62      Dream           51.4          19.0               201        3950   male
63      Dream           36.3          19.5               190        3800   male
64     Biscoe           48.1          15.1               209        5500   male
65      Dream           45.7          17.3               193        3600 female
66     Biscoe           45.0          15.4               220        5050   male
67     Biscoe           37.6          17.0               185        3600 female
68     Biscoe           35.9          19.2               189        3800 female
69     Biscoe           41.3          21.1               195        4400   male
70  Torgersen           35.2          15.9               186        3050 female
71     Biscoe           51.3          14.2               218        5300   male
72  Torgersen           39.6          17.2               196        3550 female
73      Dream           47.5          16.8               199        3900 female
74     Biscoe           44.9          13.3               213        5100 female
75     Biscoe           45.5          13.9               210        4200 female
76     Biscoe           47.7          15.0               216        4750 female
77  Torgersen           38.7          19.0               195        3450 female
78     Biscoe           38.1          16.5               198        3825 female
79     Biscoe           48.5          14.1               220        5300   male
80     Biscoe           54.3          15.7               231        5650   male
81     Biscoe           36.5          16.6               181        2850 female
82      Dream           39.0          18.7               185        3650   male
83      Dream           45.2          17.8               198        3950 female
84     Biscoe           38.2          20.0               190        3900   male
85     Biscoe           44.0          13.6               208        4350 female
86      Dream           37.3          17.8               191        3350 female
87      Dream           51.3          19.9               198        3700   male
88     Biscoe           45.8          14.2               219        4700 female
89      Dream           38.8          20.0               190        3950   male
90     Biscoe           47.2          13.7               214        4925 female
91     Biscoe           46.3          15.8               215        5050   male
92     Biscoe           55.9          17.0               228        5600   male
93  Torgersen           43.1          19.2               197        3500   male
94      Dream           53.5          19.9               205        4500   male
95     Biscoe           45.1          14.5               215        5000 female
96     Biscoe           39.7          18.9               184        3550   male
97      Dream           50.9          17.9               196        3675 female
98      Dream           46.4          17.8               191        3700 female
99  Torgersen           39.3          20.6               190        3650   male
100    Biscoe           51.5          16.3               230        5500   male
101    Biscoe           49.5          16.1               224        5650   male
102     Dream           41.3          20.3               194        3550   male
103    Biscoe           42.6          13.7               213        4950 female
104     Dream           39.2          21.1               196        4150   male
105     Dream           40.7          17.0               190        3725   male
106    Biscoe           37.9          18.6               172        3150 female
107     Dream           46.0          18.9               195        4150 female
108     Dream           50.8          19.0               210        4100   male
109     Dream           38.1          18.6               190        3700 female
110    Biscoe           39.6          20.7               191        3900 female
111     Dream           52.0          19.0               197        4150   male
112     Dream           39.5          17.8               188        3300 female
113 Torgersen           39.7          18.4               190        3900   male
114    Biscoe           46.8          14.3               215        4850 female
115     Dream           40.2          17.1               193        3400 female
116     Dream           36.0          18.5               186        3100 female
117 Torgersen           35.5          17.5               190        3700 female
118    Biscoe           46.7          15.3               219        5200   male
119     Dream           36.6          18.4               184        3475 female
120    Biscoe           42.0          13.5               210        4150 female
121    Biscoe           43.5          15.2               213        4650 female
122    Biscoe           49.1          14.8               220        5150 female
123    Biscoe           49.6          15.0               216        4750   male
124    Biscoe           40.5          18.9               180        3950   male
125    Biscoe           37.8          18.3               174        3400 female
126 Torgersen           37.7          19.8               198        3500   male
127    Biscoe           47.5          14.2               209        4600 female
128    Biscoe           47.5          15.0               218        4950 female
129     Dream           36.0          17.8               195        3450 female
130     Dream           42.5          17.3               187        3350 female
131     Dream           50.2          18.8               202        3800   male
132    Biscoe           48.2          15.6               221        5100   male
133    Biscoe           51.1          16.3               220        6000   male
134    Biscoe           36.4          17.1               184        2850 female
135 Torgersen           34.4          18.4               184        3325 female
136    Biscoe           35.5          16.2               195        3350 female
137    Biscoe           44.9          13.8               212        4750 female
138     Dream           35.6          17.5               191        3175 female
139     Dream           51.3          18.2               197        3750   male
140     Dream           35.7          18.0               202        3550 female
141    Biscoe           45.8          14.6               210        4200 female
142    Biscoe           49.2          15.2               221        6300   male
143     Dream           37.3          16.8               192        3000 female
144 Torgersen           41.1          17.6               182        3200 female
145     Dream           48.1          16.4               199        3325 female
146    Biscoe           35.7          16.9               185        3150 female
147     Dream           36.9          18.6               189        3500 female
148    Biscoe           49.6          16.0               225        5700   male
149    Biscoe           43.3          13.4               209        4400 female
150    Biscoe           41.4          18.6               191        3700   male
151     Dream           41.1          19.0               182        3425   male
152     Dream           39.6          18.8               190        4600   male
153 Torgersen           34.6          17.2               189        3200 female
154     Dream           54.2          20.8               201        4300   male
155     Dream           50.5          19.6               201        4050   male
156    Biscoe           40.6          18.6               183        3550   male
157     Dream           49.3          19.9               203        4050   male
158    Biscoe           50.4          15.3               224        5550   male
159    Biscoe           46.8          15.4               215        5150   male
160    Biscoe           48.2          14.3               210        4600 female
161    Biscoe           45.5          15.0               220        5000   male
162    Biscoe           40.9          13.7               214        4650 female
163     Dream           50.0          19.5               196        3900   male
164     Dream           43.5          18.1               202        3400 female
165    Biscoe           37.9          18.6               193        2925 female
166     Dream           46.9          16.6               192        2700 female
167     Dream           46.6          17.8               193        3800 female
168    Biscoe           48.5          15.0               219        4850 female
169     Dream           40.3          18.5               196        4350   male
170     Dream           38.3          19.2               189        3950   male
171     Dream           45.4          18.7               188        3525 female
172    Biscoe           50.2          14.3               218        5700   male
173     Dream           51.9          19.5               206        3950   male
174 Torgersen           34.6          21.1               198        4400   male
175    Biscoe           45.2          14.8               212        5200 female
176 Torgersen           35.7          17.0               189        3350 female
177    Biscoe           45.6          20.3               191        4600   male
178    Biscoe           39.0          17.5               186        3550 female
179    Biscoe           41.7          14.7               210        4700 female
180 Torgersen           38.5          17.9               190        3325 female
181     Dream           37.8          18.1               193        3750   male
182    Biscoe           46.8          16.1               215        5500   male
183     Dream           40.2          20.1               200        3975   male
184    Biscoe           49.1          15.0               228        5500   male
185 Torgersen           39.5          17.4               186        3800 female
186    Biscoe           42.8          14.2               209        4700 female
187    Biscoe           46.4          15.0               216        4700 female
188     Dream           50.6          19.4               193        3800   male
189 Torgersen           37.3          20.5               199        3775   male
190     Dream           39.7          17.9               193        4250   male
191     Dream           58.0          17.8               181        3700 female
192    Biscoe           50.8          17.3               228        5600   male
193    Biscoe           42.0          19.5               200        4050   male
194     Dream           46.1          18.2               178        3250 female
195    Biscoe           43.3          14.0               208        4575 female
196     Dream           46.2          17.5               187        3650 female
197     Dream           36.5          18.0               182        3150 female
198    Biscoe           43.2          19.0               197        4775   male
199    Biscoe           50.1          15.0               225        5000   male
200     Dream           52.0          20.7               210        4800   male
201     Dream           42.5          16.7               187        3350 female
202     Dream           49.6          18.2               193        3775   male
203     Dream           44.1          19.7               196        4400   male
204     Dream           37.5          18.5               199        4475   male
205     Dream           39.2          18.6               190        4250   male
206    Biscoe           45.5          14.5               212        4750 female
207    Biscoe           49.3          15.7               217        5850   male
208     Dream           50.7          19.7               203        4050   male
209    Biscoe           52.2          17.1               228        5400   male
210     Dream           45.6          19.4               194        3525 female
211     Dream           36.0          17.9               190        3450 female
212    Biscoe           49.1          14.5               212        4625 female
213     Dream           40.9          16.6               187        3200 female
214 Torgersen           45.8          18.9               197        4150   male
215    Biscoe           41.1          19.1               188        4100   male
216    Biscoe           49.8          16.8               230        5700   male
217 Torgersen           36.7          18.8               187        3800 female
218     Dream           37.2          18.1               178        3900   male
219 Torgersen           39.2          19.6               195        4675   male
220     Dream           34.0          17.1               185        3400 female
221 Torgersen           33.5          19.0               190        3600 female
222    Biscoe           50.8          15.7               226        5200   male
223    Biscoe           44.5          14.7               214        4850 female
224     Dream           40.8          18.9               208        4300   male
225    Biscoe           50.0          15.3               220        5550   male
226     Dream           43.2          18.5               192        4100   male
227    Biscoe           50.7          15.0               223        5550   male
228     Dream           52.2          18.8               197        3450   male
229     Dream           40.6          17.2               187        3475   male
230     Dream           33.1          16.1               178        2900 female
231    Biscoe           45.5          13.7               214        4650 female
232     Dream           50.1          17.9               190        3400 female
233 Torgersen           39.0          17.1               191        3050 female
234 Torgersen           36.2          17.2               187        3150 female
235     Dream           51.3          19.2               193        3650   male
236    Biscoe           48.6          16.0               230        5800   male
237    Biscoe           45.3          13.8               208        4200 female
238    Biscoe           43.5          14.2               220        4700 female
239    Biscoe           45.4          14.6               211        4800 female
240    Biscoe           43.2          14.5               208        4450 female
241    Biscoe           41.1          18.2               192        4050   male
242    Biscoe           37.7          18.7               180        3600   male
243    Biscoe           42.2          19.5               197        4275   male
244    Biscoe           40.5          17.9               187        3200 female
245 Torgersen           38.9          17.8               181        3625 female
246     Dream           41.1          17.5               190        3900   male
247    Biscoe           45.2          13.8               215        4750 female
248    Biscoe           41.6          18.0               192        3950   male
249 Torgersen           39.1          18.7               181        3750   male
250     Dream           50.9          19.1               196        3550   male
251     Dream           43.2          16.6               187        2900 female
252    Biscoe           46.4          15.6               221        5000   male
253    Biscoe           37.6          19.1               194        3750   male
254    Biscoe           46.5          14.4               217        4900 female
255     Dream           36.8          18.5               193        3500 female
256     Dream           49.8          17.3               198        3675 female
257    Biscoe           37.7          16.0               183        3075 female
258 Torgersen           40.6          19.0               199        4000   male
259    Biscoe           47.6          14.5               215        5400   male
260    Biscoe           35.0          17.9               190        3450 female
261    Biscoe           50.5          15.2               216        5000 female
262    Biscoe           43.4          14.4               218        4600 female
263     Dream           47.0          17.3               185        3700 female
264    Biscoe           47.8          15.0               215        5650   male
265    Biscoe           38.6          17.2               199        3750 female
266     Dream           40.8          18.4               195        3900   male
    year
1   2009
2   2007
3   2007
4   2008
5   2007
6   2008
7   2009
8   2008
9   2008
10  2008
11  2009
12  2008
13  2009
14  2007
15  2009
16  2009
17  2007
18  2007
19  2009
20  2007
21  2008
22  2009
23  2009
24  2008
25  2007
26  2007
27  2007
28  2008
29  2008
30  2008
31  2007
32  2007
33  2007
34  2008
35  2007
36  2008
37  2009
38  2007
39  2009
40  2009
41  2008
42  2009
43  2009
44  2008
45  2009
46  2007
47  2007
48  2009
49  2009
50  2008
51  2008
52  2009
53  2008
54  2008
55  2008
56  2007
57  2008
58  2009
59  2008
60  2008
61  2008
62  2009
63  2008
64  2009
65  2009
66  2008
67  2008
68  2007
69  2008
70  2009
71  2009
72  2008
73  2008
74  2008
75  2008
76  2008
77  2007
78  2009
79  2008
80  2008
81  2008
82  2009
83  2007
84  2009
85  2008
86  2008
87  2007
88  2008
89  2007
90  2009
91  2007
92  2009
93  2009
94  2008
95  2007
96  2009
97  2009
98  2008
99  2007
100 2009
101 2009
102 2008
103 2008
104 2007
105 2009
106 2007
107 2007
108 2009
109 2008
110 2009
111 2007
112 2007
113 2008
114 2009
115 2009
116 2007
117 2008
118 2007
119 2009
120 2007
121 2009
122 2008
123 2008
124 2007
125 2007
126 2009
127 2008
128 2009
129 2009
130 2009
131 2009
132 2008
133 2008
134 2008
135 2007
136 2008
137 2009
138 2009
139 2007
140 2008
141 2007
142 2007
143 2009
144 2007
145 2009
146 2008
147 2008
148 2008
149 2007
150 2008
151 2007
152 2007
153 2008
154 2008
155 2007
156 2007
157 2009
158 2008
159 2007
160 2007
161 2008
162 2007
163 2007
164 2009
165 2009
166 2008
167 2007
168 2009
169 2008
170 2008
171 2007
172 2007
173 2009
174 2007
175 2009
176 2009
177 2009
178 2008
179 2009
180 2009
181 2009
182 2009
183 2009
184 2009
185 2007
186 2007
187 2008
188 2007
189 2009
190 2009
191 2007
192 2009
193 2008
194 2007
195 2009
196 2008
197 2007
198 2009
199 2008
200 2008
201 2008
202 2009
203 2007
204 2009
205 2009
206 2009
207 2007
208 2009
209 2009
210 2009
211 2007
212 2009
213 2008
214 2008
215 2008
216 2008
217 2008
218 2007
219 2007
220 2008
221 2008
222 2009
223 2009
224 2008
225 2007
226 2008
227 2008
228 2009
229 2009
230 2008
231 2007
232 2009
233 2009
234 2009
235 2007
236 2008
237 2008
238 2008
239 2007
240 2008
241 2008
242 2007
243 2009
244 2007
245 2007
246 2009
247 2008
248 2008
249 2007
250 2008
251 2007
252 2008
253 2008
254 2008
255 2009
256 2009
257 2009
258 2009
259 2007
260 2008
261 2009
262 2009
263 2007
264 2007
265 2009
266 2007

$usekernel
[1] FALSE

$varnames
[1] "island"            "bill_length_mm"    "bill_depth_mm"    
[4] "flipper_length_mm" "body_mass_g"       "sex"              
[7] "year"             

attr(,"class")
[1] "NaiveBayes"

Naive Bayes

augment(nb_fit, new_data = test) %>% 
  conf_mat(truth = species, estimate = .pred_class)
           Truth
Prediction  Adelie Chinstrap Gentoo
  Adelie        28         0      0
  Chinstrap      1        13      0
  Gentoo         0         0     25
augment(nb_fit, new_data = test) %>% 
  accuracy(truth = species, estimate = .pred_class)
.metric.estimator.estimate
accuracymulticlass0.985

K-Nearest Neighbors

knn_spec <- nearest_neighbor(neighbors = 3) %>%
  set_mode("classification") %>%
  set_engine("kknn")

knn_fit <- knn_spec %>%
  fit(species ~ ., data = train)

knn_fit
parsnip model object


Call:
kknn::train.kknn(formula = species ~ ., data = data, ks = min_rows(3,     data, 5))

Type of response variable: nominal
Minimal misclassification: 0.01879699
Best kernel: optimal
Best k: 3

K-Nearest Neighbors

augment(knn_fit, new_data = test) %>%
  conf_mat(truth = species, estimate = .pred_class)
           Truth
Prediction  Adelie Chinstrap Gentoo
  Adelie        29         0      0
  Chinstrap      0        13      0
  Gentoo         0         0     25
augment(knn_fit, new_data = test) %>%
  accuracy(truth = species, estimate = .pred_class) 
.metric.estimator.estimate
accuracymulticlass1

Дякую за увагу!