В «Большую пятерку» личностных факторов (черт) входят открытость к опыту, интеллект («Openness»); сознание, самосознание, добросовестность («Consciousness»); экстраверсия, энергичность поведения, склонность к контактам («Extraversion»); доброжелательность, приятность, способность прийти к согласию («Agreeableness»); нейротизм, эмоциональная неустойчивость, тревожность, низкое самоуважение («Neuroticism») – сокращенно OCEAN [1]. Настоящая работа продолжает исследование применимости нейросетей для прогнозирования личностных факторов [2, 3]. Предложен принципиально новый подход, предполагающий уход от оценки отдельных изображений к формированию специальных BoW-словарей (BagsOfWords) с дальнейшей нейросетевой обработкой соответствующих дескрипторов.
Методы на основе BoW-словарей весьма популярны в том числе для фильтрации нежелательного контента на веб-страницах. Например, работа [4] посвящена подходу к обнаружению порнографических изображений. В качестве шага предобработки предложен метод вычисления инвариантных к масштабу SIFT-дескрипторов. Далее они используются в качестве входных данных BoW-алгоритма. В результате получается выборка с обучающими векторами очень большой размерности, для работы с которыми предложен алгоритм ARCX4 на основе мультиномиального наивного байесовского классификатора [5]. Полнота обнаружения нежелательного контента полученным классификатором составляет от 87,93 % до 91,75 % (в зависимости от размера обучающей выборки). В работе [6] представлена экспериментальная оценка классификации изображений с использованием BoW-дескрипторов и нейронных сетей. Все изображения масштабировались без искажений пропорций до одного и того же масштаба. F1-мера при работе с дескрипторами достигла 78 %. Наше же исследование опирается на новые инвариантные к повороту, смещению и изменениям освещения KAZE-дескрипторы [7].
Исследование посвящено созданию современных инструментальных средств анализа данных социальных сетей для проведения научных исследований в предметной области. Предлагается применять современные методы машинного обучения по графической информации пользователей и экспертной информации. Цель исследования состоит в упрощении и автоматизации работы психологов с существенными объемами данных социальных сетей, в том числе – в облегчении работы с сырыми (необработанными) данными. При этом инструментальные средства помогают в извлечении статистических данных и в их обработке на высокопроизводительной вычислительной технике с целью извлечения и приобретения новых знаний.
Материалы и методы исследования
Описание предложенного подхода
На этапе подготовки обучающей выборки отобраны альбомы пользователей социальной сети «ВКонтакте» с числом изображений от 5 штук. Всего были использованы данные 84 пользователей: 42 альбома для обучения и 42 для тестирования (база данных изображений и анкет пользователей социальной сети, прошедших специальное анкетирование по опроснику «NEO-FFI» и разрешивших использовать эти данные). База сформирована при участии Психологического института Российской академии образования с целью проведения корректного сравнительного анализа полученных результатов с результатами, описанными в работе [2], указанная работа посвящена применению сверточных искусственных нейронных сетей (ИНС) для оценки связи изображений, размещаемых пользователями, с их личностными факторами.
Из альбомов последовательно считываются изображения до тех пор, пока не будет достигнут лимит по максимальному количеству обрабатываемых изображений пользователя (для сокращения времени обучения/тестирования). В экспериментах использовалось ограничение в 160 штук, что обеспечило порядка 100 изображений на одного пользователя социальной сети. Обрабатываемые изображения приводились к фиксированному масштабу, так, чтобы количество пикселей составляло около 300 тысяч, что приблизительно соответствует размеру 548x548 пикселей. Каждому профилю пользователя сопоставлен json-файл со сведениями об уровне факторов «Большой пятерки», сведения получены с помощью опросника «NEO-FFI» [8]. Низкий уровень: 0–20, средний: 21–32, высокий: 32–48.
Далее из каждого изображения пользователя с порогом чувствительности 0,005 (KAZE-Response) вычисляются KAZE-дескрипторы, каждый дескриптор представляет собой вектор с числами с плавающей точкой. Затем выполняется кластеризация KAZE-дескрипторов с использованием метода k-средних [9]. При этом на старте задается ожидаемое число кластеров на выходе алгоритма кластеризации. Для того чтобы отсечь KAZE-дескрипторы, наиболее далекие от выделенных кластеров, для каждого дескриптора обучающей выборки находится кластер, наиболее близкий к нему по расстоянию Евклида. Затем по всей обучающей выборке считается distVAG, среднее расстояние от дескрипторов до их кластеров-победителей. Полученное расстояние в дальнейшем используется для отсева тех дескрипторов, что далеки от кластеров (считаем их случайными выбросами).
Оставшиеся дескрипторы отдельных пользователей социальной сети используются для формирования усредненных векторов встречаемости KAZE-дескрипторов на изображениях, то есть для непосредственной подготовки так называемых мешков визуальных слов, или обобщающих BoW-дескрипторов пользователей (Bagsofvisual Words). Размер BoW-дескриптора определяется числом используемых кластеров. На первом шаге вычисления BoW-дескрипторов для отдельных пользователей предлагается в виде вектора записать количество выявленных KAZE-дескрипторов с расстоянием до ближайшего центра кластера ≤ distVAG. На втором шаге для обеспечения относительной нечувствительности к разному количеству изображений в соответствующих профилях пользователей осуществляется нормирование полученных векторов путем деления на количество изображений в данных профилях. На основе полученных данных фиксируется дополнительный вектор из максимальных нормированных значений, вектор используется на заключительном, третьем шаге для получения значений векторов BoW-дескрипторов в диапазоне от 0,15 до 0,85 или в диапазоне от –0,85 до 0,85 (для разных активационных функций на выходном слое ИНС). Например, для получения значений в указанном диапазоне все нормированные значения делятся на соответствующие им максимумы, далее полученные величины умножаются на 0,70, и к ним прибавляется 0,15. Данная предобработка необходима для нормализации работы искусственной нейронной сети, в том числе за счет ухода от нулей в BoW-дескрипторах обучающей выборки.
Обучение нейронных сетей
Далее происходят обучение искусственных нейронных сетей прямого распространения, реализация на основе библиотеки «Microsoft Cognitive Toolkit» (CNTK) версии 2.6 [10]. В экспериментах размер словаря варьировался от 64 до 16384 элементов, чтобы подобрать лучший вариант, обеспечивающий высокую точность прогнозирующих нейронных сетей. Изначально обучалось два варианта сетей, с одним и тремя слоями. Далее при обобщении полученных результатов был сформирован третий вариант. Выбор лучших конфигураций осуществлялся с помощью тестирования разных конфигураций ИНС, изменялось число нейронов в соответствующих слоях, был выполнен перебор по сетке разных сочетаний числа нейронов, активационных функций и иных настроек. Исследовалась работа активационных функций, поддерживаемых CNTK [11], дополнительно проверены вейвлет-функции PolyWog [12]. Список оптимизаторов обучения был ограничен набором тех, что поддерживается в CNTK [13].
Первый вариант архитектуры ИНС:
- входной слой, 125–1000 нейронов;
- dropout-слой с вероятностью срабатывания 0,01 [14];
- выходной слойс 5 нейронами.
Наилучший результат показал вариант с 2048 элементами словаря и 250 нейронами входного слоя с ReLU-активационной функцией f(x) = max(0, x), для выходного слоя активационная функция не использовалась (f(x) = x), нейросеть обучалась с помощью Adam-оптимизатора [15] с коэффициентами L1- и L2-регуляризации 0,0001 и 0,01 соответственно (табл. 1, 2).
Таблица 1
Совместное прогнозирование пяти факторов, обучающая выборка (первый вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
0,29 |
0,32 |
0,35 |
0,32 |
0,27 |
|
Усредненное значение СКВО по отдельным факторам |
0,31 |
Среднее значение СКВО по отдельным пользователям |
0,28 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
1,00 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
1,00 |
Таблица 2
Совместное прогнозирование пяти факторов, тестовая выборка (первый вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
12,54 |
14,36 |
12,40 |
11,65 |
15,99 |
|
Усредненное значение СКВО по отдельным факторам |
13,39 |
Среднее значение СКВО по отдельным пользователям |
12,43 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
0,24 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
0,29 |
Второй вариант архитектуры ИНС:
- входной слой, 64–1000 нейронов;
- dropout-слой с вероятностью срабатывания 0,01;
- скрытый слой, 50–800 нейронов;
- dropout-слой с вероятностью срабатывания 0,01;
- скрытый слой, 35–600 нейронов;
- dropout-слой с вероятностью срабатывания 0,01;
- выходной слой с 5 нейронами.
Наилучший результат показал вариант с 1536 элементами словаря, нейронная сеть в своих слоях содержала 250, 200 и 150 нейронов с ReLU-активационной функцией, использовался Adam-оптимизатор с коэффициентами L1- и L2-регуляризации 0,0001 и 0,01 соответственно, выходной слой также без активационной функции (табл. 3, 4).
Обобщая полученные результаты, следует отметить, что добавление дополнительных слоев в ИНС улучшило показатель СКВО на тестовой выборке (с 12,43–13,39 до 11,40–12,34). При этом точность выделения факторов колеблется незначительно. Оптимальное число нейронов в первом слое обеих сетей – 250 штук. В связи с этим было принято решение увеличить число слоев, сохранив архитектурные особенности ИНС и иные условия эксперимента. Для третьей ИНС взято 400, 350, 300, 250, 200 и 150 нейронов в слоях (вперемежку с dropout-слоями), использовалось 1536 элементов словаря. Число слоев подобрано экспериментально. Результаты тестирования показаны в табл. 5, 6.
Результаты исследования и их обсуждение
Для сравнения полученных результатов с предыдущими достижениями обратимся к работе [2]. В первом эксперименте там была исследована возможность использования сверточных нейронных сетей в качестве аппарата для оценки взаимосвязи изображений, размещаемых пользователями, с их личностными чертами. При этом никаких вспомогательных инструментов не использовалось, нейронная сеть выполняла прогноз личностных факторов за счет собственной архитектуры. Во втором эксперименте проверялось использование предварительно обученных сверточных нейросетей для получения признаков высокого уровня с дальнейшим их использованием для обучения второй нейронной сети прогнозу личностных факторов. При обработке пользовательских профилей вектор прогнозируемых личностных черт получался усреднением отдельных нейросетевых прогнозов по всем изображениям, размещенным в соответствующих профилях.
Таблица 3
Совместное прогнозирование пяти факторов, обучающая выборка (второй вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
0,62 |
0,56 |
0,56 |
0,69 |
0,51 |
|
Усредненное значение СКВО по отдельным факторам |
0,59 |
Среднее значение СКВО по отдельным пользователям |
0,52 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
0,98 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
1,00 |
Таблица 4
Совместное прогнозирование пяти факторов, тестовая выборка (второй вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
10,89 |
13,73 |
11,11 |
10,87 |
15,11 |
|
Усредненное значение СКВО по отдельным факторам |
12.34 |
Среднее значение СКВО по отдельным пользователям |
11,40 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
0.21 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
0,31 |
Таблица 5
Совместное прогнозирование пяти факторов, обучающая выборка (третий вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
1,00 |
0,77 |
0,83 |
0,98 |
0,68 |
|
Усредненное значение СКВО по отдельным факторам |
0,85 |
Среднее значение СКВО по отдельным пользователям |
0,75 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
0,98 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
0,95 |
Таблица 6
Совместное прогнозирование пяти факторов, тестовая выборка (третий вариант архитектуры)
O |
C |
E |
A |
N |
||
Средние значения СКВО по отдельным факторам «Big Five» |
8,74 |
12,64 |
8,97 |
9,92 |
13,85 |
|
Усредненное значение СКВО по отдельным факторам |
10,82 |
Среднее значение СКВО по отдельным пользователям |
9,98 |
|||
Точность выделения наиболее четко выраженного фактора (от 0 до 1) |
0,21 |
Точность выделения наименее четко выраженного фактора (от 0 до 1) |
0,38 |
В указанном исследовании на тестовой выборке точность выделения наиболее четко выраженного фактора составила 0,19–0,21, что фактически есть случайный выбор, при использовании BoW-словарей и дескрипторов достигнута точность 0,21. Однако точность выделения наименее четко выраженного фактора в предыдущей работе составила 0,33–0,45, тут достигнута точность 0,38. Новый метод оказался лучше в задаче прогнозирования личностных факторов, чем подход с двумя нейронными сетями (сверточной и прямого распространения), где первая сжимает данные, а вторая уже обучается на них, однако он уступает сверточной нейронной сети, прогнозирующей личностные факторы своим выходным слоем нейронов.
Заключение
Очевидно, что в этой области добиться хороших результатов проблематично ввиду нечеткости и неоднозначности экспертных оценок личностных факторов. Предложенный метод сжатия информации на основе BoW-словарей сохраняет больше информации, пригодной для обучения ИНС прямого распространения, чем специализированная сверточная ИНС, при этом наблюдается рост СКВО по отдельным факторам и отдельным пользователям.
Новые результаты, полученные в настоящей работе, показывают, что прогнозирование личностных факторов по BoW-дескрипторам уступает прогнозированию с прямой обработкой изображений с помощью нейронных сетей в части выбора наиболее и наименее выраженных факторов. Получено отличное запоминание обучающей выборки, результаты работы с тестовой выборкой могут быть улучшены путем существенного расширения обучающей выборки. На тестовых выборках хорошо прогнозируются факторы «Openness» и «Agreeableness», что подтверждает полученные ранее выводы о связи изображений, размещаемых пользователями социальной сети, с этими личностными факторами. Хуже всего прогнозируется «Neuroticism».
Работа выполнена при частичной финансовой поддержке РФФИ (проект № 18-29-22003-мк «Разработка методов нейросетевого анализа визуального интернет-контента пользователей социальных сетей с целью автоматизированного определения выраженности личностных черт, связанных с психологическим неблагополучием»).