Comments 66
Под капотом у нас своя разработка, где функционал Томиты пока не понадобился, у нас другой подход. Томита — отличный CFG-парсер, но лицензия не совсем commercial-friendly.
UFO landed and left these words here
привет, мы рады, что наш проект находит такой отклик! Выходные данные научных публикаций, уже вышедших в печать, можно найти у нас в профилях на LinkedIn (см. раздел «Команда» на сайте textocat.com), ну а дальше Google Scholar в помощь:)
TextoKit обязательно опубликуем и надеемся на помощь community в его развитии! Также планируем в будущих публикациях описать Apache UIMA и примеры того, как писать аннотаторы для этой технологии.
Будут ли распознаны все четыре даты в фразе: «Конференция пройдёт 7,8,9 и 11 мая» или, как у всех, ограничитесь 11 мая?
Сейчас 100% гарантии не дадим:) но в принципе это возможно: зависит от контекста и корпуса, на котором обучается система.
Бегать по соцсетям и следить за отношением пользователей к фирме «Рога и копыта», или к персонажу «Остап Бендер».
Потом на основании данных строить красивые графики и показывать их специальным людям.
И добавить нечего:) Примеры таких сервисов: YouScan, Крибрум, SemanticForce и т.д.
Первый кейс, который легко объясним, — это поиск по документам. Абсолютно классический. Далее, возможность искать сущности в документах, а не просто ключевые слова. Применения этих возможностей можно найти хоть в Веб поиске, хоть в поиске по документам организации.

Более нетривиальные примеры мы обязательно приведем в ближайшей публикации. В основном, будем ориентироваться на примеры из американского рынка. В качестве «затравочки» позвольте привести ссылку на замечательный пост наших друзей из Orb Intelligence, который несколько приоткрывает интересные бизнес возможности.
Интересный сервис, но есть два ключевых вопроса:
1) ограничения на кол-во. запросов в месяц в бесплатной версии?
2) насколько долго планируется предоставлять бесплатный сервис? То есть «бесплатность» временная и в будущем планируется перейти на полностью платные планы или сервис будет доступен бесплатно долго?
Спасибо за мнение!

1) В отличие от модели Mashape (хотя мы есть и там) у нас ограничение по объему отправленных данных, а не по обращениям. Сейчас это 100 Мб/мес. (после чего счетчик пользователя обнуляется). Правда, стоит иметь в виду, что есть ограничение на параллельную загрузку. В бесплатном варианте — это только одно соединение. То есть при попытке с одним и тем же токеном авторизации заливать данные в несколько запросов одновременно, сервис вернет сообщение об ошибке.

2) Мы планируем оставить бесплатный вариант навсегда (возможно, будут уточняться какие-то ограничения). Как люди из академии, мы видим в этом возможность для студентов и людей из исследовательской среды использовать наш сервис как baseline, тестировать свои подходы и двигать науку!

Сейчас бета-тестирование проходит при поддержке компании Селектел (наш стартап — лауреат программы «Легкий старт»), за что мы им очень благодарны.
UFO landed and left these words here
Если выделить самые интересные проекты, то это извлечение бизнес-событий (т.н. триггеров) и извлечение проблем для компании HP.

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

Нашим клиентам не надо:
  • искать высокооплачиваемых специалистов (data scientists) для реализации аналогичных функций — нашу технологию внедрит средний программист с з/п в 2-3 раза меньше
  • покупать дорогостоящее ПО и собственные серверы
  • платить за дорогие лицензии на аналогичное ПО и убеждаться потом, что их проект «не полетел».


Таким образом,
  • Textocat снижает издержки на разработку ПО для анализа текстов
  • Textocat снижает издержки на инфраструктуру (оплата серверов)
  • Textocat предлагает гибкую тарификацию в зависимости от объема обработанных данных: прототипируйте, проверяйте свои идеи и пусть ваши затраты растут с ростом вашего бизнеса.

UFO landed and left these words here
Приветствую! Особо много не расскажешь, так как NDA. В открытом доступе на сайте HP Labs можно найти два относительно старых тех. отчета: www.hpl.hp.com/techreports/2012/HPL-2012-211.pdf, www.hpl.hp.com/techreports/2013/HPL-2013-14.pdf. Но это, скорее, про полезный опыт — Textocat'а тогда не было даже в задумках :)
Молодцы, сам занимаюсь похожими задачами (мы используем Томиту, раньше было RCO).
Попробовал вашу демку, к сожалению, ошибок в распознавании очень много, правда у кого их нет.
Всяческих вам успехов.
Спасибо! Мы будем улучшать, и, конечно, видим как. В остальном, будем рады сотрудничать и в коммерческом аспекте, и в смысле развития open source стека.
В такой фразе: «Кроме того, там указывается, что 19 ноября „Газпром“ подал еще два иска» газпром как организация не узнался… В целом вполне впечатляюще, хотя есть вопросы к эвристикам.

Например, «Нафтогаз Украины» определился как Геополитическое (Украина), а что написано в кавычках как название — проигнорировано. Нафтогаз ещё несколько раз встречается по тексту далее — из чего я делаю вывод, что документ парсится пофразно, а не в целом. Многая полезная статистика содержится именно при парсинге документа в целом — например, выделение несловарных именованных сущностей.
Спасибо за интерес. Мы постепенно улучшаем качество распознавания. Чем больше таких комментариев => тем быстрее :)
Даты распознаются не всегда. Вот, к примеру, два предложения:
1) Это время настало весной текущего года.
2) Так что мероприятие было решено перенести на весну 2015-го.

В первом дата нашлась, а во втором — нет. Хотя во втором предложении информации больше в том смысле, что не требуется знание контекста — текущего года.
«в среду» всегда будет распознаваться как временная единица? Как насчёт физических сред?
Да, на данный момент в интерпретации этого выражения возможен перекос в сторону временной единицы, так как текущая версия не ориентирована на предметные области текстов, где часто употребляются другие значения «среды».
Отличная работа! Интересно, какая скорость для именованных сущностей, в Мб/сек UTF-8 текста? Да, я понимаю, что она будет зависеть от плотности объектов в тексте :) Тогда для конкретики можно уточнить, что это «типичные новостные тексты», где плотность вряд ли будет выше 0.3.
Вы, наверное, имеет в виду ещё на каждое ядро? При такой постановке, скажем так, до мегабайта в секунду текущая версия ещё не дотягивает.
Но уже работает горизонтальная и вертикальная масштабируемость, так что будет спрос — увеличим :)
Было бы интересно узнать, какую пропускную способность вы считаете приемлемой в контексте какой-то своей задачи?
Мб в секунду на ядро – это отличный показатель! А сколько всего типов объектов? По пропускной способности – я скорее сравниваю с тем, что сам когда-то строил. Там получалось 4 Мб в секунду на ядро с 12 типами объектов и их плотностью 0.3 (насыщенный объектами новостной текст). Задача была из серии digital asset management и трекинг упоминаний в интернете, перелопачивать надо было много и недорого.
4 Мб в секунду – это на ноутбуке core i5. И это уже вполне дёшево.
Нижняя граница была установлена в 1 Мб/сек.
Есть подозрение, что бизнес не захочет выносить свой документооборот в чужое облако. Так что первое приложение имхо мимо.
Спасибо за мнение. Наши соображения:
  • речь идет об индексации не всех документов компании (конечно, не стоит рисковать закрытой налоговой отчетностью или чем-то подобным)
  • компании уже много что хранят в облаке: возьмите примеры клиентов Box, DropBox, Google Docs
  • мы не храним исходные тексты, а, по сути, только поисковый индекс + дополнительные метаданные
  • при востребованности мы добавим возможности передачи данных по HTTPS, шифрованному хранению метаданных
  • наконец, если вашу компанию совсем не устраивает SaaS, мы предлагаем on-premise решение — копию сервиса, разворачиваемую на инфраструктуре клиента.
Что то пока не очень у вас с определением сущностей yadi.sk/i/Zo-9dlytgSA2F. И как будет работать кореференция (что «предприятие Сфера» и «компания Сфера» одно и то же никак не указано)?.. Анафора похоже тоже не реализована пока («эта фирма»)? А так — успехов. Применения, правда, не так много где можно найти. Поиск по ключевым работает при поиске фирм и людей — по их именам. Даты тоже не сложно найти… по дате
Спасибо за найденные ошибки. Мы знаем, что качество совсем не 100%. Мы его постепенно подтягиваем, в приоритете те профили документов (предметные области), которые наиболее востребованы.

У нас реализован функционал Entity Linking'а — привязывания распознанных упоминаний людей/организаций к БД/справочникам клиента. Этого функционала нет на демо, он доступен в платной версии.

А так — успехов.
Благодарим!
Вам надо реализовывать тогда анафору. А это не так просто как именованные сущности определять. И надо переходить на более сложные предметные сущности, например, «все сообщения об отгрузке угля с шахт Донбаса за 2014 год». Причем поиск должен быть не только по словам Донбас шахта уголь и 2014, а и с анафорой, и корреференцией, синонимией и т.п., но при этом БЕЗ лишних (ошибочных) сообщений. И с обозначением дублей информации (в прошлом году и в 2014 — это одно и тоже). Вот тогда у вас будет полезный и интересный продукт, на который будут подписываться. Но пока это никому не подсилу. Так что вам еще раз успехов )
Вот тогда у вас будет полезный и интересный продукт, на который будут подписываться. Но пока это никому не подсилу. Так что вам еще раз успехов )


Жирик



Извините, напомнило:D Если серьезно, мы классический стартап: у нас нет цели в создании swiss army knife с самого начала. В целях экономного расходования средств новые функции приоритезируются на основе спроса платящих клиентов. Кроме того, у нас есть форум, где можно предлагать и голосовать за новые функции. В любом случае мы прислушиваемся к вашему мнению.
Вы извиняетесь перед собой? У вас пока ничего не работает толком, что я и показал ранее. Именованные сущности и даты вылавливаются более простыми методами и бесплатно. Самокритичная шутка получилась.
минусовать на пару с другом у себя в блоге — это вообще по детски ))
Минусы поставил я, хотя не имею никакого отношения к автору, так как вы именно придираетесь: авторы не говорили что их продукт идеален, вам лично ничего не обещали, не нравится — не пользуйтесь, те кто будут покупать сервис сами разберутся насколько он им полезен, знаете как сделать лучше — сделайте. Зачем нам читать столько неконструктивной критики от вас?
Критика помогает сделать продукт лучше, а не витать в облаках. Где тут придирки? Только факты. Анафоры нет, корефференции толком нет. Как можно выявить факты про фирму, если анафора (ссылка на нее местоимением) не работает? Если продукт не идеален, зачем его выводить на суд божий? Да еще предлагать воспользоваться за деньги! Бред. Передавайте привет авторам блога.
Ещё раз, если посмотрите мое сообщение в этой теме, вы увидите что я не имею отношения к авторам.

Вам надо реализовывать тогда анафору… Но пока это никому не подсилу.

Вам не кажется странным там настойчиво требовать от молодого стартапа того что ещё никто, как вы сами признаете, не смог сделать?

Если продукт не идеален, зачем его выводить на суд божий?

Идеальных продуктов не существует по определению, На любой самый ограниченный по функционалу продукт может найтись свой покупатель.

Критика помогает сделать продукт лучше, а не витать в облаках.

Далеко не всякая, критика «вот если бы вы написали сильный ИИ я бы воспользовался вашим продуктов, а сейчас даже не показывайте никому» — скорее разработчикам мешает.
«Но пока это никому не подсилу» — это я писал не про анафору, а про уголь. Анафора решается в простейшем случае, который a привел («эту фирму»). Критика никогда не мешает, тем более когда идет речь далеко не о задаче уровня ИИ. Есть такое понятие «достигнутый технический уровень». Если вы предлагаете продукт, он должен быть не ниже уже достигнутого уровня в бесплатных продуктах (например, «флексивность» — не проблема уже давно, стеминга, лемматизаторов бесплатных в сети куча). Получается, проект не достоен даже критики, если так рассуждать.
ниже уже достигнутого уровня в бесплатных продуктах

О, кстати, вы можете привести бесплатные продукты имеющие сходную функциональность при работе с русским языком (условно-бесплатный продукт Яндекса не будет считать)? Это не сарказм, мне действительно интересны все подобные аналоги, так как как раз требуется подобная функциональность.
Есть хорошие академические проекты типа проекта наших коллег из ИСП РАН — Texterra. Участники нашего хакатона использовали Texterra API бесплатно. Но насколько они открыты в каждом отдельном случае лучше связаться и уточнить у авторов.

Вообще, рекомендую ресурс NLPub наших коллег из Екатеринбурга. Там много разной информации по теме.
NLPpub, конечно, знаем. Но там нет готовых подобных продуктов. Там только инструменты. Текстерра больше не поддерживается, к сожалению.

Судя по ссылке на хакатон, команде texocat вполне подсилу сделать коммерческий продукт. По моему просто поторопились с выходом. Или хотя бы написали — АЛЬФА-ВЕРСИЯ. ПРЕДЛАГАЕМ ПОТЕСТИРОВАТЬ И НАЙТИ ОШИБКИ. Другое бы отношение было бы. И самим на «придирки» не реагировать «жириком» тогда.

Тем кто знаком с работой по этой теме в Яндексе, понятно, что задача ОЧЕНЬ не простая… Поэтому заячвка должна быть серьезной.
Александр, давайте договоримся: вы не будете учить делать бизнес нас, а мы вас. У нас для этого есть менторы. Хотя прокачаться по теме agile development & lean startup, наверно, вам бы стоило. Но у меня нет цели заниматься вашим образованием.

По поводу заявок оставьте это, пожалуйста, вашим коллегам по проекту, которые заявляют, что «МЫ НАУЧИЛИ КОМПЬЮТЕР ПОНИМАТЬ ВАС». Серьезно? Если я попрошу демо в подтверждение, вы справитесь? Или попросите пару лет на R&D?

И будьте повежливее, пожалуйста: ваше мнение — это ваше мнение, а не последняя инстанция. Давайте строить сообщество единомышленников, а не троллей, упражняющихся в «подколках». Если вы не готовы, то вам здесь не место.
Учить меня не надо, я сам могу поучить указанным темам (опыта раза побольше в бизнесе). И я предельно вежлив, в отличие от вас — ссылка на Жирика чья тут? Да, у моих коллег, кстати, есть работающий продукт по указанной теме. Но это не тема вашего блога.
«ваше мнение — это ваше мнение, а не последняя инстанция» — я где то утверждал, что это последняя инстанция? Вам надо научиться реагировать иначе на критику — улучшениями продукта, а не минусованием. «Если вы не готовы, то вам здесь не место» ))
Так она мне самому требуется, но лень собирать. А тут такая заявка! Но на проверку — не работает без ошибок. Вот поэтому и обидно. А так — томита. Но его надо настраивать под задачу.
Анафора решается в простейшем случае, который a привел («эту фирму»).

Кстати, даже в этом случае не все в русском языке просто и легко:
— Общество слепых и Газпром договорились о сотрудничестве. Эта организация (скорее тут речь об Общество слепых, так как организация и корпорация не полные синонимы)
— ООО «Мартешка-Плаза» и Газпром… Она (тут действует правило склонения по родам)

— ООО «Мартешка-Плаза» и Роснефть… Эта фирма (называть корпорацию Роснефть фирмой не очень корректно, значит анафора скорее относится к первому)
Если бы хотя бы без этих сложных случаев кто сделал анафору… Хотя тут просто стилистическая ошибка — после сочинительного подлежащего (через и) анафора в единственном числе. Тут обе фирмы подходят.
Насчёт анафоры тут двояко. Допустим, что мы выделяем объекты точностью 90% и полнотой 60%. Теперь добавим распознавание анафоры с точностью 85%, то есть в 15% случаев это будет не та анафора. Заложившись на неё в выделении объектов, мы можем даже ухудшить точность при некотором рости полноты. Если заказчику авторов нужно точнее, нежели полнее (подозреваю), то не надо анафору.
Плюс не забываем о производительности: выделение анафоры, синонимов и т.п. вещей во-первых сама по себе не очень быстрая операция, во-вторых, резко усложняет распараллеливание обработки текста, одно дело когда можно просто разделить на предложения и параллельно их обработать, другое когда нужно работать с текстом целиком. В некоторых случаях лучше меньше полноты, но быстрее.
Ну вы придрались :) Простой и хорошей стратегией будет просто контекстуализировать алгоритм уже прочитанным потоком. Тогда и компания эта подцепится. Думаю что авторы тут уже всё знают и скоро добавят логичные элементы.
Если авторы уже знают — надо бы сначала доделать, чтобы не портить впечатление. Если это продукт «за деньги», то таких ошибок вообще не должно быть.
Спасибо. Стохастика! Будем разбираться. В целом готовящаяся версия должна значительно лучше работать. Подключаем новые терминологические ресурсы и переобучим модель.
Хотелось бы отметить моменты:

1. Слабая документация, отсутствие примеров на разных языках.
2. Неумение распознавать адреса «ул. Гагарина => PERSON=Гагарина»
3. Только глобальный поиск. Хотелось бы формировать некое подобие таска при queue, и указывать его в поиске, дабы разделять задачи.

В остальном желаю вам развития, ниша выбрана очень правильная, главное не забрасывайте. Попробую применить ваш платный сервис для следующей задачи, как раз возникли требования извлекать из текста ORGANIZATION / PERSON, и тут вы так вовремя!
Забыл вопрос авторам. Вы не замеряли полноту-точность выделятеля объектов?
Конечно, замеряли. Приблизительно (F1-мера) 0.70 по организациям, 0.75 по людям и геополитическим (GPE) объектам. При кросс-валидации, как true positive засчитываются только полные совпадения (вся именная группа), рассматриваются как именованные, так и нарицательные упоминания.
Естественно, все будет зависеть от предметной области, стиля. жанра и т.п. Я показал про новостные тексты с разной степенью замусоренности и отклонений внутри.
Ввел кусок отзыва: "… Купили с женой телефон. Недостатки: Задняя крышка после различных потрясений стала отпадать переодически. Слегка напрягает все это нас 5 ноября 2014 года.". Дата распознавалась хорошо, но с удивлением узнал, что «Задняя крышка» — это человек, а «нас» — организация.

В общем, неплохо, но до качества того же Alchemi на английском, еще далеко.
Это более-менее легко объяснимо: как было сказано, наилучшие результаты показываются на новостных текстах. Лексика и аграмматичность отзывов и постов в социальных сетях — это отдельная история. Будем улучшать технологию и для таких текстов, конечно, тоже.
кстати, у вас интересный блог: подписался. Ну а первый текст даже какое-то ощущение де жа вю вызвал:)
За Alchemy API, конечно, внимательно следим. Они наша ролевая модель. Хотя со временем предложим своим клиентам и другие продукты, о которых Alchemy, похоже, не задумывается:)
Only those users with full accounts are able to leave comments. Log in, please.