SEO Python 2 Нейрона
1.54K subscribers
86 photos
4 videos
1 file
45 links
Простым языком про нейросети, python и про то, как это применять в SEO. Блог Владислава Папернюка
Download Telegram
👋 Добро пожаловать на канал, где SEO – это не бубен, а технология!

Меня зовут Влад Папернюк, я SEOшник с 2008 года. Когда-то я, как и многие, верил в чудо-инструменты и лайфхаки, покупал курсы, ловил инсайты в кулуарах конференций и падал ниц перед очередным SEO-гуру в надежде прикоснуться к священному граалю знаний.

Но в какой-то момент мне всё это надоело! 😤 Надоело так, что я решил сам во всем разобраться. Изучил Python, ML, получил специальность разработчика нейросетей и чем больше погружался в технологии, тем яснее складывался паззл.

Что будет на канале?
🔍 Объясню, как работают нейросети в поиске у Яндекса и Google, и как SEO-оптимизатору использовать эти знания.
🛠 Бесплатные инструменты на основе нейросетей и Python.
📊 Тесты, исследования и много прикладного материала.
📝 Python-скрипты, которые облегчат твою работу и увеличат эффективность в разы.

Чего не будет на канале?
🚫 Инструкций по составлению SEO-промптов. Ну камон, сколько можно!
🚫 Скриншотов из ТОПвизора с призывами вступить в платный клуб.
🚫 Разжевывания азов. Хотите базу? Обратитесь к Артуру Латыпову или Андрею Буйлову.

Обещаю не флудить и не умничать. Объясняю на пальцах с примерами. 🙌 Подписывайся, запинивай канал повыше – будет много интересного и полезного!

Бонус! 🎁
@vector_keywords_bot – лови бот, который находит LSI семантически близкие слова (униграммы и биграммы), чтобы повысить релевантность документа. 📈
👍72
SEO Python 2 Нейрона pinned «👋 Добро пожаловать на канал, где SEO – это не бубен, а технология! Меня зовут Влад Папернюк, я SEOшник с 2008 года. Когда-то я, как и многие, верил в чудо-инструменты и лайфхаки, покупал курсы, ловил инсайты в кулуарах конференций и падал ниц перед очередным…»
All we need is love Attention!

С чего начать первый пост в телеграм блоге? Конечно же с такой вечной темы как любовь! 💕 А как говорит моя жена, любовь – это ласка забота и Внимание.

В 2017 году вышла фундаментальная работа «Attention is all you need», (внимание – это всё что вам нужно) в которой впервые описывалась архитектура генеративной нейросети - Трансформера. Эта статья совершила настоящую революцию, благодаря которой у нас появились горячо любимые ChatGPT, Midjourney, Bert, YATI и прочие вкусности!

Так, что же такое нейросеть Трансформер, и зачем это SEO оптимизатору?

В фундаменте SEO лежит как ни странно :-) текстовая оптимизация, накрутка ПФ почти не работает, жирные дропы скоро догонят по стоимости подержанные авто, а вот хорошая текстовая оптимизация работала и будет работать всегда.

Поэтому устраивайся поудобнее, подписывайся на канал, запасайся ноотропами 💊 попкорном и добро пожаловать в дивный новый мир, про который я постараюсь тебе рассказать предельно просто, что называется, на примерах и на пальцах!
2👏1
Эмбеддинги: от ностальгии к сингулярности 🚀

Я до сих пор помню, тот день, когда впервые услышал про векторы в n-мерном пространстве, катбуст, деревья решений из уст Великого и Ужасного. В тот момент во мне, что-то перещелкнуло, в голове заиграла музыка из Интерстеллара, я оглянулся вокруг и увидел такие же одухотворенно восторженные глаза, в которых читались вера, восхищение и … полное непонимание, происходящего. А светлоликий Гуру светящийся тайным знанием, что-то вещал со снисходительной улыбкой, но это уже не имело никакого значения, ведь он пообещал нам чудо, просто чудо, Just Magic )

На этой ностальгической ноте можно было бы и закончить :-), но я же обещал вам объяснить Интерстеллар на пальцах? Поехали!

Когда компьютер видит слово "кот", он не понимает его как пушистого разбойника, который сбрасывает вещи со стола и будит вас в 5 утра. Вместо этого он видит набор чисел, например [0.24, -0.13, 0.77], — так машина кодирует значение слова. Например, нейросеть Яндекса кодирует каждое слово в виде матрицы (столбца) размерностью [1, 256]

Ок, давай ещё упростим, пусть слово “кот” представлено в виде двумерной матрицы [0.24, 0.77], “кошка” [0.28, 0.72], “барсик” [0.34, 0.58], а к примеру слово “инжектор” [-0.44, 0.21].

А, что если [0.24, 0.77] – это вектор, начало которого находится в нуле, а конец в точке с координатами Х и Y [0.24, 0.77]? Если отложить все вектора, мы обнаружим интересную особенность, “кот”, “кошка” и “барсик” направленны примерно в одну сторону, а “инжектор” в другую.

Так, что, получается, мы можем взять все слова из текстов (сниппетов, сайтов в ТОПе, Википедии, GPTChat из головы копирайтера) прогнать их через эмбеддинг слой и найти слова близкие по смыслу?


Да именно так!

Стоп, а не про LSI ли речь? Нет, LSI – использует метод сингулярного разложения. Здесь речь идет именно про семантическую близость векторов и ВАЖНО! Эти векторы мы можем вытащить напрямую из BERT. Не из какого-то там доморощенного сервиса, а реально напрямую из языковой модели Яндекса, Google и тому подобных ресурсов.

Подведем итоги: Эмбеддинги – это базис на котором строятся все современные языковые модели, каждое слово Яндекс кодирует в виде матрицы [1, 256] с цифрами, которые можно представить в виде векторов, направленных в определенную точку пространства. И да, можно найти семантически близкие слова!

Ну и красивое любителям сингулярности ) https://youtu.be/8kooIgKESYE?feature=shared
🔥2
Кот Барсик знает, что Инжектор не любит сметану, но любит БЕНЗИИН! https://youtu.be/z0wK6s-6cbo?feature=shared
1
Ещё раз про Эмбеддинги но уже без лирики и ностальгии 😊

Поисковые системы, а так же большие языковые модели, например ChatGPT работают с цифрами, что логично. Соответственно первое, что нужно сделать получив текст на вход – оцифровать его. Процесс оцифровки называется токенизация. На следующем шаге каждый токен(слово) переводится в матрицу определенной размерности. Так в Яндексе это матрица [1, 256], в моделях Сбера [1,768], а у модели ada-002 ChatGPT - [1,1536]

Провалилось? Идём дальше!
Вспомним курс школьной математики за 8 класс. Каждый вектор в пространстве X и Y можно разложить на 2 координаты, в 3-х мерном пространстве уже на 3 координаты, а в 768 мерном пространстве на матрицу [1,768].
Диапазон изменений каждой координаты от -1 до 1. Вот так на языке цифр выглядит слово окно. В силу ограничений я не стал писать все 256 значений.
[ 0.03356934 -0.02557373 -0.12902832 0.01093292 0.05551147 … -0.02572632]

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

Сама идея повышения релевантности за счет семантически близких слов не нова, она уже используется в ряде сервисов, например Акварель-генератор, Seolemma или ГАР, разница в подходе и в технологиях.


Как вы считаете, что является более достоверным подходом, вытаскивать эти слова напрямую из BERT или довериться разработчикам сервисов?
👍3👏1
Вот так нейросеть видит слово "окно"
🔥2👌1
Косинусная близость, как мера сравнения релевантности + инструмент поиграться!

Степень близости векторов можно оценить на глаз в 256 мерном пространстве по формуле, приводить её нет смысла, кому интересно https://clck.ru/3AihMV вот ссылка на Википедию

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

Как интерпретировать результаты?
Приведу несколько цифр из школьной математики cos(0) = 1, cos(90) = 0, все, что посередине лежит в диапазоне от 0..1
Сначала предлагаю сократить название “косинусная близость” до CS( ‘’word1,’word2’ ).

Приведу 2 примера:
CS( ‘пластиковые окна’, ‘ПВХ окна’ ) = 0,93
CS( ‘пластиковые окна’, ‘балет лебединое озеро’ ) = 0,30
Какие значения являются пороговыми? ХЗ, честно говоря, исходя из SEOшного опыта я бы сделал 3 уровня
1 – 0.7 – высокая релевантность
0.5 – 0.69 – средняя релевантность
0 – 0.49 – низкая релевантность

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

PS @words_comparison_bot позволяет сравнивать не только отдельные слова но и целые тексты. Так например можно сравнивать ключ и текст.
🔥1
Пример работы бота по сравнению 2-х ключей. cs ('кот барсик', 'инжекторный двигатель' = 0,25)
1