Социолингвистика в эпоху Интернета: интеллектуальный анализ текстовых данных на основе социальных сетей

искусственный интеллект

В первой половине этого года я какое-то время практиковался в Renren, в течение которого я получил много ценных данных и сделал несколько важных вещей, которыми я хотел бы поделиться с вами здесь. Спасибо Renren за данные и рабочую среду, а также доктору Zhao Jiji и Mr. Zhan Weidong за их поддержку и советы. В этой работе у меня появилось много возможностей для общения с людьми, особенно благодаря платформам, предоставляемым OpenParty и TEDxBeijing. Эта статья была опубликована в журнале «Программист», который разделен на две части в июле и августе 2012 года. Я хотел бы поблагодарить Лу Сянсян за ее нелегкий труд. По известным причинам статьи, опубликованные «Программистом», были согласованы (вы автоматически узнаете, что представляет собой гармонизированный контент, когда увидите его позже), поэтому я решил разместить полную версию в Ведите блог и делитесь с большим количеством людей одновременно. Друзья, которые заинтересованы в этом, могут отправить мне письмо, чтобы продолжить обмен. Ну, давайте начнем говорить о тексте.

Будучи студентом, изучающим прикладную лингвистику на факультете китайского языка, и фанатом математики, я очень хочу использовать вычислительные методы для анализа данных по китайскому языку. Китайский — уникальный и волшебный язык. При обработке данных китайского языка на естественном языке мы столкнемся со многими трудностями, которых нет в других языках, такими как сегментация слов - в китайском языке нет пробела между словами, так как же компьютер знает, «женатые и неженатые молодые люди следует практиковать планирование семьи». Означает ли это «уже/замужем/из/и/еще/не/замужем/из/молодежи» или «уже/замужем/за/монаха/незамужем/из/младшего»? Это так называемая проблема неоднозначности сегментации слов. Однако сейчас многие языковые модели способны довольно красиво решить эту проблему. Но в области сегментации китайских слов есть кое-что более неприятное, чем двусмысленность слов — незарегистрированные слова. В китайском языке нет заглавных букв, и имена собственные также были отменены.Вот как компьютеры могут идентифицировать такие вещи, как имена людей и географические названия? Что еще хуже, так это название организации, торговая марка, профессиональные термины, аббревиатуры, новые слова в Интернете и т. д. Механизм их образования представляется совершенно нерегулярным. В последние десять лет область сегментации китайских слов была сосредоточена на преодолении этой трудности. Ключевым звеном стало автоматическое обнаружение новых слов.

Традиционный метод извлечения новых слов состоит в том, чтобы сначала разбить текст на символы, а затем предположить, что оставшиеся фрагменты, которые не совпали успешно, являются новыми словами. Получается замкнутый круг: точность самой сегментации слов зависит от целостности тезауруса, и если в тезаурусе нет новых слов, то как можно доверять результатам сегментации слов? В настоящее время смелая идея состоит в том, чтобы сначала извлечь все текстовые фрагменты, которые могут стать словами в крупномасштабном корпусе, независимо от того, новое это слово или слово, не полагаясь на какой-либо существующий тезаурус старого слова. Затем сравните все извлеченные слова с существующим тезаурусом, вы не можете найти новые слова? С помощью алгоритма извлечения слов мы также можем выполнять более интересную работу по интеллектуальному анализу данных в единицах слов. Здесь я выбираю корпус Renren.com. Состояние некоторых пользователей в первой половине декабря 2011 г. Большое спасибо Ренрену за предоставление этого ценного сетевого корпуса.


 
 
Чтобы извлечь слова из фрагмента текста, наш первый вопрос: какой фрагмент текста считается словом? Пожалуй, первый критерий, который приходит вам на ум, — достаточно ли раз появляется текстовый фрагмент. Мы можем извлечь все фрагменты, частота которых превышает определенный порог, как словарный вывод в корпусе. Однако высокой частоты встречаемости недостаточно: часто встречающийся фрагмент текста может быть не словом, а фразой, состоящей из нескольких слов. В пользовательском статусе Renren слово «кино» появилось 389 раз, а слово «кино» — только 175. Однако мы более склонны использовать слово «кино», потому что интуитивно появляются «кино» и «кино». 175 раз "Юань" затвердел немного сильнее.

Для того чтобы доказать, что слово «кино» имеет очень высокую степень внутренней отверденности, мы можем подсчитать, что если слова «кино» и «кино» действительно появляются в тексте случайным образом независимо друг от друга, то вероятность того, что они просто написаны вместе будет насколько мал. Из всех 24 миллионов слов данных слово «фильм» встречается 2774 раза с вероятностью около 0,000113. Слово «юань» встречается 4797 раз с вероятностью около 0,0001969. Если между ними действительно нет связи, вероятность того, что они подходят друг другу, должна составлять 0,000113 × 0,0001969, что составляет примерно 2,223 × 10-8сила. Но на самом деле слово «кино» встречается в корпусе всего 175 раз, а вероятность появления составляет около 7,183 × 10-6мощность, которая более чем в 300 раз превышает прогнозируемое значение. Точно так же вероятность появления слова «的» составляет около 0,0166, поэтому теоретическое значение вероятности случайной комбинации «的» и «фильм» составляет 0,0166 × 0,000113, что составляет примерно 1,875 × 10.-6, что очень близко к истинной вероятности появления «кино» — около 1,6×10-5мощность, это прогнозируемое значение 8,5 раз. Результаты расчетов показывают, что «кино» с большей вероятностью будет осмысленным совпадением, в то время как «кино» больше похоже на то, что два компонента «де» и «кино» соединяются случайно.

Конечно, как программа извлечения слов без базы знаний, мы не знаем, что «кино» получается прибавлением «кино» к «кино», и мы не знаем, что «кино» получается прибавлением «кино» к «кино». "де". Неправильный метод сегментации завысит степень уплотнения фрагмента. Если рассматривать «кино» как «электричество» плюс «театр», степень сплоченности будет выше. Следовательно, чтобы выяснить, насколько связен текстовый фрагмент, нам нужно перечислить, насколько он связен — из каких двух частей состоит текстовый фрагмент. Пусть p(x) — вероятность того, что текстовый сегмент x появится во всем корпусе, тогда мы определим степень сгущения «кино» как Чем меньше отношение p(кино) к p(электричество) p(кино) и отношение p(кино) к p(кино) p(кино), степень конденсации "кино" равна p( Чем меньше частных, полученных путем деления p(s) · p(фильмов) и p(s) · p(фильмов) соответственно.

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

 
Недостаточно смотреть на степень связности фрагмента текста внутри, нужно также смотреть на его внешнее исполнение в целом. Рассмотрим два фрагмента «лоскутное одеяло» и «время жизни». Мы можем сказать «купить одеяло», «накрыть одеяло», «ввести одеяло», «хорошее одеяло», «это одеяло» и т. За исключением «жизни», «этой жизни», «предыдущей жизни» и «следующей жизни», перед «жизнью» нельзя добавлять никаких других слов. Слова, которые могут появиться в левой части фрагмента текста «Время жизни», настолько ограничены, что интуитивно мы можем подумать, что «Время жизни» — это не отдельное слово, а реальное слово — это на самом деле единое целое, такое как «Время жизни» и «Этот Пожизненно". . Видно, что степень свободного использования фрагмента текста также является важным критерием для суждения о том, является ли он словом. Если текстовый фрагмент можно считать словом, он должен иметь возможность гибко появляться в различных контекстах с очень богатым набором левых и правых соседей.

«Информационная энтропия» — очень магическое понятие, которое может отражать среднее количество информации, которое вам принесет знание результата события. Если результат происходит с вероятностью p , количество информации, которую вы получаете, когда знаете, что это произошло, определяется как - log(p) . Чем меньше p, тем больше информации вы получите. Если шесть граней игральной кости равны 1, 1, 1, 2, 2, 3, то вы, возможно, не будете так удивлены, узнав, что результат броска равен 1, а количество информации, которое он вам дает, — log (1). /2), что составляет около 0,693. Знание того, что результатом броска является 2, дает вам количество информации – log(1/3) ≈ 1,0986. Знание того, что бросок был 3, дает вам количество информации - log(1/6) ≈ 1,79. Однако у вас есть только 1/2 шанса получить 0,693 информации, 1/3 шанса получить 1,0986 информации и 1/6 шанса получить 1,79 информации, поэтому в среднем вы получите 0,693/2 + 1,0986/3. + 1,79/6 ≈ 1,0114 количество информации. Это 1,0114 и есть информационная энтропия кубика. Теперь, если у игральной кости 100 граней, 99 из них — единицы. , только на лице написано 2. Зная, что на кубике выпало 2, вы получаете огромное количество информации, равное - log (1/100), что составляет примерно 4,605, но у вас есть только 1-процентный шанс получить такое количество информации. В противном случае вы получите только – log(99/100) ≈ 0,01005 объема информации. В среднем вы получаете только 0,056 информации, что является информационной энтропией кубика. Рассмотрим самый крайний случай: если у игральной кости все шесть граней равны 1, ее бросание не дает вам никакой информации, а ее информационная энтропия - log(1) = 0. Когда информационная энтропия станет больше? Иными словами, после того, что произошло, вам больше всего хочется спросить, как же так вышло? Интуитивно, конечно, эти события имеют самый неопределенный исход. Да, информационная энтропия интуитивно отражает случайность исхода события.

Мы используем информационную энтропию, чтобы измерить, насколько случайным является набор левых и правых соседей текстового сегмента. Рассмотрим предложение «Ешьте виноград, не выплевывая кожицу винограда, не ешьте виноград и выплевывая кожуру винограда», слово «виноград» встречается четыре раза, в котором соседние слева слова {есть, плевать, есть, плевать}, и правые соседние слова соответственно для {нет, очистить, налить, очистить}. Согласно формуле информационная энтропия левого соседнего слова слова «виноград» равна – (1/2) · log(1/2) – (1/2) · log(1/2) ≈ 0,693, а его правое соседнее слово Информационная энтропия равна – (1/2) log(1/2) – (1/4) · log(1/4) – (1/4) · log(1/4) ≈ 1,04 . Видно, что в этом предложении правого соседа слова «виноград» больше.

В пользовательском статусе Renren.com слово «лоскутное одеяло» встречается 956 раз, а слово «жизнь» — 2330 раз.Информационная энтропия правых соседних наборов слов составляет 3,87404 и 4,11644 соответственно, что очень близко. в стоимости. . Тем не менее, варианты употребления левого соседнего слова «quilt» очень богаты: наиболее часто используемым является «basing the quilt», который встречается 162 раза; второй — «quilt», который встречается 85 раз; следующий — «одеяло», «в одеяле» и «постельное одеяло» появляются 69 раз, 64 раза и 52 раза соответственно; конечно, есть также «складывание одеяла», «покрытие одеяла», «добавление одеяла», « новое одеяло» и «поднять одеяло», «получить одеяло», «тонкое одеяло», «пинать одеяло», «взять одеяло» и т. д. Длинный хвост из более чем 100 различных использований... Информационная энтропия всех левых соседей равна 3,67453. А вот левый сосед "жизни" очень жалкий.Среди 2330 "жизнь" 1276 "жизнь", 596 "эта жизнь", 235 "следующая жизнь", 149 "последняя жизнь", а некоторые есть 32 «полужизни», 10 «восемь жизней», 7 «несколько жизней», 6 «каких жизней» и 13 более редких употреблений, таких как «n жизней» и «две жизни». Информационная энтропия всех левых соседей всего 1,25963. Поэтому вопрос о том, может ли «жизнь» стать словом, является явно спорным. "Сяцзы" - более типичный пример, 294 из 310 случаев использования «сейчас» произошли от «один раз», 5 от «два раза», 5 от «сейчас», а остальные были редкими употреблениями, которые произошли только один раз. На самом деле информационная энтропия левого соседнего слова «xiazi» составляет всего 0,294421, и мы не должны рассматривать его как слово, которое можно использовать гибко. Конечно, левые соседи некоторых текстовых фрагментов хороши, а вот правые соседи имеют очень плохие варианты использования, такие как «симфония», «наследие», «гусиное яйцо» и т. д. Представляется неуместным рассматривать их как отдельные слова. С тем же успехом мы могли бы определить степень свободного использования текстового сегмента как наименьшую из двух величин: информационная энтропия соседнего слева слова и информационная энтропия соседнего справа слова.

 
При практическом применении вы обнаружите, что степень затвердевания и степень свободы текстовых фрагментов — два обязательных критерия. Если смотреть только на степень затвердевания, то программа найдет "шоколад", "Россия", "Ян Лиусе", "Чайков" и другие фрагменты, которые на самом деле "полслова"; если смотреть только на степень затвердевания свобода, программа будет извлекать «один» из слов «съесть еду», «посмотрел один раз», «переночевал» и «отправился в путешествие», потому что его левые и правые соседние слова слишком богаты.

 
 
Мы рассматриваем все подстроки, длина которых в тексте не превышает d, как потенциальные слова (то есть слова-кандидаты, где d — установленный нами верхний предел длины слов-кандидатов, а значение, которое я установил, равно 5), и тогда для возникновения А устанавливается порог по частоте, степени коагуляции и степени свободы, а затем необходимо лишь извлечь все слова-кандидаты, удовлетворяющие пороговым требованиям. Для повышения эффективности мы можем рассматривать полный текст корпуса как целую строку и сортировать все суффиксы строки лексикографически. Следующая таблица является результатом сортировки всех суффиксов «четыре — сорок — четырнадцать — четырнадцать сорок — сорок». На самом деле нам нужно хранить в памяти только префикс этих суффиксов d + 1 слов, или еще лучше, просто сохраните их начальные позиции в корпусе.

десять
четырнадцать это четырнадцать сорок это сорок
десять это четырнадцать это четырнадцать сорок это сорок
десять сорок
четырнадцать это четырнадцать сорок это сорок
четырнадцать сорок сорок
четырнадцать четырнадцать сорок сорок
четырнадцать сорок сорок
сорок
сорок это четырнадцать это четырнадцать сорок это сорок
сорок
сорок это четырнадцать это четырнадцать сорок это сорок
сорок это сорок
четыре это четырнадцать сорок сорок
четыре это сорок это четырнадцать это четырнадцать сорок это сорок
Сорок сорок сорок

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

 
Извлекайте слова из разных корпусов и сортируйте их по частоте этих слов от высокой к низкой. Вы обнаружите, что особенности формулировки различных текстов очень очевидны. Ниже приводится результат извлечения слов из первого тома «Путешествия на Запад»:

Уокер, Мастер, Саньцзан, Бацзе, Великий мудрец, Бодхисаттва, Укун, Как, Монах, Тан Сенг, Лаосун, Жуй, Что, Ша Сенг, Тайцзун, Ученик, Ряса, Фея, Нефритовый император, Сегодня, Брат, Принцесса, Сюаньцзан , Ваше Величество, Ребенок, Жизнь, Знание, За дверью, Демон, Гуанжуй, Гуаньинь, Хуагошань, Земля, Муча, Дунту, Изменить, Изменить, Боцинь, Судья, Сколько, Истинный монарх, Цитянь Великий мудрец, Пантао, Прайм Министр, Вэй Чжэн, Тянет, Разбивает, Поднимает голову, Раскрывает правду, Речь, Чжу Бацзе, Оружие, Командует, Упорядочивает, Поклоняется, Цинфэн, Нэчжа, Влево и вправо, Король обезьян, Дин Палладиум, Ребенок, Зять закон, Золотая палочка-обруч, Эрланг, вещи, многие, Найхэ, плоды женьшеня, убирать, рядом с фронтом, Тайбао, Минъюэ, Южно-Китайское море, Шуйляндун, Мэншоу, Буте Мавен, Ли Тяньван...

Полный текст «Капитала»:

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

Полный текст Библии:

Израиль, никто, я, все, прежде, Давид, зная, что, Иуда, священник, Моисей, видя, люди, повелевая, Египет, слыша, братия, говоря, Христос, уже, пророк, Савл, отец, Иаков, навеки, нападение, мудрость, слава, пришествие, очищение, уход, как, мир, закон, племя, многие, ученики, посланные, как, враг, оригинал, имя, Вавилон, сегодня, князь, пустыня, Соломон, Иосиф, Два, Сожженный Приношение, Фараон, Одежды, Избавление, Двадцать, Праведность, Суд, Двенадцать, Авраам, Камень, Собрать, Пресса, Молитва, Грех, Иисус Навин, Служение, Указание, Города, войти, друг в друга, построить, Павел, должен, Моав, Святой Дух, страх, обещание, сейчас, помощь, скот...

Полный текст «Краткой истории времени»:

черная дыра, должен, очень, любой, Расширение, наука, пророчество, солнце, Наблюдение, Закон, движение, мероприятие, Необычность, Коллапс, Проблема, модель, Направление, область, Знать, Начало, Излучение, часть, Ньютон, производить, Кварк , бесконечный, орбита, объяснить, граница, даже, сам, как, описать, конец, вращать, Эйнштейн, ходить вокруг, что, эффект, показать, температура, изучить, сжать, привлечь, следовать, завершить, увеличить, начать, Фундаментальный, Вычисление, Структура, Бог, Продолжается, Разработано, Почти, До сих пор, Достаточно, Воздействие, Исходный, Ученый, Горизонт событий, Второй, Изменено, История, Мир, Содержит, Точный, Доказывает, Причины, Потребности, Должен, По крайней мере, просто, давать, проходить, казаться, продолжать, экспериментировать, усложнять, Галилео...

О, да, и мой любимый результат извлечения слов на странице новостей People's Daily за апрель 2000 года:

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

Конечно же, я не забыл проанализировать пользовательский статус Renren, самые распространенные слова в пользовательском статусе Renren:

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

На самом деле программа извлекла из статусных данных Renren в общей сложности около 1200 слов.Большинство слов в ней действительно являются стандартной современной китайской лексикой. Но не забывайте, наша цель — извлечение новых слов. Сравнив все извлеченные слова с существующим тезаурусом, мы получим уникальные слова Ренрена (также отсортированные по частоте от большего к меньшему):

Нима, не могу позволить себе больно, сильный, есть дерево, провал, жульничество, божественная лошадь, спокойствие, папа, дерьмо, круто, опухший, жесткий, безмолвный, Weibo, шестой класс, продвинутая математика, выбор курса, Грустное напоминание, Jiyou , Яичная боль, Давно, Renren.com, Как ты себя чувствуешь, Детская обувь, Вах Кака, поражение мозга, Тукао, убогий, чай с молоком, Пойду, пролистни экран, сестра бумага, боль в животе, дрейф , вступительный экзамен в аспирантуру, Слабый взрыв, слишком точный, дурачиться, мерцающий, ревнивый, ревнивый, дешевый, Конан, собачья кровь, спайк, притворяющийся, действительно особенный, сломанный сон, Ультрачеловек, Ней Ню Ман Миан, Борьба с домовладельцем, Tencent, Хуэй Чан, Встреча, Лала, Дяоси, Девять мечей, Гао Фушуай, Анелька, World of Warcraft, Line Generation, Three Kingdoms Kill, Линь Цзюньцзе, Сусу, Вонючая красавица, Нимфоманка...

 
Я также думал о более интересном способе игры. Почему бы не сравнить слова в состоянии каждого дня с состоянием предыдущего дня, чтобы извлечь слова, уникальные для дня? Таким образом, мы можем извлечь ежедневные горячие точки из пользовательского статуса Renren! Судя по масштабу имеющихся данных, это вполне возможно. Я выбрал еще 12 репрезентативных слов и перечислил их частотность (числа в левом столбце) в пользовательском состоянии 13 декабря 2011 г. и в пользовательском состоянии 14 декабря 2011 г. Частоты (числа в правом столбце):

снег 33 92
те годы 139 146
Ли Ючунь 1 4
видеть 145 695
военное ремесло 23 20
большое число 82 83
с днем ​​рождения 235 210
сегодня 1416 1562
Северное полушарие 2 18
шея 23 69
грустный 61 33
индукционная плита 0 3

Каждый может интуитивно и быстро оценить, какие слова можно считать горячими словами 14 декабря. Например, слово "снег" 13 декабря встречалось всего 33 раза, а 14 декабря - 92. Последнее в 2,8 раза больше первого. Это вряд ли совпадение, и первоначальное суждение должно быть таким: Действительно где-то снег шел 14 декабря. 14 декабря. «Те годы» действительно чаще встречаются 14 декабря, чем 13 декабря, но это не настолько отличается, чтобы у нас не было причин думать, что это модное слово дня.

Перед нами встает вопрос: как количественно определить «горячесть дня» слова? Первая мысль, конечно, состоит в том, чтобы просто посмотреть на отношение множителя между ежедневной частотой каждого слова и вчерашней частотой, но подумайте об этом, и вы обнаружите проблему: это не решает непредвиденные обстоятельства, вызванные слишком малым количеством выборок. Слово «Ли Юйчунь» 14 декабря появлялось в 4 раза чаще, чем 13 декабря, что более чем в 2,8 раза чаще, чем слово «снег», но мы более склонны полагать, что феномен «Ли Юйчунь» просто происшествие. Более хлопотной является линия «индукционная плита».Частота 14 декабря бесконечно много раз превышает частоту 13 декабря, но, очевидно, мы не можем думать, что «индукционная плита» — это Лучшие слова 14 декабря.

Игнорировать все слова со слишком небольшим количеством образцов? Это не кажется очень хорошим, и слова с небольшим количеством образцов также могут быть действительно горячими словами. Например, термин «Северное полушарие», хотя его частота в оба дня очень мала, эту 9-кратную связь действительно нельзя игнорировать. На самом деле, легко увидеть, какие слова действительно горячие 14 декабря: «видеть», «северное полушарие» и «шея» должны быть горячими словами в дополнение к «снегу». Вы можете быть убеждены, что за выдающимся положением последних трех слов должна быть причина (и очень хотите знать, в чем причина), но вы решительно припишете две «аномалии» «Ли Ючунь» и «Индукционная плита». к случайной причине. Твоя интуиция права — 14 декабря 2011 г. произошел чрезвычайно впечатляющий метеорный поток Геминиды, один из трех основных метеорных потоков в Северном полушарии. В течение дня пользователи сети продолжали репостить новости, поэтому слово «Северное полушарие» стало популярным, ночью пользователи сети продолжали отправлять сообщения, говорящие «я видел» и «я видел это снова», и частота слова «вижу» резко возросла; Наконец, взглянув вверх Однажды ночью в небе моя шея наконец-то заболела, поэтому по дороге домой я продолжал повторять: «Шея неудобная».

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

В следующей таблице представлены первые четыре слова. Четыре столбца справа представляют частоту появления каждого слова 13 декабря, частоту появления 14 декабря, общую частоту двух дней и частоту следующего дня. из. Число в третьем столбце является суммой чисел в первых двух столбцах, а число в четвертом столбце является результатом деления числа во втором столбце на число в третьем столбце. В последнем столбце должно быть число от 0 до 1, которое указывает, насколько вероятно соответствующее слово в день 14 декабря. Последний столбец можно рассматривать как оценку для каждого слова. Видно, что на данный момент оценка «Снега» ниже, чем у «Ли Юйчунь», а это результат, который мы не хотим видеть. В "Li Yuchun" слишком мало сэмплов, и мы хотим использовать это как причину, чтобы снизить оценку.

снег 33 92 125 0.736
те годы 139 146 285 0.512
Ли Ючунь 1 4 5 0.8
видеть 145 695 840 0.827
(средний) 313.75 0.719

Как это сделать? Мы берем средневзвешенное значение оценки каждого слова и среднее глобальное значение! Сначала подсчитайте среднюю общую частоту этих четырех слов, которая составляет 313,75, а затем подсчитайте среднюю оценку этих четырех слов, которая составляет 0,719. Далее предположим, что 313,75 человек предварительно оценили каждое слово 0,719, другими словами, каждое слово получило 313,75 оценок, и все эти 313,75 оценок равны 0,719. Слово «снег» получило дополнительно 125 индивидуальных оценок, каждая из которых дала ему 0,736 балла. Таким образом, окончательная оценка слова «снег»:

снег (0,736 × 125 + 0,719 × 313,75) / (125 + 313,75) ≈ 0,724

Точно так же оценки других слов:

те годы (0,512 × 285 + 0,719 × 313,75) / (285 + 313,75) ≈ 0,62
Ли Ючунь (0,8 × 5 + 0,719 × 313,75) / (5 + 313,75) ≈ 0,7202
видеть (0,827 × 840 + 0,719 × 313,75) / (840 + 313,75) ≈ 0,798

Легко видеть, что слова с большей выборкой в ​​это время более способны приблизить окончательную оценку к своей первоначальной оценке.Если выборка слишком мала, окончательная оценка будет очень близка к общемировой средней оценке. После такой корректировки оценка слова «снег» выше, чем у «Ли Юйчунь». На практике число 313,75 также можно определить самостоятельно.Чем выше число, тем больше вы обеспокоены негативным влиянием слишком малого количества образцов. Эта идея взятия средневзвешенного значения с глобальным средним называется байесовским средним, Из приведенных выше формул легко увидеть, что на самом деле это один из самых распространенных методов сглаживания - числитель и знаменатель добавляются с константой. особая форма.

Используйте предыдущую программу извлечения слов, чтобы каждый день извлекать слова, содержащиеся в пользовательском статусе Renren, сравнивать их частоту с частотами предыдущего дня, а затем использовать метод только что, чтобы сгладить их, чтобы получить горячие слова каждого дня. . Данные в моей руке - это данные Ренрена за первую половину декабря 2011 года, поэтому я могу получить горячие слова со 2 по 15 декабря (выберите 5 лучших за день, согласно оценке от высокого к низкому).

02.12.2011: Первый снег, Пекин, Цзиньюй, выходные, Синьцзян
03.12.2011: Нидерланды, Португалия, Группа смерти, Кубок Европы, Германия
04.12.2011: те годы, огласка, окончание срока, бойфренд, поднятие флага
05.12.2011: Класс, Учитель, Видение, Физическое воспитание, Качество
06.12.2011: Джоэл, вторник, фотография, экономика, музыка
07.12.2011: Чен Чао, Starbucks, Отлично, Детская обувь, Голосование
08.12.2011: «Манчестер Юнайтед», «Манчестер Сити», Лига Европы, «Реал Мадрид», замерзнуть насмерть
09.12.2011: Пол, полное лунное затмение, торговля, Ракеты, Шершни
2011-12-10: Трансформация, Рой, Кроссовер, Реал Мадрид, Барселона
2011-12-11: "Реал", "Барселона", Кака, Месси, второй тайм
2011-12-12: Таобао, Анелька, Дабл Двенадцать, Шэньхуа, Учитель
13.12.2011: Нанкин, Нанкинская резня, Не забывайте о национальном унижении, Тишина, Тревога
14.12.2011: Метеоритный дождь, желание, желание, День святого Валентина, несколько
15.12.2011: Клипперс, Пол, Барселона, прошлой ночью, Longmen Flying A

Похоже, что 14 декабря действительно был метеоритный дождь.

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

Фактически, с помощью вышеперечисленных инструментов мы можем произвольно сравнивать характеристики слов в двух разных текстах. Что более интересно, так это то, что большинство пост-постеров статуса Ренрена заполнили свою личную информацию о поле и возрасте.Почему бы нам не разделить статус на две группы, мужчины и женщины, или после 80-х и после- 90-е, и откапывать разные атрибуты.Что люди любят говорить? Помните, что в прошлом для ответа на такие вопросы требовались крупномасштабные лингвистические опросы! Однако, благодаря поддержке огромного количества пользовательского контента в Интернете, мы можем легко найти ответ.

Я действительно сделал эту работу (на основе данных за другую дату). Любимые слова мужчин:

Братья, Баскетбол, Мужской баскетбол, Милан, Манчестер Юнайтед, Футбол, Яичная боль, Реал Мадрид, Соревнование, Национальный футбол, Суперкубок, Болельщики, Китай, Жена, Правительство, Авианосец, Футбол, Сезон, Фондовый рынок, Разбивающее яйцо, Ниуби , Министерство путей сообщения, невестка, международная, США, полоса неудач, Warcraft, Снейдер, Красный Крест, экономика, коррупция, процедура, Го Мэймэй, герой, демократия, птичье гнездо, Миланское дерби, чиновники, коннотация, история , обучение, рейтинг, финансы, виды спорта, Репортер, Несчастный случай, Программист, СМИ, Инвестиции, События, Общество, Проект, Ибрагимович, Доктрина, Заключительный, Блядь, Нани, Лидерство, Питье, Этническая принадлежность, Новости, Речь, Гармония, Фермер, Система , Городское управление...

Вот слова, которые любят говорить женщины:

играть вместе, торт, добавить друзей, муж, ву, сестра, хи хи, тигр, ненавидеть, мама, ву ву, ла-ла-ла, дешево, похудеть, бойфренд, мама, шопинг, неограниченно, красивый парень, подарок, друг друга , чай с молоком, обида, разные, высокие каблуки, ногти, городской охотник, лучший друг, шоколад, секунда, папа, домашнее животное, коробка, рык, шмель, лев, боль в животе, роза, сумка, юбка, игра, встреча, эй, Хуэй Чан, Глаза, Все, Мамочка, Макияж, Розы, Смурфики, Счастье, Поиграй со мной, Миссии, Обида, Нежелание, Страх, Собаки, Слезы, Тепло, Маска, Коллекция, Ли Мин Хо, Нервы, Картошка, Закуски, Прыщи , Кольца, Рак, Дубление…

Вот слова, которые любят использовать пользователи после 90-х:

Добавить друзей, домашнее задание, разное, добро, торт, визит, корыто, уведомление, маджонг, вечеринка, уроки макияжа, радость, обновление экрана, допуск, неограниченное количество, друг друга, скорость, играем вместе, ла-ла-ла, спокойной ночи, попросить компанию, база друг, красотка, гном масло, рак, Первомай, секунда, пение, тигр, пряжка, тут, красавец, хахаха, нима, дешево, тяжело, снейп, домашка, труд, детская бумага, ой, аарон ян, Коробка, Скучно, Пригласить в гости, Проверить балл, Класс, Решающий, Девственница, Премьера, Блок, Мудак, Летние каникулы, Напуган до смерти, Новый восточный, Объединиться, Следующий семестр, Поиграй со мной, Гром, Сестра Бумага, Водолей , Стрелец, Помолвка, Тукао, Воссоединение класса, Тусовка, Вуху, Овен, Признание, Домашнее задание, Подпись, Сестра, Время простоя, Волдеморт, Объект, Ха-ха, Домашняя страница, Пара, Без стресса, Вместе, Козерог, Разбитое чувство, опухшее что делать делать...

Ниже приведены слова, которые любят использовать пользователи после 80-х:

Сверхурочные, обучение, выходные, работа, компания, все, дежурство, разбивание яиц, выход на работу, задачи, государственные служащие, зарплата, лидерство, сумки, офис, школа, Го Мэймэй, мода, предприятие, фондовый рынок, новый номер, Великобритания, частый контакт, лаборатория, бумага, занят, проект, отдел, благословение, приглашение, рекрутинг, гладкий, друг, красный крест, бойфренд, СМИ, продукт, стандарт, номер, экономия денег, джинсы, Манчестер Юнайтед, правительство, простой, начало осени, авария, Бирмингем, кандидат наук, Отставка, Здоровье, Продажи, Шэньчжэнь, Чай с молоком, Переезд, Эксперимент, Инвестиции, С праздником, Настойчивость, Правила, Тест, Жизнь, Система, Клиенты, Заработная плата, Выдумка, Предложение , образование, обращение, выгода, общение, групповая покупка, отсутствие, коррупция, отъезд, красный крест, брак, управление, окружающая среда, спад, обслуживание, трансформеры, благословение, банк…

Мало того, многие штаты также несут информацию о географическом местоположении, поэтому мы можем наблюдать за информацией из измерения пространства. Что люди в этом месте любят говорить? Где люди, которые любят произносить это слово? С помощью этой информации о регистрации, включая географическое положение, мы также можем получить много интересных результатов. Например, извлеките слова из информации о регистрации пользователей в Пекине, а затем для каждого извлеченного слова отфильтруйте всю информацию о регистрации, содержащую это слово, и сгруппируйте их в соответствии с расположением географических координат, чтобы мы могли выясните те, у кого наиболее концентрированное географическое распространение слово. Результаты очень интересны: слово «экзамен» сконцентрировано в студенческих районах Хайдянь, слово «Тяньцзинь» сконцентрировано в районе Южного железнодорожного вокзала Пекина, а слово «шопинг» сконцентрировано вокруг Сиданя. Пекинский столичный международный аэропорт также является особенным местом, где очень плотно встречаются такие слова, как «Пекин», «посадка», «наконец-то» и «до свидания».

С национальной точки зрения, люди в разных регионах также имеют очевидные различия в терминах. Мы можем разделить национальную карту на сетки и подсчитать частоту появления всей информации о регистрации в каждой ячейке как стандартное распределение, а затем для каждого извлеченного слова подсчитать информацию о регистрации, содержащую слово в каждой ячейке. сравнивается со стандартным распределением (можно использовать такие формулы, как косинусное расстояние), чтобы найти слова с наиболее ненормальным распределением. После запуска программы обнаруживается, что таких слов довольно много. Для некоторых слов с явными северно-южными различиями распределение будет далеко от всего фона. Например, в праздники слово «лыжи» появляется в основном на севере, а слово «альпинизм» — на юге. Местные особенности также являются основной причиной различий в распространении слов: например, слово «саньлитунь» встречается почти только в Пекине, слово «лапша реган» появляется в основном в районе Уханя, а слово «метро» очевидно, только в отдельных городах. Этот аутентичный местный характер, отраженный в формулировках местных жителей, вполне может быть той информацией, о которой многие любители путешествий могут только мечтать. Кроме того, диалекты также приводят к различиям в распространении слов, например, «Жа Со» в основном распространено в северных районах, «Я не понимаю» в основном распространено в южных городах, а «Фай» очень сконцентрировано в Шанхай. Когда масштаб данных станет достаточно большим, возможно, мы сможем автоматически разделить диалектные области Китая с помощью вычислительных методов.

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