=Paper= {{Paper |id=Vol-2022/paper05 |storemode=property |title= Автоматическое выделение признаков в задаче классификации сигналов (Automatic Feature Extraction for Signals Classification) |pdfUrl=https://ceur-ws.org/Vol-2022/paper05.pdf |volume=Vol-2022 |authors=Vsevolod Vikulin |dblpUrl=https://dblp.org/rec/conf/rcdl/Vikulin17 }} == Автоматическое выделение признаков в задаче классификации сигналов (Automatic Feature Extraction for Signals Classification) == https://ceur-ws.org/Vol-2022/paper05.pdf
        Автоматическое выделение признаков в задаче
                 классификации сигналов
                                               © В.А. Викулин
             Московский государственный университет имени М.В. Ломоносова,
                                    Москва, Россия
                                         va.vikulin@physics.msu.ru
        Аннотация. Рассмотрена задача классификации сигналов. Предложен стохастический
   алгоритм, позволяющий выделять качественное признаковое пространство в этой задаче. Показан
   принцип разложения признаков сигнала через базисные функции и представлен примерный набор
   базисных функций, который можно использовать в задачах анализа сигналов. Алгоритм строит
   каждый признак с помощью максимизации некоторого функционала качества, оптимизируя данное
   разложение. Предложено несколько вариантов таких функционалов качества. Стохастически
   проводя такую процедуру, можно синтезировать качественное признаковое пространство. Алгоритм
   проверен на задаче классификации ЭКГ сигналов, в которой по кардиограмме пациента
   определялось наличие у него ишемической болезни сердца.
        Ключевые слова: анализ сигналов, выделение признаков, задача классификации.


    Automatic Feature Extraction for Signals Classification
                                                 © V. Vikulin
                                  Lomonosov Moscow State University,
                                          Moscow, Russia
                                         va.vikulin@physics.msu.ru
          Abstract. The article is concerned with the signal classification problem. The article suggests an
   algorithm which allows to create feature space in this task. It shows a strategy performing features with the
   basic functions, some set of basic functions provided to be used in multiple signal processing problems. The
   algorithm creates each feature by maximizing some function of feature quality and some sets of possible
   feature quality metrics for solving signal processing tasks are recommended. If you repeat this procedure
   randomly you will create feature subspace. The algorithm was tested on ECG classification problem in
   which algorithm defined the presence of coronary disease in patients.
         Keywords: signal processing, feature extraction, classification.


                                                             обрабатывать все эти показания, но и быстро
1 Введение                                                   находить среди них больных людей, а это возможно
   Сигнал    –    последовательность    измерений            сделать только методами анализа сигналов.
некоторой величины. Задача классификации                     Разработка алгоритмов классификации сигналов
сигналов часто встречается во множестве различных            становится важной и актуальной задачей. Одним из
прикладных     задач    –    от   медицины     до            популярных       подходов    к   решению     задачи
приборостроения [5].                                         классификации сигналов является нахождение
                                                             оптимального признакового пространства, в
   Не так давно на рынке стало доступно
                                                             котором объекты (сигналы) могут наиболее просто
множество мобильных приборов, которые могут
                                                             быть разделены с помощью классических
непрерывно записывать кардиограмму человека.
                                                             алгоритмов классификации.
Количество подобных приборов растет с каждым
днем, ведь такие медицинские измерения не только                  Рассмотрим постановку задачи классификации.
удобны, но и позволяют своевременно обнаружить               Пусть заданы множество объектов X, множество
болезнь.    Необходимо      не   только    быстро            допустимых ответов Y, и существует функция
                                                             𝑦𝑦 ∶ 𝑋𝑋 → 𝑌𝑌, значения которой известны только на
Труды XIX Международной конференции                          конечном подмножестве объектов {𝑥𝑥1 . . . 𝑥𝑥𝑙𝑙 } ⊂ 𝑋𝑋.
«Аналитика и управление данными в областях с                 Задача заключается в том, чтобы по имеющимся
интенсивным       использованием    данных»                  парам      объект–ответ   восстановить   исходную
(DAMDID/ RCDL’2017), Москва, Россия, 10–13                   зависимость, то есть построить решающую
октября 2017 года                                            функцию 𝑎𝑎 ∶ 𝑋𝑋 → 𝑌𝑌, которая приближала бы



                                                        15
целевую функцию y, причём не только на известных             нахождения        оптимального       признакового
объектах, но и на всём множестве X. Признаком                пространства. Генетический алгоритм является
объекта     x    назовем     результат    измерения          алгоритмом оптимизации, который базируется на
характеристики      объекта.    Другими     словами,         механизмах, в какой-то степени аналогичных
признаком называется отображение 𝑓𝑓 ∶ 𝑋𝑋 → 𝐷𝐷𝑓𝑓 , где        механизмам эволюции в живой природе. В качестве
𝐷𝐷𝑓𝑓 – множество допустимых значений признака.               функции, которая оптимизируется генетическим
Нахождению оптимального множества таких                      алгоритмом, выступает какая-либо мера качества
отображений {𝑓𝑓} посвящена настоящая работа.                 признака.    Например,     качество  предсказания
                                                             алгоритма, построенного на синтезированном
     В данном случае под множеством объектов X
                                                             признаке     на     кросс-валидации.    Основным
будем всегда иметь в виду множество сигналов, то
                                                             недостатком данных работ является четкая привязка
есть конечную последовательность вещественных
                                                             как к методу оптимизации, так и к выбору оценки
чисел, а под множеством допустимых ответов Y –
                                                             качества признака. Из-за жесткой привязки к оценке
двухэлементное множество {–1, 1}.
                                                             качества генетический алгоритм является хорошим
     Нахождение      оптимального      признакового          выбором, потому что он не старается наивным
пространства является крайне сложной задачей. В              образом подобрать себе лучшее решение, как это
большинстве случаев в задачах анализа сигналов               делает, например, жадный алгоритм. Если бы в этих
для      конструирования      этого     пространства         работах использовался «жадный» алгоритм, то
применяются классические приемы, основанные в                признаковое пространство было бы бедным и все
своем большинстве на преобразовании Фурье и                  время одинаковым, так как этот алгоритм не
вейвлет-преобразовании [6, 8]. Такой подход имеет            обладает нужной вариативностью. Одной из
ряд существенных недостатков. Он требует                     важнейших задач данной работы является
глубокого понимания от исследователя природы                 построение метода, в который легко бы встраивался
сигнала, и исследователь должен сам подбирать                абсолютно любой метод оптимизации, то есть
необходимое      спектральное     разложение;      не        предлагается обеспечивать нужную вариативность
существует         некоторого        универсального          не с помощью метода оптимизации, а с помощью
преобразования, которое бы позволяло всегда                  стохастической природы поиска оптимального
выделять оптимальное признаковое пространство из             признакового пространства. В этом случае метод
сигнала. Из-за этого недостатка те качественные              оптимизации может быть любым, он не будет
признаки, которые были найдены в предыдущей                  определяющим в конструкции.
задаче анализа сигнала, в новой задаче могут быть
абсолютно неприменимы. В следующей задаче                    2 Стохастический алгоритм синтеза
анализа сигналов исследователю необходимо с нуля             признакового пространства
конструировать       признаковое       пространство,
опираясь исключительно на свою интуицию и опыт,                 Рассмотрим предлагаемый алгоритм синтеза
полученный при решении предыдущих задач                      признакового пространства.
     Данная     работа       посвящена        методу         2.1 Представление признака через базисные
автоматического        построения      признакового          функции
пространства с помощью максимизации критерия
                                                                Напомним, что признаком сигнала называется
качества признака (здесь и далее признаком сигнала           функция от сигнала, которая ставит в соответствие
будем называть любую вещественную функцию от                 сигналу какое-то число. Будем раскладывать
сигнала). Нами использовался метод оптимизации,              каждую такую функцию через набор заранее
который является обобщением «жадного поиска»,                определенных базисных функций, в рамках которых
но использование конкретно этого метода                      мы и будем проводить оптимизацию. Таким
оптимизации совершенно не обязательно. Поиск
                                                             образом, выбор базисных функций однозначно
оптимального признакового пространства при этом              определит пространство, в котором будет
являлся стохастическим, то есть в самом алгоритме            происходить оптимизация. Каждый признак при
заложена рандомизация, что позволяет постоянно               этом будет представлять собой суперпозицию
генерировать новые признаки, отличающиеся от                 базисных функций, которые будут применяться
предыдущих. Критериев качества для оценки
                                                             поочередно, формируя в итоге значение признака.
признака было несколько, и они тоже выбирались
                                                             Пусть мы выбрали множество {𝑏𝑏} мощности N
для каждого признака случайно. Это также
                                                             базисных функций, тогда любой признак сигнала
помогало генерировать непохожие друг на друга
                                                             может быть представлен в виде:
признаки, так как не существует универсального
метода оценки качества, при этом нельзя                         𝑓𝑓(𝑥𝑥) = [𝑏𝑏1 ][𝑏𝑏2 ] … [𝑏𝑏𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙 ](𝑥𝑥),   (1)
максимизировать      их все сразу. Благодаря
                                                             где 𝑏𝑏𝑖𝑖 – очередная базисная функция из множества
стохастике, данный алгоритм позволял за N
                                                             {𝑏𝑏}, прямоугольные скобки используются для
итераций почти всегда найти N непохожих друг на
                                                             разделения базисных функций и отдельного смысла
друга признаков. Далее синтезированное множество
                                                             не несут. Далее будем подразумевать, что функции в
признаков      может      использоваться      любым
                                                             выражении (1) применяются слева направо. Эта
классическим классификатором.
                                                             форма записи не согласуется с привычными
     Данный подход уже применялся несколько раз в            правилами записи подобных выражений в
анализе сигналов [1, 3, 4, 7]. В этих работах                математике, но была выбрана из соображений
используется      генетический      алгоритм      для        наглядности.


                                                        16
       Заметим, что в формуле (1) каждый признак                                                 Задача генерации признакового пространства
может быть представлен через любое число                                                      заключается в том, чтобы найти X признаков,
базисных функций. Конкретно взятая базисная                                                   представимых в форме (2), которые были бы
функция может быть использована в представлении                                               оптимальны с точки зрения оценки качества
признака неограниченное, но обязательно конечное                                              алгоритма, обученного на этом пространстве
число раз.                                                                                    признаков. В свою очередь это означает, что для
       Отметим также, что если мы определили, что                                             каждого из N признаков необходимо найти
признаком сигнала является число, то последняя из                                             функцию     инициализации,   последовательность
базисных функций в формуле (1) обязана быть вида                                              функций трансформации и функцию агрегации для
𝑏𝑏𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙 : 𝑅𝑅𝑚𝑚 → 𝑅𝑅. Остальные функции должны быть                                         данного признака.
согласованы по областям задания и областям                                                       Примеры         функций        инициализации:
значений:              𝑏𝑏𝑖𝑖 : 𝑅𝑅 𝑚𝑚𝑖𝑖 → 𝑅𝑅 𝑚𝑚𝑖𝑖+1 , 𝑏𝑏𝑖𝑖+1 : 𝑅𝑅 𝑚𝑚𝑖𝑖+1 → 𝑅𝑅 𝑚𝑚𝑖𝑖+2 . В        тождественная; медианное сглаживание; фильтр
данной работе из-за специфичности задачи анализа                                              верхних частот; фильтр нижних частот.
сигналов любой признак описывается не формулой
(1), а ее несколько усложненным вариантом, что                                                   Примеры        функций        трансформации:
позволяет как сузить оптимизируемое пространство,                                             логарифмирование; возведение в степень; конечная
так и использовать априорные знания о том, какие                                              разность; абсолютное значение; стандартизация
базисные функции вообще должны применяться в                                                  сигнала (вычитание среднего и деление на
задаче обработки сигналов, в каком порядке они                                                дисперсию).
должны применяться.                                                                              Примеры функций агрегации: среднее значение;
          ●     Функции инициализации – множество {𝑖𝑖}.                                       медиана; дисперсия; максимум, минимум. центр
          Это функции, с которых должен начинаться                                            масс сигнала (скалярное произведение индексов на
          каждый признак в представлении (1). В                                               значения сигнала).
          представлении сигнала должна быть ровно одна
                                                                                              2.2 Оценка качества признака
          функция инициализации. В множество функций
          инициализаций                  стоит               включить               те           Чтобы     построить     хорошее    признаковое
          преобразования, которые в предметной области                                        пространство, удовлетворяющее условию (2),
          чаще всего используются для предобработки                                           необходимо четко определить критерий, по
          данных, это позволит напрямую использовать                                          которому будет проходить поиск нового признака.
          знания о предметной области при поиске                                              Таким образом, нам необходимо ввести критерий
          признакового пространства. В задачах анализа                                        качества признака. Такие критерии сильно связаны с
          сигналов                часто              сначала              делают              методами фильтрации признаков, которых на
          предварительную                    обработку                  сигналов:             данных момент известно уже немало. Похожие
          сглаживание или применение фильтра низких                                           подходы можно использовать и в оценке качества
          частот. Это функции 𝑖𝑖 ∶ 𝑅𝑅𝑚𝑚 → 𝑅𝑅𝑛𝑛 .                                              признака.
          ●     Функции трансформации – множество {𝑡𝑡}.                                          Самый простой способ оценить качество
          Это       функции,             которые                отвечают            за        признака – проверить, насколько статистически
          преобразования сигнала, который прошел через                                        признак связан с целевой переменной. В этой
          инициализацию. В каждом сигнале их может                                            области существует невероятно большое число
          быть любое количество, число функций                                                исследований.    Перечислим      лишь   несколько
          трансформаций может быть ограничено только                                          способов,    которые     в    дальнейшем    будем
          из соображений вычислительной сложности                                             использовать для экспериментов.
          получаемых                 признаков.              Эти         функции                  ●   Количество неправильно ранжированных
          представляют собой по большей части                                                     пар целевой переменной при сортировке ее по
          нелинейные преобразования. Это функции                                                  значениям данного признака. Самая простая
          𝑡𝑡 ∶ 𝑅𝑅𝑚𝑚 → 𝑅𝑅𝑛𝑛                                                                        оценка качества. Полагаем, что значения
          ●     Функции агрегации – множество {a}. Для                                            признака       есть     выход      некоторого
          того чтобы получить из сигнала число,                                                   классификатора.      Отсортируем      целевую
          необходимо в конце цепочки базисных функций                                             переменную по данному признаку и проверим
          поставить функцию, которая бы агрегировала                                              качество этой сортировки.
          всю полученную информацию в одно число,
                                                                                                 ●   Корреляция Пирсона между целевой
          поэтому необходимо ввести функции агрегации.
                                                                                                 переменной и признаком, то есть мера линейной
          Функциями агрегации могут быть, например,
                                                                                                 зависимости признака от целевой переменной.
          среднее             значение                 последовательности,
                                                                                                 При этом разумно брать модуль, так как нам не
          максимальное значение последовательности и
                                                                                                 важен знак этой линейной зависимости.
          так далее. Это функции 𝑎𝑎 ∶ 𝑅𝑅𝑚𝑚 → 𝑅𝑅𝑛𝑛 .
                                                                                                 ●   Взаимная информация между целевой
   Таким образом,                    формула           (1)      может         быть               переменной и признаком, то есть величина,
переписана в виде                                                                                описывающая        количество    информации,
     𝑓𝑓(𝑥𝑥) = [𝑖𝑖][𝑡𝑡1 ][𝑡𝑡2 ] … [𝑡𝑡𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙−2 ][𝑎𝑎](𝑥𝑥),                        (2)             содержащегося       в   целевой   переменной
                                                                                                 относительно признака. В качестве оценки
где 𝑖𝑖 – функция инициализации 𝑡𝑡𝑗𝑗 – какая-то из                                                качества разумно брать нормированное на
функций трансформации, 𝑎𝑎 – функция агрегации.                                                   отрезок [0,1] значение.


                                                                                         17
   Статистические методы обладают важным                   начали процесс сначала (с новой случайной
достоинством – они очень быстро считаются. Из-за           подвыборки).
этого они получили широкое распространение в
                                                          Алгоритм 1 Cтохастический алгоритм синтеза
задачах, где признаковое пространство состоит из
                                                          признакового пространства
огромного числа признаков, но при этом не очень
важно выделить оптимальное подмножество                   function find_features(sigs, N, k, init_funcs,
признаков из пространства, а гораздо важнее убрать        trans_funcs, agg_funcs, criteria)
                                                            i = 0
совершенно бесполезные или даже вредные                     features = {}
признаки. Основным недостатком этих методов                 while i !=N do: // Ищем N признаков
является недостаточная описательная способность,              subs = random_subsample(sigs, k)
любой статистический критерий не способен                     new_init = get_random(init_funcs)
                                                              init_subs = new_init(subs)
исчерпывающе описать степень зависимости одной                new_crit = get_random(criteria)
величины от другой, очень высок риск ошибки в                 set_parameters(trans_funcs)
оценке качества.                                              new_feat = optimize(init_subs, new_crit, \
                                                                                  trans_funcs, agg_funcs)
   Существует другой обширный класс методов                   if new_feat not in features then:
оценки качества признаков, который проверяет                    i = i + 1
                                                                features.insert(new_feat)
качество алгоритма, обученного на одном этом                return features
признаке. В экспериментах использовался один из
самых простых алгоритмов – алгоритм k ближайших              Построение признака по случайной подвыборке
соседей (k nearest neighbors, KNN). Описать этот          решает одновременно несколько задач. Признаки
алгоритм довольно просто – объект относится к             будут не очень похожи друг на друга, так как они
тому классу, к которому относится большинство из          подстраивались     под     разные      множества.
его k соседей, то есть k ближайших к нему объектов        Уменьшается     риск    построить    признаковое
обучающей       выборки,     в   данной     работе        пространство, которое работает только на
использовалась стандартное евклидово расстояние.          определенном     наборе    объектов.    Позволяет
Оценка качества проводилась методом скользящего           избавиться от проблемы несбалансированных
контроля с исключением объектов по одному (leave-         классов, можно брать подвыборку с равным
one-out, LOO). Это очень популярный метод оценки          количеством объектов каждого класса. Уменьшает
качества алгоритма k ближайших соседей. В этом            вычислительную сложность оценки качества
методе каждый объект по очереди исключается из            признака, которая во многих методах очень
обучающей выборки, для него происходит                    большая.
предсказание, вычисляется оценка качества, а затем           Алгоритм (2) иллюстрирует работу жадного
это качество усредняется.                                 оптимизатора.     Он     наращивает      функции
   Последний метод заключается в проверке того,           трансформации жадным образом. Наращивает до
что признак хорошо используется алгоритмом. В             тех пор, пока не превысит заранее установленный
экспериментах использовался алгоритм дерева               лимит, или пока качество не перестанет расти. При
решений. К тестируемому признаку прибавлялся              добавлении новой трансформации просматриваются
случайный признак, затем на этих двух признаках           все возможные функции агрегации.
строилось дерево решений фиксированной глубины,           Алгоритм 2 «Жадный» оптимизатор
оценивалось, во сколько раз тестируемый признак
                                                          Function optimize(init_subs, new_crit,
лучше, чем случайный признак, с помощью оценки            trans_funcs, agg_funcs)
уменьшение impurity (impurity – мера качества               best_qual = −inf
сплита, которая вычисляется при выборе разбиения            found_trans = {}
в дереве) по разбиениям дерева решений.                     features = {}
                                                            while len(found_trans) != MAX_SIZE do
2.3 Схема метода                                              for new_trans in trans_funcs do
                                                                found_better = False
   Алгоритм (1) описывает работу метода с                       for new_agg in agg_funcs do
                                                                  feature = create(found_trans + \
помощью псевдокода. Метод работает так:                                     {new_trans}, new_agg)
    ●  Случайно взяли k-элементную подвыборку                     if qual(feature) > best_qual then
 из множества сигналов.                                             found_better = True
                                                                    new_best_trans = new_trans
   ●  Применили к этой подвыборке случайную                         best_agg = new_agg
 функцию инициализации.                                       if not found_better then
                                                                break
   ●   Выбрали случайный      критерий   качества             found_trans.insert(new_best_trans)
 признака.                                                  return found_trans, best_agg

   ●   Установили    параметры    в    функциях           3 Вычислительные эксперименты
 трансформации. Например, возведение в степень p             Эксперименты проводились на сигналах,
 имеет параметр p. В экспериментах параметры              которые представляют собой электрокардиограммы
 трансформации брались случайно из заранее                пациентов. Для каждой кардиограммы известно,
 выбранного множества, но можно использовать              болен ли пациент ишемической болезнью сердца.
 любой другой подход.                                     Это классическая задача бинарной классификации,
   ●  Нашли     новый   признак   методом                 где класс 1 означает, что пациент с данной
 оптимизации. Если нужно больше признаков,                кардиограммой болен, класс -1 – здоров. Выборка

                                                     18
состояла из 1798 сигналов, из которых 743 сигнала             Важно отметить, что алгоритм постоянно создает
принадлежало      больным,    а    1055   сигналов         новые признаки, они не совпадают с уже
принадлежало здоровым пациентам. Таким образом,            построенными. Максимальное значение точности по
нам необходимо ввести критерий качества признака.          пациентам – 0.859.
   Оценка качества синтезированного множества                 Все дальнейшие эксперименты проводились для
признаков будет происходить с помощью измерения            множества, состоящего из 300 синтезированных
качества алгоритма, обученного на этих признаках.          признаков. На рисунках 2 и 3 показаны самые часто
Для     этого    может     использоваться    любой         встречаемые функции трансформации и агрегации.
классический классификатор. В качестве базового            Как видно из этих рисунков, среди функций
классификатора был выбран случайный лес [2]. Это           трансформаций нет определенной доминирующей
ансамбль решающих деревьев. Каждое решающее                функции, среди функций агрегаций с большим
дерево строится по случайным подвыборкам,                  отрывом выигрывает медиана.
полученным в результате сэмплирований с
возвращениями объектов обучающей выборки.
   Для оценки качества будем использовать 20-
кратную кросс-валидацию. Важно отметить, что в
обучающей       выборке      многим      пациентам
принадлежит сразу несколько кардиограмм, поэтому
валидация проводилась таким образом, чтобы
кардиограммы любого пациента не могли попасть и
в обучение, и в контроль одновременно. Это более
честная оценка, так как кардиограммы одного и того
же пациента очень похожи, и алгоритму проще
выдать правильный ответ, так как он уже ранее
видел похожую кардиограмму.
   Размер случайной подвыборки составлял 100
объектов (50 объектов каждого класса). Функционал
качества классификации – точность предсказания по          Рисунок 2 Самые популярные функции
пациентам. Вычисляется он так: для каждой                  трансформации
кардиограммы       каждого    пациента     делается
предсказания о наличие у пациента болезни, затем
для каждого пациента считается процент правильно
классифицированных его кардиограмм, затем все
эти значения усредняются по пациентам.




                                                           Рисунок 3 Самые популярные функции агрегации

                                                                   Рисунки 4 и 5 показывают различие в поведении
                                                           жадного алгоритма при различных методах оценки
                                                           качества признака. Обозначения: ДНРП – доля
Рисунок 1 Зависимость точности по пациентам от             неверно ранжированных пар (целевая переменная
количества признаков                                       сортируется по значению признака), качество по ДР
                                                           – качество признака по оценке дерева решений (см.
   Все эксперименты проводились с алгоритмом               раздел 2.2 про эти и другие оценки качества).
«случайный лес», который состоял из 100 деревьев.          Процент увеличения качества считается по формуле
На Рис. 1 показана зависимость точности от                 𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹𝐹−𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼
                                                                                               , где 𝐹𝐹𝑖𝑖𝑛𝑛𝑎𝑎𝑙𝑙𝑄𝑄𝑢𝑢𝑎𝑎𝑙𝑙 – финальное
количества признаков с шагом в 10 признаков.                     𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼

Видно, что оптимальное количество признаков                качество признака, 𝐼𝐼𝑛𝑛𝑖𝑖𝑡𝑡𝑄𝑄𝑢𝑢𝑎𝑎𝑙𝑙 – начальное качество.
находится около 30. Дальнейшее увеличение                  Начальное качество определяется качеством лучшей
признакового пространства не приводит к росту              функцией агрегации при отсутствии функций
качества. Это свидетельствует о том, что многие из         трансформации.
сгенерированных признаков являются шумовыми.




                                                      19
                                                          например, в задаче классификации текстов или
                                                          изображений.
                                                             Благодаря своей стохастической природе
                                                          алгоритм с каждой новой итерацией создает
                                                          признак, который сильно отличается по своему
                                                          методу построения от предыдущих. Чем больше
                                                          итераций    проведет алгоритм, тем больше
                                                          вероятность, что среди полученных признаков будет
                                                          подмножество действительно качественных.
                                                             Более подробное описание проблемы выделения
                                                          признаков в задаче классификации сигналов можно
                                                          найти в [9]. Настоящая работа содержит наиболее
Рисунок 4 Средний процент увеличения качества             важные результаты вышеупомянутой.
признака
                                                          Литература
                                                          [1] Al-Sahaf, H., Neshatian, K., Zhang, M.: Automatic
                                                              Feature Extraction and Image Classification using
                                                              Genetic Programming. In The 5th Int. Conf. on
                                                              Automation, Robotics and Applications, pp. 157-
                                                              162 (2011)
                                                          [2] Breiman, L.: Random Forests. Machine Learning
                                                              (2001)
                                                          [3] Dal Seno, B., Matteucci, M., Mainardi, L.: A
                                                              Genetic Algorithm for Automatic Feature
                                                              Extraction in p300 Detection. 2008 IEEE Int. Joint
                                                              Conf. on Neural Networks (IEEE World Congress
                                                              on Computational Intelligence), pp. 3145-3152
Рисунок 5 Средняя длина трансформаций в
                                                              (2008)
признаке
                                                          [4] Guo, L., Rivero, D., Dorado, J., Munteanu, C.,
                                                              Pazos, A.: Automatic Feature Extraction using
4 Выводы                                                      Genetic Programming: An Application to Epileptic
                                                              Eeg Classification. Experts Systems with
   Предложен        алгоритм      автоматического
                                                              Applications: An Int. J. (2011)
построения признакового пространства, проведены
вычислительные эксперименты для задачи бинарной           [5] Kohler, B., Hennig, C., Orglmeister, R.: The
классификации кардиограмм. Данный алгоритм в                  Principles of Software qrs Detection. IEEE
вычислительных экспериментах показал свою                     Engineering in Medicine and Biology Magazine
способность       конструировать      признаковое             (2002)
пространство, которое позволило бы решать задачу          [6] Lallo, P. R. U.: Signal Classification by Discrete
классификации сигналов с высокой точностью.                   Fourier Transform. MILCOM 1999. IEEE Military
Перечислим     основные    достоинства    данного             Communications, pp. 197-201 (1999)
подхода.                                                  [7] Morik, K., Mierswa, K.: Automatic Feature
   Алгоритм создает нужные признаки, используя                Extraction for Classifying Audio Data. Machine
только оценки качества этих признаков. Работа                 Learning (2005)
исследователя заключается только в выборе                 [8] Prochazka, A., Kukal, J., Vysata, O.: Wavelet
базисных функций, которые специфичны в его                    Transform use for Feature Extraction and Eeg
задаче.    Например,      исследователь     может             Signal Segments Classification. 2008 3rd Int.
использовать    фильтр,    хорошо     работающий              Symposium on Communications, Control and
конкретно для одного типа данных, но для сигналов             Signal Processing, pp. 719-722 (2008)
этот фильтр не применим.                                  [9] Викулин, В. А.: Автоматическое выделение
   Алгоритм состоит из нескольких отдельных                   признаков в задаче классификации сигналов.
частей: начальный набор базисных функций, метод               ВМК, МГУ имени М.В. Ломоносова (2017).
оценки качества признака, оптимизатор. Те                     http://www.machinelearning.ru/wiki/images/3/37/
варианты модулей, которые были приведены в                    CourseVikulin.pdf
данной работе, являются не более чем тестовыми
вариантами, для каждой задачи они могут
подбираться индивидуально.
   Возможности алгоритма не ограничиваются его
применением       исключительно       в     задаче
классификации сигналов. При изменении функций
инициализации, трансформации и агрегации он
может быть применен в любой дугой задаче
распознавания     неструктурированных     данных,


                                                     20