fclesio / ml-adversarial

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Codecon Dev 2021 - Ataques Adversariais em Machine Learning

Esse repositório contém o código da palestra Ataques Adversariais em Machine Learning.

Os slides contém todas as referências e um material em anexo.

Demos

  • Ataque na cadeia de insumos: Devido aos grandes recursos (dados + computação) necessários para treinar algoritmos, a prática atual é reutilizar modelos treinados por grandes corporações e modificá-los ligeiramente para a tarefa em questão (por exemplo: ResNet é um modelo de reconhecimento de imagem popular da Microsoft). Esses modelos foram selecionados em um Model Zoo (o Caffe hospeda modelos populares de reconhecimento de imagem). Neste ataque, o adversário ataca os modelos hospedados no Caffe, envenenando os modelos que forem derivados a partir do modelo envenenado[1].

  • Inferência de membros: O invasor pode determinar se um determinado registro de dados faz parte do conjunto de dados de treinamento do modelo ou não [1]

  • Backdoor em modelos de ML: Como no “Atacando na cadeia de insumos”, neste cenário de ataque, o processo de treinamento é total ou parcialmente terceirizado para uma parte mal-intencionada que deseja fornecer ao usuário um modelo treinado que contenha um backdoor. O modelo com o backdoor teria um bom desempenho na maioria das entradas (incluindo entradas que o usuário final pode ter em uma base de validação), mas causaria erros de classificação direcionados ou degradaria a precisão do modelo para entradas que satisfaçam alguma propriedade secreta escolhida pelo invasor, que será terá como gatilho um conjunto de dados específico [1]

  • Inversão de Modelo: Attacker recupera os recursos secretos usados no modelo por meio de consultas modificadas [1]

  • Envenenamento de modelos: O objetivo do atacante é contaminar o modelo de máquina gerado na fase de treinamento, para que as previsões sobre os novos dados sejam modificadas na fase de teste [1]

  • Roubo de modelo: Os atacantes recriam o modelo subjacente, consultando legitimamente o modelo. A funcionalidade do novo modelo é a mesma do modelo subjacente. [1]

Referências

[1] - Kumar, Ram Shankar Siva, et al. "Failure modes in machine learning systems." arXiv preprint arXiv:1911.11034 (2019)..

[2] - Adversatial.io

[3] - AI Myths

About

License:Creative Commons Zero v1.0 Universal


Languages

Language:Jupyter Notebook 98.2%Language:Python 1.2%Language:Shell 0.6%