×

Как поисковые системы нас понимают. Основы текстового анализа

Россия +7 (495) 139-20-33
Шрифт:
2 3595
Подпишитесь на нас в Telegram

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

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

Основы текстового анализа

Казалось, прежде чем Google представил RankBrain, а Яндекс – Королев, SEO-продвижение и жизнь SEO-специалистов были намного проще. Теперь мы подвержены потоку противоречивой информации от влиятельных лиц отрасли. Ситуация усугубляется тем, что представители Яндекса и Google дают малопонятную информацию о качественных сигналах и в голос твердят одно и то же: «Делайте сайты для людей».

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

Слово для поисковой системы

Слово – это самая маленькая смысловая единица речи, которая служит для выражения отдельного понятия. Для начала выясним, как слова представлены в компьютерных программах, и выявим сильные и слабые стороны данных подходов.

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

«Программы программиста были запрограммированы».

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

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

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

Программы программиста были запрограммированы.

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

Программа программиста должна быть программной.

Поисковые системы используют стоп-слова для предварительной обработки вводимых запросов. Список стоп-слов – это набор символов, которые удаляются из текста. Стоп-слова могут включать функциональные слова и знаки препинания. Функциональные слова – это слова, которые не имеют самостоятельного значения, например, вспомогательные глаголы или местоимения.

программист программа программа

Для примера попробуем отбросить функциональные слова из предложения. В результате исходное высказывание содержит только содержательные слова (слова, имеющие смысловое значение). Однако сложно сказать, как программа в запросе связана с программистом.

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

программа программа программа

Теперь посмотрим на преобразованный запрос при замене всех слов на их леммы.

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

Существует три способа представления слов:

  • символ;
  • лемма;
  • корень.

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

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

Основы текстового анализа

Что нужно знать SEO-специалисту

  • Важно понимать, зачем необходимо разбивать предложения на лингвистические составляющие. Эти единицы являются частью метрики, которую знают и используют оптимизаторы. Они составляют такой показатель, как плотность ключевых слов. Хотя многие SEO-оптимизаторы выступают против этого показателя и утверждают, что плотность ключевых слов ни на что не влияет. В качестве альтернативы они предлагают использовать показатель TF-IDF, поскольку он связан с семантическим поиском. Далее мы увидим, что как необработанные, так и взвешенные количества слов могут использоваться и для лексического и для семантического поисков.
  • Плотность ключевых слов – это удобная и простая метрика, которая имеет право на существование. Однако не стоит зацикливаться на ней.
  • Также имейте ввиду, что грамматические формы рассматриваются поисковыми системами как один и тот же тип слова, поэтому не имеет смысла оптимизировать веб-страницу, например, для единственного и множественного числа одного ключевого слова.

Аудит архитектуры и тесктовой оптимизации

Мешок слов

Мешок слов

Мешок слов (bag-of-words) – это модель, которая используется при обработке естественного языка для представления текста (от поискового запроса до полномасштабной книги). Хотя эта концепция восходит к 1950-м годам, она все еще используется для классификации текста и поиска информации.

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

В результате теряется вся информация о текстовой структуре, синтаксисе и грамматике текста.

программы программиста были запрограммированы
{: 1, программист: 1, s: 1, программы: 1, имели: 1, были: 1, запрограммированы: 1} или
[1, 1, 1, 1, 1, 1, 1]
programmer program program
{программист: 1, программа: 2} или
[1, 2]

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

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

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

Как вам это понравится

Двенадцатая ночь, или Что угодно

Юлий Цезарь

Генрих V

Битва

1

0

7

13

Отличный

114

80

62

89

Дурачить

36

58

1

4

Остроумие

20

15

2

3

Как мы уже говорили ранее, мешок слов на самом деле является вектором. Преимущество векторов в том, что мы можем измерить расстояние или угол между ними. Чем меньше расстояние или угол – тем больше «похожих» векторов и документов, которым они соответствуют. Это осуществляется с помощью показателя косинусного сходства. Результат варьируется от 0 до 1. Чем выше значение, тем больше похожих документов.

Формула

Поиск соответствующего документа

Допустим, пользователь вводит запрос «битва при Азенкуре». Это небольшой документ, который может быть встроен в векторное пространство, как в примере выше. Соответствующий вектор равен [1, 0, 0, 0]. «Отличный», «дурачить» и «остроумие» имеют нулевое число. Затем мы можем вычислить сходство поискового запроса с каждым документом в списке. Результаты приведены в таблице ниже. Видно, что Генрих V лучше всего соответствует запросу. Это неудивительно, поскольку слово «битва» встречается в этом тексте чаще. Этот документ можно считать более релевантным запросу. Также совсем необязательно, чтобы все слова в поисковом запросе присутствовали в тексте.

Пьеса

Сходство

Как вам это понравится

0,008249825

Двенадцатая ночь, или Что угодно

0

Юлий Цезарь

0.11211846

Генрих V

0,144310885

У такого подхода есть несколько очевидных недостатков:

1. Уязвимый показатель плотности ключевых слов. Можно существенно повысить релевантность документа поисковому запросу, просто повторяя требуемое слово столько раз, сколько необходимо, чтобы превзойти конкурирующие документы в коллекции. Именно так работали поисковые системы на старте, в конце 1990-х. Достаточно было перенасытить текст ключевыми словами и первое место в выдаче гарантированно.

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

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

Оригинал

Друзья, теперь вы можете поддержать SEOnews https://pay.cloudtips.ru/p/8828f772
Ваши донаты помогут нам развивать издание и дальше радовать вас полезным контентом.

Есть о чем рассказать? Тогда присылайте свои материалы в редакцию.


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • SEOquick
    38
    комментариев
    0
    читателей
    SEOquick
    больше года назад
    С распространением Интернета количество информации, в том числе текстовой информации, стало расти чрезвычайно быстро. Стремительное развитие современного общества и компьютерных технологий требует постоянного совершенствования методов обработки информации.
    В настоящее время выделяют следующие основные направления компьютерной лингвистики: информационный поиск, извлечение информации, машинный перевод, автореферирование, корпусная лингвистика, построение экспертных и вопросно-ответных си...
    С распространением Интернета количество информации, в том числе текстовой информации, стало расти чрезвычайно быстро. Стремительное развитие современного общества и компьютерных технологий требует постоянного совершенствования методов обработки информации.
    В настоящее время выделяют следующие основные направления компьютерной лингвистики: информационный поиск, извлечение информации, машинный перевод, автореферирование, корпусная лингвистика, построение экспертных и вопросно-ответных систем, создание тезаурусов и онтологий и некоторые другие. Выделяют следующие компоненты систем обработки текстов. Основные этапы построения систем автоматической обработки текстов:
    1) графематический анализ (осуществляется на уровне символов);
    2) морфологический анализ (осуществляется на уровне слов);
    3) фрагментационный анализ (осуществляется на уровне фраз, частей предложения);
    4) синтаксический анализ (осуществляется на уровне предложений);
    5) семантический анализ (осуществляется на уровне текста).
    В остальном читать было интересно, спасибо за хорошо читаемую статью.
    -
    1
    +
    Ответить
    • Гость
      1
      комментарий
      0
      читателей
      Гость
      SEOquick
      больше года назад
      Для своих клиентов такие же говнотексты пишите?
      -
      0
      +
      Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Примеры использования ChatGPT в SEO-стратегии
Гость
1
комментарий
0
читателей
Полный профиль
Гость - Если кто то хочет протестировать Cat GPT в SЕО проектах на базе нашего агенства, приглашаем наудалкнную работу Tg: @thegoodlink
Почему сайтам нужно переезжать с конструкторов на полноценные CMS
Анна
1
комментарий
0
читателей
Полный профиль
Анна - Ха, занятно. А я еще видела полезное описание тут digitalproweb.ru/sozdanie-sajtov-vybrat-konstruktory-ili-cms
Как мы увеличили для клиента трафик из поиска в 7 раз. Кейс
Кирилл Половников
2
комментария
0
читателей
Полный профиль
Кирилл Половников - Оба этих статуса (редирект и малополезная) преобладали в качестве проблем с индексацией. Помогла работа с .htaccess (в нем были ошибки и его чистили), работа над корректировкой редиректов, каноникалами и прочими техническими ошибками. Нельзя сказать, что только редиректы были ключевым препятствием.
Как показывать рекламу посетителям сайтов конкурентов
Павел
2
комментария
0
читателей
Полный профиль
Павел - Спасибо за комментарий. Гипотеза была в том, что с указанными счетчиками конкурентов показы будут не просто похожей аудитории их сайтов (как при рекламе по доменам), а именно на аудиторию которую Яндекс для себя разметил как целевая дл сайтов конкурентов. Важно, это гипотеза. А про белые нитки, как говорится, доверяй, но проверяй))
Чек-лист: как настроить рекламу в Яндекс Директе и избежать ошибок
Сергей Ильин
2
комментария
0
читателей
Полный профиль
Сергей Ильин - я ваще не туда написал
Как в перегретой нише получать заявки и добиться конверсии в 19%
ZRZ8GCHIZ6 www.yandex.ru
1
комментарий
0
читателей
Полный профиль
ZRZ8GCHIZ6 www.yandex.ru - ZRZ8GCHIZ6 www.yandex.ru
Как дожать сайт до ТОПа? Выжимаем весь сок из SEO под Яндекс и Google
Фанит
2
комментария
0
читателей
Полный профиль
Фанит - Спасибо автору за статью, полезно! По поводу сниппета сайта, для увеличения CTR можно дополнительно внедрить основные схемы микроразметки и улучшить его, чтобы выделялся на фоне конкурентов, особенно заметно в Google.
В поисках истины: разбираем 7 мифов о Telegram Ads
Konstantin Bulgakov
12
комментариев
0
читателей
Полный профиль
Konstantin Bulgakov - Жаль, про аналитику кампании ничего не сказано. А там всё очень непросто)
Можно ли продвигать сайт спонсорскими ссылками: разбор кейса
Александр
1
комментарий
0
читателей
Полный профиль
Александр - Хм.... ооочень сомнительный результат. За 10 000 в месяц получить 1 запрос в топ10, да ещё и в google, который на ссылки всегда лучше Яндекса реагировал - такое себе.... При этом достаточно странно были отобраны запросы с местами за ТОП50. Ведь давно известно же, что ссылки так быстро не сработают, к тому же за такое короткое время максимально, на что можно рассчитывать - это небольшое повышение средней. Поэтому тут логично было бы подобрать запросы, либо те, которые находятся близко к ТОП10, например на 11-15 местах, и посмотреть на их динамику. Либо на запросы, которые уже в топ10 находятся (5-10 места). Ведь после отключения контекста CTR в google кратно вырос и, например, разница 1 и 2-х местах отличается почти в два раза! Поэтому, если бы ссылки сработали на рост позиций с 5-10 мест, на 1-4 - это был бы кратный толк как в росте трафика, так и с точки зрения отдачи от вложений. Тем более как раз подвижки в 2-3 позиции уже дали бы ощутимый результат (если это, конечно не НЧ и микроНЧ запросы).... Так что считаю, эксперимент изначально был провальным уже на этапе отбора запросов.
Как продвигать интернет-магазин в поисковой выдаче, если она забита маркетплейсами
Олег
1
комментарий
0
читателей
Полный профиль
Олег - Так как все-таки продвигать?)
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
385
Комментариев
373
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
141
Комментариев
121
Комментариев
117
Комментариев
100
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
77
Комментариев
74
Комментариев
67
Комментариев
64
Комментариев
60
Комментариев
59

Отправьте отзыв!
Отправьте отзыв!