e
Искусственный интеллект — не только голосовые ассистенты и роботы-художники. Сегодня машинное обучение готово приносить пользу всему человечеству, сохраняя здоровье людей. Компания REG.RU открывает цикл статей о вычислительных методах диагностики и лечении различных заболеваний.
Болезнь Альцгеймера (БА) — нейродегеративное заболевание, которым страдают десятки миллионов пожилых людей во всём мире. Только в США ежегодные расходы на лечение этой болезни составляют до 290 миллиардов долларов. Разработка и применение методов выявления БА по речи человека полностью возложены на опытных врачей. Облегчить им задачу могут стандартные технологии машинного обучения, которые применяются для обнаружения скрытых пространств (latent spaces) в данных. Предлагаем вам ознакомиться с переводом статьи о разработке метода выявления этой болезни.
Основная цель — научиться анализировать фразы, сказанные пациентом, и выделять из них особые признаки, указывающие на присутствие болезни. Признаки отдельных слов состоят из семантической, морфологической и синтаксической информации. Задача тематического моделирования (тематизации) — вместе с этими признаками обнаружить также скрытые семантические структуры. Раньше для решения этой проблемы применялся сложный метод обширного преобразования признаков (extensive feature engineering, EFE). Но современные алгоритмы машинного обучения могут обнаруживать скрытые пространства в данных без применения EFE.
В основе разработанной модели лежит Латентное размещение Дирихле (Latent Dirichlet allocation, LDA). Оно использует статистику наборов слов (bag-of-words) и позволяет определить тематику текстов на основе скрытых переменных. В LDA каждый документ рассматривается как распределение вероятностей по темам, а каждая тема — распределение вероятностей по всем словам в словаре. Предполагается, что оба в качестве априори имеют распределение Дирихле.
Для семантического анализа слов существует программный инструмент word2vec, который основан на векторном представлении слов и дистрибутивной семантике. Авторы предположили, что создание гибрида моделей LDA и word2vec позволит выявлять отличительные признаки речи при заболевании Альцгеймера. Было создано три новых варианта гибридных моделей. Общий принцип их работы заключается в следующем: сначала исследуется тематическое распределение слов в модели LDA, а затем полученная информация включается в модель word2vec в процессе её обучения.
Модели обучаются на стандартных датасетах, и после этого применяются для классификации медицинских данных. Такая архитектура может применяться и для других проблем классификации текста, а не только для выявления БА.
Цели проекта состоят в следующем:
— эффективно дополнить word2vec латентным размещением Дирихле для классификации;
— повысить точность выявления болезни с помощью автоматических методов.
Долговременное исследование Висконсина (Wisconsin Longitudinal Study)
Долговременное исследование Висконсина (WLS) — стандартный набор данных, в котором жители Висконсина (10317 человек), родившиеся в период с 1938 по 1940 год, описывают картину «Кража печенья» (“Cookie Theft”) из Бостонского диагностического теста афазий (Boston Diagnostic Aphasia Examination). В тесте участвовали люди с болезнью Альцгеймера (группа «БА») и здоровые («контрольная» группа). Аудиовыдержки из исследования 2011 года (1366 человек) преобразованы в текст с использованием механизма автоматического распознавания речи — двунаправленной сети с долгой краткосрочной памятью, обученной на датасете Фишера.
Этот набор данных используется для обучения моделей тематизации и word2vec.
DementiaBank
DementiaBank (DB) является частью проекта TalkBank и включает записи голоса и транскрипты людей с деменцией и людей без когнитивных нарушений. Каждый участник отнесён либо к группе «деменция» (167 человек), либо к «контрольной» группе (97 человек) на основании истории болезни и общей нейропсихологической и физической оценки. Многие люди ежегодно участвовали в составлении датасета (до пяти раз), поэтому авторы использовали 240 образцов из группы «деменция» и 233 из «контрольной» группы.
Каждый образец речи записывался и вручную переводился в текст в соответствии с протоколом CHAT. Набор данных был разделён с помощью 5-кратной групповой кросс-валидации, поэтому один и тот же участник не встречается одновременно в обучающей и тестовой выборке.
Для обучения LDA, word2vec и гибридных моделей использовался датасет WLS. Модели применяются для генерации векторов признаков в наборе данных DB. С помощью полученных векторов признаков обучается дискриминативный классификатор (например, SVM – Support Vector Machine, метод опорных векторов), результаты которого служат входными данными для выполнения двоичной классификации (группа Альцгеймера/Контрольная группа).
Предварительная обработка текста
Во время обучения моделей LDA и word2vec отфильтровывается список стоп-слов spaCy из наборов данных. Для моделей LDA, обученных на автоматических транскрипторах, удаляются признаки [UNK] и [NOISE], а также [um] и [uh], так как в большинстве сгенерированных тем они оказывались самыми распространёнными. Также из наборов данных исключаются все знаки препинания и цифры.
Чтобы исследовать распределение тем в документе, авторы используют обученную LDA модель. Число тем выбирается опытным путём и варьируется от 5 до 25.
Сеть word2vec предварительно обучается на наборе данных Google News и содержит вложения для трёх миллионов уникальных слов. Для повышения эффективности из них извлекается миллион наиболее часто употребляющихся. Слова, которых нет в модели, заменяются на маркер [UNK]. Обе архитектуры позволяют представить документ в виде усреднённого значения вложений всех слов.
Чтобы определить, сколько раз слово встречается в документе, можно использовать обычную числовую статистику TF-IDF. Для каждого транскрипта первых обработанных 1000 слов в обучающей выборке применяется векторное представление TF-IDF.
Поскольку цель работы — создать гибрид моделей LDA и word2vec, совмещённая модель будет объединением вероятностей LDA с усреднёнными представлениями word2vec. Представление каждого документа имеет размер, равный сумме размера word2vec и количества тем.
Тематические векторы
Как только модель LDA обучена, можно увидеть распределение слов по каждой теме в виде тематических векторов. Тематический вектор — это взвешенная комбинация векторов word2vec для всех слов в словаре. Таким образом, каждая предполагаемая тема является вектором той же размерности, что и вложение слова. Этот подход позволяет представить документ (или транскрипт) в виде линейной комбинации тем.
Тематические вложения
Для создания тематических вложений используется распределение вероятностей, полученное после обучения LDA, как истинное представление связей между словами и темами. Затем распределение нормализуется (приравнивается к единице). Это позволяет получить тематическое представление для каждого слова в словаре. Представление объединяется с операцией one-hot encoding, чтобы обучить модель word2vec с помощью алгоритма skip-gram. На рисунке показан один проход обучения word2vec с добавлением этой информации.
X и Y — связанные представления входных и выходных слоёв, определённые контекстным окном, а h — N-мерный скрытый слой. Все слова и темы во время вывода отображаются в N-мерное вложение. Алгоритм также пропускает слой softmax на выходе стандартной модели word2vec, так как векторы представляют собой комбинацию one-hot encoding и матриц плотности вероятностей.
Для получения представления документа используется усреднённое значение этих модифицированных вложений. Также авторы предлагают новый способ — объединение среднего значения word2vec с представлением наиболее распространённой темы в документе, как показано на рисунке.
Здесь функции моделей обрабатываются с помощью метода главных компонент (Principal Component Analysis, PCA), затем от них отбрасывается первый компонент и результат вводится в классификатор. Эксперименты показали, что этот процесс может повысить эффективность классификации.
Введение тем
Окончательная модель предполагает введение тем в набор документов. Каждая тема представлена в виде строки с её номером. После нормализации с вероятностью 0.5 (установлена опытным путём) слово заменяется строкой темы для максимального значения распределения вероятностей, при условии, что оно превышает 0.2. Если же значение меньше 0.2, то слово заменяется меткой [UNK]. Пример результата этого процесса показан на рисунке.
Дискриминативный классификатор
Помимо последнего эксперимента, где авторы оценивают различные классификаторы на одной модели, во всех опытах используется SVM-классификатор из библиотеки scikit-learn с линейным ядром и допуском 10-5. Все остальные значения установлены по умолчанию.
Визуализация модели
Авторы взяли 300-мерное векторное представление 25 слов, наиболее близких к слову “dishes” в модели word2vec, обученной на датасете WLS, и отобразили их с помощью размерности t-SNE на рисунке ниже.
То же самое они сделали для модели с введёнными темами (для 5 тем), обученной на расширенном наборе документов. Здесь мы можем видеть не только слова, схожие с “dishes”, но и темы, которые встречаются в его окрестностях:
Модель была визуализирована с помощью pyLDAvis. На рисунке можно увидеть распределение слов в первой теме:
Можно заметить, что темы в WLS кажутся неразличимыми человеком и одни и те же слова встречаются во всех темах. Это ожидаемый результат, учитывая, что люди с БА и контрольная группа описывают одну и ту же картину, а первые 10 меток из отфильтрованного датасета WLD составляют 16.89% от общего числа слов.
Классификация DementiaBank
Вводимые LDA тематические вероятности сами по себе не являются дискриминантными и дают точность 62.8% (для 25 тем). Модель TF-IDF позволяет улучшить результат до 74.95%. Использование обученных моделей word2vec для усреднённых представлений тоже даёт более высокую точность. Простое объединение матрицы плотности вероятностей LDA показывает результат 74.22%, что сравнимо с моделью TF-IDF.
Модель тематических вложений превосходит TF-IDF и даёт точность 75.32% при использовании подхода усреднения word2vec. Немного улучшить результат позволяет объединение тематической информации. Все модели с введёнными темами оказались эффективнее, чем модели тематических вложений, показав точность 77.5%.
Использование PCA в большинстве случаев ухудшает классификацию, за исключением модели тематических вложений для 5 тем, где точность увеличилась с 75.32 до 77.1%.
Другие задачи
Используя наиболее эффективную модель, авторы рассмотрели другие дискриминативные классификаторы. В таблице приведены результаты и F1-меры:
Линейный SVM показывает наилучшую точность.
Хотя распределения тем в модели LDA не являются достаточно заметными, они отражают тонкие различия между пациентами с болезнью Альцгеймера и здоровыми людьми, которые могут быть упущены обычной моделью word2vec. Простое объединение этих распределений с соответствующим документом повышает точность на 2.72%. Этот результат может послужить отправной точкой для решения проблем классификации медицинских данных, которые часто бывают неполными.
С оригинальной статьёй можно ознакомиться на сайте arxiv.org.
Один способ позволяет отслеживать каждую деталь изделия, другой – сфокусироваться на брендинге и маркетинге. Разбираемся…
Рассказываем, как помогли российскому разработчику систем аналитики мигрировать в частное облако и сократить затраты на…
Рассказываем, как создать сайт-визитку и какой должна быть структура. Внутри — инструкция, которая поможет предпринимателям.
Онлайн-карты — хорошая площадка для привлечения аудитории в бизнес. Рассказываем об инструментах продвижения в геосервисах.
Можно стартовать с багажом знаний из найма или практически без опыта. Рассказываем, что нужно делать:…
Что такое наука о данных, чем занимается Data Scientist и можно ли обучиться этой специальности…