Это не учебник. Это мои заметки из различных статей и руководств по машинному обучению. Моя личная шпаргалка для интервью и обзоров. Любые отзывы и исправления приветствуются. Если вы хотите узнать больше, дайте мне знать. Эти примечания больше подходят для пользователей Python. Не включает ggplot, отлично подходит для R.

Предпосылки и зависимости

Это руководство и обзор основаны на Python, поэтому мы используем matplotlib.pyplot. Эти команды можно запускать в командной строке и в Python Notebook с небольшими изменениями. Любая ссылка на plt означает, что функция взята из библиотеки matplotlib.

import matplotlib.pyplot as plt
# will get object does not have bar, scatter.... function_name error # if not imported

Постройте гистограмму

Гистограмма, линейная диаграмма: полезно для частотного анализа, распределения и подсчета.

labels = ['A','B','C','D','E','F','G']
nums = [13,24,5,8,7,10,11]
xs = range(len(nums)) #[0, 1, 2, 3, 4, 5, 6]
#xs is a convention variable name for x axis
plt.bar(xs,nums)
plt.ylabel("Customize y label") 
plt.title("Customize graph label")
plt.show() #display the plot

Пусть вас не обманет его простой вид. Частотный анализ очень эффективен в EDA данных, статистике и машинном обучении.

Постройте гистограмму

Гистограмма автоматически разделит данные на интервалы.

import matplotlib.pyplot as plt
import pandas as pd
nums = [99, 1, 3, 5, 7,33, 23,684, 13, 3 ,0, 4]
pd.Series(nums).hist(bins=30)
# <matplotlib.axes._subplots.AxesSubplot object at 0x10d340d90>
# returns object in memory
plt.show()

Также полезно для визуализации распределения и выбросов.

Точечная диаграмма

Чем диаграмма рассеяния выходит за рамки основ? График разброса чрезвычайно интуитивно понятен, но эффективен. Просто нанесите вертикальную и горизонтальную координаты каждой точки данных в выборке, чтобы получить ее диаграмму рассеяния. Если связь нелинейная или может присутствовать выброс, эти цели будут четко видны на диаграмме рассеяния. В случае наличия многих функций, например размеров, можно использовать матрицу точечной диаграммы.

Ниже приведен скриншот матрицы рассеяния панд в официальной документации.

Ясно, что отношения не линейны. Диагональ - это переменная относительно самой себя, поэтому она показывает график распределения вместо диаграммы разброса. Аккуратно, похоже, переменная нормально распределяется.

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

Используйте pandas.DataFrame.describe () для обобщения и описания слишком больших наборов данных. Эта функция будет генерировать сводную статистику.

Диаграммы рассеяния полезны для попарного сравнения функций.

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

Визуализация ошибки

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

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

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

Каждый остаток (y_i - y_hat) можно визуализировать как вертикальную линию, соединяющую точку данных с подобранной линией в линейной регрессии.

Специалисты по данным любят сюжеты

Почему? Он отображает важную статистику о распределении в краткой наглядной форме. Он же заговор из свечей. Также популярен в финансах.

Макс., 3-й квартиль, медиана, 1-й квартиль, мин.

Это также известно как граф ящика и усов. Это популярно среди статистиков. Используется для визуализации диапазона. Его можно рисовать горизонтально.

Что находится между Q3 и Q1? Межквартильный размах, который используется при анализе выбросов. Q1–1,5 * IQR слишком низкий, Q3 + 1,5 * IQR слишком высокий.

На графике с усами коробки выбросы отображаются в виде точки!

Взгляните на диаграмму усов набора данных артериального давления Бостонского университета с выбросами.

Тепловая карта

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

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

Например, корреляционная матрица с раскраской тепловой карты. Ковариационная матрица с раскраской тепловой карты. Даже массовая путаница матрицы с раскраской.

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

Тепловые карты корреляционной матрицы часто можно увидеть на Kaggle для исследовательского анализа данных (EDA).

Больше магии визуализации данных

Знаете ли вы, что вы можете визуализировать деревья решений с помощью graphviz. Он может выводить очень большой файл PNG. Помните, что разбиение дерева решений не всегда стабильно - оно непротиворечиво во времени. Отнеситесь к этому с недоверием. Преимущество визуализации дерева решений состоит в том, чтобы понять, где и как машины делят решения на части. Границы дерева решений также можно визуализировать, см. Снимок экрана ниже из документации Sklearn.

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

Исследователи даже визуализировали различные оптимизаторы, чтобы увидеть, как они работают, чтобы минимизировать потери.

Знаете ли вы, что с помощью Plotly можно создавать интерактивные графики прямо в Jupyter Notebook? Интерактивные графики позволяют визуализировать сложные данные, переключать и изменять параметры. Например, вы можете скользить, чтобы изменить значения ваших гиперпараметров и визуализировать, как изменяется производительность модели в gridsearch и другом систематическом поиске пространства.