Кластерный анализ — это алгоритм исследования данных, разбитых на группы по схожим признакам

Объектом исследования в прикладной статистике являются статистические данные, полученные в результате наблюдений или экспериментов. Статистические данные – это совокупность объектов (наблюдений, случаев) и признаков (переменных), их характеризующих. Например, объекты исследования – страны мира и признаки, – географические и экономические показатели их характеризующие: континент; высота местности над уровнем моря; среднегодовая температура; место страны в списке по качеству жизни, доли ВВП на душу населения; расходы общества на здравоохранение, образование, армию; средняя продолжительность жизни; доля безработицы, безграмотных; индекс качества жизни и т.д.
Переменные – это величины, которые в результате измерения могут принимать различные значения.
Независимые переменные – это переменные, значения которых в процессе экперимента можно изменять, а зависимые переменные – это переменные, значения которых можно только измерять.
Переменные могут быть измерены в различных шкалах. Различие шкал определяется их информативностью. Рассматривают следующие типы шкал, представленные в порядке возрастания их информативности: номинальная, порядковая, интервальная, шкала отношений, абсолютная. Эти шкалы отличаются друг от друга также и количеством допустимых математических действий. Самая «бедная» шкала – номинальная, так как не определена ни одна арифметическая операция, самя «богатая» – абсолютная.
Измерение в номинальной (классификационной) шкале означает определение принадлежности объекта (наблюдения) к тому или иному классу. Например: пол, род войск, профессия, континент и т.д. В этой шкале можно лишь посчитать количество объектов в классах – частоту и относительную частоту.
Измерение в порядковой (ранговой) шкале, помимо определения класса принадлежности, позволяет упорядочить наблюдения, сравнив их между собой в каком-то отношении. Однако эта шкала не определяет дистанцию между классами, а только то, какое из двух наблюдений предпочтительнее. Поэтому порядковые экспериментальные данные, даже если они изображены цифрами, нельзя рассматривать как числа и выполнять над ними арифметические операции 5 . В этой шкале дополнительно к подсчету частоты объекта можно вычислить ранг объекта. Примеры переменных, измеренных в порядковой шкале: бальные оценки учащихся, призовые места на соревнованиях, воинские звания, место страны в списке по качеству жизни и т.д. Иногда номинальные и порядковые переменные называют категориальными, или группирующими, так как они позволяют произвести разделение объектов исследования на подгруппы.
При измерении в интервальной шкале упорядочивание наблюдений можно выполнить настолько точно, что известны расстояния между любыми двумя их них. Шкала интервалов единственна с точностью до линейных преобразований (y = ax + b). Это означает, что шкала имеет произвольную точку отсчета – условный нуль. Примеры переменных, измеренных в интервальной шкале: температура, время, высота местности над уровнем моря. Над переменными в данной шкале можно выполнять операцию определения расстояния между наблюдениями. Расстояния являются полноправными числами и над ними можно выполнять любые арифметические операции.
Шкала отношений похожа на интервальную шкалу, но она единственна с точностью до преобразования вида y = ax. Это означает, что шкала имеет фиксированную точку отсчета – абсолютный нуль, но произвольный масштаб измерения. Примеры переменных, измеренных в шкале отношений: длина, вес, сила тока, количество денег, расходы общества на здравоохранение, образование, армию, средняя продолжительность жизни и т.д. Измерения в этой шкале – полноправные числа и над ними можно выполнять любые арифметические действия.
Абсолютная шкала имеет и абсолютный нуль, и абсолютную единицу измерения (масштаб). Примером абсолютной шкалы является числовая прямая. Эта шкала безразмерна, поэтому измерения в ней могут быть использованы в качестве показателя степени или основания логарифма. Примеры измерений в абсолютной шкале: доля безработицы; доля безграмотных, индекс качества жизни и т.д.
Большинство статистических методов относятся к методам параметрической статистики, в основе которых лежит предположение, что случайный вектор переменных образует некоторое многомерное распределение, как правило, нормальное или преобразуется к нормальному распределению. Если это предположение не находит подтверждения, следует воспользоваться непараметрическими методами математической статистики.

Корреляционный анализ. Между переменными (случайными величинами) может существовать функциональная связь, проявляющаяся в том, что одна из них определяется как функция от другой. Но между переменными может существовать и связь другого рода, проявляющаяся в том, что одна из них реагирует на изменение другой изменением своего закона распределения. Такую связь называют стохастической. Она появляется в том случае, когда имеются общие случайные факторы, влияющие на обе переменные. В качестве меры зависимости между переменными используется коэффициент корреляции (r), который изменяется в пределах от –1 до +1. Если коэффициент корреляции отрицательный, это означает, что с увеличением значений одной переменной значения другой убывают. Если переменные независимы, то коэффициент корреляции равен 0 (обратное утверждение верно только для переменных, имеющих нормальное распределение). Но если коэффициент корреляции не равен 0 (переменные называются некоррелированными), то это значит, что между переменными существует зависимость. Чем ближе значение r к 1, тем зависимость сильнее. Коэффициент корреляции достигает своих предельных значений +1 или -1, тогда и только тогда, когда зависимость между переменными линейная. Корреляционный анализ позволяет установить силу и направление стохастической взаимосвязи между переменными (случайными величинами). Если переменные измерены, как минимум, в интервальной шкале и имеют нормальное распределение, то корреляционный анализ осуществляется посредством вычисления коэффициента корреляции Пирсона, в противном случае используются корреляции Спирмена, тау Кендала, или Гамма.

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

Y = f(x 1 , x 2 , …, x n),

Где y – зависимая переменная (отклик), x i (i = 1,…, n) – предикторы (факторы), n – число предикторов.
Посредством регрессионного анализа можно решать ряд важных для исследуемой проблемы задач:
1). Уменьшение размерности пространства анализируемых переменных (факторного пространства), за счет замены части факторов одной переменной – откликом. Более полно такая задача решается факторным анализом.
2). Количественное измерение эффекта каждого фактора, т.е. множественная регрессия, позволяет исследователю задать вопрос (и, вероятно, получить ответ) о том, «что является лучшим предиктором для...». При этом, становится более ясным воздействие отдельных факторов на отклик, и исследователь лучше понимает природу изучаемого явления.
3). Вычисление прогнозных значений отклика при определенных значениях факторов, т.е. регрессионный анализ, создает базу для вычислительного эксперимента с целью получения ответов на вопросы типа «Что будет, если… ».
4). В регрессионном анализе в более явной форме выступает причинно-следственный механизм. Прогноз при этом лучше поддается содержательной интерпретации.

Канонический анализ. Канонический анализ предназначен для анализа зависимостей между двумя списками признаков (независимых переменных), характеризующих объекты. Например, можно изучить зависимость между различными неблагоприятными факторами и появлением определенной группы симптомов заболевания, или взаимосвязь между двумя группами клинико-лабораторных показателей (синдромов) больного. Канонический анализ является обобщением множественной корреляции как меры связи между одной переменной и множеством других переменных. Как известно, множественная корреляция есть максимальная корреляция между одной переменной и линейной функцией других переменных. Эта концепция была обобщена на случай связи между множествами переменных – признаков, характеризующих объекты. При этом достаточно ограничиться рассмотрением небольшого числа наиболее коррелированных линейных комбинаций из каждого множества. Пусть, например, первое множество переменных состоит из признаков у1, …, ур, второе множество состоит из – х1, …, хq, тогда взаимосвязь между данными множествами можно оценить как корреляцию между линейными комбинациями a1y1 + a2y2 + ... + apyp, b1x1 + b2x2 + ... + bqxq, которая называется канонической корреляцией. Задача канонического анализа в нахождении весовых коэффициентов таким образом, чтобы каноническая корреляция была максимальной.

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

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

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

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

Кластерный анализ. Кластерный анализ – это метод классификационного анализа; его основное назначение – разбиение множества исследуемых объектов и признаков на однородные в некотором смысле группы, или кластеры. Это многомерный статистический метод, поэтому предполагается, что исходные данные могут быть значительного объема, т.е. существенно большим может быть как количество объектов исследования (наблюдений), так и признаков, характеризующих эти объекты. Большое достоинство кластерного анализа в том, что он дает возможность производить разбиение объектов не по одному признаку, а по ряду признаков. Кроме того, кластерный анализ в отличие от большинства математико-статистических методов не накладывает никаких ограничений на вид рассматриваемых объектов и позволяет исследовать множество исходных данных практически произвольной природы. Так как кластеры – это группы однородности, то задача кластерного анализа заключается в том, чтобы на основании признаков объектов разбить их множество на m (m – целое) кластеров так, чтобы каждый объект принадлежал только одной группе разбиения. При этом объекты, принадлежащие одному кластеру, должны быть однородными (сходными), а объекты, принадлежащие разным кластерам, – разнородными. Если объекты кластеризации представить как точки в n-мерном пространстве признаков (n – количество признаков, характеризующих объекты), то сходство между объектами определяется через понятие расстояния между точками, так как интуитивно понятно, что чем меньше расстояние между объектами, тем они более схожи.

Дискриминантный анализ. Дискриминантный анализ включает статистические методы классификации многомерных наблюдений в ситуации, когда исследователь обладает так называемыми обучающими выборками. Этот вид анализа является многомерным, так как использует несколько признаков объекта, число которых может быть сколь угодно большим. Цель дискриминантного анализ состоит в том, чтобы на основе измерения различных характеристик (признаков) объекта классифицировать его, т. е. отнести к одной из нескольких заданных групп (классов) некоторым оптимальным способом. При этом предполагается, что исходные данные наряду с признаками объектов содержат категориальную (группирующую) переменную, которая определяет принадлежность объекта к той или иной группе. Поэтому в дискриминантном анализе предусмотрена проверка непротиворечивости классификации, проведенной методом, с исходной эмпирической классификацией. Под оптимальным способом понимается либо минимум математического ожидания потерь, либо минимум вероятности ложной классификации. В общем случае задача различения (дискриминации) формулируется следующим образом. Пусть результатом наблюдения над объектом является построение k-мерного случайного вектора Х = (X1, X2, …, XК), где X1, X2, …, XК – признаки объекта. Требуется установить правило, согласно которому по значениям координат вектора Х объект относят к одной из возможных совокупностей i, i = 1, 2, …, n. Методы дискриминации можно условно разделить на параметрические и непараметрические. В параметрических известно, что распределение векторов признаков в каждой совокупности нормально, но нет информации о параметрах этих распределений. Непараметрические методы дискриминации не требуют знаний о точном функциональном виде распределений и позволяют решать задачи дискриминации на основе незначительной априорной информации о совокупностях, что особенно ценно для практических применений. Если выполняются условия применимости дискриминантного анализа – независимые переменные–признаки (их еще называют предикторами) должны быть измерены как минимум в интервальной шкале, их распределение должно соответствовать нормальному закону, необходимо воспользоваться классическим дискриминантным анализом, в противном случае – методом общие модели дискриминантного анализа.

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

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

Анализ главных компонент и классификация. На практике часто возникает задача анализа данных большой размерности. Метод анализ главных компонент и классификация позволяет решить эту задачу и служит для достижения двух целей:
– уменьшение общего числа переменных (редукция данных) для того, чтобы получить «главные» и «некоррелирующие» переменные;
– классификация переменных и наблюдений, при помощи строящегося факторного пространства.
Метод имеет сходство с факторным анализом в постановочной части решаемых задач, но имеет ряд существенных отличий:
– при анализе главных компонент не используются итеративные методы для извлечения факторов;
– наряду с активными переменными и наблюдениями, используемыми для извлечения главных компонент, можно задать вспомогательные переменные и/или наблюдения; затем вспомогательные переменные и наблюдения проектируются на факторное пространство, вычисленное на основе активных переменных и наблюдений;
– перечисленные возможности позволяют использовать метод как мощное средство для классификации одновременно переменных и наблюдений.
Решение основной задачи метода достигается созданием векторного пространства латентных (скрытых) переменных (факторов) с размерностью меньше исходной. Исходная размерность определяется числом переменных для анализа в исходных данных.

Многомерное шкалирование. Метод можно рассматривать как альтернативу факторному анализу, в котором достигается сокращение числа переменных, путем выделения латентных (непосредственно не наблюдаемых) факторов, объясняющих связи между наблюдаемыми переменными. Цель многомерного шкалирования – поиск и интерпретация латентных переменных, дающих возможность пользователю объяснить сходства между объектами, заданными точками в исходном пространстве признаков. Показателями сходства объектов на практике могут быть расстояния или степени связи между ними. В факторном анализе сходства между переменными выражаются с помощью матрицы коэффициентов корреляций. В многомерном шкалировании в качестве исходных данных можно использовать произвольный тип матрицы сходства объектов: расстояния, корреляции и т.д. Несмотря на то, что имеется много сходства в характере исследуемых вопросов, методы многомерное шкалирование и факторный анализ имеют ряд существенных отличий. Так, факторный анализ требует, чтобы исследуемые данные подчинялись многомерному нормальному распределению, а зависимости были линейными. Многомерное шкалирование не накладывает таких ограничений, оно может быть применимо, если задана матрица попарных сходств объектов. В терминах различий получаемых результатов факторный анализ стремится извлечь больше факторов – латентных переменных по сравнению с многомерным шкалированием. Поэтому многомерное шкалирование часто приводит к проще интерпретируемым решениям. Однако более существенно то, что метод многомерное шкалирование можно применять к любым типам расстояний или сходств, в то время как факторный анализ требует, чтобы в качестве исходных данных была использована корреляционная матрица переменных или по файлу исходных данных сначала была вычислена матрица корреляций. Основное предположение многомерного шкалирования заключается в том, что существует некоторое метрическое пространство существенных базовых характеристик, которые неявно и послужили основой для полученных эмпирических данных о близости между парами объектов. Следовательно, объекты можно представить как точки в этом пространстве. Предполагают также, что более близким (по исходной матрице) объектам соответствуют меньшие расстояния в пространстве базовых характеристик. Поэтому, многомерное шкалирование – это совокупность методов анализа эмпирических данных о близости объектов, с помощью которых определяется размерность пространства существенных для данной содержательной задачи характеристик измеряемых объектов и конструируется конфигурация точек (объектов) в этом пространстве. Это пространство («многомерная шкала») аналогично обычно используемым шкалам в том смысле, что значениям существенных характеристик измеряемых объектов соответствуют определенные позиции на осях пространства. Логику многомерного шкалирования можно проиллюстрировать на следующем простом примере. Предположим, что имеется матрица попарных расстояний (т.е. сходства некоторых признаков) между некоторыми городами. Анализируя матрицу, надо расположить точки с координатами городов в двумерном пространстве (на плоскости), максимально сохранив реальные расстояния между ними. Полученное размещение точек на плоскости впоследствии можно использовать в качестве приближенной географической карты. В общем случае многомерное шкалирование позволяет таким образом расположить объекты (города в нашем примере) в пространстве некоторой небольшой размерности (в данном случае она равна двум), чтобы достаточно адекватно воспроизвести наблюдаемые расстояния между ними. В результате можно измерить эти расстояния в терминах найденных латентных переменных. Так, в нашем примере можно объяснить расстояния в терминах пары географических координат Север/Юг и Восток/Запад.

Моделирование структурными уравнениями (причинное моделирование). Наметившийся в последнее время прогресс в области многомерного статистического анализа и анализа корреляционных структур, объединенный с новейшими вычислительными алгоритмами, послужил отправной точкой для создания новой, но уже получившей признание техники моделирования структурными уравнениями (SEPATH). Эта необычайно мощная техника многомерного анализа включает методы из различных областей статистики, множественная регрессия и факторный анализ получили здесь естественное развитие и объединение.
Объектом моделирования структурными уравнениями являются сложные системы, внутренняя структура которых не известна («черный ящик»). Наблюдая параметры системы при помощи SEPATH, можно исследовать ее структуру, установить причинно-следственные взаимосвязи между элементами системы.
Постановка задачи структурного моделирования выглядит следующим образом. Пусть имеются переменные, для которых известны статистические моменты, например, матрица выборочных коэффициентов корреляции или ковариации. Такие переменные называются явными. Они могут быть характеристиками сложной системы. Реальные связи между наблюдаемыми явными переменными могут быть достаточно сложными, однако предполагаем, что имеется некоторое число скрытых переменных, которые с известной степенью точности объясняют структуру этих связей. Таким образом, с помощью латентных переменных строится модель связей между явными и неявными переменными. В некоторых задачах латентные переменные можно рассматривать как причины, а явные – как следствия, поэтому, такие модели называются причинными. Допускается, что скрытые переменные, в свою очередь, могут быть связаны между собой. Структура связей допускается достаточно сложной, однако тип ее постулируется – это связи, описываемые линейными уравнениями. Какие-то параметры линейных моделей известны, какие-то нет, и являются свободными параметрами.
Основная идея моделирования структурными уравнениями состоит в том, что можно проверить, связаны ли переменные Y и X линейной зависимостью Y = aX, анализируя их дисперсии и ковариации. Эта идея основана на простом свойстве среднего и дисперсии: если умножить каждое число на некоторую константу k, среднее значение также умножится на k, при этом стандартное отклонение умножится на модуль k. Например, рассмотрим набор из трех чисел 1, 2, 3. Эти числа имеют среднее, равное 2, и стандартное отклонение, равное 1. Если умножить все три числа на 4, то легко посчитать, что среднее значение будет равно 8, стандартное отклонение – 4, а дисперсия – 16. Таким образом, если есть наборы чисел X и Y, связанные зависимостью Y = 4X, то дисперсия Y должна быть в 16 раз больше, чем дисперсия X. Поэтому можно проверить гипотезу о том, что Y и X связаны уравнением Y = 4X, сравнением дисперсий переменных Y и X. Эта идея может быть различными способами обобщена на несколько переменных, связанных системой линейных уравнений. При этом правила преобразований становятся более громоздкими, вычисления более сложными, но основной смысл остается прежним – можно проверить, связаны ли переменные линейной зависимостью, изучая их дисперсии и ковариации.

Методы анализа выживаемости. Методы анализа выживаемости первоначально были развиты в медицинских, биологических исследованиях и страховании, но затем стали широко применяться в социальных и экономических науках, а также в промышленности в инженерных задачах (анализ надежности и времен отказов). Представьте, что изучается эффективность нового метода лечения или лекарственного препарата. Очевидно, наиболее важной и объективной характеристикой является средняя продолжительность жизни пациентов с момента поступления в клинику или средняя продолжительность ремиссии заболевания. Для описания средних времен жизни или ремиссии можно было бы использовать стандартные параметрические и непараметрические методы. Однако в анализируемых данных есть существенная особенность – могут найтись пациенты, которые в течение всего периода наблюдения выжили, а у некоторых из них заболевание все еще находится в стадии ремиссии. Также может образоваться группа больных, контакт с которыми был потерян до завершения эксперимента (например, их перевели в другие клиники). При использовании стандартных методов оценки среднего эту группу пациентов пришлось бы исключить, тем самым, потеряв с трудом собранную важную информацию. К тому же большинство этих пациентов являются выжившими (выздоровевшими) в течение того времени, которое их наблюдали, что свидетельствует в пользу нового метода лечения (лекарственного препарата). Такого рода информация, когда нет данных о наступлении интересующего нас события, называется неполной. Если есть данные о наступлении интересующего нас события, то информация называется полной. Наблюдения, которые содержат неполную информацию, называются цензурированными наблюдениями. Цензурированные наблюдения типичны, когда наблюдаемая величина представляет время до наступления некоторого критического события, а продолжительность наблюдения ограничена по времени. Использование цензурированных наблюдений составляет специфику рассматриваемого метода – анализа выживаемости. В данном методе исследуются вероятностные характеристики интервалов времени между последовательным возникновением критических событий. Такого рода исследования называются анализом длительностей до момента прекращения, которые можно определить как интервалы времени между началом наблюдения за объектом и моментом прекращения, при котором объект перестает отвечать заданным для наблюдения свойствам. Цель исследований – определение условных вероятностей, связанных с длительностями до момента прекращения. Построение таблиц времен жизни, подгонка распределения выживаемости, оценивание функции выживания с помощью процедуры Каплана – Мейера относятся к описательным методам исследования цензурированных данных. Некоторые из предложенных методов позволяют сравнивать выживаемость в двух и более группах. Наконец, анализ выживаемости содержит регрессионные модели для оценивания зависимостей между многомерными непрерывными переменными со значениями, аналогичными временам жизни.
Общие модели дискриминантного анализа. Если не выполняются условия применимости дискриминантного анализа (ДА) – независимые переменные (предикторы) должны быть измерены как минимум в интервальной шкале, их распределение должно соответствовать нормальному закону, необходимо воспользоваться методом общие модели дискриминантного анализа (ОДА). Метод имеет такое название, потому что в нем для анализа дискриминантных функций используется общая линейная модель (GLM). В этом модуле анализ дискриминантных функций рассматривается как общая многомерная линейная модель, в которой категориальная зависимая переменная (отклик) представляется векторами с кодами, обозначающими различные группы для каждого наблюдения. Метод ОДА имеет ряд существенных преимуществ перед классическим дискриминантным анализом. Например, не устанавливается никаких ограничений на тип используемого предиктора (категориальный или непрерывный) или на тип определяемой модели, возможен пошаговый выбор предикторов и выбор наилучшего подмножества предикторов, в случае наличия в файле данных кросс-проверочной выборки выбор наилучшего подмножества предикторов можно провести на основе долей ошибочной классификации для кросс-проверочной выборки и т.д.

Временные ряды. Временные ряды – это наиболее интенсивно развивающееся, перспективное направление математической статистики. Под временным (динамическим) рядом подразумевается последовательность наблюдений некоторого признака Х (случайной величины) в последовательные равноотстоящие моменты t. Отдельные наблюдения называются уровнями ряда и обозначаются хt, t = 1, …, n. При исследовании временного ряда выделяются несколько составляющих:
x t =u t +y t +c t +e t , t = 1, …, n,
где u t – тренд, плавно меняющаяся компонента, описывающая чистое влияние долговременных факторов (убыль населения, уменьшение доходов и т.д.); – сезонная компонента, отражающая повторяемость процессов в течение не очень длительного периода (дня, недели, месяца и т.д.); сt – циклическая компонента, отражающая повторяемость процессов в течение длительных периодов времени свыше одного года; t – случайная компонента, отражающая влияние не поддающихся учету и регистрации случайных факторов. Первые три компоненты представляют собой детерминированные составляющие. Случайная составляющая образована в результате суперпозиции большого числа внешних факторов, оказывающих каждый в отдельности незначительное влияние на изменение значений признака Х. Анализ и исследование временного ряда позволяют строить модели для прогнозирования значений признака Х на будущее время, если известна последовательность наблюдений в прошлом.

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

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

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

2. К р и ц м а н В. А., Р о з е н Б. Я., Д м и т р и е в И. С. К тайнам строения вещества. – Вышейшая школа, 1983.

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

§ 9. Теоретические методы исследования

Урок-лекция

На свете есть вещи поважнее

самых прекрасных открытий –

это знание методов, которыми

они были сделаны

Лейбниц

https://pandia.ru/text/78/355/images/image014_2.gif" alt="Подпись: !" align="left" width="42 height=41" height="41">Метод. Классификация. Систематизация. Систематика. Индукция. Дедукция.

Наблюдение и описание физических явлений. Физические законы. (Физика, 7 – 9 кл.).

Что такое метод. Методом в науке называют способ построения знания, форму практического и теоретического освоения действительности. Фрэнсис Бэкон сравнивал метод со светильником, освещающим путнику дорогу в темноте: «Даже хромой, идущий по дороге, опережает того, кто идет без дороги». Правильно выбранный метод должен быть ясным, логичным, вести к определенной цели, давать результат. Учение о системе методов называют методологией .

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

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

Например, всех учеников школы можно разделить на подклассы – «девушки» и «юноши». Можно выбрать и другой признак, например рост. В этом случае классификацию возможно проводить по-разному. Например, выделить границу роста 160 см и классифицировать учеников на подклассы «низкие» и «высокие», или разбить шкалу роста на отрезки в 10 см, тогда классификация будет более детальная. Если сравнить результаты такой классификации по нескольким годам, то это позволит эмпирическим путем установить тенденции в физическом развитии учеников. Следовательно, классификация как метод может быть использована для получения новых знаний и даже служить основой для построения новых научны теорий.

В науке обычно используют классификации одних и тех же объектов по разным признакам в зависимости от целей. Однако признак (основание для классификации) выбирается всегда один. Например, химики подразделяют класс «кислоты» на подклассы и по степени диссоциации (сильные и слабые), и по наличию кислорода (кислородсодержащие и бескислородные), и по физическим свойствам (летучие – нелетучие; растворимые – нерастворимы) и по другим признакам.

Классификация может изменяться в процессе развития науки.

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

Классификацию удобно отражать в виде таблиц или схем (графов). Например, классификация планет Солнечной системы, представленная схемой - графом, может выглядеть так:

БОЛЬШИЕ ПЛАНЕТЫ

СОЛНЕЧНОЙ СИСТЕМЫ

ПЛАНЕТЫ ЗЕМНОЙ ГРУППЫ

ПЛАНЕТЫ - ГИГАНТЫ

ПЛУТОН

МЕРКУ-

ВЕНЕ-

МАРС

ЮПИТЕР

САТУРН

УРАН

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

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

Единица систематики называется таксоном. В биологии таксоны – это, например, тип, класс, семейство, род, отряд и др. Они объединены в единую систему таксонов различного ранга по иерархическому принципу. Такая система включает описание всех существующих и ранее вымерших организмов, выясняет пути их эволюции. Если ученые находят новый вид, то они должны подтвердить его место в общей системе. Могут быть внесены изменения и в саму систему, которая остается развивающейся, динамичной. Систематика позволяет легко ориентироваться во всем многообразии организмов – только животных известно около 1,5 млн видов, а растений – более 500 тыс. видов, не считая другие группы организмов. Современная биологическая систематика отражает закон Сент-Илера: «Все многообразие форм жизни формирует естественную таксономическую систему, состоящую из иерархических групп таксонов различного ранга».

Индукция и дедукция. Путь познания, при котором на основе систематизации накопленной информации – от частного к общему – делают вывод о существующей закономерности, называют индукцией. Этот метод как метод изучения природы был разработан английским философом Ф. Бэконом. Он писал: «Надо брать как можно больше случаев – как таких, где исследуемое явление есть налицо, так и таких, где оно отсутствует, но где его можно было бы ожидать встретить; затем надо расположить их методически... и дать наиболее вероятное объяснение; наконец, постараться проверить это объяснение дальнейшим сравнением с фактами».

Мысль и образ

Портреты Ф. Бэкона и Ш. Холмса

Почему портреты ученого и литературного героя расположены рядом?

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

Рене Декарт, французский философ и ученый.

Ярким примером получения знания об одном предмете разными путями является открытие законов движения небесных тел. И. Кеплер на основе большого количества данных наблюдений за движением планеты Марс в начале XVII в. открыл методом индукции эмпирические законы движения планет в Солнечной системе. В конце этого же века Ньютон вывел дедуктивным путем обобщенные законы движения небесных тел на основе закона всемирного тяготения.

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

1. ○ Объясните, что такое метод исследования, методология естественных наук?

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

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

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

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

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

Рисунок 1. Схема процесса

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

Инструменты интеллектуального анализа данных

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

Например, IBM SPSS®, который уходит корнями в статистический анализ и опросы, позволяет строить эффективные прогностические модели по прошлым тенденциям и давать точные прогнозы. IBM InfoSphere® Warehouse обеспечивает в одном пакете поиск источников данных, предварительную обработку и интеллектуальный анализ, позволяя извлекать информацию из исходной базы прямо в итоговый отчет.

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

Можно анализировать самые разные наборы данных, включая традиционные базы данных SQL, необработанные текстовые данные, наборы "ключ/значение" и документальные базы. Кластерные базы данных, такие как Hadoop, Cassandra, CouchDB и Couchbase Server, хранят и предоставляют доступ к данным такими способами, которые не соответствуют традиционной табличной структуре.

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

Документальные базы данных, которые соответствуют стандартной структуре типа JSON, или файлы с некоторой машиночитаемой структурой тоже легко обрабатывать, хотя дело может осложняться разнообразной и переменчивой структурой. Например, в Hadoop, который обрабатывает совершенно "сырые" данные, может быть трудно выявить и извлечь информацию до начала ее обработки и сопоставления.

Основные методы

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

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

Ассоциация

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

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

Рисунок 2. Информационный поток, используемый при подходе ассоциации

Классификация

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

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

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

Метод кластеризации работает в обе стороны. Можно предположить, что в определенной точке имеется кластер, а затем использовать свои критерии идентификации, чтобы проверить это. График, изображенный на , демонстрирует наглядный пример. Здесь возраст покупателя сравнивается со стоимостью покупки. Разумно ожидать, что люди в возрасте от двадцати до тридцати лет (до вступления в брак и появления детей), а также в 50-60 лет (когда дети покинули дом) имеют более высокий располагаемый доход.

Рисунок 3. Кластеризация

В этом примере видны два кластера, один в районе $2000/20-30 лет и другой в районе $7000-8000/50-65 лет. В данном случае мы выдвинули гипотезу и проверили ее на простом графике, который можно построить с помощью любого подходящего ПО для построения графиков. Для более сложных комбинаций требуется полный аналитический пакет, особенно если нужно автоматически основывать решения на информации о ближайшем соседе .

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

Метод кластеризации можно применить и в обратную сторону: учитывая определенные входные атрибуты, выявлять различные артефакты. Например, недавнее исследование четырехзначных PIN-кодов выявили кластеры чисел в диапазонах 1-12 и 1-31 для первой и второй пар. Изобразив эти пары на графике, можно увидеть кластеры, связанные с датами (дни рождения, юбилеи).

Прогнозирование

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

Например, используя данные по авторизации кредитных карт, можно объединить анализ дерева решений прошлых транзакций человека с классификацией и сопоставлением с историческими моделями в целях выявления мошеннических транзакций. Если покупка авиабилетов в США совпадает с транзакциями в США, то вполне вероятно, что эти транзакции подлинны.

Последовательные модели

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

Деревья решений

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

Рисунок 5. Подготовка данных

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

Опора на SQL

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

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

Рисунок 6. Специальный формат анализа данных

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

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

Рисунок 7. Структура MapReduce

В предыдущем примере мы выполнили обработку (в данном случае посредством MapReduce) исходных данных в документальной базе данных и преобразовали ее в табличный формат в базе данных SQL для целей интеллектуального анализа данных.

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

Рисунок 8. Последовательная цепочка вывода результатов обработки MapReduce

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

Независимо от исходных данных, многие инструменты могут использовать неструктурированные файлы, CSV или другие источники данных. Например, InfoSphere Warehouse в дополнение к прямой связи с хранилищем данных DB2 может анализировать неструктурированные файлы.

Заключение

Интеллектуальный анализ данных - это не только выполнение некоторых сложных запросов к данным, хранящимся в базе данных. Независимо от того, используете ли вы SQL, базы данных на основе документов, такие как Hadoop, или простые неструктурированные файлы, необходимо работать с данными, форматировать или реструктурировать их. Требуется определить формат информации, на котором будет основываться ваш метод и анализ. Затем, когда информация находится в нужном формате, можно применять различные методы (по отдельности или в совокупности), не зависящие от требуемой базовой структуры данных или набора данных.

Главная > Лекция

Тема 7. КЛАССИФИКАЦИОННЫЙ АНАЛИЗ

Лекция № 9

1. Разведочный анализ данных. Шкалы измерений

2. Деревья классификации

3. Дискриминантный анализ (классификация с обучением)

4. Кластерный анализ (классификация без обучения)

5. Канонические корреляции

1. Разведочный анализ данных. Шкалы измерений

При наличии большого количества переменных и отсутствии информации о связях и закономерностях одним из первых этапов анализа имеющихся данных является так называемый разведочный анализ данных. Как правило, при разведочном анализе учитывается и сравнивается большое число переменных, а для поиска осуществляется классификация и шкалирование переменных. Переменные различаются тем, насколько хорошо они могут быть измерены, или, другими словами, как много измеряемой информации обеспечивает шкала их измерений. Другим фактором, определяющим количество информации, является тип шкалы, в которой проведено измерение. Обычно используют следующие типы шкал измерений: номинальная, порядковая, интервальная и относительная. Номинальные переменные используются только для качественной классификации. Это значит, что данные переменные могут быть измерены только в терминах принадлежности к некоторым существенно различным классам. Типичным примером номинальных переменных являются фирма-производитель, тип товара, признак его годности и т.д. Часто номинальные переменные называют категориальными. Порядковые переменные позволяют ранжировать объекты, если указано, какие из них в большей или меньшей степени облают качеством, выраженным данной переменной. Однако они не позволяют судить насколько больше или насколько меньше данного качества содержится в переменной. Типичный пример – сортовка товара: высший, первый, второй, третий. Один и тот же товар различается качественно, однако сказать, что разница между ними 25% нельзя. Категориальные и порядковые переменные особенно часто возникают при анкетировании, например изме и сравнивать различия между ними. Пример – температура, измеренная в градусах, образует интервальную шкалу, так как можно оценить различие переменных уже в численной форме (40 градусов больше 30 на 10). Интервальную шкалу можно легко перевести в порядковую, если принять некоторые значения переменных как границы разных классов (пример, тепло или жарко на улице в течении месяца, принимая границу между классами «тепло» и «жарко» в значении переменной но их особенностью является наличие определенной точки абсолютного нуля. Как правило, это непрерывные переменные. 2. Деревья классификации Деревья классификации - это метод, позволяющий предсказывать принадлежность наблюдений или объектов к тому или иному классу категориальной зависимой переменной в зависимости от соответствующих значений одной или нескольких предикторных переменных. Построение деревьев классификации - один из иерархического устройства сортировки монет. Заставим монеты катиться по узкому желобу, в котором прорезана щель размером с однокопеечную монету. Если монета провалилась в щель, то это 1 копейка; в противном случае она продолжает катиться дальше по желобу и натыкается на щель для двухкопеечной монеты; если она туда провалится, то это 2 копейки, если нет (значит это 3 или 5 копеек) - покатится дальше, и так далее. Таким образом, мы построили дерево классификации. Решающее правило, реализованное в этом дереве классификации, позволяет эффективно рассортировать горсть монет, а в общем случае применимо к широкому спектру задач классификации. Деревья классификации идеально приспособлены для графического представления, и поэтому сделанные на их основе выводы гораздо легче интерпретировать, чем, если бы они были представлены только в числовой форме. Иерархическое строение дерева классификации - одно изПроцесс построения дерева классификации состоит из четырех основных шагов:

    Выбор критерия точности прогноза

    Выбор типа ветвления

    Определение момента прекращения ветвлений

    Определение "подходящих" размеров дерева

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

3. Дискриминантный анализ (классификация с обучением)

Дискриминантный анализ используется для принятия решения о том, к какому классу (группе) отнести тот или иной объект (процесс) на основе изучения его параметров или характеристик.) товара и задача состоит в том, чтобы установить, какие из параметров вносят свой вклад в различие (дискриминацию) между отдельно группируемыми совокупностями (сортами) товаров, образующих генеральную совокупность. После этого принимается решение о принадлежности этого товара к определенной группе. Следовательно, этот вид статистического анализа является многомерным и основная идея дискриминантного анализа заключается в том, чтобы определить, отличаются ли совокупности по среднему какого-либо параметра (переменной), и затем использовать эту переменную, чтобы предсказать для новых членов их бластей. Каждая из областей отличается от другой величиной определенного параметра (а вернее значением его среднего) или совокупностей параметров, принятых за классификационный признак. Правило дискриминации выбирается в соответствии с определенным принципом оптимальности, например, минимум вероятности ложной классификации. В практических расчетах различения переходят от вектора признаков к линейной функции (дискриминантная функция), которая для двух групп (классов) имеет вид линейного уравнения множественной регрессии, в котором в качестве зависимых переменных выступают кодированные признаки различения на группы. Если имеется более двух групп, то можно составить более, чем одну дискриминантную функцию. Например, когда имеются три совокупности, то можно оценить: (1) - функцию для дискриминации смысле очень похож на многомерный дисперсионный анализ. Когда получены дискриминантные функции, возникает вопрос о том, как хорошо они могут предсказывать , к какой совокупности принадлежит конкретный образец? Для этого определяют показатели классификации или классификационные функции и очередное наблюдение или конкретный образец относят к той группе, для которой классификационная группа имеет наибольшее значение. 4. Кластерный анализ (классификация без обучения) Кластерный анализ представляет собой статистический метод, включающий набор различных алгоритмов, для распределения объектов по кластерам (claster – гроздь, скопление). Разбиение объектов Н на целое число кластеров К, так чтобы каждый объект принадлежал одному и только одному подмножеству разбиения. При этом объекты, принадлежащие одному и тому же кластеру, должны быть сходными, а объекты, принадлежащие разным кластерам – разнородными. Решением задачи кластерного анализа являются разбиения, удовлетворяющие критерию оптимальности. Этот критерий называют целевой функцией, в качестве которой, может быть, например, минимум суммы квадратов отклонений признаков объектов группы от среднего значения

min Σ(x i – x ср) 2

Сходство и разнородность объектов в группах буде характеризоваться некоторой величиной, которая получила названия – функция расстояния. Чем больше функция расстояния между объектами, тем более они разнородны. Понятно, что если эта функция превышает некий установленный предел, то объекты следует соотносить к разным группам (кластерам). В зависимости от используемого алгоритма кластеризации различают следующие функции расстояния: - евклидова метрика (Σx i – xj) 2) 1/2 ; - манхэттенское расстояние Σ|x i – x j |; - расстояние Чебышева max|x i – x j |, и др. рассматриваются как отдельные кластеры. В дальнейшем на каждом шаге работы алгоритма происходит объединение двух самых близких кластеров, и, с учетом принятой функции расстояния, по формуле пересчитываются все расстояния. При достижении целевой функции итерации прекращаются. 5. Канонические корреляции Классический корреляционный анализ позволяет найти статистические зависимости между двумя переменными, так называемые ду двумя множествами переменных используют методы канонического анализа. Канонический анализ являясь обобщением множественной корреляции как меры связи между одной случайной величиной и множеством других случайных величин, рассматривает связи между множествами случайных величин. При этом ограничивается рассмотрением небольшого числа наиболее коррелированных линейных комбинаций из каждого множества. В основе анализа канонической корреляции лежит использование канонических корней или канонических переменных, которые рассматриваются как «скрытые» переменные, характеризующие наблюдаемые явления. Число канонических корней равно числу переменных в меньшем множестве. Практически при определении канонической корреляции строится отдельная матрица корреляций, представляющая собой произведение стандартных корреляционных матриц, характеризующих зависимости между двумя отдельными переменными. Затем вычисляется столько собственных значений полученной матрицы, сколько имеется канонических корней. Если извлечь квадратный корень из полученных собственных значений, получим набор чисел, который можно проинтерпретировать как коэффициенты корреляции. Поскольку они относятся к каноническим переменным, их также называют каноническими корреляциями. Работу дискриминантного, кластерного и канонического анализа целесообразно оценивать с помощью специальных статистических пакетов, реализующих эти алгоритмы на ЭВМ.

В прошлом году компания «Авито» провела целый ряд конкурсов. В том числе - конкурс по распознаванию марок автомобилей, победитель которого, Евгений Нижибицкий, рассказал на тренировке о своём решении.


Постановка задачи . По изображениям автомобилей необходимо определить марку и модель. Метрикой служила точность предсказаний, то есть доля правильных ответов. Выборка состояла из трёх частей: первая часть была доступна для обучения изначально, вторая была дана позже, а на третьей требовалось показать финальные предсказания.


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

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


Заметим, что наилучшее качество достигается на архитектурах и .

Fine-tuning сетей . Обучать глубокую нейронную сеть с нуля - довольно затратное по времени занятие, к тому же не всегда эффективное с точки зрения результата. Поэтому часто используется техника дообучения сетей: берётся уже обученная на ImageNet сеть, последний слой заменяется на слой с нужным количеством классов, а потом продолжается настройка сети с низким темпом обучения, но уже на данных из конкурса. Такая схема позволяет обучить сеть быстрее и с более высоким качеством.

Первый подход к дообучению GoogLeNet показал примерно 92% точности при валидации.

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

Валидация результатов . После появления выдачи второй части выборки я разбил выборку на несколько частей. Все дальнейшие результаты показаны на этом разбиении.

ResNet-34 Torch . Можно воспользоваться готовым репозиторием авторов архитектуры, но, чтобы получить предсказания на тесте в нужном формате, приходится исправлять некоторые скрипты. Кроме того, нужно решать проблемы большого потребления памяти дампами. Точность при валидации - около 95%.


Inception-v3 TensorFlow . Тут тоже использовалась готовая реализация, но была изменена предобработка изображений, а также ограничена обрезка картинок при генерации батча. Итог - почти 96% точности.


Ансамбль моделей . В итоге получилось две модели ResNet и две модели Inception-v3. Какое качество при валидации можно получить, смешивая модели? Вероятности классов усреднялись с помощью геометрического среднего. Веса (в данном случае - степени) подбирались на отложенной выборке.


Результаты . Обучение ResNet на GTX 980 занимало 60 часов, а Inception-v3 на TitanX - 48 часов. За время конкурса удалось опробовать новые фреймворки с новыми архитектурами.


Задача классификации клиентов банка

Ссылка на Kaggle .

Станислав Семёнов рассказывает, как он и другие участники топа Kaggle объединились и заняли призовое место в соревновании по классификации заявок клиентов крупного банка - BNP Paribas .


Постановка задачи . По обфусцированным данных из заявок на страхование необходимо предсказать, можно ли без дополнительных ручных проверок подтвердить запрос. Для банка это процесс автоматизации обработки заявок, а для аналитиков данных - просто задача машинного обучения по бинарной классификации. Имеется около 230 тысяч объектов и 130 признаков. Метрика - LogLoss . Стоит отметить, что команда-победитель расшифровала данные, что помогло им выиграть соревнование.

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

Почему так? Дело в том, что на этапе анонимизации и зашумления данных ко всем значениям прибавлялся случайный шум, а потом проводилось масштабирование на отрезок от 0 до 20. Обратное преобразование было проведено в два шага: сначала значения округлялись до некоторого знака после запятой, а потом подбирался деноминатор. Требовалось ли это, если дерево всё равно подбирает порог при разбиении? Да, после обратного преобразования разности переменных начинают нести больший смысл, а для категориальных переменных появляется возможность провести one-hot кодирование.

Удаление линейно зависимых признаков . Ещё мы заметили, что некоторые признаки являются суммой других. Понятно, что они не нужны. Для их определения брались подмножества признаков. На таких подмножествах строилась регрессия для предсказания некоторой другой переменной. И если предсказанные значения были близки к истинным (стоит учесть искусственное зашумление), то признак можно было удалить. Но команда не стала с этим возиться и воспользовалась уже готовым набором фильтрованных признаков. Набор подготовил кто-то другой. Одна из особенностей Kaggle - наличие форума и публичных решений, с помощью которых участники делятся своими находками.

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

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

Есть другой способ использования полученной информации - кодирование средним значением целевой переменной. Другими словами, каждое значение категориальной переменной заменяется средним значением таргета по объектам, у которых данный признак принимает то же самое значение. Произвести такое кодирование напрямую для всего обучающего множества нельзя: в процессе мы неявно внесём в признаки информацию о целевой переменной. Речь идёт об информации, которую почти любая модель обязательно обнаружит.

Поэтому такие статистики считают по фолдам. Вот пример:

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

Останутся ли проблемы ещё с чем-нибудь? Да - с редко встречающимися категориями и с кросс-валидацией.

Редко встречающиеся категории . Допустим, некоторая категория встретилась всего несколько раз и соответствующие объекты относятся к классу 0. Тогда среднее значение целевой переменной тоже будет нулевым. Однако на тестовой выборке может возникнуть совсем другая ситуация. Решение - сглаженное среднее (или smoothed likelihood), которое вычисляется по следующей формуле:

Здесь global mean - среднее значение целевой переменной по всей выборке, nrows - то, сколько раз встретилось конкретное значение категориальной переменной, alpha - параметр регуляризации (например, 10). Теперь, если некоторое значение встречается редко, больший вес будет иметь глобальное среднее, а если достаточно часто, результат окажется близким к начальному среднему по категории. Кстати, эта формула позволяет обрабатывать и неизвестные ранее значения категориальной переменной.

Кросс-валидация . Допустим, мы посчитали все сглаженные средние для категориальных переменных по другим фолдам. Можем ли мы оценить качество модели по стандартной кросс-валидации k-fold? Нет. Давайте рассмотрим пример.

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

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

Построение признаков . Мы использовали не только уже упомянутые сглаженные средние значения целевой переменной, но и weights of evidence. Это почти то же самое, но с логарифмическим преобразованием. Кроме того, полезными оказались фичи вида разности количества объектов положительного и отрицательного классов в группе без какой-либо нормировки. Интуиция тут следующая: масштаб показывает степень уверенности в классе, но что делать с количественными признаками? Ведь если их обработать похожим образом, то все значения «забьются» регуляризацией глобальным средним. Одним из вариантов является разделение значений на бины, которые потом считаются отдельными категориями. Другой способ заключается просто в построении некой линейной модели на одном признаке с тем же таргетом. Всего получилось около двух тысяч признаков из 80 отфильтрованных.

Стекинг и блендинг . Как и в большинстве соревнований, важной частью решения является стекинг моделей. Если кратко, то суть стекинга в том, что мы передаём предсказания одной модели как признак в другую модель. Однако важно в очередной раз не переобучиться. Давайте просто разберём пример:


Взято из блога Александра Дьяконова

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

На первом уровне у команды было 200-250 различных моделей, на втором - ещё 20-30, на третьем - ещё несколько. Результат - блендинг, то есть смешивание предсказаний различных моделей. Использовались разнообразные алгоритмы: градиентные бустинги с разными параметрами, случайные леса, нейронные сети. Главная идея - применить максимально разнообразные модели с различными параметрами, даже если они дают не самое высокое качество.

Работа в команде . Обычно участники объединяются в команды перед завершением конкурса, когда у каждого уже имеются свои наработки. Мы объединились в команду с другими «кэглерами» ещё в самом начале. У каждого участника команды была папка в общем облаке, где размещались датасеты и скрипты. Общую процедуру кросс-валидации утвердили заранее, чтобы можно было сравнивать между собой. Роли распределялись следующим образом: я придумывал новые признаки, второй участник строил модели, третий - отбирал их, а четвёртый управлял всем процессом.

Откуда брать мощности . Проверка большого числа гипотез, построение многоуровневого стекинга и обучение моделей могут занимать слишком большое время, если использовать ноутбук. Поэтому многие участники пользуются вычислительными серверами с большим количеством ядер и оперативной памяти. Я обычно пользуюсь серверами AWS , а участники моей команды, как оказалось, используют для конкурсов машины на работе, пока те простаивают.

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

Нужно ли расшифровывать датасет . Команда-победитель заметила в данных одну особенность. Часть признаков имеет пропущенные значения, а часть не имеет. То есть некоторые характеристики не зависели от конкретных людей. Кроме того, получилось 360 уникальных значений. Логично предположить, что речь идёт о неких временных отметках. Оказалось, если взять разность между двумя такими признаки и отсортировать по ней всю выборку, то сначала чаще будут идти нули, а потом единицы. Именно этим и воспользовались победители.

Наша команда заняла третье место. Всего участвовало почти три тысячи команд.

Задача распознавания категории объявления

Ссылка на DataRing .

Это ещё один конкурс «Авито». Он проходил в несколько этапов, первый из которых (как, впрочем, ещё и третий) выиграл Артур Кузин .


Постановка задачи . По фотографиям из объявления необходимо определить категорию. Каждому объявлению соответствовало от одного до пяти изображений. Метрика учитывала совпадения категорий на разных уровнях иерархии - от общих к более узким (последний уровень содержит 194 категории). Всего в обучающей выборке был почти миллион изображений, что близко к размеру ImageNet.


Сложности распознавания . Казалось бы, надо всего лишь научиться отличать телевизор от машины, а машину от обуви. Но, например, есть категория «британские кошки», а есть «другие кошки», и среди них встречаются очень похожие изображения - хотя отличить их друг от друга всё-таки можно. А как насчёт шин, дисков и колёс? Тут и человек не справится. Указанные сложности - причина появления некоторого предела результатов всех участников.


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


Архитектуры сетей . Опыт участия в одном из прошлых соревнований показал, что лучшее качество показывают архитектуры серии Inception. Их я и задействовал здесь. В GoogLeNet была добавлена , поскольку она ускоряла обучение модели. Также использовались архитектуры Inception-v3 и Inception BN из библиотеки моделей Model Zoo , в которые был добавлен дропаут перед последним полносвязным слоем. Из-за технических проблем не удавалось обучать сеть с помощью стохастического градиентного спуска, поэтому в качестве оптимизатора использовался Adam.



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

Точность и скорость обучения . Сначала я разделил выборку на три части, но потом отказался от одного из этапов валидации для смешивания моделей. Поэтому впоследствии вторая часть выборки была добавлена в обучающее множество, что улучшило качество сетей. Кроме того, GoogLeNet изначально обучался на Titan Black, у которого вдвое меньше памяти по сравнению с Titan X. Так что эта сеть была дообучена с большим размером батча, и её точность возросла. Если посмотреть на время обучения сетей, можно сделать вывод, что в условиях ограниченных сроков не стоит использовать Inception-v3, поскольку с двумя другими архитектурами обучение идёт заметно быстрее. Причина в числе параметров. Быстрее всех учится Inception BN.

Построение предсказаний .

Как и Евгений в конкурсе с марками автомобилей, Артур использовал предсказания на кропах - но не на 10 участках, а на 24. Участками послужили углы, их отражения, центр, повороты центральных частей и ещё десять случайных.

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


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


Обучение с нуля vs. fine-tuning . Уже после завершения конкурса выяснилось, что несмотря на большой размер выборки стоило обучать сеть не с нуля, а при помощи предобученной сети. Этот подход демонстрирует более высокие результаты.

Задача обучения с подкреплением

Соревнование Black Box Challenge, о котором , было не совсем похоже на обычный «кэгл». Дело в том, что для решения было недостаточно разметить некоторую «тестовую» выборку. Требовалось запрограммировать и загрузить в систему код «агента», который помещался в неизвестную участнику среду и самостоятельно принимал в ней решения. Такие задачи относятся к области обучения с подкреплением - reinforcement learning.

О подходах к решению рассказал Михаил Павлов из компании 5vision. В конкурсе он занял второе место.


Постановка задачи . Для среды с неизвестными правилами нужно было написать «агента», который взаимодействовал бы с указанной средой. Схематично это некий мозг, который получает от чёрного ящика информацию о состоянии и награде, принимает решение о действии, после чего получает новое состояние и награду за совершённое действие. Действия повторяются друг за другом в течение игры. Текущее состояние описывается вектором из 36 чисел. Агент может совершить четыре действия. Цель - максимизировать сумму наград за всю игру.


Анализ среды . Изучение распределения переменных состояния среды показало, что первые 35 компонент не зависят от выбранного действия и только 36-я компонента меняется в зависимости от него. При этом разные действия влияли по-разному: некоторые увеличивали или уменьшали, некоторые никак не меняли. Но нельзя сказать, что вся среда зависит от одной компоненты: в ней могут быть и некие скрытые переменные. Кроме того, эксперимент показал, что если совершать более 100 одинаковых действий подряд, то награда становится отрицательной. Так что стратегии вида «совершать только одно действие» отпадали сразу. Кто-то из участников соревнования заметил, что награда пропорциональна всё той же 36-й компоненте. На форуме прозвучало предположение, что чёрный ящик имитирует финансовый рынок, где портфелем является 36-я компонента, а действиями - покупка, продажа и решение ничего не делать. Эти варианты соотносились с изменением портфеля, а смысл одного действия понятен не был.


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

Адаптация к black box . Опытным путём было установлено, что для среды лучше всего подходил n-step q-learning, где использовалась награда не за одно последнее действие, а за n действий вперёд. Среда позволяла сохранять текущее состояние и откатываться к нему, что облегчало сбор выборки - можно было из одного состояния попробовать совершить каждое действие, а не какое-то одно. В самом начале обучения, когда q-функция ещё не умела оценивать действия, использовалась стратегия «совершать действие 3». Предполагалось, что оно ничего не меняло и можно было начать обучаться на данных без шума.

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

Модели . В решении использовались три регрессии (каждая по одному разу в расчёте на каждое действие) и две нейронных сети. Были добавлены некоторые квадратичные признаки и взаимодействия. Итоговая модель представляет собой смесь всех пяти моделей (пяти Q-функций) с равными весами. Кроме того, использовалось онлайн-дообучение: в процессе тестирования веса́ старых регрессий подмешивались к новым весам, полученным на тестовой выборке. Это делалось только для регрессий, поскольку их решения можно выписывать аналитически и пересчитывать достаточно быстро.


Другие идеи . Естественно, не все идеи улучшали итоговый результат. Например, дисконтирование награды (когда мы не просто максимизируем суммарную награду, а считаем каждый следующий ход менее полезным), глубокие сети, dueling-архитектура (с оценкой полезности состояния и каждого действия в отдельности) не дали роста результатов. Из-за технических проблем не получилось применить рекуррентные сети - хотя в ансамбле с другими моделями они, возможно, обеспечили бы некоторую пользу.


Итоги . Команда 5vision заняла второе место, но с совсем небольшим отрывом от обладателей «бронзы».


Итак, зачем нужно участвовать в соревнованиях по анализу данных?

  • Призы. Успешное выступление в большинстве соревнований вознаграждается денежными призами или другими ценными подарками. На Kaggle за семь лет разыграли более семи миллионов долларов.
  • Карьера. Иногда призовое место .
  • Опыт. Это, конечно, самое главное. Можно изучить новую область и начать решать задачи, с которыми вы раньше не сталкивались.

Сейчас тренировки по машинному обучению проводятся по субботам каждую вторую неделю. Место проведения - московский офис Яндекса, стандартное число гостей (гости плюс яндексоиды) - 60-80 человек. Главным свойством тренировок служит их злободневность: всякий раз разбирается конкурс, завершившийся одну-две недели назад. Это мешает всё точно спланировать, но зато конкурс ещё свеж в памяти и в зале собирается много людей, попробовавших в нём свои силы. Курирует тренировки Эмиль Каюмов, который, кстати, помог с написанием этого поста.

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

 

Возможно, будет полезно почитать: