Comments 12
А можно подробнее обосновать, почему получится корректная модель у каждого из участников обмена?
Сама по себе часть модели, которая образуется на сервере одного из участников, не несет какого-либо смыла, поскольку она строится на секретах, и только после объединения весов моделей (сложения) она становится корректной. С нашей стороны тесты показали, что модели, обученные без MPC и с применением MPC, имеют идентичное качество.
Еще раз обратим внимание, что в процессе обучения модели исходные данные не передаются, те данные, что передаются (секреты), по отдельности не несут смысловую информацию. Поэтому неясно, как вы видите архитектуру энкодера, который хотели бы обучить. Опишите, пожалуйста, подробнее предлагаемую вами схему.
Например секретные данные (username,password). Что мешает обучить модель выдавать по входному username выходной password? И модель может быть избирательной в части обучения например не релевантные username не рассматривать для ускорения процесса.
Кажется, вы не совсем правильно понимание термин «секреты». Как указано в тексте, «секреты» это не секретные данные (как вы пишете user/pwd), а представление целых чисел (а по МPC все числа переводятся в такой формат) в виде разности двух целых чисел. При этом только одно из двух передается на другой сервер для вычислений. Поскольку каждое число может быть бесконечным количеством способов представлено в виде разности двух чисел (а нашем случае есть ограничение по типу числа), то передаваемые данные сам по себе бессмысленны без своей пары. А значит, и декодировать только одно из них не имеет смысла.
А что мешает компании "Б" обучить две модели - одну нормальную, и вторую искаженную. Нормальную оставить себе и в сумме с моделью, полученной от компании "А" получать валидный результат. А вот в ответ компании "А" отдать искаженную модель?
Присоединяюсь к вопросу.
Описанный алгоритм опирается на веру в добросовестность партнёра?
Или всё же есть рабочие способы проверить полученные исходные данные на корректность?
Текущая реализация процесса обучения предполагает синхронное обучение моделей на стороне обоих партнеров. Причем после построения процесс пересылки обученных «половинок» итоговой модели происходит автоматически по алгоритму, прописанному в самой реализации библиотеки по MPC. Поэтому нельзя сделать какую- то свою «половинку» и использовать ее вместо той, что получилась в процесс обучения по MPC.
Совместные конфиденциальные вычисления: как работает технология, которая через 5 лет может изменить мир