Наборы данных
Библиотека ML PascalABC.NET содержит встроенные наборы данных для учебных примеров, демонстраций и проверки моделей.
Они позволяют сразу перейти к анализу данных и машинному обучению: не нужно искать CSV-файлы, приводить столбцы к нужным типам и вручную описывать, какой столбец является целевым.
Что такое датасет
Заголовок раздела «Что такое датасет»Датасет в ML PascalABC.NET — это не просто таблица.
Обычно датасет содержит:
- таблицу данных
DataFrame; - список признаков;
- целевой столбец, если он есть;
- тип задачи;
- типы столбцов;
- список категориальных столбцов;
- описания и переводы.
Например, у датасета может быть заранее указано, какие столбцы являются признаками, а какой столбец нужно предсказывать.
var ds := Datasets.MoscowHousing;var df := ds.Data;
var features := ds.Features;var target := ds.Target;Здесь ds — датасет с метаданными, а df — сама таблица.
Реальные и синтетические датасеты
Заголовок раздела «Реальные и синтетические датасеты»Встроенные датасеты делятся на две группы.
Реальные датасеты хранятся в подготовленных CSV-файлах. Это таблицы с осмысленными данными: квартиры, города, автомобили, пассажиры и т.п.
Синтетические датасеты создаются программно. Они нужны для учебных задач, когда важно получить данные с заранее понятной структурой: несколько кластеров, две луны, круги, спираль или данные для регрессии.
Где хранятся CSV-файлы
Заголовок раздела «Где хранятся CSV-файлы»Все стандартные CSV-датасеты хранятся в папке Files\Datasets.
Их можно загрузить по имени файла:
var ds := Datasets.Load('moscow_housing');var df := ds.Data;Но обычно удобнее использовать готовый метод:
var ds := Datasets.MoscowHousing;var df := ds.Data;Оба варианта дают датасет с данными и метаданными. Второй вариант короче и лучше читается в учебных программах.
Зачем они встроены
Заголовок раздела «Зачем они встроены»Встроенные датасеты специально подобраны для обучения.
В них есть разные учебные ситуации:
- маленькие датасеты для первых шагов;
- более крупные датасеты для сравнения моделей;
- числовые и категориальные признаки;
- пропущенные значения;
- задачи классификации, регрессии и кластеризации;
- данные для визуализации.
Это позволяет изучать машинное обучение постепенно: от простого просмотра таблицы до обучения моделей, оценки качества и построения конвейеров.
Русская адаптация
Заголовок раздела «Русская адаптация»Часть датасетов имеет русскую основу.
Например:
MoscowHousing— данные о московских квартирах;RussianCities— данные о городах России.
Часть датасетов адаптирована для русскоязычного обучения.
Например, TitanicRu содержит русскоязычные значения в важных столбцах. В UsedCarsPrice используются привычные единицы измерения: пробег в километрах, расход топлива в литрах на 100 км.
Такие данные проще читать и использовать в примерах: смысл столбцов понятен сразу, а единицы измерения привычны.
Реальные датасеты
Заголовок раздела «Реальные датасеты»| Датасет | Тип задачи | Для чего подходит |
|---|---|---|
Iris | классификация | первый классический пример классификации |
MnistSmall | классификация | распознавание рукописных цифр |
MoscowHousing | регрессия | предсказание цены квартиры |
RussianCities | кластеризация | группировка городов по признакам |
TitanicRu | классификация | табличные данные с категориями и пропусками |
UsedCarsPrice | регрессия | предсказание цены автомобиля |
На страницах отдельных датасетов описаны их назначение, признаки, целевая переменная и несколько характерных примеров.
Синтетические датасеты
Заголовок раздела «Синтетические датасеты»Синтетические датасеты создаются с помощью специальных генераторов.
Например:
var (X, y) := Datasets.MakeBlobs( n := 300, centers := 3, seed := 42);Такие данные особенно удобны для визуализации и объяснения алгоритмов.
Основные генераторы:
| Генератор | Для чего подходит |
|---|---|
MakeBlobs | кластеры точек |
MakeMoons | кластеры сложной формы |
MakeRegression | учебная регрессия |
MakeCircles | круговые структуры |
MakeSpiral | спиральные данные |
Что дальше
Заголовок раздела «Что дальше»Дальше можно перейти к отдельным страницам: