Все потоки
Поиск
Написать публикацию
Обновить
0.6

Семантические сети *

Веб 3.0

Сначала показывать
Порог рейтинга
Уровень сложности

Лингвистический Epic fail, или Как запихнуть весь словарь русского языка в Power BI

Время на прочтение7 мин
Количество просмотров9.4K
image

Как-то, решая проблему лингвистического анализа в Power BI и заодно подыскивая примеры для моей предыдущей статьи, я вспомнил о задаче, которую пытался решить в Excel ещё несколько лет назад: нужно было внедрить в аналитическую систему словарь русского языка для лингвистического анализа большого количества запросов на естественном языке. Причём желательно было использовать стандартные офисные инструменты. Подавляющее большинство людей сразу взялись бы решать эту задачу в Excel, и я когда-то пошёл по тому же пути. В качестве словаря использовал открытый корпус русского языка (http://opencorpora.org/).

Но меня ждало разочарование — словарь состоял из 300 тыс. словоформ, более 5 млн записей, а для Excel это в принципе невозможный объём. Даже если запихнуть в него «всего лишь» 1 млн строк, то выполнять с ними какие-то манипуляции или, упаси боже, вычисления, сможет только очень терпеливый человек, который вообще никогда и никуда не торопится. Но в этот раз я решил натравить на задачу более подходящий инструмент — Power BI.
Читать дальше →

Текстовый редактор — это вам не высшая математика, тут думать надо

Время на прочтение17 мин
Количество просмотров98K
Современные текстовые редакторы умеют не только бибикать и не давать выйти из программы. Оказывается, внутри них кипит очень сложный метаболизм. Хотите узнать, какие ухищрения предпринимаются для быстрого пересчета координат, как к тексту приделываются стили, фолдинги и софтврапы и как это всё обновляется, при чем тут функциональные структуры данных и очереди с приоритетами, а также как обманывать пользователя — добро пожаловать под кат!



В основе статьи — доклад Алексея Кудрявцева с Joker 2017. Алексей уже лет 10 пишет Intellij IDEA в JetBrains. Под катом вы найдете видео и текстовую расшифровку доклада.
Читать дальше →

«Трое в лодке, нищета и собаки», или как Антиплагиат ищет парафраз

Время на прочтение7 мин
Количество просмотров35K
Наступил новый учебный год. Студенты получили расписание занятий и стали задумываться о пьянках-гулянках-девушках-гитарах будущей сессии. Написание курсовых, дипломов, статей и диссертаций не за горами. А значит, грядут и анализ текстов на наличие заимствований, и отчеты о проверке, и прочая головная студенческая и администраторская боль. И у сотен тысяч людей (без шуток – мы посчитали!) уже возникает закономерный вопрос – как же обмануть «Антиплагиат». В нашем случае практически все способы обмана так или иначе связаны с искажениями текста. Мы уже научили «Антиплагиат» обнаруживать текст, «искаженный » с помощью перевода с английского на русский (мы писали об этом в первой статье нашего корпоративного блога). Сегодня речь пойдет о том, как обнаруживать самый эффективный, хотя и трудоемкий способ искажения текста – парафраз.



Читать дальше →

Искусственно-разумный интеллект

Время на прочтение12 мин
Количество просмотров6K
Преамбула

Всю цивилизационную историю развития человечества люди стремились к тому, чтобы стать более сильными и менее уязвимыми, что обуславливалось необходимостью извечной борьбы за жизненно важные ресурсы и обеспечение собственной безопасности. Гомо-Сапиенс всегда желал развивать свои физические и умственные способности и возможности. Человек хотел видеть намного дальше и чётче, чем он обычно может это делать, желал высоко летать и глубоко плавать, слышать издалека и острее чувствовать, больше запоминать и быстрее думать…

Эти искомые цели почти в каждом из таких устремлений обычно всегда достигались за счёт создания каких-либо технических изделий-усилителей на основе известных физических законов. И здесь люди, практически, во всех случаях добивались успехов, за исключением, пожалуй, одной давнишней мечты — это создание “Искусственно-Разумного Интеллекта”, то есть, такого устройства, которое было бы способно мыслить с нечеловеческой скоростью и оперировать Знаниями не хуже, чем это могут делать наиболее развитые думающие существа.
Читать дальше →

fuzzywuzzy и «Невидимая брань» между людьми и роботами-переводчиками

Время на прочтение4 мин
Количество просмотров5.1K

Начала добраго добрейший быти и конец, право непщуют предели вещей


Наверное, во все века были переводчики-буквалисты и переводчики-«вольнодумцы». Последние чувствовали себя совершенно вправе изменять текст, перекопмоновывать его, выбрасывать одни куски и дописывать другие. А перед современными исследователями стоит типичный вопрос: «Что детально произошло во время трансформации оригинала? Что вычеркнуто, что сохранено, что переделано, что дописано?»


Перед тем, как вчитываться в тексты со всей тщательностью, хотелось попробовать отдать их роботам на предварительную проработку. Надежд на роботов у нас было мало, однако помощь от них мы получили существенную. О том, как мы заставили Google Translate и Яндекс.Переводчик тягаться в работе над греческим текстом «Невидимой брани», читайте под катом.

Читать дальше →

«Туда и обратно» для нейронных сетей, или обзор применений автокодировщиков в анализе текстов

Время на прочтение9 мин
Количество просмотров21K
Мы уже писали в самой первой статье нашего корпоративного блога о том, как работает алгоритм обнаружения переводных заимствований. Лишь пара абзацев в той статье посвящена теме сравнения текстов, хотя идея достойна гораздо более развернутого описания. Однако, как известно, обо всем сразу рассказать нельзя, хоть и очень хочется. В попытках воздать должное этой теме и архитектуре сети под названием «автокодировщик», к которой мы питаем очень теплые чувства, мы с Oleg_Bakhteev и написали этот обзор.


Источник: Deep Learning for NLP (without Magic)

Как мы упоминали в той статье, сравнение текстов у нас было “смысловое” – мы сопоставляли не сами текстовые фрагменты, а векторы, им соответствующие. Такие векторы получались в результате обучения нейронной сети, которая отображала текстовый фрагмент произвольной длины в вектор большой, но фиксированной размерности. Как получить такое отображение и как научить сеть выдавать нужные результаты – отдельный вопрос, о которой и пойдет речь ниже.
Читать дальше →

RuSSIR 2018: 12-я летняя школа по информационному поиску

Время на прочтение2 мин
Количество просмотров3.4K
27–31 августа в Казани пройдет 12-я международная летняя школа по информационному поиску RuSSIR 2018.

В этом году её организуют Казанский федеральный университет (КФУ) и Российский семинар по оценке методов информационного поиска (РОМИП) при поддержке ACM SIGIR и BCS IRSG.



Программа включает два пленарных доклада и семь курсов, а также постер-сессию конференции молодых ученых «RuSSIR Young Scientist Conference».

Пленарные доклады:

  1. Carlos Castillo (Universitat Pompeu Fabra), «Crisis Informatics» — о том, как использовать данные из социальных сетей для борьбы с чрезвычайными ситуациями;
  2. Carlos Castillo, «The Biases of Social Data» — о подводных камнях при анализе пользовательского контента.

Курсы:

  1. Cathal Gurrin (Dublin City University), «The Information Retrieval Challenge of Lifelogs and Personal Life Archives» — об анализе персональных данных;
  2. Henning Müller (University of Geneva), «Evaluation of IR systems and multi-modal retrieval in the medical domain» — о поиске медицинских изображений;
  3. Valentin Malykh, Mikhail Burtsev (Moscow Institute of Physics and Technology), «Conversational AI through Deep Learning» — о том, как создать интеллектуального чат-бота с помощью глубокого обучения;
  4. Rishabh Mehrotra (Spotify Research), «Learning from User Interactions» — о том, как угадать потребность пользователя из его взаимодействия с онлайн-системой;
  5. Guido Zuccon (Queensland University of Technology), «Health Search» — о поиске по медицинским данным;
  6. Harrie Oosterhuis (University of Amsterdam), «Learning to Rank and Evaluation in the Online Setting» — о том, как обучить систему на основе данных о взаимодействии с пользователем;
  7. Prasenjit Mitra (Pennsylvania State University), «Retrieving Information Interactively Using Natural Language» — о том, как научить систему общаться на естественном языке.

Участие в школе бесплатное. Регистрация открыта до 10 июля.
Как попасть?

Слово лингвисту: что если компьютеры заговорят лучше нас

Время на прочтение10 мин
Количество просмотров9.8K

Фото: Александр Корольков/РГ

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

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

Я попросил Александра подготовить для Хабра «режиссерскую версию» лекции, где не вырезано ничего, что может усыпить случайных туристов. Ведь больше всего выступлению не хватало аудитории с толковыми вопросами и вообще хорошей дискуссии. Думаю, здесь мы ее сможем развить.
Читать дальше →

Теория большой свалки: ищем научные документы на просторах интернета

Время на прочтение7 мин
Количество просмотров13K
Система «Антиплагиат» – это специализированный поисковик. Как и положено поисковику, с собственным движком и поисковыми индексами. Самый большой наш индекс по количеству источников – конечно же, у русскоязычного интернета. Довольно давно мы решили, что будем помещать в этот индекс все, что является именно текстом (а не картинкой, музыкой или видео), написано на русском языке, имеет размер больше 1 кб и не является «почти-дубликатом» чего-то, что уже есть в индексе.

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

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

И раз уж мы (yury_chekhovich и Andrey_Khazov) занялись такой рефлексией, то почему бы нам заодно не ответить еще на несколько вопросов. Сколько проиндексировано научных документов, а сколько ненаучных? Какую долю среди научных статей занимают дипломы, статьи, авторефераты? Каково распределение документов по тематикам?



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

Объект, свойство, активность: модели и способы их построения

Время на прочтение33 мин
Количество просмотров3.6K

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


Введение


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


Для этого я сформулировал свод знаний, который назвал проекционным моделированием, потому что метод, изложенный в нем, напоминает черчение. На уроках черчения мы учимся моделировать пространства. При этом модель пространства отделена от интерпретации этого пространства. Моделируемое пространство можно интерпретировать в зависимости от решаемой задачи и как кусок алюминия, и как часть воды, и как крыло самолета: модель пространства не зависит от его трактовки. В проекционном моделировании мы поступаем так же: сначала создаем модель пространства, но уже во времени, потому что наш мир четырехмерный, если считать время как отдельное измерение, а затем трактуем это пространство-время тем, или иным способом. Так же, как в черчении моделируемый 3-Д объем можно трактовать разными способами, так и в проекционном моделировании трактовка 4-Д объема отделена от модели пространства-времени.

Читать дальше →

Как создать своего бота без навыков программирования и подключить его к Яндекс.Алисе

Время на прочтение8 мин
Количество просмотров33K

Как мы уже писали в своей первой статье, мы в Just AI специализируемся на технологиях искусственного интеллекта для понимания естественного языка (NLU). У нас есть своя платформа для разработки разговорных ассистентов, как текстовых, так и голосовых. Платформа имеет развитую функциональность для решения NLP-задач (кластеризация логов, поиск семантически близких фраз и др.) и собственный язык разработки (Just AI DSL). С использованием DSL команда лингвистов-разработчиков пишет код сценариев чатботов, интеграционные модули для связи с внешними системами, а также автотесты.

В этой статье мы расскажем о созданном нами инструменте для разработки ботов под разные платформы, в том числе для Яндекс Диалогов, без знания DSL и навыков программирования.
Добро пожаловать под кат

Разговорный AI: как работают чат-боты и кто их делает

Время на прочтение11 мин
Количество просмотров50K
image

Чатботы и искусственный интеллект для понимания естественного языка (NLU – Natural Language Understanding) тема достаточно горячая, про нее не раз говорилось на Хабре. Тем не менее достаточно редко попадаются верхнеуровневые и структурированные обзоры этих технологий и рынка в целом. В своей статье мы попробуем немного разобраться, чем обусловлен спрос на эти технологии, как выглядит современная диалоговая платформа для NLU, какие компании и разработки присутствуют на этом рынке.

Читать дальше →

Информационные системы с понятийными моделями. Часть вторая

Время на прочтение17 мин
Количество просмотров7.9K
В первой части статьи мы начали разговор о новом классе высокоуровневых моделей предметной области, названных понятийными. В отличие от других аналогичных моделей в понятийных моделях связи между понятиями сами являются понятиями, а модель строится на основе выявления и описания абстракций, послуживших образованию (определению) понятий предметной области. Это позволяет конечным пользователям строить и актуализировать модели предметной области путем простых и естественных операций создания, изменения и удаления понятий и их сущностей.

Здесь, во второй части, поговорим о том, как может быть реализована полнофункциональная информационная система, основанная на понятийном моделировании предметных областей. Теперь уже в деталях рассмотрим информационную систему LANCAD, которую в нашей компании “ИНСИСТЕМС” используют для организации проектной деятельности по разработке проектно-сметной документации для строительства.

Следует заметить, что появление информационной системы LANCAD явилось результатом реализации нескольких крупных проектов компании.

Читать дальше →

Ближайшие события

Исправление опечаток, взгляд сбоку

Время на прочтение7 мин
Количество просмотров10K
Мы поговорим об использовании модных «Word embedding» не совсем по назначению — а именно для исправления опечаток (строго говоря, и ошибок тоже, но мы предполагаем, что люди грамотные и опечатываются). На хабре была довольно близкая статья, но здесь будет немного о другом.


Визуализация Word2Vec модели, полученная студентом. Обучалась на «Властелине колец». Явно что-то на черном наречии.
Читать дальше →

Информационные системы с понятийными моделями. Часть первая

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

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

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

Читать дальше →

Трудности перевода: как найти плагиат с английского языка в русских научных статьях

Время на прочтение11 мин
Количество просмотров70K
В нашей первой статье в корпоративном блоге компании Антиплагиат на Хабре я решил рассказать о том, как работает алгоритм поиска переводных заимствований. Несколько лет назад возникла идея сделать инструмент для обнаружения в русскоязычных текстах переведенного и заимствованного текста из оригинала на английском языке. При этом важно, чтобы этот инструмент мог работать с базой источников в миллиарды текстов и выдерживать обычную пиковую нагрузку Антиплагиата (200-300 текстов в минуту).

"

В течение 12 лет своей работы сервис Антиплагиат обнаруживал заимствования в рамках одного языка. То есть, если пользователь загружал на проверку текст на русском, то мы искали в русскоязычных источниках, если на английском, то в англоязычных и т. д. В этой статье я расскажу об алгоритме, разработанном нами для обнаружения переводного плагиата, и о том, какие случаи переводного плагиата удалось найти, опробовав это решение на базе русскоязычных научных статей.
Читать дальше →

Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Знаки

Время на прочтение14 мин
Количество просмотров11K

Эта работа является продолжением всего сказанного ранее в статье «Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Версия II». В большинстве статей, посвященных анализу текстов, которые удалось изучить автору, под анализом текста понимается главным образом две совершенно практические задачи, связанные либо с извлечением какого-либо контекста, либо перевод текста с одного языка на другой. В первом случае речь, как правило, идет или об «очистке» анализируемого контента и сопоставлению какого-либо участка текста эталону в соответствии с заранее заданной таксономией1 каких-либо сущностей. Например, разбор адресов, товаров и т.д. Во втором случае, о поиске соответствия одного блока текста, написанного на одном языке блоку, написанному на другом.


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

Читать дальше →

Как производится оценка состояния объекта?

Время на прочтение3 мин
Количество просмотров2.3K
В школе мне понадобились колоссальные усилия, чтобы понять концепт Кантора о множестве мощности континуум. Но потом я понял, что ничего не понял, а лишь заучил правила работы с такого рода объектами. В области понимания как было белое пятно, так оно и осталось белым. С тех пор я неоднократно возвращался к этому вопросу, пока не познакомился со статистической физикой и сопроматом.

В этих науках очень хорошо были определены понятия вещества и понятие состояния. Было сказано, что для определения вещества нужен объем минимального размера, меньше которого мы имеем уже не вещество, а набор молекул, а для оценки состояния требуется конечное время, чтобы зарегистрировать некоторое значение, связанное с состоянием. Если мы будем говорить о состоянии, используя временные интервалы менее минимального, то получим не оценку состояния, а что-то непонятное.

Я понимал, что на этой основе можно построить иную математику с иными аксиомами. Этого я не сделал, но запомнил, что для оценки состояния нужно указать минимальное время, в течение которого есть смысл говорить о совершении измерения, как для определения вещества нужен минимальный объем. Тогда данное время будет считаться мгновением для оценки данного состояния. Это время может быть разным для разных свойств и методов оценки. Например, для того, чтобы понять, какого цвета автобус при помощи глаз, нужны миллисекунды, а для того, чтобы понять в каком состоянии сейчас находится климат Земли при помощи термометра, нужно несколько лет.
Читать дальше →

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

Время на прочтение7 мин
Количество просмотров3.8K

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


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


Пользоваться этим массивом данных так же неудобно, как и его хранить. Строить запросы к этому массиву данных – тоже неудобно. Например, у нас есть запись о том, что станок существовал с12 июня по 17 июня и находился в этот период в машинном отделении ГЭС. Но на основе этой записи мы ничего не можем сказать о существовании и нахождении станка в период с 13 июня по 15 июня, потому что при таком подходе к моделированию для ответа на это вопрос нам нужна отдельная соответствующая запись.

Читать дальше →

Решение больших проблем небольшим семантическим анализатором

Время на прочтение8 мин
Количество просмотров2.5K

image


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


Комиссия. Что значит “Тихо”? Они там в филиале пьяные что ли?
Система. "Тихо" = Сила ветра в пределах нормы.
Комиссия. Так это они о погоде. Система сдана в опытную эксплуатацию!


Все события в статье вымышлены. Любые совпадения с реальностью случайны.


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

Читать дальше →