Основні поняття
Набори даних і розбиття
Як Skynet читає ваші приклади й ділить їх на навчальну, валідаційну та тестову частини.
Набір даних — це таблиця кейсів. Кожен рядок — це один кейс. Skynet виконує ваш артефакт на кейсах, оцінює кожен результат і використовує оцінки, щоб порівнювати версії. Ця сторінка пояснює, як Skynet читає кейси, що роблять ролі стовпців і як він ділить кейси на навчальну, валідаційну й тестову вибірки.
Завантаження даних
На кроці майстра Вхідні дані є два варіанти:
- Завантажте файл CSV, JSON або Excel. Skynet приймає файли
.csv,.json,.xlsxі.xls. - Вибрати з бібліотеки. Використайте набір даних, який ви зберегли раніше.
Запуск може містити щонайбільше 200 000 кейсів.
Як керувати збереженими наборами даних, описано в розділі Підготовка набору даних.
Ролі стовпців
У розділі Як читати дані призначте кожному стовпцю одну роль:
| Роль | Що Skynet робить зі стовпцем |
|---|---|
| Вхід | Поміщає значення в input, який отримує ваш код запуску |
| Вихід | Поміщає значення в expected, який отримує ваша метрика |
| Пропустити | Не використовує стовпець |
Кожен стовпець також має тип: Текст або Зображення.
Лише один стовпець може бути вихідним. Якщо ви встановите роль «Вихід» для другого стовпця, перший зміниться на «Пропустити».
Що отримує ваш код
Для кожного рядка Skynet створює один кейс:
input— це словник. Він має по одному ключу для кожного вхідного стовпця.expected— це словник з одним ключем: назвою вихідного стовпця.
Для цієї таблиці:
| message | label | id |
|---|---|---|
| I was charged twice | billing | 17 |
з ролями message = Вхід, label = Вихід і id = Пропустити ваш код отримує:
{"message": "I was charged twice"}{"label": "billing"}Режими даних
Ролі визначають режим даних запуску:
| Режим | Коли | Що відбувається |
|---|---|---|
| Пари | Один стовпець має роль «Вихід» | Кожен рядок — це кейс із вхідними даними й очікуваним значенням. Потрібно щонайменше 2 рядки. |
| Одиночний | Жоден стовпець не має роль «Вихід» | Запуск використовує вхідні стовпці лише першого рядка. Це один кейс без очікуваного значення. |
В одиночному режимі Skynet використовує цей один кейс для навчання, вибору й звіту. Нічого не відкладається.
Розбиття
У режимі пар Skynet ділить кейси на три вибірки:
| Вибірка | Для чого вона |
|---|---|
| Навчальна (train) | Рушій пропонує й перевіряє версії на цих кейсах. |
| Валідаційна (val) | Skynet обирає найкращу версію на цих кейсах. |
| Тестова (test) | Skynet повідомляє підсумкову оцінку на цих кейсах. |
Типове розбиття
| Кількість пар | Навчальна | Валідаційна | Тестова |
|---|---|---|---|
| 5 або більше | 70% | 15% | 15% |
| Менше ніж 5 | 85% | 15% | 0% |
Якщо пар менше ніж 5, Skynet не виділяє тестову вибірку.
Як Skynet рахує кейси
Skynet перетворює частки на цілі кількості кейсів методом найбільших залишків. Сума кількостей завжди дорівнює загальній кількості кейсів. Вибірка з часткою більше нуля отримує щонайменше один кейс. Вибірка з нульовою часткою не отримує кейсів.
Перед розбиттям Skynet перемішує кейси. Перемішування використовує seed запуску. Якщо ви не задали seed, Skynet створює його з кейсів, мети й артефакту. Тож якщо ви надішлете той самий запуск ще раз, ви отримаєте те саме розбиття.
Запасні варіанти
- Якщо пар менше ніж 5, Skynet прибирає тестову вибірку й масштабує навчальну й валідаційну так, щоб їхня сума дорівнювала 1.
- Якщо навчальна вибірка порожня, Skynet використовує валідаційні кейси як навчальні.
- Якщо валідаційної вибірки немає, Skynet обирає на навчальних кейсах.
- Якщо тестової вибірки немає, Skynet звітує на валідаційній. Якщо немає й валідаційної, він звітує на навчальній.
Зміна розбиття
У розділі розбиття відображається Рекомендоване розбиття. Воно має два режими:
- Використати рекомендацію: Skynet використовує типове розбиття, описане вище.
- Ручний вибір: ви самі задаєте Навчання, Валідація і Тест.
У ручному режимі кожне поле приймає частку від 0 до 1 з кроком 0.05. Кожне поле показує кількість кейсів, які воно отримує. Сума трьох часток має дорівнювати 1. Якщо це не так, майстер показує «Сума часток розподілу має дорівнювати 1.»
Приклади для перевірки контракту
Перевірка контракту на кроці Метрика й запуск виконує ваш код на 3 прикладах кейсів. Skynet бере ці приклади лише з навчальних і валідаційних кейсів, ніколи з тестових.