Очистка данных для машинного обучения с помощью стиральной машины

Что, если бы вы могли стереть всю личную информацию из своих текстовых данных? Стиральная машина данных упрощает задачу. Холодная стирка удаляет данные, которые идентифицируют отдельных людей, и, когда вы повышаете температуру, удаляются также компании и местоположения.

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

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

Машина для стирки данных нацелена на персональные данные на естественном языке, то есть длинные строки, состоящие из читаемого человеком текста. Мы регулярно сталкиваемся со строками с информацией, необходимой для предоставления услуги, но эти строки часто содержат личные данные, которые нам не нужны. В SAP Concur мы имеем дело с данными о командировках и расходах, и для нас собранные данные о квитанциях являются классическим примером этой проблемы. Нам нужна такая информация, как сумма, поставщик и дата возмещения пользователю, но квитанция также может содержать имя пользователя, номер телефона и т. Д. Формы отзывов и комментариев пользователей - еще один хороший вариант использования: когда есть возможность для ввода произвольного текста, пользователи часто отправляют личные данные, такие как имена и адреса электронной почты. Мы хотели бы иметь возможность автоматически удалять это.

Концепция конфиденциального набора

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

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

Способы идентификации личных данных

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

  1. Регулярные выражения. Некоторые части личных данных имеют очень специфические форматы, такие как номера социального страхования, номера телефонов и адреса электронной почты. Их можно определить и удалить с помощью хорошо составленного регулярного выражения. Одним из недостатков этого метода является то, что он не собирает плохо отформатированные данные. Однако для некоторых случаев использования может быть приемлемо просто удалить все большие числа: SSN состоит из 8 цифр, а номер телефона обычно составляет 9 или более цифр.
  2. Модели распознавания именованных сущностей. Это стандартные модели обработки естественного языка, которые идентифицируют фрагменты текста, которые можно классифицировать как сущности, такие как люди, места и организации. Эти модели используют синтаксическую информацию о словах в предложении (части речи - существительное, глагол и т. Д.), А также помеченные обучающие данные. Предварительно обученные модели доступны в пакетах с открытым исходным кодом, таких как spaCy, или также можно использовать предварительно определенные архитектуры моделей для обучения новых моделей.
  3. Пользовательские модели машинного обучения. Они позволяют идентифицировать личные данные, относящиеся к рассматриваемому набору данных, но весьма вероятно, что данные обучения, возможно, потребуется пометить вручную. Это может занять много времени, но в некоторых ситуациях от 100 до 1000 помеченных примеров могут дать хорошие результаты.

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

Кто управляет циферблатом?

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

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

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

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

Специалист по данным может изучить компромисс в системе машинного обучения между точностью и объемом удаляемых данных.

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

Другие статьи из нашей серии о конфиденциальности данных