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

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

Ок, подумал я, введем немного хаоса, добавим dropout слоев - функция выключающая ряд нейронов в процессе обучения и помогающая побороть переобучение модели. Пики стали больше, но они перестали совпадать:-))

Ты упоминал Тинькофф, скажет вы. Да я раскатал модель от них, результат примерно тот же.

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

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

Как вы думаете почему? Да потому, что результат получился самым провальным! 🙈🤣Именно по этому никто так не делает!

К чему это я?
Ребят, хотите торговать криптой? Купите себе несколько ботов, которые торгуют с разными стратегиями и верьте в чудо ))

PS Ну и графиков вам вдогонку, оно там красивое местами ))
😁5👍2
Что общего между теорией большого взрыва 🎆 и нейросетями?

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

Нейроны или, говоря научно, функции активации, неким образом объединенные в сеть (архитектура) передают друг другу сигнал (цифру) с определенным весовым коэффициентом. Говоря проще, получили на вход 5, умножили на (-0,567), получили на выходе -2.835 и передали сигнал другому нейрону.

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

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

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

К чему весь этот разговор? Дело в том, что в любой нейросети заложена случайность, если бы ее не было, мы бы ушли в переобучение, но тогда мы с вами не могли бы ничему научиться, поскольку обучение - по факту цепь проб ошибок и получение обратной связи (механизм back propagation). Добавьте сюда многорукого бандита, регулярный пересчет эмбеддингов большими языковыми моделями и теперь расскажите мне про повторяемость результатов в seo, а я послушаю 😅
👏1
Ты совсем не уделяешь мне внимания!!!

Начинаю серию публикаций объясняющую суть краеугольного камня архитектуры трансформеров - механизма внимания (attention).

Коротко суть идеи

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

Причем тут SEO?

Если объяснять на пальцах - слова в предложении сами находят степень взаимосвязи друг с другом. Как они это делают? С помощью наших любимых эмбеддингов!

Пример на уровне слов в предложении

Представьте, что у нас есть предложение: “Машина быстро едет по дороге”. Мы хотим понять, какое слово в предложении наиболее важно для слова “едет”. В контексте механизма внимания, мы смотрим на все слова и вычисляем, насколько они важны для “едет”.

Как это работает?

1. Вычисление значимости (Attention Scores):
Для каждого слова в предложении мы вычисляем оценку значимости по отношению к текущему слову (например, “едет”). Это делается через умножение векторов, представляющих слова, и применение некоторых функций (например, softmax).
• Допустим , оценка значимости для слова “Машина” по отношению к “едет” может быть 0.2, для “быстро” - 0.7, для “по” - 0.05, и для “дороге” - 0.05.

2. Взвешивание слов:
Эти оценки значимости используются для взвешивания всех слов. То есть мы умножаем каждое слово на его оценку значимости.
• “Машина” * 0.2
• “быстро” * 0.7
• “по” * 0.05
• “дороге” * 0.05

3. Создание нового представления (Context Vector):
Все взвешенные слова суммируются, чтобы создать новый вектор представления для текущего слова (“едет”). Это новое представление лучше учитывает контекст, так как включает информацию о том, какие слова были наиболее значимыми.
• Новый вектор для “едет” будет в основном состоять из “быстро”, так как это слово имеет наибольшую значимость.

А теперь давайте немного изменим предложение, пусть будет: Эммануэль Макрон в машине быстро едет по дороге.

Какой теперь должен быть context vector? Видите, как всего два слова напрочь сломали весь контекст? О чем он теперь, про машину или про политику?

Заключение

Я думаю, теперь понятно, почему у одних копирайтеров тексты стреляют, а у других нет? Как сделать так, чтобы и ваши тексты стреляли? Ну как минимум уберите мусор и добавьте полезных слов.

Мои бесплатные боты вам в помощь!
@vector_keywords_bot – поиск n-грамм по ключу.
@vector_text_bot – на вход ключ и текст, на выходе размеченный по сходству текст.
👍5🔥3
Что лучше для SEO? Chat GPT, GigaChat или может Google Gemini?

Запускаю исследование 4-х, ну очень популярных языковых моделей на предмет того, насколько они SEO френдли.

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

SEOшник? Мне нужна твоя помощь, тапни тут и проголосуй за лучшую модель!

PS для любителей подробностей ссылка на файл с которого делались сриншоты
SEO Python 2 Нейрона pinned «Что лучше для SEO? Chat GPT, GigaChat или может Google Gemini? Запускаю исследование 4-х, ну очень популярных языковых моделей на предмет того, насколько они SEO френдли. Суть методики всё та же, эмбеддинги, поиск близких слов по алгоритму косинусной схожести…»
Channel name was changed to «Python, SEO, 2 Нейрона»
Подкапотная часть эксперимента, закинул очередную пачку на проверку 😀
👍3🤯1
Внимание! Всем кто юзает моих бесплатных ботов!

Если бот не реагирует – он не сломался, и мы не забили на него, потому, что он бесплатный. Всё работает!

Завис бот – просто ребутни его командой /start либо сделай старт/рестарт бота через меню!
👍5🕊1
Дисклеймер от гуглоида Гэри Ийеша:
"На основе своих данных обучения LLM находят наиболее подходящие слова, фразы и предложения, которые соответствуют контексту и значению подсказки. Это позволяет им генерировать релевантные и связные ответы. Но не обязательно фактически правильные. ВАМ, пользователю этих LLM, все равно нужно проверять ответы на основе того, что вы знаете о теме, о которой вы спросили LLM, или на основе дополнительного чтения на ресурсах, которые являются авторитетными для вашего запроса."

Стянул с канала Сергея Людкевича, оригинальный текст и интерпретация у него же. Добавлю свои 5 копеек. Гэри Ийеш говорит, что LLM (которая кстати зашита под капотом поиска Гула) использует наиболее подходящие слова и фразы для понимания контекста и формирования ответа. А как их найти? Да это именно то, о чем я регулярно и популярно рассказываю на своем канале! В очередной раз приятно осознавать, что не зря я это все затеял 😎. Ну и вторая часть посыла Гэри 🐌 в моей уже интерпретации : ребят, 🧠 - главное оружие SEOшника!
Подготовил домашние задания для своего курса, Python SEO нейросети

Смотрю и любуюсь, какая вкуснятина!

22 урока, 3 уровня, Hard – просто мясо! 🥩

Интересно? 😉
🔥29👎2😁2👍1🤔1🤮1
Магия трансформеров 🧚‍♀️, легкое воскресное чтиво

Я долго думал как мне проще всего объяснить архитектуру трансформеров, и вот наконец докрутил!

Классическая модель Т5 изначально появилась в Google и использовалась для машинного перевода. Дело в том, что одна и та же фраза на разных языках может быть написана совершенно разными словами, например:

Идет дождь - It rains

Мы же не говорим “a rain goes”. Именно по этому нужна была технология, которая вытаскивала бы смыслы из входящей фразы, а потом распаковывала эти смыслы, но уже другими словами на другом языке.

Получается вот такая схема

Текст на входе -> Смыслы -> Текст на выходе

Или

Текст на входе -> Энкодер (сжимает) -> Декодер (распаковывает) -> Текст на выходе

Или

Текст на входе -> Энкодер Bert(анализ) -> Декодер GPT(промпт)-> Текст на выходе

Очень грубо: Bert сжимает стихотворение до одной строчки, а GPT распаковывает эту строчку в другое стихотворение.

Т5 (трансформер) = Bert + GPT

Хмм, подумали инженеры Google, а если Bert так хорошо определяет смыслы, не сунуть ли нам его под капот нашего поисковика?

Хмм, подумали инженеры Яндекса, Гуглоиды вовсю юзают трансформеры, а мы все на паровой телеге (catboost) едем, и, внедрили свой Yati.

Кэп, а где тут SEO? Ты скажи с каким DR нам ссылки покупать лучше? Не ниже 45! Шутка 🤪

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

Но, как и обещал, промптов от меня не ждите, сами догадаетесь вы же умные, глупые меня наврядли читают 😉
😁8👍31🔥1😱1
Я слежу за тобой! 😎

Решил опубликовать ряд каналов, которые читаю. Критерий - либо интересен сам контент и автор, либо вижу взрывной рост, попсу, типа Гребенюка добавлять не буду)

1. Несравненная Татьяна Шаврина: евангелист нейросетей, инопланетянка и человек заразивший меня любовью к трансформерам! Честно признаюсь, сам частенько ни хрена не понимаю о чем она пишет))

2. Интернет маркетолог N:1 мой наставник в недалеком прошлом, крайне интересный, многогранный и очень крутой по человеческим качествам Антон Петроченков.

3. Руслан Гамзатов - выскочил как черт из табакерки и начал подсаживать на ИИ все СНГ пространство. Чел двигается с какой-то нереальной скоростью!

4. Сергей Погодаев - человек неуемной энергии с феноменальным чутьем на новые ниши. Отгружает тонны трафика с vc.ru и других новостных площадок. Растет как на дрожжах, читаю его канал с белой завистью!)

5. Уютный SEO чатик Андрея Джилавдарова, где можно поныть поржать и поумничать ))
1
Нашел своё Alter ego в буржнете 🤓

Знакомьтесь, Ваган Петросян – директор по технологиям Search Engines Journal

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

Introduction To LLMs Text Embeddings For SEO With Examples. Вводная информация по векторным представлениям текстов для SEO с примерами

Find Keyword Cannibalization Using OpenAI’s Text Embeddings With Examples. Как найти каннибализацию ключей используя эмбединги OpenAI

Чуть позже выложу перевод и свою интерпретацию 2-й статьи
😁4👍1
Ещё один клёвый способ использования ChatGpt для программинга

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

Но! Вчера меня осенило!

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

Короче, кидаю скрипт в ChatGpt и говорю, напиши мне подробные комментарии к коду, и он их пишет в лучшем виде!

Теперь мой код выглядит красивым и правильным, а волосы стали более густыми и шелковистыми 🤓
🤡43🤯2
Крутить или не крутить? Вот в чем вопрос! ПФ и YATI – или почему Яндекс так чувствителен к накрутке?

Разработчики Яндекса в своей эпохальной статье и не менее интересном видео раскрывают суть нейросети YATI, вклад которой в ранжирование, согласно их же доклада уже на момент внедрения составлял более 50%.

Что такое YATI? Очень грубо, это BERT (модель трансформер) плюс простая (feed-forward) нейросеть, задача которой предугадывать был ли клик по фразе.

Приведу цитату:
Как и BERT, модель сначала учится свойствам языка, решая задачу MLM (Masked Language Model), но делает это сразу на текстах, характерных для задачи ранжирования. Уже на этом этапе вход модели состоит из запроса и документа, и мы с самого начала обучаем модель предсказывать ещё и вероятность клика на документ по запросу. Удивительно, но тот же самый таргет «переформулировок», который был разработан ещё для feed-forward-сетей, отлично показывает себя и здесь. Обучение на клик существенно увеличивает качество при последующем решении семантических задач ранжирования.


Вот эту вторую нейросеть, Яндекс изначально обучил на исторических данных, которых у него масса, но модель нужно периодически переобучать, то есть добавлять новые пары «запрос» => «вероятность клика»

А, что будет, если начать искусственно крутить ПФ по некоторым фразам? Правильно модель может сломаться. И в этом, как мне кажется, и лежало то изначально агрессивное неприятие накрутки ПФ. Но времена меняются, за накрутку не банят, но тогда возникает вопрос, а, что же такого смог придумать Яндекс, что отфильтровать влияние накрутки?

Как бы я поступил, будучи разработчиком?

Во-первых я бы ввел как минимум 3-х ступенчатый алгоритм. На первом этапе всем подозрительным ботам я бы скармливал капчу, отсеивая таким образом львиную долю «тупого» трафика.
Во-вторых я бы ввел некий показатель «подходящести» посетителя (прошу не докапываться до фразы) конкретному запросу.
В третьих я бы ввел показатель «трастовости» и завязал бы его тупо на кол-во денег потраченных на Яндекс такси, музыке и прочих сервисах.

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

Делаем выводы?

Всё то, о чем говорят ПФщики, а именно, нагул профилей по долгосрочным интересам, разный «вес» кликов от живого человека и от бота – в некоторой степени подтверждается информацией публикуемой Яндексом.

ОК, тогда в чем проблема, спросите вы? Если Яндекс так здорово научился вычислять фейковых посетителей, почему он тогда не прикроет лавочку окончательно?

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

Таким образом у нас классический «меч против щита». И Яндекс и ПФщики ограниченны ресурсами. Рубануть сходу не получается видимо теряется качество, жестко фильтровать – экономически невыгодно, вот и приходится балансировать терпеть между фильтрами и финансами.
👍7🔥5💯1
А у тебя уже было это… конверсия? 😂

В кои-то веки напишу не про нейросети). Пришел в понедельник один проект на контекстную рекламу. Ниша дурная перегретая, лиды по 8000 - вообще трындец!

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

Я говорю, знаешь на кого мы с тобой похожи? Нет. На 2-х 15 летних подростков блин! А у тебя уже была конверсия? Нет, пока не было, а у тебя?

Ааааа!!!!! 🙈😂🤪
🤣9😁5😐4👀2