Сервис ahunter.ru – взгляд изнутри

Внутри нашего сервиса находится Информационная система по распознаванию и исправлению почтовых адресов Российской Федерации (Охотник за адресами). Данная система также является ядром другого нашего продукта - ahunterES. Более того, на базе «Охотника за адресами» мы разрабатываем специализированные решения по очистке и обогащению контактных данных для нужд различных заказчиков.

Не так давно мы участвовали в государственном проекте по созданию технологии обогащения справочников КЛАДР и ФИАС на основе информации, представленной в Государственном кадастре недвижимости. Одним из звеньев данной технологии является специализированное решение по очистке адресов на базе информационной системы «Охотник за адресами».

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

«Охотник за адресами» официально запатентован в Российской Федерации.

Назначение информационной системы «Охотник за адресами»

«Охотник за адресами» представляет собой программное решение, предназначенное для выполнения проверки, исправления, очистки и нормализации почтовых адресов и телефонных номеров России, а также поиска и проверки почтовых адресов в текстах официальных документов, таких как договора, приказы, счета-фактуры, анкеты и резюме.

Данная система имеет несколько режимов работы, что позволяет использовать ее для различных нужд в различных областях. Обобщенно направления, где можно и нужно ее использовать, можно охарактеризовать следующим образом: «Любая сфера деятельности, где необходимо обеспечить корректность и высокую достоверность информации о почтовых адресах, номерах телефонов, а также именах и фамилиях».

Совместная обработка адреса и телефона: пример

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

Предположим, что наш адрес записан в виде следующей строки: Ивановка, ул. Строителей, д.1. Эти данные не являются полными, поскольку в них нет явного указания на тип адресного объекта Ивановка, также нет указания на его принадлежность региону России. Почтовый индекс также отсутствует. В процессе очистки данного адреса «Охотник за адресами» устраняет многие из этих проблем. Это продемонстрировано на рисунке.

Как видно, в адресных данных распознан населенный пункт село Ивановка. Адрес разложен на отдельные компоненты, для него восстановлен пропущенный регион Красноярский край, район Шарыповский, а также почтовый индекс. Однако в результате обработки выявлен еще один вариант распознавания, что свидетельствует о том, что данные не являются однозначными. Действительно, в России существует еще одно село Ивановка с искомой улицей, которое находится в Оренбургской области.

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

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

Однако если мы обработаем этот номер совместно с исходным многозначным адресом, то получим следующую картину.

Неоднозначности в адресе и телефонном номере были автоматически устранены, поскольку сервис выполнил перекрестную проверку этих контактных данных. Теперь мы точно знаем, что в почтовом адресе подразумевается село Ивановка именно Красноярского края, также теперь мы абсолютно точно знаем, что телефонный номер имеет код зоны 391, который мы фактически восстановили за счет совместной обработки с адресными данными.

Возможности «Охотника за адресами» по обработке данных

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

  • Исправление опечаток в наименованиях адресных объектов и компонентах ФИО.
  • Восстановление пропущенных адресных компонентов. Например, у деревни может быть пропущен район или регион, которому она принадлежит.
  • Исправление адресов, у которых отсутствуют наименования типов адресных объектов (например, Москва, Кутузовский, 14).
  • Исправление регистра написания наименований адресных объектов (например, улиц). Адреса исправляются независимо от того, написаны они в верхнем, нижнем или смешанном регистре.
  • Исправление падежа у наименований регионов и районов, в частности, если они записаны в родительном, а не в именительном падеже (например, г. Муром Владимирской области).
  • Коррекция с учетом нестандартных и неоднозначных сокращений типов адресных объектов (например, проезд Окружной или пр. Окружной, проспект Мира или пр. Мира, ст. Лесная или станица Лесная).
  • Исправление адресов с неодинаковым позиционированием типов адресных объектов по отношению к их наименованиям (например, улица 1-ая Синичкина, 1-ая улица Синичкина или Синичкина 1-ая улица).
  • Стандартизация адресов независимо от порядка следования слов в наименованиях адресных объектов.
  • Приведение адресных компонентов к каноническому виду, даже если в исходной записи используется неполное или неправильное сокращение наименования адресного объекта. Например, С-Петербург вместо Санкт-Петербург, Малотобольская вместо Мало-Тобольская.
  • Очистка данных независимо от наличия или отсутствия стандартных разделителей адресных полей, а также независимо от наличия или отсутствия разнородных знаков препинания (тире, запятых, кавычек).
  • Восстановление почтового индекса адреса.
  • Распознавание фрагментов, содержащих информацию о почтовом адресе РФ, в сплошных текстах документов с возможностью одновременной проверки и исправления распознаваемых адресов.
  • Детальный анализ отдельно взятого адреса. Для проверяемого адреса может быть получено несколько вариантов его правильного написания, в случае, если адрес записан неоднозначно. Варианты распознавания ранжируются по степени соответствия исходной строке.
  • Оценка качества обрабатываемых адресных данных. При обработке адрес снабжается его количественной оценкой, позволяющей судить о том, насколько качественно были записаны исходные данные.
  • Актуализация устаревших почтовых адресов. Если к настоящему моменту адресный объект перестал существовать или был переподчинен другому адресному объекту, «Охотник за адресами» выполнит его преобразование к актуальному на данный момент виду, снабдив при этом адрес соответствующим комментарием.
  • Обогащение обработанных контактных данных. Для почтового адреса может быть получен код КЛАДР и географические координаты, а для телефонного номера могут быть получены сведения о его географической принадлежности, а также информация об операторе связи, отвечающем за данный номер. Для ФИО персоны может быть определен пол и национальность.
  • Комплексная перекрестная проверка и очистка информации о контакте, которая может включать в себя несколько телефонных номеров контакта (например, мобильный, домашний и рабочий номера), а также несколько адресов (например, адрес проживания и адрес прописки).

Корректность адресных данных

Адресная информация обычно вводится в компьютер человеком, что зачастую делается с ошибками. Так, при вводе на слух оператор может допустить опечатку в одном или нескольких наименованиях (например, в названии улицы и города). При вводе адреса, как правило, у оператора под рукой не оказывается информации о почтовом индексе, поскольку в паспорте этой информации нет, а наизусть не каждый человек его помнит. Более того, кроме индекса, в адресе зачастую опускаются наименования регионов, районов, городов и даже улиц. Пример, приведенный выше, наглядно демонстрирует данный факт.

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

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

Корректность телефонных номеров

Человеческий фактор оказывается основной причиной возникновения проблем, возникающих и при вводе телефонных номеров. Телефонный номер по своей сути обладает определенной структурой, в рамках которой существуют коды, указывающие на его географическую принадлежность. Так, номер, начинающийся с кода 495, принадлежит городу Москве. Когда менеджер какой-нибудь компании вводит номер телефона нового клиента в CRM-систему, для экономии времени он может пропустить данную информацию. Более того, новый клиент может ее вообще не сообщить, полагая, что эти сведения очевидны. Тем не менее, наравне с телефонами, начинающимися на 495, в Москве равноправно сосуществуют номера, начинающиеся на 499. Поэтому в такой ситуации вероятность ввода в CRM недостоверной информации о клиенте весьма велика. В примере, приведенном выше, мы увидели телефонный номер, соответствующий деревне Ивановка в Красноярском крае, однако тот номер был введен в CRM по ошибке без кода зоны, и, как оказалось, в результате данный номер можно было интерпретировать множеством различных способов.

Другой проблемой, с которой может столкнуться компания – это отсутствие информации о географической принадлежности номера. Предположим, что компании необходимо сделать обзвон своих клиентов. Как правило, это делается централизовано call-центром. Без знания географической принадлежности номера может возникнуть неприятная ситуация, когда звонок будет выполнен в неудобное для клиента время, например, ночью, что в итоге приведет к негативу с его стороны в адрес компании.

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

Области применения наших продуктов по очистке данных

Области, в которых используются наши продукты, построенные на базе «Охотника за адресами», весьма разнообразны. В ходе эксплуатации сервиса ahunter.ru и внедрении сервера ahunterES мы регулярно сталкиваемся с новыми бизнес-задачами, о которых изначально даже не догадывались. Наиболее часто к нам обращаются с просьбой устранить проблемы в почтовых адресах и номерах телефонов в следующих областях.

Очистка почтовых адресов клиентов банка

Достоверные почтовые адреса необходимы банкам, когда они заключают договор с физическим лицом, например, о выдаче потребительского кредита. Паспортной информации не всегда оказывается достаточно, поскольку адрес проживания клиента может отличаться от адреса прописки. К тому же, в паспорте не указывается почтовый индекс. При выдаче кредита, оператор банка вводит почтовый адрес клиента вручную, при этом высока вероятность допустить опечатку или орфографическую ошибку, т.к. большинство адресных наименований – это имена собственные, которые не всегда подчиняются базовым правилам правописания русского языка. Не имея возможности проверить и исправить почтовый адрес, банк рискует временно утратить связь с клиентом, которому был выдан кредит. В частности, клиент может не получать своевременно оповещения об имеющейся задолженности по кредиту. «Охотник за адресами» может выполнять проверку отдельных почтовых адресов в режиме on-line, т.е. непосредственно при вводе почтового адреса менеджером. Также «Охотник за адресами» имеет возможность выполнять пакетную проверку почтовых адресов, что может быть использовано для проверки и исправления уже заполненной CRM-базы с персональной информацией о клиентах.

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

Обработка резюме соискателей

Корректные почтовые адреса необходимы агентствам по трудоустройству при обработке резюме соискателей. На вход таких организаций поступают потоки резюме, каждое из которых содержит текст, характеризующий соискателя, где также указывается его почтовый адрес. Проверить корректность каждого такого адреса практически невозможно, поскольку кроме проверки сначала требуется его найти в самом тексте резюме, а при плотном потоке таких текстов, сделать это становится весьма проблематично. Режим работы «Охотника за адресами», позволяющий анализировать сплошные тексты на предмет наличия адресной информации, в данном случае может оказать неоценимую помощь, поскольку позволяет мгновенно отыскать в тексте резюме почтовые адреса, проверить и исправлять их, а также восстанавливать пропущенную информацию (например, почтовый индекс).

Стандартизация почтовых адресов и телефонов в Интернет-торговле

Деятельность любого Интернет-магазина тесно связана с обработкой контактной информации покупателей, от достоверности которой зависит, удастся ли выполнить данный заказ или нет. Если адрес, указанный покупателем на сайте или записанный менеджером со слов покупателя, введен с ошибкой, то это может привести к срыву поставки товара и к вытекающим отсюда издержкам на транспортировку и упущенной выгоде. Во избежание таких ситуаций продукты на базе «Охотника за адресами» могут оповещать, что введенный адрес неверен или не соответствует телефонному номеру. В случае ввода контактных данных оператором «Охотник за адресами» может предложить верный вариант (или несколько вариантов, например, если адрес неполон). Для работы в таком режиме предусмотрена возможность стыковки «Охотника за адресами» посредством его программного интерфейса API с веб-приложением, отвечающим за регистрацию заказов Интернет-магазина.

Маркетинговые агентства и агентства подписки

Если бизнес связан с рассылкой корреспонденции или доставкой подписных изданий, то, как правило, в распоряжении клиента есть большая адресная база подписчиков. Основная проблема, которая возникает при работе с такой базой, - это корректность адресных данных. Если адрес написан некорректно, или его вообще не существует, то доставить какую-либо корреспонденцию до подписчика будет не возможно. С помощью продуктов на базе «Охотника за адресами» можно легко и быстро проверить адреса на существование, найти и исправить ошибки в уже имеющихся данных, привести все контакты к единому формату в соответствии с КЛАДР и требованиями Почты России.

Выверка адресных данных абонентов телекоммуникационных компаний

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

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

Решение для телекоммуникационных компаний может быть различным, начиная от разовой пакетной обработки всех накопленных у оператора контактных данных, заканчивая внедрением информационной системы ahunterES на базе «Охотника за адресами» в инфраструктуру заказчика для обеспечения корректности ввода информации о новых абонентах на постоянной основе.

Варианты использования

Чаще всего продукты, в качестве ядра которых выступает «Охотник за адресами», подразумевают клиент-серверную организацию работы.

В роли клиента в данной схеме выступает программное обеспечение, получающее на вход почтовые адреса и телефонные номера, подлежащие проверке и исправлению. Данное приложение отправляет соответствующие запросы серверу. Клиент может быть реализован в виде веб-приложения, позволяющего пользователю использовать функции «Охотника за адресами» посредством веб-интерфейса. Примером такого приложения является наш сервис ahunter.ru.

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

Проверка и исправление контактных данных в режиме on-line

Использование «Охотника за адресами» в режиме on-line подразумевает наличие человека-оператора, который получает информацию о почтовом адресе из различных источников. Например, оператор может воспринимать его на слух по телефону или со слов клиента, либо взять его из текста какого-нибудь документа.

Пример реализации такого способа взаимодействия с «Охотником за адресами» в виде веб-приложения доступен здесь. Используя форму для ввода, оператор формирует строку почтового адреса и отправляет запрос на сервер. В качестве результата пользователь получает один или несколько вариантов правильного написания данного адреса с восстановленными компонентами и исправленными ошибками.

Аналогичные действия могут выполняться для обработки в режиме on-line телефонного номера или для перекрестной обработки адреса и телефона. Приведенные выше примеры с селом Ивановка сформированы именно с использованием данного режима сервиса.

Поиск и исправление адресов в текстах документов в режиме on-line

Распознавание и исправление адресов в документах является той функцией, с которой начиналась разработка «Охотника за адресами». Эта задача сложнее обработки одной адресной строки, поскольку распознавание необходимо выполнить в большом текстовом окружении, например, в тексте договора, резюме или объявления о продаже недвижимости.

В данном режиме исходными данными, содержащими почтовые адреса, являются тексты электронных документов. Тексты могут иметь различную природу. Это могут быть электронные документы, сообщения электронной почты, сообщения, извлеченные из блогов и социальных сетей, новостные ленты, представленные обычными веб-страницами или RSS-каналами.

Пример веб-приложения, демонстрирующего возможности работы «Охотника за адресами» в таком режиме, доступен по следующей ссылке. Оператор вставляет в форму ввода текст проверяемого документа и отправляет его для обработки серверу «Охотника за адресами». В качестве результата проверки пользователь получает проверенный текст, в котором выделены найденные фрагменты, содержащие адресную информацию. С каждым таким фрагментом связан проверенный и исправленный вариант почтового адреса, с восстановленными недостающими полями.

Пакетная проверка и исправление контактных данных

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

Информация о клиенте может быть представлена в виде почтового адреса, телефонного номера и ФИО, либо в виде целого документа (например, в виде анкеты, договора или резюме), в тексте которого подразумевается наличие контактных данных.

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

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

Использование функций «Охотника за адресами» посредством API

Существуют варианты использования «Охотника за адресами», когда его функции встраиваются в бизнес-процессы заказчика. Например, оператору банка привычнее работать с существующей банковской системой, клиентские данные в такой системе проходят определенный путь от момента их ввода, до момента их попадания в клиентскую базу. Более того, будучи введенными в базу эти данные впоследствии могут принимать участие в различных задачах, таких как дедупликация, обогащение и консолидация данных о клиентах, а также рассылка уведомления и рекламной продукции. Аналогично в работе Интернет-магазина клиентские данные проходят определенный путь от момента регистрации клиента, до оформления и подтверждения заказа. В ходе продвижения этих данных они могут подвергаться автоматической обработке посредством функций очистки, стандартизации и перекрестной проверки. Во всех подобных случаях функции «Охотника за адресами» становятся частью бизнес-процессов заказчика, как показано на рисунке ниже.

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

«Охотник за адресами» и построенные на его основе продукты органично вписываются в эту архитектуру за счет своего сервисно-ориентированного REST API. Любой внешний процесс, в том числе интеграционная шина, могут отправить «Охотнику за адресами» специализированный HTTP-запрос и получить результат обработки в виде XML- или JSON-сообщения. Такая, достаточно простая, схема позволяет интегрировать наш сервис с любой средой, независимо от того, какие технологии, платформы и языки программирования используются в конечных приложениях.

версия сервиса:
© ixLab, 2007-2017, e-mail: info@ixlab.ru
обработано за 1 (мс)