Подготовка исходных данных для анализа
Методика анализа с использованием механизмов Data Mining базируется на различных алгоритмах извлечения закономерностей из исходных данных, результатом работы которых являются модели.
Таких алгоритмов довольно много, но несмотря на их обилие они не способны гарантировать качественное решение. Никакой самый изощренный метод сам по себе не даст хороший результат, т.к. критически важным становится вопрос качества исходных данных.
Чаще всего именно качество данных является причиной неудачи.
Ниже описана методика, следуя которой, можно подготовить качественные данные в нужном объеме для анализа.
В этой последовательности действий все достаточно просто и логично, но, несмотря на это, пользователи почти всегда допускают одни и те же тривиальные ошибки.
Надеюсь, что статья позволит допускать меньше ошибок такого рода. Здесь перечислен не жесткий набор правил, а, скорее, список рекомендаций, которых желательно придерживаться.
Эта последовательность действий не зависит от предметной области, поэтому ее можно использовать для любой сферы деятельности.
Выдвижение гипотез
Гипотезой в данном случае будем считать предположение о влиянии определенных факторов на исследуемую нами задачу. Форма этой зависимости в данном случае значения не имеет, т.е.
мы может сказать, что на продажи влияет отклонение нашей цены на товар от среднерыночной, но при этом не указывать, как, собственно, этот фактор влияет на продажи. Для решения этой задачи и используется Data Mining.
Автоматизировать процесс выдвижения гипотез не представляется возможным, по крайней мере, на сегодняшнем уровне развития технологий. Эту задачу должны решать эксперты – специалисты в предметной области.
Полагаться можно и нужно на их опыт и здравый смысл, постараться максимально использовать их знание о предмете и собрать как можно больше гипотез/предположений. Обычно для этих целей хорошо работает тактика мозгового штурма. На первом шаге нужно собрать и систематизировать все идеи, их оценку будем производить позже. Результатом данного шага должен быть список с описанием всех факторов.
Например, для задачи прогнозирования спроса это может быть список следующего вида: сезон, день недели, объемы продаж за предыдущие недели, объем продаж за аналогичный период прошлого года, рекламная компания, маркетинговые мероприятия, качество продукции, бренд, отклонение цены от среднерыночной, наличие данного товара у конкурентов…
В процессе подбора влияющих факторов необходимо максимально абстрагироваться от информационных систем и имеющихся в наличии данных. Очень часто встречается ситуация, когда пользователи говорят : “Вот есть такие данные. Что можно на них получить?”.
Это порочная практика, т. к. мы должны решать задачу и подбирать данные для ее решения, а не брать имеющуюся информацию и придумывать, что из них можно “выжать”.
После подготовки таблицы с описанием факторов нужно экспертно оценить значимость каждого из факторов. Эта оценка не является окончательной, она будет отправной точкой.
В процессе анализа вполне может оказаться, что фактор, который эксперты посчитали очень важным, таковым по сути не является и, наоборот, незначимый с их точки зрения фактор может оказывать значительное влияние.
Но в любом случае, все варианты проанализировать сразу невозможно, нужно от чего-то отталкиваться, этой точкой и является оценка экспертов. К тому же, довольно часто реальные данные подтверждают их оценку.
Результатом этого шага может быть таблица следующего вида:
Сезон | 100 |
День недели | 80 |
Объем продаж за предыдущие недели | 100 |
Объем продаж за аналогичный период прошлого года | 95 |
Рекламная компания | 60 |
Маркетинговые мероприятия | 40 |
Качество продукции | 50 |
Бренд | 25 |
Отклонение цены от среднерыночной | 60 |
Наличие данного товара у конкурентов | 15 |
Формализация и сбор данных
Далее необходимо опередить способ представления данных, выбрав один из 4-х видов – число, строка, дата, логическая переменная (да/нет). Достаточно просто определить способ представления, т.е. формализовать некоторые данные, например, объем продаж в рублях – это определенное число. Но довольно часто возникают ситуации, когда непонятно, как представить фактор.
Чаще всего такие проблемы возникают с качественными характеристиками. Например, на объемы продаж влияет качество товара. Качество – это довольно сложное понятие, но если этот показатель действительно важен, то нужно придумать способ его формализации.
Например, определять качество по количеству брака на тысячу единиц продукции, либо экспертно оценивать, разбив на несколько категорий – отлично/хорошо/удовлетворительно/плохо.
Необходимо оценить стоимость сбора нужных для анализа данных. Дело в том, что некоторые данные легко доступны, например, их можно извлечь из существующих информационных систем. Но есть информация, которую не просто собрать, например, сведения о конкурентах. Поэтому необходимо оценить, во что обойдется сбор данных.
Чем больше будет данных для анализа, тем лучше; их проще отбросить на следующих этапах, чем собрать новые сведения. К тому же необходимо учитывать, что не всегда экспертная оценка значимости факторов будет совпадать с реальной, т. е.
в начале не известно, что на самом деле является значимым, а что нет. Мы отталкиваемся от мнения экспертов относительно значимости факторов, но в действительности все может быть иначе.
Поэтому желательно иметь побольше данных, чтобы иметь возможность оценить влияние максимального количества показателей.
Есть несколько методов сбора, необходимых для анализа данных:
- Получение из учетных систем. Обычно в учетных системах есть различные механизмы построения отчетов и экспорта данных, поэтому извлечение нужной информации из них чаще всего относительно несложная операция.
- Получение сведений из косвенных данных. О многих показателях можно судить по косвенным признакам, и этим нужно воспользоваться. Например, можно оценить реальное финансовое положение жителей определенного региона следующим образом. В большинстве случаев имеется несколько товаров, предназначенных для выполнения одной и той же функции, но отличающихся по цене: товары для бедных, среднеобеспеченных и богатых. Если получить отчет о продажах товара в интересующий регион и проанализировать пропорции, в которых продаются товары для бедных, среднеобеспеченных и богатых, то можно предположить, что чем больше доля дорогих изделий из одной товарной группы, тем более состоятельны в среднем жители данного региона.
- Использование открытых источников. Большое количество данных присутствует в открытых источниках, таких как статистические сборники, отчеты корпораций, опубликованные результаты маркетинговых исследований и прочее.
- Проведение собственных маркетинговых исследований и аналогичных мероприятий по сбору данных. Это может быть достаточно дорогостоящим мероприятием, но, в любом случае, такой вариант сбора данных возможен.
- Ввод данных “вручную”, когда данные вводится по различного рода экспертным оценкам сотрудниками организации. Этот метод наиболее трудоемкий.
Стоимость сбора информации различными методами существенно отличается по цене и времени, которое необходимо для этого, поэтому нужно соизмерять затраты с результатами.
Возможно, от сбора некоторых данных придется отказаться, но факторы, которые эксперты оценили как наиболее значимые, нужно собрать обязательно не смотря на стоимость этих работ, либо вообще отказаться от анализа. Очевидно, что если эксперт указал некоторый фактор как важный, то не учитывать его просто нельзя, т.к.
мы рискуем провести анализ, ориентируясь на второстепенные малозначащие факторы, и, следовательно, получить модель, которая будет давать плохие и нестабильные результаты. А такая модель не представляет практической ценности.
Собранные данные нужно преобразовать к единому формату, например, Excel, текстовой файл с разделителями либо любая СУБД. Данные обязательно должны быть унифицированы, т.е.
одна и та же информация везде должна описываться одинаково. Обычно проблемы с унификацией возникают при сборе информации из разнородных источников.
В этом случае унификация является серьезной задачей, но ее обсуждение выходит за рамки данной статьи.
Представление и минимальные объемы необходимых данных
Для анализируемых процессов различной природы данные должны быть подготовлены специальным образом.
Упорядоченные данные
Такие данные нужны для решения задач прогнозирования, когда следует определить, каким образом поведет себя тот или иной процесс в будущем на основе имеющихся исторических данных. Чаще всего в качестве одного из фактов выступает дата или время, хотя это и не обязательно, речь может идти и о неких отсчетах, например, данные, с определенной периодичностью собираемые с датчиков.
Для упорядоченных данных (обычно это временные ряды) каждому столбцу соответствует один фактор, а в каждую строку заносятся упорядоченные по времени события с единым интервалом между строками. Не допускается наличие группировок, итогов и прочее, т. е. нужна обычная таблица.
1 | 01.05.2004 | 256 | 459874.00 |
2 |
Источник: https://basegroup.ru/community/articles/datamining-prepare
Специальные последовательности
Анализ завершенных и незавершенных действий имеет фундаментальное значение для оптимизации эффективности сайта. Рассмотрим наиболее важные поведенческие показатели: Коэффициент конверсии цели, Показатель отказов и CTR. Все они основаны на сравнении количества пользователей, которые начали определенное действие, и количества пользователей, которые его завершили.
Специальные последовательности позволяют визуализировать шаги, которые пользователи предпринимают, чтобы завершить действие, и быстро определить их эффективность на каждом этапе.
С помощью этих данных вы можете улучшить свой сайт и сократить количество неэффективных или прерванных действий пользователей.
Кроме того, можно создать аудитории ремаркетинга, чтобы повторно привлечь пользователей, которые выбыли из последовательности.
Использование специальных последовательностей
Специальные последовательности отображаются в виде вкладки в специальных отчетах. Последовательность может состоять из одного или нескольких этапов. Каждый этап определяется с помощью правил на основе параметров, в которых указано, должен ли он включать или исключать обращения, соответствующие конкретным значениям. В правилах можно использовать любые параметры Google Аналитики.
На диаграмме “Специальные последовательности” отображается количество пользователей, которые завершили или не завершили определенные этапы. Это позволяет вам сразу же выявить эффективные и неэффективные этапы, а также сосредоточиться на улучшении последних.
В частности вы можете:
- Создать сегмент пользователей, которые завершили или не завершили конкретный этап последовательности, и применить его к другим отчетам. Затем проанализировать их, чтобы понять, что привело к успеху или неудаче.
- Повторно привлечь пользователей, которые не завершили конкретный этап, создав аудиторию ремаркетинга с таргетингом на соответствующий сегмент.
Создание специальных последовательностей
Специальные последовательности доступны только в Google Аналитике 360.
Специальные последовательности отображаются в виде вкладки в специальных отчетах. Чтобы просмотреть их, выполните следующие действия:
О том, как создавать, редактировать и отправлять специальные отчеты, читайте здесь.
Настройки специальных последовательностей
Основные настройки
Тип анализа. По умолчанию целью последовательности является пользователь, то есть по возможности отслеживается его поведение в разных сеансах. Однако область действия последовательности можно ограничить сеансом, выбрав вариант Все этапы должны быть в одном сеансе.
Правила последовательности. Правила определяют критерии успеха этапа. Для каждой последовательности можно задать максимум пять этапов. При этом каждый этап может содержать не более пяти правил.
- Нажмите + добавить фильтр, чтобы задать новое правило.
- Нажмите + добавить этап, чтобы создать новый этап.
В раскрывающемся меню выберите параметры, которые необходимы для определения этапа. Это могут быть любые параметры, доступные в Google Аналитике, в том числе пользовательские параметры и переменные. Правила могут использоваться для включения и исключения, а значения могут определяться по точному соответствию или с помощью регулярного выражения.
Чтобы выбрать пользователей, которые начали просмотр сайта с главной страницы, создайте следующее правило: Включить Целевая страница Точное соответствие /home.html
Если вы добавляете в этап несколько правил, они все должны быть соблюдены (то есть связаны логическим оператором И), чтобы он считался успешным.
Дополнительные настройки
Тип последовательности. По умолчанию применяются закрытые последовательности, то есть пользователи являются частью последовательности, только если они присоединились к ней с самого начала. Чтобы пользователи могли войти в последовательность на любом этапе, измените тип на открытый.
Можно изменять только тип последовательностей на основе сеанса. Последовательности, целью которых является пользователь, должны быть закрытыми.
Показатель. По умолчанию в последовательностях отображается количество пользователей, которые прошли или не прошли каждый этап. Однако можно также показывать и количество сеансов.
Последующий этап должен быть. Если последовательность состоит из нескольких этапов, очень важно, в каком порядке они располагаются. Параметр Последующий этап должен быть определяет, как оценивать действия пользователей между этапами. Доступны следующие варианты:
- В любое время после этапа. Пользователи могут выполнять действия между этапами. Эти действия не будут являться частью последовательности. Вы добавили последовательность, которая состоит из двух этапов: Страница A и Страница B. Если вы выбрали параметр В любое время после этапа, пользователи, посетившие Страницу A, затем Страницу X, а потом Страницу B, смогутт завершить оба этапа. Обратите внимание, что параметр Тип последовательности определяет, должен ли пользователь начать с первого этапа (закрытая последовательность) или с любого другого (открытая последовательность).
- Непосредственно после этапа. Пользователи будут являться частью последовательности, только если они сразу же перейдут в следующий этап из предыдущего. Вы добавили последовательность, которая состоит из двух этапов: Страница A и Страница B. Если вы выбрали параметр Непосредственно после этапа, пользователи, посетившие Страницу A, затем Страницу X, а потом Страницу B, смогут завершить только первый этап. Даже если они позже перешли на Страницу B, посещение Страницы X расценивается как выход из последовательности на Странице A.
- Я укажу отдельно для каждого этапа. Описанные выше параметры применяются к последовательности в целом. Чтобы настроить каждый этап, выберите этот вариант, затем определите алгоритм, нажав перед… в раскрывающемся меню под каждым этапом последовательности.
Анализ последовательностей
На диаграмме “Специальные последовательности” отображаются все этапы, а также количество пользователей, которые завершили этап и перешли к следующему, и число тех, кто не завершил этап и выбыл из последовательности. Эта диаграмма поможет вам определить этапы, которые нуждаются в доработке.
Диапазон дат для последовательностей
Специальные последовательности ретроспективны, то есть они применяются к уже собранным и обработанным данным. Чтобы просмотреть данные за разные периоды, используйте меню Диапазон дат в отчете.
Подробнее о диапазонах дат…
Применение сегментов
В специальной последовательности можно использовать только один сегмент. Он действует, как фильтр для первого этапа последовательности.
Подробнее о сегментах…
Действия с последовательностями
Доступно два действия для обработки информации, полученной с помощью последовательностей:
Создание сегментов
Нажмите на любой завершенный или незавершенный этап на диаграмме “Специальные последовательности” и создайте сегмент на основе соответствующих критериев. Затем используйте этот сегмент в Google Аналитике, чтобы понять причины поведения, продемонстрированного на этом этапе.
Создание списков ремаркетинга
Нажмите на любой завершенный или незавершенный этап на диаграмме “Специальные последовательности” и создайте список ремаркетинга для пользователей, которые прошли или не прошли этот этап. Затем запустите кампанию ремаркетинга в Google Рекламе с таргетингом на этих пользователей.
Подробнее о списках ремаркетинга в Google Аналитике…
Ограничения для специальных последовательностей
- Специальные последовательности доступны только в Google Аналитике 360.
- Для каждой специальной последовательности можно задать максимум пять этапов.
- Каждый этап может содержать не более пяти правил.
- В специальной последовательности можно использовать только один сегмент.
- В специальных последовательностях применяются те же правила выборки данных, что и в других отчетах.
Источник: https://support.google.com/analytics/answer/6180923?hl=ru
Последовательность действий при анализе данных
В зависимости от программных целей изучения анализ взятых разрешённых может быть более либо менее глубоким и основательным. Цель изучения определяет уровень анализа в том смысле, что — или разрешают, или запрещают прекратить его на какой-то стадии. В полном же количестве, т.е.
от первого до последнего шага, каковым есть социальный прогноз, последовательность действий социолога при анализе эмпирических разрешённых может быть представлена следующим образом. Первая стадия — описание всей совокупности данных в их несложной форме.
Предварительно осуществляется неспециализированный контроль качества взятой информации: мы выявляем неточности и пропуски, допущенные при сборе данных и при вводе их в ЭВМ (либо при перфорировании для ручной обработки), бракуем какие-то единицы выборочной совокупности, не отвечающие модели выборки (коррекция выборки), отсеиваем некомпетентных опрощеных (изымаем их эти всецело либо частично), производим другие контрольные действия, каковые на социологическом жаргоне именуют подчисткой массива.
Дальше направляться фактически описание: мы используем аппарат дескриптивной статистики для упорядочения всех данных по отдельным показателям (переменным). Изучаются простые распределения, выявляются скошенности и аномалии, рассчитываются показатели средней тенденции, вариации показателей.
Все это нужно для ответа двух задач: (1) неспециализированной оценки частных и выборочной совокупности подвыборок (половозрастных, социально-опытных и других) для того, чтобы понять, как изюминки выборок будут сказываться на интерпретации того либо иного частного вывода и обобщающих заключений; (2) чтобы в последующих операциях с разрешёнными не утратить представления о составляющих более комбинаций и сложных зависимостей, которыми потом будем оперировать.
К примеру, в итоговых либо промежуточных выводах мы находим, что такие-то условия деятельности либо характеристики людей более ответственны, чем кое-какие другие.
Дабы верно трактовать это заключение, направляться отыскать в памяти, каковы главные характеристики выборки, нет ли в ней заметных аномалий. Весьма быть может, что в общей выборке господствуют представители определенного вида труда, лица одной из возрастных групп, одного пола и т.д.
С этими их изюминками связаны социальные функции, интересы, образ судьбы. В итоге может оказаться, что отечественные суммарные выводы неосновательны: они в основном разъясняются спецификой главной подвыборки обследованных.
Дабы проверить эту рабочую догадку, нужно расчленить массив информации на соответствующие подвыборки и повторить анализ раздельно для каждой из них, включая господствующую. Так устанавливаются ограничения выводов.
Обращение к несложной структуре данных необходимо и чтобы при сложных построениях и всевозможных комбинациях не потерять представления об их первооснове. Внезапно выскакивает интереснейший факт, какие-то явления нежданно тесно коррелируют.
Возвращаемся к исходным распределениям и видим, что они совсем подобны как раз в силу психотерапевтического результата эхо. Открытия не произошло.
Вторая стадия — уплотнение исходной информации, т.е. укрупнение шкал, формирование агрегатных показателей-индексов, обнаружение типических групп, твёрдых подвыборок неспециализированного массива и т.п.
цель всех этих операций — сокращение числа показателей, нужных для итогового анализа. В один момент достигается первичное обобщение данных, необходимое для более глубокого понимания существа изучаемых процессов.
Допустим, к примеру, что при контент-анализе по смысловой единице а фактически информации не было получено (2% всего массива сведений). Сохранив данный пункт, мы позже будем всегда наталкиваться на нулевые значения.
В случае если возможно, целесообразно объединить данную смысловую единицу с аналогичной ей, укрупнить шкалу.
Тогда направляться дать уточненную интерпретацию нового показателя, сейчас достаточно емкого по статистике наполнения.
Формирование сводных, агрегатных показателей освобождает от необходимости утомительно трактовать малосущественные частности, повышает уровень обобщений, ведет к более емким теоретическим умозаключениям.
Одно дело, в то время, когда в прикладном — инженерном изучении мы разбираем соотносительное значение каждого из элементов производственной обстановке в его влиянии на отношение к работе.
Потому, что мы знаем частные составляющие того и другого, т.е. бережно прошли первый этап анализа, отечественные предстоящие операции с данными будут более целеустремленными, экономичными и практичными с позиций приближения к главным целям изучения.
На данной стадии, в развитии которой осуществляется переход к анализу связей (3-я стадия), будут употребляться достаточно сильные операции — факторный анализ, типологизация и подобные им.
Крайне важно дать нужные промежуточные истолкования каждого из агрегируемых показателей, потому что это — новые свойства, нуждающиеся в осмыслении, построении соответствующих интерпретационных схем. Как подмечает Г.С.
Батыгин, “с известной долей преувеличения всю деятельность социолога возможно назвать трактующей: случайно попавшей в выборку человек интерпретируется как респондент; его высказывания и жизненные реалии интерпретируются в шифрах и закрытиях вопросников; первичная социологическая информация интерпретируется в средних размерах, корреляционных коэффициентах и мерах рассеяния; числовые эти должны сопровождаться какими-либо рассуждениями, т.е. снова же интерпретироваться” [35, с. 177]. Тем более нуждаются в построении интерпретационных схем новые, емкие показатели, сгруппированные, типологизированные эти.
Третья стадия анализа как бы вклинивается в прошлую. Это -переход и углубление интерпретации к объяснению фактов методом обнаружения вероятных прямых и косвенных влияний на агрегированные особенности, социальные типы, устойчивые образования.
Тут основная опасность — подмена косвенных, опосредованных связей прямыми. Такая неточность — самая популярная и менее всего заметная со стороны.
В книге его работа и Человек мы совершили как раз такую неточность — приняли кое-какие связи за прямые и заключили, что в несложных видах труда высокое образование отрицательно коррелирует с продуктивностью. Потом было обнаружено, что потому, что в 1964 г.
Она опосредована возрастом, стажем работы, уровнем производственной закалки.
Все обнаружилось, когда из всей совокупности обследованных были выделены подгруппы возраста и разного стажа: в каждой возрастной подгруппе правильно, обрисованным выше (введение контрольной переменной, в нашем случае — возраста), обнаружились усиленные прямые деловитости уровня и связи образования, продуктивности рабочих, т.е., чем выше образование, тем выше и производственные результаты [110].
Итак, на данной, возможно самой важной, стадии анализа должны быть взяты главные выводы, проверены главные догадки, нужные для разработки практических рекомендаций и для теоретического осмысления неприятности.
Четвертая стадия, последняя, — попытка прогноза развития изучаемого процесса, событий, явлений при определенных условиях [37, 38, 201, 206]. Лучшим образом ответу данной задачи отвечает повторное обследование.
При неосуществимости его осуществить и для оперативности прогноза тут деятельно применяют модели мысленного экспериментирования, регрессионные, детерминационные, стохастические и др.
Полезно прибегнуть к оценкам специалистов [247] в данном предмете, дабы проверить надежность прогноза, являющегося результатом мысленных опытов.
Неспециализированная логика анализа эмпирических разрешённых может быть иллюстрирована схемой 29.
Не все элементы приведенной схемы должны быть реализованы в каждом изучении, она иллюстрирует принципиальный порядок действий анализа. Но данный порядок остается мёртвой конструкцией , пока решительно все операции с данными, начиная с формализации и первичных измерений изучаемых объектов, не наполнены содержательным смыслом.
Интерпретационная схема — единственное, что в конечном счете снабжает убедительность и теоретико-практическую значимость результатов изучения. объяснения и Основы интерпретации заложены в исследовательской программе.
Сейчас отечественная задача, следуя программным целям, дополнить и уточнить догадки, проверить их на материале взятых данных. «Как бы ни была полна и конкретна полученная информация, — пишет Г.С.
Построение интерпретационных моделей — сугубо творческая, не формализуемая операция. Тут лидируют знания, теоретическая подготовка, практический опыт, лексика, интуиция, гражданская ответственность исследователя.
Мы можем заключить: установлена такая-то сообщение либо закономерность, но мы можем заявить, что обоснованы ранее установленные факты и отыскано объяснение тому, что ранее казалось противоречивым; мы можем написать, что распознанные связи имеют место при определенных условиях и в определенной обстановке, а можем и не сделать таковой оговорки; сошлемся на другие эти, подкрепляющие отечественную объяснительную схему, или умышленно либо по незнанию игнорируем их; сформулируем социальную проблему либо не обратим на нее внимания; призовем к действиям либо ограничимся констатацией фактов…
В каждом из нюансов интерпретации и в итоговых объяснениях данных проявляется целостная личность исследователя. Он выступает не в качестве узкого специалиста, функционирующей электронно-счётной автомобили, но как практик и теоретик, как гражданин и учёный, научное мировоззрение которого оплодотворено активной партийной и богатством ассоциаций позицией.
Практические рекомендации
1. Приступая к анализу данных, будем строго придерживаться программных догадок, избегая двух крайностей: поспешных заключений довольно их подтверждения, в случае если факты укладываются в догадку, но вместе с тем соблазна увлечься самим процессом анализа как таковым, что часто уводит в сторону от целевой ориентации изучения.
2. классификации и Первоначальные группировки разумнее всего создавать исходя из элементарных описательных догадок, а последующие — предварять уточняющими и интерпретационными версиями, продвигаясь к объяснительным.
Чем дальше мы углубляемся в анализ данных, тем большее значение покупают объяснительные догадки, конкретно связанные с программными задачами изучения.
4. Никоим образом не нужно смешивать уточнение и интерпретацию данных с их объяснением. Последнее есть основной задачей анализа, разрешает установить причинные зависимости, истолковать отысканные связи в понятиях более закономерностей и общих тенденций, дает основание для прогноза и, следовательно, для перехода к обоснованию практических ответов социальных неприятностей.
Также читать:
Источник: http://kna-school4.ru/posledovatelnost-dejstvij-pri-analize-dannyh/
Анализ данных — основы и терминология
В этой статье я бы хотел обсудить базовые принципы построения практического проекта по (т. н. «интеллектуальному») анализу данных, а также зафиксировать необходимую терминологию, в том числе русскоязычную.
Согласно википедии,
Анализ данных — это область математики и информатики, занимающаяся построением и исследованием наиболее общих математических методов и вычислительных алгоритмов извлечения знаний из экспериментальных (в широком смысле) данных; процесс исследования, фильтрации, преобразования и моделирования данных с целью извлечения полезной информации и принятия решений. Говоря чуть более простым языком, я бы предложил понимать под анализом данных совокупность методов и приложений, связанных с алгоритмами обработки данных и не имеющих четко зафиксированного ответа на каждый входящий объект. Это будет отличать их от классических алгоритмов, например реализующих сортировку или словарь. От конкретной реализации классического алгоритма зависит время его выполнения и объем занимаемой памяти, но ожидаемый результат его применения строго зафиксирован. В противоположность этому мы ожидаем от нейросети, распознающей цифры, ответа 8 при входящей картинке, изображающей рукописную восьмерку, но не можем требовать этого результата. Более того, любая (в разумном смысле этого слова) нейросеть будет иногда ошибаться на тех или иных вариантах корректных входных данных. Будем называть такую постановку задачи и применяющиеся при ее решении методы и алгоритмы недетерминистическими (или нечеткими) в отличии от классических (детерминистических, четких).
Алгоритмы и эвристики
Описанную задачу распознавания цифр можно решать пытаясь самостоятельно подобрать функцию, реализующую соответствующее отображение. Получится, скорее всего, не очень быстро и не очень хорошо.
С другой стороны, можно прибегнуть к методам машинного обучения, то есть воспользоваться вручную размеченной выборкой (или, в других случаях, теми или иными историческими данными) для автоматического подбора решающей функции.
Таким образом, здесь и далее (обобщенным) алгоритмом машинного обучения я буду называть алгоритм, так или иначе на основе данных формирующий недетерминистический алгоритм, решающий ту или иную задачу.
(Недетерминистичность полученного алгоритма нужна для того, чтобы под определение не подпадал справочник, использующий предварительно подгруженные данные или внешний API).
Таким образом, машинное обучение является наиболее распространенным и мощным (но, тем не менее, не единственным) методом анализа данных.
К сожалению, алгоритмов машинного обучения, хорошо обрабатывающих данные более или менее произвольной природы люди пока не изобрели и поэтому специалисту приходится самостоятельно заниматься предобработкой данных для приведения их в пригодный для применения алгоритма вид.
В большинстве случаев такая предобработка называется фичеселектом (англ. feature selection) или препроцессингом. Дело в том, что большинство алгоритмов машинного обучения принимают на вход наборы чисел фиксированной длины (для математиков — точки в ).
Однако сейчас также широко используются разнообразные алгоритмы на основе нейронных сетей, которые умеют принимать на вход не только наборы чисел, но и объекты, имеющие некоторые дополнительные, главным образом геометрические, свойства, такие как изображения (алгоритм учитывает не только значения пикселей, но и их взаимное расположение), аудио, видео и тексты. Тем не менее, некоторая предобработка как правило происходит и в этих случаях, так что можно считать, что для них фичеселект заменяется подбором удачного препроцессинга.
Алгоритмом машинного обучения с учителем (в узком смысле этого слова) можно назвать алгоритм (для математиков — отображение), который берет на вход набор точек в (еще называются примерами или samples) и меток (значений, которые мы пытаемся предсказать) , а на выходе дает алгоритм (=функцию) , уже сопоставляющий конкретное значение любому входу , принадлежащему пространству примеров. Например, в случае упомянутой выше нейросети, распознающей цифры, с помощью специальной процедуры на основе обучающей выборки устанавливаются значения, соответствующие связям между нейронами, и с их помощью на этапе применения вычисляется то или иное предсказание для каждого нового примера. Кстати, совокупность примеров и меток называется обучающей выборкой.
Список эффективных алгоритмов машинного обучения с учителем (в узком смысле) строго ограничен и почти не пополняется несмотря на активные исследования в этой области. Однако для правильного применения этих алгоритмов требуется опыт и подготовка. Вопросы эффективного сведения практической задачи к задаче анализа данных, подбора списка фичей или препроцессинга, модели и ее параметров, а также грамотного внедрения непросты и сами по себе, не говоря уже о работе над ними в совокупности. Общая схема решения задачи анализа данных при использовании метода машинного обучения выглядит таким образом:
Цепочку «препроцессинг — модель машинного обучения — постпроцессинг» удобно выделять в единую сущность. Часто такая цепочка остается неизменной и лишь регулярно дообучается на новопоступивших данных.
Заведем для такой цепочки (и возможных ее вариантов) отдельный термин и будем называть мета-моделью (meta-model). В случае эвристики она редуцируется до следующей схемы:
Эвристика — это просто вручную подобранная функция, не использующая продвинутых методов, и, как правило, не дающая хорошего результата, но приемлемая в определенных случаях, например на ранних стадиях развития проекта.
Задачи машинного обучения с учителем
В зависимости от постановки, задачи машинного обучения делят на задачи классификации, регрессии и логистической регрессии. Классификация — постановка задачи при которой требуется определить, какому классу из некоторого четко заданного списка относится входящий объект.
Типичным и популярным примером является уже упоминавшееся выше распознавание цифр, в ней каждому изображению нужно сопоставить один из 10 классов, соответствующий изображенной цифре.
Регрессия — постановка задачи, при которой требуется предсказать некоторую количественную характеристику объекта, например цену или возраст. Логистическая регрессия сочетает свойства перечисленных выше двух постановок задач.
В ней задаются совершившиеся события на объектах, а требуется предсказать их вероятности на новых объектах. Типичным примером такой задачи является задача предсказания вероятности перехода пользователя по рекомендательной ссылке или рекламному объявлению.
Выбор метрики и валидационная процедура
Метрика качества предсказания (нечеткого) алгоритма — это способ оценить качество его работы, сравнить результат его применения с действительным ответом. Более математично — это функция, берущая на вход список предсказаний и список случившихся ответов , а возвращающая число соответствующее качеству предсказания.
Например в случае задачи классификации самым простым и популярным вариантом является количество несовпадений , а в случае задачи регрессии — среднеквадратичное отклонение . Однако в ряде случаев из практических соображений необходимо использовать менее стандартные метрики качества.
Прежде чем внедрять алгоритм в работающий и взаимодействующий с реальными пользователями продукт (или передавать его заказчику), хорошо бы оценить, насколько хорошо этот алгоритм работает. Для этого используется следующий механизм, называемый валидационной процедурой.
Имеющаяся в распоряжении размеченная выборка разделяется на две части — обучающую и валидационную. Обучение алгоритма происходит на обучающей выборке, а оценка его качества (или валидация) — на валидационной.
В том случае, если мы пока не используем алгоритм машинного обучения, а подбираем эвристику, можно считать, что вся размеченная выборка, на которой мы оцениваем качество работы алгоритма является валидационной, а обучающая выборка пуста — состоит из 0 элементов.
Типичный цикл развития проекта
В самых общих чертах цикл развития проекта по анализу данных выглядит следующим образом.
- Изучение постановки задачи, возможных источников данных.
- Переформулировка на математическом языке, выбор метрик качества предсказания.
- Написание пайплайна для обучения и (хотя бы тестового) использования в реальном окружении.
- Написание решающей задачу эвристики или несложного алгоритма машинного обучения.
- По необходимости улучшение качества работы алгоритма, возможно уточнение метрик, привлечение дополнительных данных.
Заключение
На этом пока все, следующий раз мы обсудим какие конкретно алгоритмы применяются для решения задач классификации, регрессии и логистической регрессии, а о том, как сделать базовое исследование задачи и подготовить его результат для использования прикладным программистом уже можно почитать здесь.
P.S.
В соседнем топике я немножко поспорил с людьми, придерживающимися более академичной точки зрения на вопросы машинного обучения, чем моя. Что несколько негативно сказалось на моей хаброкарме.
Так что если вы хотели бы ускорить появление следующей статьи и обладаете соответствующими полномочиями — поплюсуйте меня немножко, это поможет мне написать и выложить продолжение более оперативно. Спасибо.
- machine learning
- data science
- algorithms
Источник: https://habr.com/post/352812/
Add comment