3. Полуструктурированные данные – данные, которые имеют некоторую организацию, но не ведутся в строгом формате. Примеры полуструктурированных данных включают XML и JSON файлы. Эти данные часто используются в контексте API и веб-сервисов.

Сбор данных

Сбор данных – это первый и, возможно, самый критически важный шаг в процессе обучения модели. Выбор источника данных зависит от цели вашего проекта. Возможные источники включают:

– Открытые наборы данных: На таких платформах, как Kaggle или UCI Machine Learning Repository, можно найти большое количество бесплатных коллекций данных для обучения.


– Внутренние данные: Многие компании хранят свои данные о клиентах, продажах или операциях. Эти данные могут быть особенно ценными для задач, связанных с бизнес-аналитикой.


– Сбор данных через API: Сегодня многие компании предоставляют API для доступа к данным, например, Twitter для получения информации о твитах или Google Maps для географических данных.

Независимо от метода сбора данных, важно соблюдать этические нормы и правовые аспекты, особенно в отношении конфиденциальности и защиты данных.

Подготовка данных к обучению

После сбора данных этап подготовки включает в себя несколько ключевых действий, от которых зависит качество вашей модели:

1. Очистка данных: На этом этапе убираются дубликаты, заполняются пропуски и удаляются выбросы. Пример кода для удаления дубликатов в DataFrame с помощью библиотеки Pandas:

.. python


.. import pandas as pd


..


.. df = pd.read_csv('data.csv')


.. df_cleaned = df.drop_duplicates()


.. 2. Преобразование данных: Это может включать в себя нормализацию или стандартизацию значений. Например, для числовых атрибутов, которые сильно варьируются, полезно применять стандартное отклонение для приведения их к одинаковому масштабу:

.. python


.. from sklearn.preprocessing import StandardScaler


..


.. scaler = StandardScaler()


.. df['scaled_column'] = scaler.fit_transform(df[['column']])


.. 3. Создание признаков: Важно извлекать существенные характеристики из исходных данных, чтобы улучшить производительность моделей. Например, если у вас есть временные данные, вы можете создать новые признаки, такие как день недели или время дня.

Разделение данных на обучающую и тестовую выборки

Правильное разделение данных на обучающую и тестовую выборки – ещё один критический шаг. Обучающая выборка используется для создания модели, в то время как тестовая – для оценки её качества. Хорошим правилом является использование 70% данных для обучения и 30% для тестирования.

С помощью библиотеки Scikit-learn это заметно упрощается:

python


from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)


Заключение

Данные играют ключевую роль в машинном обучении, и их качество напрямую влияет на успех ваших проектов. Понимание различных типов данных, методов их сбора, очистки и обработки, а также правильное разделение выборки – это шаги, которые необходимо выполнять с особым вниманием. В следующих главах мы рассмотрим, как эффективно использовать данные для обучения моделей и оценивать их производительность, что приведёт вас ещё ближе к достижениям в области машинного обучения.

Роль данных и задачи по их подготовке

Данные, как мы уже обсудили, составляют основу машинного обучения. Однако важно не только понимать, что данные нужны, но и осознавать их роль в обучении моделей. Надлежащая подготовка данных может существенно повлиять на качество прогнозов и общую производительность алгоритмов. Эта глава посвящена различным аспектам работы с данными, методам их подготовки и задачам, которые необходимо решить перед началом обучения модели.