Pull to refresh
37
0
Станислав Семенов @StanSemenoff

Senior Director, R&D, ABBYY

Send message
Фактически системой пользуются только два человека.

Удивительно для компании с оборотом полмиллиарда.
Проводилось ли какое-нибудь измерение качества, как понять что внедренная поисковая система дает хороший релевантный результат?
Да, стандарты — это круто. Но пока нет на законодательном уровне, очень слабо работает. По идее, механизмов можно придумать огромное количество всяких разных. Вот в различных квитанциях уже повсеместно штрих-коды и бар-коды. Но адреса на конвертах до сих пор от руки пишут, и как это на почте автоматизировать — головная боль.
Замеры здесь могут быть самые разные, но если отбросить время на предобработку изображения и OCR, оставив только само извлечение полезных данных, то для одностраничного инвойса на 1 CPU оно примерно от одной до несколько секунд, включая время работы нейронной сети (примерно 25% времени).
Да, интеграция в продукт нейронной сети дает прирост качества сразу по всем полям и по структуре таблиц. В разных случаях, на разных типах доументов, конечно, по-разному. В качестве примера могу сказать, что удалось некоторые важные поля улучшить с 80% до 90%, т.е. ошибка на них была снижена в 2 раза. Это существенный шаг в сторону дальнейшего развития.
Да, метод позволяет работать в режиме полного отсутствия каких-либо настроек, по сути end-to-end и out-of-the-box. Но также имеется и возможность что-то доучить на стороне пользователя на своих примерах, и объединять результаты извлечения данных с помощью нейронной сети и с помощью шаблонов одновременно.
По-поводу оценки производительности, что имеется в виду, время работы сети на CPU?
Если просто сравнить время работы шаблона и время работы сети, то сеть работает быстрее.
Поправил, спасибо.
Было бы очень круто сделать мобильное приложение со следующей функцией: заходишь в магазин, наводишь камеру на ценник, название товара и цена автоматически распознаются, и на экране показывается на сколько здесь цена ниже или выше чем в среднем по городу в других магазинах. Так можно на полку с товарами навести телефон и взять товары с зеленым ценником, такой технологический лайфхак. Цены в других магазинах определяются, когда другие пользователи этого же приложения заходят в другие магазины. Если что, я как идейный вдохновитель в доле :)
Кстати, Яндексу это легко реализовать. Например, каждому сайту, подключенному к метрике дать свой уникальный ключ шифрования. Тогда владелец сайта сможет этим ключом расшифровывать все рефереры, предназначенные только для его сайта. Никто другой эту информацию не увидит.
Друзья, гугл уже сделал этот шаг. Яндекс делает сейчас.
Как следствие, открывается новая ниша для стартапов на ярд: «Определение интересов посетителя сайта по его поведению на сайте / в Интернете».
Как это должно работать:
1) Изучаем модель поведения тех людей, про которых мы что-то знаем.
2) Находим людей с похожими моделями поведения, про которых мы ничего еще не знаем.
3) С определенной статистической вероятностью переносим все имеющиеся знания на них.
Профит.
Я не знаю точное происхождение задачи про веревку. Мне ее в свое время тоже задали на собеседовании, минут 20 я ее решал, но все таки решил. Мне она очень понравилась, и я взял ее себе на заметку. Ну, и как написано в статье, потом от нее отказался.
Так стресс может быть просто от того, что человек на собеседовании, что сейчас предстоит что-то сделать и показать себя, т.е. страх упасть лицом в грязь. Это как приходишь на олимпиаду, экзамен, всегда какое-то волнение, что делает человека более рассеяным, хотя кого-то, наоборот, собирает.
Другая рабочая среда — это версии программ, настройки, оборудование, например, вы привыкли дома работать на большом мониторире и у вас темная тема со светлыми буквами, а тут вам дали ноутбук с менее удобной клавиатурой, там выставлены другие цветовые схемы, и другая версия софта. Вот уже дискомфорт. А все это играет роль. Ну и мы тоже не будем подбирать настройки под каждого собеседующегося, вот возьмем на работу, тогда и настроим как вам угодно.
Результаты такие: я взял первого человека, который справился с заданием. И он оказался чертовски толковый парень. Не могу сейчас точно сказать, было ли это просто совпадение или задачки все же помогли его выявить, но факт остается фактом. За все продолжительное время совместной работы не было никаких нареканий с моей стороны. Практика восторжествовала, задачи делались, программы работали, что там было внутри и как написано, я не знаю, другие люди смотрели за качеством кода.
По поводу отличия от других, думаю не совсем корректно сравнивать, люди все разные, и вряд ли дело в решенных задачах, но этот парень был человеком дела, про которого я всегда говорил, что вот пример, когда важен результат, а не процесс.
И еще добавлю, на собеседовании справиться с этим заданием сложнее, чем здесь, в обсуждении статьи, там и стресс, и другая рабочая среда, и результат надо выдать, а любой неправильный SQL запрос может завесить базу на долгое время, а у меня нет прав остановить процесс, значит нужно сделать тестовые таблички или ограниченные выборки, чтобы проверить решение, потом наращивать объемы и наблюдать за процессом, потом исправлять. Т.е. задача намного показательнее, чем кажется на первый взгляд, особенно когда начинаешь ее делать на реальных данных, а не на 5 строчках.
Задачка может дать ответ, человек вообще умеет хоть как-то программировать или нет, если он это запрограммирует и результат покажет на экране.
Обычное собеседование длится 30 мин с HR (общие слова, заче вы к нам, какие-то анкетки), 30-60 мин с начальником отдела и ведущими разработчиками, еще 15-30 мин с директором департамента. Итого не больше 2 часов в совокупности.
Предложенные задачки не должны занимать больше 30-60 мин. Т.е. вы можете либо тратить свое время на то, чтобы показать, что вы реально умеете оперативно решать поставленные задачи, либо тратить на то, чтобы отвечать на вопросы sizeof() или count(). Как говорится, где что заведено. Лично мне нужны не теоретики, а практики. Решил, отсортировал, удалил и т.д. — молодец.
Опять же повторюсь, вы будете реально работать, т.е. что-то делать, программировать, а не рассуждать и холиварить, как это сложно или просто, разрешимо или неразрешимо.
Если вам кажется все элементарным, значит Вы отличный специалист!
Если человек уверенно справляется с этими заданиями, то как вариант можно предложить усложнение, и, соответственно, увеличение зарплаты и/или должности/категории.
Например, предположим теперь, что в определениях есть небольшие ошибки/опечатки.

жЕвотное с большими ушами — 1
жИвотное с большими ушами и длинным носом — 1

Как переписать ваш код так, чтобы отработало корректно, с тем же результатом, как будто и не было опечаток.
Мне решения присылать не нужно. Это просто мысли вслух. Для разминки кому интересно себя проверить.
На словах все верно. Проход один, число сравнений минимально. Если человек на собеседовании говорит так, то ему сразу первый плюс.
Чтобы программисту не приходилось справляться с волнением на работе, должен быть адекватный менеджер проектов или начальник отдела, которые должны создавать комфортную рабочую среду. И сразу не нужно разработчиков проверять на стрессоустойчивость. А если вы пришли на собеседования и на вас кричат, обливают водой из стакана на столе, то стоит задуматься, а туда ли я пришел.
1

Information

Rating
Does not participate
Location
Кипр
Date of birth
Registered
Activity