Я готовлю набор данных для своих академических интересов. В исходном наборе данных содержится конфиденциальная информация от транзакций, например Credit card no
, Customer email
, client ip
, origin country
и т. Д. Я должен обмануть эту конфиденциальную информацию, прежде чем покинуть источник данных источника и сохранить их для моих алгоритмов анализа. Некоторые из полей данных могут быть категоричными и не будут сложно запутывать. Проблема заключается в некатегорических полях данных, как наилучшим образом я должен запутывать их, чтобы оставить базовые статистические характеристики моих данных нетронутыми, но сделать невозможным (по крайней мере математически трудно) вернуться к исходным данным.Обфускация конфиденциальных данных для машинного обучения
EDIT: Я использую Java в качестве front-end для подготовки данных. Затем подготовленные данные будут обрабатываться Python для машинного обучения.
EDIT 2: Чтобы объяснить мой сценарий, как продолжение комментариев. У меня есть поля данных, как:
'CustomerEmail', 'OriginCountry', 'PaymentCurrency', 'CustomerContactEmail',
'CustomerIp', 'AccountHolderName', 'PaymentAmount', 'Network',
'AccountHolderName', 'CustomerAccountNumber', 'AccountExpiryMonth',
'AccountExpiryYear'
Я должен запутать данные, присутствующие в каждой из этих областей (образцы данных). Я планирую рассматривать эти поля как функции (с запутанными данными) и тренировать свои модели по метке двоичного класса (что у меня есть для моих учебных и тестовых образцов).
Можем ли мы знать, какой язык/пакет вы планируете использовать? У меня есть куча идей, как обращаться с кредитной картой нет, ip-адресом и электронной почтой. –
@TimBiegeleisen Спасибо за полезный намек. Добавлена информация к моему вопросу. – Segmented
Для анализа новых неизвестных данных - процесса распознавания вам нужно будет преобразовать данные в форму, которую вы использовали для обучения системы. Это преобразование можно легко преобразовать, особенно если вы используете только Python или Java. –