Как стать автором
Обновить

Комментарии 26

Вы вот так сейчас пишите, как-будто вы дадата — это гугл, и все про него знают. Я вот не знаю. Вы кто такие?
Ну, пост в корпоративном блоге, поэтому так и пишем :–) Дадата — сервис проверки и исправления контактных данных (ФИО, адреса, телефоны, email).
Я понимаю вас, но статью видят не только те, кто подписан на ваш блог, поэтому, например, мне было совершенно не ясно, о чем речь. Спасибо.
С ужасом смотрю на скриншоты вашего сервиса. Вы что, и фамилию мою знаете? :)
Если она начинается на «Лы», то да :–)
Спасибо что заметили, это первый опыт публикации release notes для нас, будем в дальнейшем писать.
Определение принадлежности номера к оператору идёт по пулам?
Ага. По плану нумерации Россвязи.
Потестировал форму на главной странице, в основном по адресам.

Название моей улицы состоит из двух слов — «Комиссара Пожарского». Но очень часто это название используется без слова «Комиссара», просто «Пожарского».

Допустим мы опечатались в слове «Пожарского», и по разному использовали слово «Комиссара».

Тесты и результаты:
Пермь Комиссара Пжарского 15 — распознало корректно
Пермь Пжарского 15 — не распознало улицу
Пермь К. Пжарского 15 — не распознало улицу (кстати, именно «К. Пожарского» очень частый вариант употребления названия улицы — встречал очень много где)
Просто Пожарского 15, без города — нашло меня в Железнодарожном разъезде «Пожарский» в Приморском крае
Просто Комиссара Пожарского 15, без города но полное точное название — снова Приморский край. Почему разъезд «Пожарский» сейчас попал в выборку, хотя улица «Комиссара Пожарского» явно совпадает на 100% — загадка

Еще совет — если не знаете какой город искать — можно как доп параметр использовать город определенный по номеру телефона, покрайней мере в примере на главной странице.
Большое спасибо за тесты!
Недавно мы писали про то, как новый алгоритм работает с опечатками, и там рассказывали, что строим модели опечаток только на основе проверенных кейсов, которые гарантируют, что адрес не перетянется «не туда». Так случилось, что кейса с Пжарским мы пока не встречали, мы его обязательно добавим если он пройдёт наши тесты.
Основная цель — быть на 100% уверенными в том, что адрес разобран правильно (если разобран).
То есть проблема плохого разбора второго и третьего тестов именно в нетипичной опечатке, которая встретилась адресному фильтру (например, Пермь К. Пожарского фильтр разбирает правильно).
У фильтра есть приоритет у городов и населённых пунктов над улицами. То есть, если задать только улицу, то фильтр сначала будет искать по городам и н.п. Проблема обычно решается городами по умолчанию, то есть списком городов, в которых стоит искать адрес, если в нём отсутствует указание города.
В функционале на Дадата отсутствует возможность задавать город или регион по умолчанию, поэтому фильтр при отсутствии города пытается притянуть его к любому городу или населённому пункту, который есть в России. Им оказался железнодородный разъезд «Пожарский»:)
Определение города по номеру телефона есть в корневом продукте Фактор, но на Дадате не включено из-за разной специфики заказчиков. Ведь адрес может быть не только проживания, но и, например, постоянной регистрации, которая часто не соответствует городу проживания.
А вы в таких случаях (когда нет четкой логики) используете фильтрацию списка н.п. (если он не был задан), по IP адресу пользователя? Ведь очень частый кейс это заполнение собственного адреса, и уж город из которого идет запрос опознать по IP можно достаточно точно. По крайней мере это даст дополнительный весовой коэффициент при подборе н.п.
Так как подсказки подключаются на страницу в виде скриптов, они не видят ip адрес и иную информацию о пользователе. Впрочем, можно добавить скрытый необязательный параметр для ip адреса, чтобы его передавал используемый подсказки сервис, а мы определяли вероятный город.
Пока можно пробовать передавать отдельным параметром город, то есть самостоятельно мэтчить ip.
И ещё мы внимательно прислушиваемся ко всем предложениям на странице поддержки, особенно набирающим голоса;)
AlexGechis немного ошибся :–) Конечно, в подсказках мы используем город, определенный по IP-адресу пользователя. Например, если вы находитесь в Новосибирске и вводите «сирен», то увидите Сиреневую улицу. А если в Москве — то Сиреневый бульвар.
Да, приношу извинения за дезинформацию, заработался со стандартизацией адресов:)
Большое спасибо. Этот релиз намного интереснее предыдущего.
Спасибо, что прислушиваетесь к просьбам.
Очень легко интегрируется в любую форму. Все очень логично.
Вы очень вовремя :)
Уже задумывался над собственным велосипедом (нужно подсвечивать на карте гугла заданные адреса), а тут вы со своей статьёй — сразу же нашлось применение API модулю.

Но,… на первом же тест-кейсе приложение споткнулось :(
Адрес: «Москва, ул. 8 марта, д. 8», гео-координаты выдаются с точностью «город» и дают точку в районе м. Преображенская площадь.
Та же проблема с улицами «1я улица 8 марта», «2я улица 8 марта». С другими, начинающимися на цифру, улицами всё в порядке («26 Бакинских Коммисаров») — выдаются координаты конкретного дома.
И даже «Химки, 8 марта, 6» показывает правильные координаты.

Похоже, мне попалась заколдованная улица :)
Из всех улиц Москвы эта, пожалуй, самая сложная. Дело в том, что улиц Москва 8 Марта две штуки, и находятся они в разных районах города. Определить про какую улицу идёт речь нельзя не только автоматически, но и вручную без звонка абоненту (если только не указана дополнительная информация).
А вот с 1-й и 2-й 8 марта всё проще. Данных о координатах этих улиц пока нет в OSM, поэтому мы про них не знаем. В ближайшем будущем мы планируем заняться пополнением OSM популярными кейсами, которых там пока нет.
Распознаете ли вы адреса, заданные в осм диапазонами (через addr:interpolation)
Распознаете ли вы двойные адреса?
Распознаете ли вы адресацию без улиц и какие схемы адресации помимо улица дом вы поддерживаете?
Мы распознаём адреса согласно ФИАС, кроме этого у нас есть свои дополнительные справочники. То есть, если дом в ФИАС задан без улицы, то мы его найдём.
То же самое касается двойных адресов — если в ФИАС они есть (обычно пишут одну улицу и два или три номера дома через дробь), то мы их распознаем.
Признак интерполяции мы не используем из-за того, что она не даёт точных координат домов диапазона. В случае, если у нас нет координат дома, мы возвращаем координаты соседнего или координаты центра улицы, что не хуже, чем при использовании интерполяции.
Планируется ли добавление общественных мест в подсказки? Чтобы определяло координаты
Вы имеете в виду парки, катки и т.п., или же организации типа кафе или кинотеатров?
кафе, кинотеатры, аэропорты, памятники, скверы и т.д.
Расскажите, пожалуйста, какой у вас сценарий использования, как в нем участвуют координаты общественных мест?
служба такси
А вот ещё тест. В центре Москвы, на стыке Маросейки и Малого Златоустинского переулка, есть дом с номером 9/13/2c7 (на доме висит табличка именно с этим номером и яндекс карты этот номер знают). Независимо от того, введёно название улицы, или переулка, номер дома Ваша система ошибочно распознаёт как 13/2с7. А вот геокоординаты даёт разные, но в обоих случаях тоже безусловно ошибочные.
Спасибо за замечание, мы исправим поведение в ближайшем будущем. К слову, в подсказках проблемы при вводе данного адреса не возникает, только при стандартизации.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий