Метод определения демографических атрибутов

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

Демографические атрибуты можно условно разделить на:

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

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

Метод определения демографических атрибутов пользователей сети Twitter по текстам их сообщений обладает следующими особенностями:

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

Метод состоит из следующих этапов:

  • построение исходного набора данных;
  • предварительная обработка текста;
  • построение признакового описания;
  • отбор информативных признаков;
  • обучение;
  • классификация.

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

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

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

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

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

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

На этапе построения признакового описания из сообщений пользователей извлекаются лингвистические признаки. Из полученных токенов строится набор признаков в виде N-грамм размером от 1 до 3 с учётом порядка токенов. Каждый тип признаков представлен двумя подтипами: с учётом и без учёта регистра символов.

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

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

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

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

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

Для оценки качества результатов используется точность классификации (accuracy). Исходный набор данных разделяется на обучающую и тестовую подвыборки.

В качестве входных данных используются тексты пользователей сети Twitter из тестовой подвыборки исходного набора данных.

Узнай цену консультации

"Да забей ты на эти дипломы и экзамены!” (дворник Кузьмич)