Рубрика «обработка текстов»
Обучение Russian SuperGLUE моделей с помощью библиотеки DeepPavlov
2022-12-03 в 19:53, admin, рубрики: AI, BERT, deep learning, deeppavlov, natural language processing, nlp (natural language processing), open source, python, pytorch, transfer learning, искусственный интеллект, машинное обучение, нейронные сети, обработка текстов7 ложных предположений о том, как устроены строки
2021-09-06 в 14:40, admin, рубрики: ASCII, security, software security, Unicode, безопасность, безопасность по, Блог компании Typeable, информационная безопасность, кодировки, кодировки текста, обработка строк, обработка текстов, Программирование, строки, текст, уязвимости, ЮникодКак Unicode уничтожает большинство ваших предположений о том, как на самом деле работают строки
Когда речь идет о написании чего-то простого, мы, программисты, обычно действуем интуитивно. В случае с простыми вещами мы полагаемся на четкий набор предположений вместо конкретных знаний о том, как эти вещи работают. Например, мы предполагаем, что если b = a + 1
, то b
больше a
, или что если мы применим функцию malloc
для какого-то буфера, то получим необходимое количество памяти для записи. Мы не заглядываем в документацию всякий раз, когда имеем дело с мелочами.
Мы делаем так, потому что тотальная проверка замедлит работу. Однако если бы мы все-таки провели проверку, мы бы обнаружили, что обычно ошибаемся в своих предположениях. Существует арифметическое переполнение, в результате которого a + 1
может быть значительно меньше, чем a
. Иногда malloc
дает нам null
вместо буфера и мы оказываемся в пролете.
Нам обычно приходится обжечься на таких вещах, чтобы хотя бы немного изменить свои предположения. И даже тогда мы обычно исправляем их весьма условно.
Столкнувшись с досадной ошибкой переполнения, мы можем скорректировать свое предположение о целых числах в виде «a + 1
больше a
, если отсутствует вероятность, при которой a
представляет собой очень большое число». И мы действуем исходя из этого, вместо того, чтобы обдумать четкие правила, по которым работает переполнение.
Уточненные предположения – это опыт. Чаще всего они позволяют нам работать быстрее и правильнее. Однако мы можем вообще переместить некоторые вещи, например, правильную обработку malloc
, из нашей внутренней категории «простые вещи» во внутреннюю категорию «сложные вещи». И тогда мы действительно можем пойти и уточнить, как они работают.
Люди ломаются на логике, роботы — на всем понемногу. Экзамены по русскому для NLP-моделей
2020-06-10 в 9:00, admin, рубрики: BERT, deep learning, natural language processing, nlp, transfer learning, Алгоритмы, Блог компании Сбербанк, искусственный интеллект, лидерборд, машинное обучение, нейронные сети, обработка текстов, русский язык, Семантика, славянская группа языков, управление проектами, языкиЧтобы машины могли обрабатывать текст на русском и «понимать» его, в NLP используются универсальные языковые модели и трансформеры — BERT, RoBERTa, XLNet и другие — архитектуры от 100 миллионов параметров, обученные на миллиардах слов. Все оригинальные модели появляются обычно для английского, показывают state-of-the-art в какой-нибудь прикладной задаче и только спустя полгода-год появляются и для русского языка, без тюнинга архитектуры.
Чтобы корректнее обучать свою модель для русского или другого языка и адаптировать её, хорошо бы иметь какие-то объективные метрики. Их существует не так много, а для нашей локали и вовсе не было. Но мы их сделали, чтобы продолжить развитие русских моделей для общей задачи General Language Understanding.
Мы — это команда AGI NLP Сбербанка, лаборатория Noah’s Ark Huawei и факультет компьютерных наук ВШЭ. Проект Russian SuperGLUE — это набор тестов на «понимание» текста и постоянный лидерборд трансформеров для русского языка.
Читать полностью »
Chrome расширение для скрытия отвлекающих рекомендации на YouTube
2020-05-15 в 16:23, admin, рубрики: chrome, chrome extension, Google Chrome, javascript, open source, YouTube, обработка текстов, расширения chrome, Расширения для браузеров, стемминг, токенизацияYouTube можно использовать не только для развлечений, но и для обучения чему угодно.
Рекомендации на YouTube очень полезны, так как подсказывают релевантные видео к текущему, но и опасны потому что содержат ещё и в принципе интересные и отвлекающие ролики (не на тему видео).
В какой-то момент ты просто устаешь смотреть ролики на определенную тему, и тут тебя ловят отвлекающие рекомендации, ибо YouTube выгоднее привлечь любым другим контентом лишь бы вы провели на нем больше времени. Серфя таким образом, теряем время впустую.
Т — значит творчество
2019-12-31 в 7:09, admin, рубрики: natural language processing, антиплагиат, Блог компании «Антиплагиат», информационный поиск, машинное обучение, микросервисы, обработка текстов, позитив, Программирование, разработка, с новым годомПока весь мир, вместо того, чтобы нарезать салаты готовиться к встрече Нового года, следит за развитием ситуации с nginx, мы решили не усугублять и не готовить серьезную научную статью, не шокировать технологиями наступившего будущего и не грузить очень хитрым алгоритмом. Мы тоже пользуемся nginx и надеемся, что и с его создателями и с ним все будет хорошо. И нам (да и не только нам) важно, чтобы ситуация разрешилась не как подарок Деда Мороза, а как естественный ход событий.
Читать полностью »
Так устроен поиск заимствований в Антиплагиате
2018-11-14 в 6:44, admin, рубрики: Алгоритмы, алгоритмы поиска, анализ данных, антиплагиат, Блог компании «Антиплагиат», математика, обработка текстов, поисковые технологии, Семантика, шинглыМы уже рассказывали вам об интересных статистиках текстов, делали обзор статей применений автокодировщиков в анализе текстов, удивляли нашими свежими алгоритмами поиска переводных заимствований и парафраза. Я решил продолжить нашу корпоративную традицию и, во-первых, начать статью с «Т», а во-вторых, рассказать:
- как быстро найти абзац текста среди сотен миллионов статей;
- во что превращается документ после загрузки в систему Антиплагиат, и что с этим делать дальше;
- как формируется отчет, который почти никто не смотрит, а стоило бы;
- как проиндексировать не все, но достаточно.
Русскоязычный чат-бот Boltoon: создаем виртуального собеседника
2017-10-16 в 10:21, admin, рубрики: doc2vec, python, word2vec, машинное обучение, обработка текстов, Семантика, чат-ботНесколько лет назад было опубликовано интервью, в котором говорят об искусственном интеллекте и, в частности, о чат-ботах. Респондент подчеркивает, что чат-боты не общаются, а имитирует общение.
В них заложено ядро разумных микродиалогов вполне человеческого уровня и построен коммуникативный алгоритм постоянного сведения разговора к этому ядру. Только и всего.
На мой взгляд, в этом что-то есть…
Тем не менее, о чат-ботах много говорят на Хабре. Они могут быть самые разные. Популярностью пользуются боты на базе нейронных сетей прогнозирования, которые генерируют ответ пословно. Это очень интересно, но затратно с точки зрения реализации, особенно для русского языка из-за большого количества словоформ. Мной был выбран другой подход для реализации чат-бота Boltoon.
Читать полностью »
Bash-скрипты, часть 8: язык обработки данных awk
2017-05-02 в 11:04, admin, рубрики: awk, bash, bash-скрипт, linux, ruvds, Блог компании RUVDS.com, Настройка Linux, обработка текстов, системное администрирование, сценарий командной строкиBash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
В прошлый раз мы говорили о потоковом редакторе sed и рассмотрели немало примеров обработки текста с его помощью. Sed способен решать многие задачи, но есть у него и ограничения. Иногда нужен более совершенный инструмент для обработки данных, нечто вроде языка программирования. Собственно говоря, такой инструмент — awk.
Читать полностью »
Bash-скрипты, часть 7: sed и обработка текстов
2017-04-28 в 9:55, admin, рубрики: bash, bash-скрипт, linux, sed, Блог компании RUVDS.com, Настройка Linux, обработка текстов, Серверное администрирование, сценарий командной строкиBash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
В прошлый раз мы говорили о функциях в bash-скриптах, в частности, о том, как вызывать их из командной строки. Наша сегодняшняя тема — весьма полезный инструмент для обработки строковых данных — утилита Linux, которая называется sed. Её часто используют для работы с текстами, имеющими вид лог-файлов, конфигурационных и других файлов.
Как мы делали систему выделения информации из текста на естественном языке для банка АО «Банк ЦентрКредит» (Казахстан)
2016-05-31 в 14:17, admin, рубрики: data mining, Алгоритмы, Блог компании MeanoTek, машинное обучение, нейронные сети, обработка естественного языка, обработка текстов, Семантика, метки: Машинное обучениеНекоторое время назад к нам обратился представитель банка АО «Банк ЦентрКредит» (Казахстан) с интересной задачей. Необходимо было интегрировать в конвейер обработки данных, представляющих из себя текст на естественном языке, дополнительный инструмент обработки. Всех деталей проекта мы раскрывать не можем, так как он находится в сфере безопасности банка и разрабатывается его службой безопасности. В освещении технологических аспектов задачи и способов их реализации заказчик не был против, что собственно мы и хотим сделать в рамках данной статьи.
В целом задача, состояла в извлечении некоторых сущностей из большого массива текстов. Не сильно отличающаяся проблема от классической задачи извлечения именованных сущностей, с одной стороны. Но определения сущностей отличались от обычных и тексты были довольно специфическими, а сроку на решение проблемы было две недели.
Читать полностью »