Всем привет! В моем последнем блоге вы читали о различных типах систем машинного обучения. Как я уже говорил в своем последнем блоге, сердце машинного обучения - это данные. Для достижения наилучшего результата очень важно предоставлять правильные данные нашим моделям.

Реальные данные часто являются необработанными и могут содержать много ошибок. Предварительная обработка данных помогает нам преобразовать эти необработанные и бессмысленные данные в полезную информацию.

Предварительная обработка данных и визуализация данных - два важных инструмента для понимания данных.

Теперь мы шаг за шагом перейдем к предварительной обработке данных и визуализации данных.

1. ВЫБОР ДАННЫХ

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

а) Kaggle

б) Репозиторий машинного обучения UCI

в) data.gov.in

2. СКАЧАТЬ НАБОР ДАННЫХ

Затем вы можете загрузить набор данных по вашему выбору, над которым хотите работать.

Здесь я взял «Набор данных Черной пятницы», который состоит из выборки транзакций, совершенных в розничном магазине.

Вы можете скачать его с https://datahack-prod.s3.amazonaws.com/train_zip/train_oSwQCTC.zip

3. ИМПОРТ БИБЛИОТЕК

Нам нужно импортировать некоторые библиотеки Python для работы с данными.

Некоторые из них - Numpy, Pandas, Seaborn, Matplolib и Sklearn.

4. ЗНАТЬ НАШИ ДАННЫЕ

В основном это включает в себя изучение того, какие данные у нас есть и что все мы можем сделать из этого набора данных.

В контексте нашего набора данных Черной пятницы мы можем проанализировать наши данные и затем предсказать:

а) Кто с большей вероятностью потратит больше: мужчины или женщины

б) Предсказать сумму покупки

в) прогнозировать возраст покупателя

и многое другое…

Теперь, если у нас есть один набор данных для обучения и тестирования, нам нужно разделить его на наборы для обучения и тестирования (мы также можем разделить его на валидацию). Обычно разделение составляет 80% для обучения и 20% для тестирования . Train_test_split Sklearn делает это за нас.

4. ДАННЫЕ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ

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

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

Более того, наши данные могут содержать некоторые категориальные атрибуты, например, в нашем случае многие атрибуты, такие как пол, возраст, категория города, годы пребывания в текущем городе, имеют категориальные значения, поэтому мы должны изменить их на числовые значения с помощью LabelEncoder или Onehot Encoder. .

5. ВИЗУАЛИЗАЦИЯ ДАННЫХ

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

Вот некоторые идеи визуализации, которые я сделал с этим набором данных.

Посмотрите, как визуализация упрощает нашу задачу, ведь теперь мы можем легко сказать, что клиентов-мужчин больше, а в категории продуктов 1, продукты 1,5 и 8 продаются очень часто по сравнению с другими. Супружеские люди посещают магазин, чем Семейные люди.

Теперь мы закончили предварительную обработку и визуализацию данных, и данные готовы для подачи в подходящую модель машинного обучения и получения значений прогноза. Есть еще много чего рассказать о том, как выбрать подходящую модель и как проанализировать, хорошо или плохо работает модель - все это будет описано в моих последующих блогах.

А пока позаботьтесь о том, чтобы хорошо провести время.

В случае каких-либо вопросов вы всегда можете связаться со мной по [email protected]