Наука о данных

20 основных концепций науки о данных для начинающих

Просмотрите эти основополагающие концепции для подготовки к собеседованию или чтобы освежить свое понимание основ

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

1. Набор данных

Как следует из названия, наука о данных - это отрасль науки, которая применяет научный метод к данным с целью изучения взаимосвязей между различными функциями и вывода значимых выводов на основе этих взаимосвязей. Таким образом, данные являются ключевым компонентом науки о данных. Набор данных - это конкретный экземпляр данных, который используется для анализа или построения модели в любой момент времени. Набор данных бывает разных видов, таких как числовые данные, категориальные данные, текстовые данные, данные изображения, голосовые данные и видеоданные. Набор данных может быть статическим (не меняется) или динамическим (изменяется со временем, например, цены на акции). Более того, набор данных также может зависеть от места. Например, данные о температуре в Соединенных Штатах будут значительно отличаться от данных о температуре в Африке. Для начинающих проектов в области науки о данных наиболее популярным типом наборов данных является набор данных, содержащий числовые данные, которые обычно хранятся в формате файла значений, разделенных запятыми (CSV).

2. Преодоление данных

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

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

Пример обработки данных с использованием набора данных университетских городков можно найти здесь: Учебное пособие по обработке данных

3. Визуализация данных

Визуализация данных - одна из важнейших областей науки о данных. Это один из основных инструментов, используемых для анализа и изучения взаимосвязей между различными переменными. Визуализация данных (например, точечные диаграммы, линейные диаграммы, гистограммы, гистограммы, qqplots, гладкие плотности, коробчатые диаграммы, парные диаграммы, тепловые карты и т. Д.) Могут использоваться для описательной аналитики. Визуализация данных также используется в машинном обучении для предварительной обработки и анализа данных, выбора функций, построения модели, тестирования модели и оценки модели. При подготовке визуализации данных имейте в виду, что визуализация данных - это больше искусство, чем наука. Чтобы получить хорошую визуализацию, вам нужно собрать несколько фрагментов кода для получения отличного конечного результата. Учебное пособие по визуализации данных находится здесь: Учебное пособие по визуализации данных с использованием набора данных о погоде

4. Выбросы

Выброс - это точка данных, которая сильно отличается от остальной части набора данных. Выбросы часто являются просто неверными данными, например, из-за неисправного датчика; загрязненные эксперименты; или человеческая ошибка при записи данных. Иногда выбросы могут указывать на что-то реальное, например на неисправность в системе. Выбросы очень распространены и ожидаются в больших наборах данных. Один из распространенных способов обнаружения выбросов в наборе данных - использование прямоугольной диаграммы. Рисунок 3 показывает простую регрессионную модель для набора данных, содержащего множество выбросов. Выбросы могут значительно ухудшить предсказательную способность модели машинного обучения. Обычный способ справиться с выбросами - просто опустить точки данных. Однако удаление выбросов из реальных данных может быть слишком оптимистичным, что приведет к нереалистичным моделям. Расширенные методы работы с выбросами включают метод RANSAC.

5. Импутация данных

Большинство наборов данных содержат пропущенные значения. Самый простой способ справиться с отсутствующими данными - просто выбросить точку данных. Однако удаление выборок или удаление всех столбцов функций просто невозможно, потому что мы можем потерять слишком много ценных данных. В этом случае мы можем использовать различные методы интерполяции для оценки недостающих значений из других обучающих выборок в нашем наборе данных. Одним из наиболее распространенных методов интерполяции является подстановка среднего, когда мы просто заменяем пропущенное значение средним значением всего столбца признаков. Другими вариантами подстановки пропущенных значений являются медиана или наиболее частый (режим), где последний заменяет отсутствующие значения наиболее частыми значениями. Какой бы метод вменения вы ни использовали в своей модели, вы должны иметь в виду, что вменение является только приближением и, следовательно, может привести к ошибке в окончательной модели. Если предоставленные данные уже были предварительно обработаны, вам нужно будет выяснить, как учитывались пропущенные значения. Какой процент исходных данных был отброшен? Какой метод вменения использовался для оценки пропущенных значений?

6. Масштабирование данных

Масштабирование ваших функций поможет улучшить качество и предсказательную силу вашей модели. Например, предположим, что вы хотите построить модель для прогнозирования целевой переменной кредитоспособности на основе переменных-предикторов, таких как доход и кредитный рейтинг. Поскольку кредитные рейтинги варьируются от 0 до 850, а годовой доход может колебаться от 25 000 до 500 000 долларов США, без масштабирования ваших функций модель будет смещена в сторону функции дохода. Это означает, что весовой коэффициент, связанный с параметром доход, будет очень мал, что приведет к тому, что прогнозная модель будет прогнозировать кредитоспособность только на основе дохода параметр.

Чтобы привести функции к одному и тому же масштабу, мы могли бы решить использовать либо нормализацию, либо стандартизацию функций. Чаще всего мы предполагаем, что данные распространяются нормально и по умолчанию в направлении стандартизации, но это не всегда так. Важно, чтобы перед тем, как решить, использовать ли стандартизацию или нормализацию, вы сначала посмотрите, как ваши функции распределены статистически. Если функция имеет тенденцию к равномерному распределению, мы можем использовать нормализацию (MinMaxScale r). Если функция приблизительно гауссова, то мы можем использовать стандартизацию (StandardScaler). Опять же, обратите внимание, что независимо от того, используете ли вы нормализацию или стандартизацию, это также приблизительные методы и обязательно вносят вклад в общую ошибку модели.

7. Анализ главных компонентов (PCA)

Большие наборы данных с сотнями или тысячами объектов часто приводят к избыточности, особенно когда объекты коррелированы друг с другом. Обучение модели на наборе данных большой размерности, имеющем слишком много функций, иногда может привести к переобучению (модель фиксирует как реальные, так и случайные эффекты). Кроме того, слишком сложную модель, имеющую слишком много функций, может быть трудно интерпретировать. Одним из способов решения проблемы избыточности является использование методов выбора функций и уменьшения размерности, таких как PCA. Анализ главных компонентов (PCA) - это статистический метод, который используется для извлечения признаков. PCA используется для многомерных и коррелированных данных. Основная идея PCA - преобразовать исходное пространство функций в пространство главного компонента. Преобразование PCA обеспечивает следующее:

а) Уменьшите количество функций, которые будут использоваться в окончательной модели, сосредоточив внимание только на компонентах, на которые приходится большая часть отклонений в наборе данных.

б) Удаляет корреляцию между функциями.

Реализацию PCA можно найти по этой ссылке: PCA Using Iris Dataset

8. Линейный дискриминантный анализ (LDA)

PCA и LDA - это два метода линейного преобразования предварительной обработки данных, которые часто используются для уменьшения размерности для выбора соответствующих функций, которые могут быть использованы в окончательном алгоритме машинного обучения. PCA - это неконтролируемый алгоритм, который используется для извлечения признаков из высокоразмерных и коррелированных данных. PCA обеспечивает снижение размерности путем преобразования пространственных объектов в оси ортогональных компонентов с максимальной дисперсией в наборе данных. Цель LDA - найти подпространство признаков, которое оптимизирует разделимость классов и снижает размерность (см. Рисунок ниже). Следовательно, LDA - это контролируемый алгоритм. Подробное описание PCA и LDA можно найти в этой книге: Python Machine Learning by Sebastian Raschka, Chapter 5.

Реализацию LDA можно найти по этой ссылке: LDA Using Iris Dataset

9. Разделение данных

В машинном обучении набор данных часто разделяется на наборы для обучения и тестирования. Модель обучается на обучающем наборе данных, а затем тестируется на тестовом наборе данных. Таким образом, набор тестовых данных действует как невидимый набор данных, который можно использовать для оценки ошибки обобщения (ошибки, ожидаемой при применении модели к реальному набору данных после развертывания модели). В scikit-learn оценщик разделения поездов / тестов можно использовать для разделения набора данных следующим образом:

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

Здесь X - это матрица признаков, а y - целевая переменная. В этом случае набор данных тестирования установлен на 30%.

10. Обучение с учителем

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

а) Непрерывные целевые переменные

Алгоритмы прогнозирования непрерывных целевых переменных включают линейную регрессию, регрессию соседей (KNR) и регрессию опорных векторов (SVR).

Учебное пособие по линейной регрессии и регрессии по соседям можно найти здесь: Учебное пособие по линейной регрессии и регрессии по соседям.

б) Дискретные целевые переменные

Алгоритмы прогнозирования дискретных целевых переменных включают:

  • Классификатор перцептронов
  • Классификатор логистической регрессии
  • Машины опорных векторов (SVM)
  • Классификатор дерева решений
  • K-ближайший классификатор
  • Наивный байесовский классификатор

11. Обучение без учителя

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

12. Обучение с подкреплением.

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

13. Параметры модели и гиперпараметры.

В модели машинного обучения есть два типа параметров:

а) Параметры модели. Это параметры модели, которые необходимо определить с помощью набора данных обучения. Это подогнанные параметры. Например, предположим, что у нас есть такая модель, как цена дома = a + b * (возраст) + c * (размер), для оценки стоимости домов на основе возраст дома и его размер (квадратный фут) , затем a, b и c будут нашими модель или подогнанные параметры.

б) Гиперпараметры. Это регулируемые параметры, которые необходимо настроить для получения модели с оптимальными характеристиками. Здесь показан пример гиперпараметра:

KNeighborsClassifier(n_neighbors = 5, p = 2, metric = 'minkowski')

Важно, чтобы во время обучения гиперпараметры были настроены для получения модели с наилучшими характеристиками (с наиболее подходящими параметрами).

Учебное пособие по параметрам модели и гиперпараметрам находится здесь: Учебное пособие по параметрам модели и гиперпараметрам в машинном обучении

14. Перекрестная проверка

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

При k-кратной перекрестной проверке набор данных случайным образом разбивается на наборы для обучения и тестирования. Модель обучается на обучающем наборе и оценивается на тестовом наборе. Процесс повторяется k раз. Затем вычисляются средние оценки обучения и тестирования путем усреднения по k-кратным значениям.

Вот псевдокод k-кратной перекрестной проверки:

Реализация перекрестной проверки находится здесь: Практическое руководство по перекрестной проверке

15. Компромисс смещения и дисперсии

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

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

Важно найти правильный баланс между простотой и сложностью модели. Учебное пособие по компромиссу смещения и дисперсии можно найти здесь: Учебное пособие по компромиссу смещения и дисперсии

16. Показатели оценки

В машинном обучении (прогнозной аналитике) есть несколько метрик, которые можно использовать для оценки модели. Например, модель контролируемого обучения (непрерывная цель) может быть оценена с использованием таких показателей, как оценка R2, среднеквадратичная ошибка (MSE) или средняя абсолютная ошибка (MAE). Кроме того, модель контролируемого обучения (дискретная цель), также называемая моделью классификации, может быть оценена с использованием таких показателей, как точность, точность, отзывчивость, оценка f1 и площадь под кривой ROC (AUC).

17. Количественная оценка неопределенности

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

18. Математические концепции.

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

Функции нескольких переменных; Производные и градиенты; Шаговая функция, сигмовидная функция, логит-функция, функция ReLU (выпрямленная линейная единица); Функция стоимости; Построение функций; Минимальное и максимальное значения функции

б) Базовая линейная алгебра. Линейная алгебра - самый важный математический навык в машинном обучении. Набор данных представлен в виде матрицы. Линейная алгебра используется при предварительной обработке данных, преобразовании данных, уменьшении размерности и оценке модели. Вот темы, с которыми вам необходимо ознакомиться:

Векторы; Норма вектора; Матрицы; Транспонировать матрицу; Обратная матрица; Определитель матрицы; След матрицы; Скалярное произведение; Собственные значения; Собственные векторы

c) Методы оптимизации: большинство алгоритмов машинного обучения выполняют прогнозное моделирование, минимизируя целевую функцию, тем самым изучая веса, которые должны быть применены к данным тестирования, чтобы получить прогноз. этикетки. Вот темы, с которыми вам необходимо ознакомиться:

Функция затрат / целевая функция; Функция правдоподобия; Функция ошибки; Алгоритм градиентного спуска и его варианты (например, алгоритм стохастического градиентного спуска)

19. Статистика и теории вероятностей.

Статистика и вероятность используются для визуализации функций, предварительной обработки данных, преобразования функций, вменения данных, уменьшения размерности, проектирования функций, оценки модели и т. Д. Вот темы, с которыми вам необходимо ознакомиться:

Среднее значение, Медиана, Режим, Стандартное отклонение / дисперсия, Коэффициент корреляции и матрица ковариаций, Распределение вероятностей (Биномиальное, Пуассоновское, Нормальное), p-значение, Теорема Бая (точность, отзыв, положительное прогнозное значение, отрицательное прогнозное значение, Матрица неточностей, кривая ROC), центральная предельная теорема, оценка R_2, среднеквадратическая ошибка (MSE), A / B-тестирование, моделирование Монте-Карло

Вот некоторые образовательные ресурсы по Центральной предельной теореме и теореме Байеса:

Иллюстрация центральной предельной теоремы с использованием моделирования Монте-Карло Теорема Байеса, объясненная с использованием набора данных о высотах

20. Инструменты повышения производительности

Типичный проект анализа данных может включать несколько частей, каждая из которых включает несколько файлов данных и различные сценарии с кодом. Хранить все это в порядке может быть непросто. Инструменты повышения производительности помогут вам организовать проекты и вести учет выполненных проектов. Некоторые важные инструменты повышения производительности для практикующих специалистов по обработке данных включают такие инструменты, как Unix / Linux, git и GitHub, RStudio и Jupyter Notebook. Узнайте больше об инструментах повышения производительности здесь: Инструменты повышения производительности в машинном обучении

Первоначально опубликовано на https://www.kdnuggets.com.