INVENTORUS
983 subscribers
211 photos
9 videos
109 links
INVENTORUS — интеллектуальная платформа для научной аналитики и ускорения исследований.

https://inventorus.ru — Сокращаем путь к инновациям!
Download Telegram
Поиск: непохожие пути к похожим результатам. Часть 2️⃣ — Стемминг и лемматизация в обработке естественного языка

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

Как следствие, получила стимул к развитию область знаний на стыке компьютерных наук, искусственного интеллекта и лингвистики, которая учит машины понимать, интерпретировать и генерировать человеческий язык — обработка естественного языка (англ. Natural Language Processing, NLP)

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

📌Стемминг (англ. stemming) приводит слово к общей основе (стему) за счет удаления окончаний и суффиксов. Стемом может быть как целое слово, так и его часть, которая объединяет разные формы одного слова. Цель — упростить анализ текста, чтобы компьютер интерпретировал различные формы слова как проявление одной лексической единицы.

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

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

📎 В карточках — наглядные примеры.

🗺 Анонс со ссылками на все части, предыдущая часть — здесь

#интересное #полезное #поиск #NLP #стемминг #лемматизация
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥14👌11🤯1
Поиск: непохожие пути к похожим результатам. Часть 3️⃣ — Сегментация текста

Современный поисковый запрос, как правило, представляет собой как минимум словосочетание, а как максимум — предложение или даже несколько предложений. Особенно это заметно на примере нейросетей, где запросы (или же промпты) могут представлять собой целые сочинения с набором условий.

Важный этап понимания такого запроса в контексте обработки естественного языка — сегментация.

📌 Сегментация — процесс разделения текста на отдельные слова или значимые единицы (токены), которые потом можно анализировать. Это один из первых шагов в обработке текста, чтобы компьютер мог понять структуру предложения.

Самый простой способ сегментации — разбить текст на части там, где есть пробелы.

Следующая ступень — учет знаков препинания, сокращений и составных слов.

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

Примеры языков с нетривиальной сегментацией:

🔷китайский и японский языки предполагают разграничение предложений, а не слов
🔷тайский и лаосский предполагает разграничение фраз и предложений
🔷во вьетнамском языке разграничиваются слоги

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

🗺 Анонс со ссылками на все части, предыдущая часть — здесь

#интересное #полезное #поиск #NLP #сегментация
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24👍12👌9😱2
Поиск: непохожие пути к похожим результатам. Часть4️⃣ — Речевая разметка и выделение сущностей

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

Со временем стало очевидным, что просто сегментировать текст недостаточно, так как сегментация позволяет проанализировать только структуру предложения, но не дает представления о роли каждого слова в нём.

Решить эту проблему помогла речевая разметка или разметка частей речи (англ. Part of Speech Tagging, PoS) — способ классификации списков слов как существительных, глаголов, прилагательных и т. д. для более точной обработки запроса.

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

Схожей функцией обладает процесс извлечения сущностей (англ. Named Entity Recognition, NER): из текста выделяются конкретные объекты или сущности, имеющие определённое значение, такие как имена людей, названия организаций, местоположения, даты, числа и т.д.

➡️ Извлечение сущностей (NER) на шаг впереди простой речевой разметки (PoS), поскольку вносит конкретику: если PoS говорит, что слово — существительное, то NER уточняет, что это за существительное (человек, место или что-то ещё). Это особенно важно для обработки голосовых запросов.

В русском языке извлечение сущностей достаточно трудоёмко из-за наличия склонений и многозначных слов. Примеры, как работает каждый из рассмотренных подходов — по традиции, в карточках 📎

🗺 Анонс со ссылками на все части, предыдущая часть — здесь

#интересное #полезное #поиск #NLP #PoS #NER
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1788🎉1🤩1
Поиск: непохожие пути к похожим результатам. Часть 5️⃣ — Онтология и графы знаний

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

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

📌 Детально под онтологией понимают формализованное описание знаний в виде набора понятий (концептов) и отношений между ними в определенной области. Задача онтологии — помощь машине понять контекст.

📌 Граф знаний по своей сути является практической реализацией онтологии, наполненной конкретными фактами. Граф в общем виде — некая база данных, где информация представлена в виде узлов (сущностей) и рёбер (связи между сущностями).

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

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

На практике обнаруживаются существенные недостатки:

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

➡️ Эти трудности привели к тому, что автоматическая разработка графов знаний удалась всего нескольким крупным компаниям, например, Google. При этом его графы знаний — Google Knowledge Graph — содержат миллиарды связей.

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

🗺 Анонс со ссылками на все части, предыдущая часть — здесь

#интересное #полезное #поиск #NLP #онтология #граф_знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤‍🔥1211👍11😢1🎉1🤩1
Поиск: непохожие пути к похожим результатам. Часть 6️⃣ — Автозаполнение и рейтинг ИИ

В эту субботу вновь возвращаемся к теме развития поисковых систем 🔍

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

📌 Автозаполнение — функция интерфейса, которая автоматически предлагает варианты завершения слова или фразы в процессе написания текста

Автозаполнение предсказывает, что человек хочет написать, основываясь на уже введённых символах, и помогает ускорить ввод текста, уменьшить количество ошибок и повысить удобство

Функция стала стандартом для поисковых систем и веб-форм после обретения популярности благодаря Google

Реализуется в несколько этапов:

▶️ Сбор базы данных поисковых запросов (например, в виде истории поиска или словаря)

▶️Определение совпадений по базе данных по мере ввода символов запроса

▶️Сортировка вариантов по вероятности на основе частоты использования, контекста или персональных данных

▶️Предложение списка подсказок, из которых пользователь может выбрать подходящий вариант

С новым витком развития ИИ в этот процесс встроились улучшенные механизмы ранжирования и на релевантность результатов стали влиять оценки пользователей

📌 Рейтинг ИИ — оценка качества и релевантности ответов, которые ИИ (например, чат-бот или поисковая система) выдает на запросы пользователей

Этот способ медленно, но постоянно вносит изменения в поисковый алгоритм, улучшая его качество. Цель — выведение в топ лучших результатов и одновременное отсеивание менее полезных

Из недостатков:

🚫 требует большое количество данных для подбора значимых результатов

🚫 не подходит для идентифицирования записей — идентификация все равно реализуется через ключевые слова и лингвистические ресурсы

🚫 эффективно только для ранжирования результатов

➡️ Результат: развитие векторного поиска, о котором расскажем в следующем выпуске

🗺 Анонс со ссылками на все части

#интересное #полезное #поиск #NLP #автозаполнение #рейтинг_ИИ
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1911👍11😱1🎉1