Modos de Falha no Machine Learning
Microsoft Corporation | Berkman Klein Center for Internet and Society da Universidade de Harvard |
---|---|
Novembro de 2019
Introdução e Antecedentes
Nos últimos dois anos, mais de 200 artigos foram escritos sobre como o Machine Learning (ML) pode falhar devido a ataques adversos aos algoritmos e dados; este número aumentará se incorporarmos os modos de falha não adversos. A quantidade de artigos tem dificultado aos profissionais de ML, quanto mais aos engenheiros, advogados e decisores políticos, acompanharem os ataques aos sistemas de ML e as defesas do mesmo. No entanto, à medida que estes sistemas se tornam mais difundidos, a necessidade de compreender a forma como falham, se pela mão de um atacante ou devido ao desenho inerente de um sistema, só se tornará mais premente. O objetivo deste documento é tabular conjuntamente ambos os modos de falha num único local.
Falhas intencionais, em que a falha é provocada por um atacante ativo que tenta subverter o sistema para atingir os objetivos – quer para classificar erradamente o resultado, inferir dados de preparação privados ou para roubar o algoritmo subjacente.
Falhas não intencionais, em que a falha se deve ao facto de um sistema ML produzir um resultado formalmente correto, mas completamente inseguro.
Gostaríamos de salientar que existem outras taxonomias e estruturas que destacam individualmente os modos de falha intencional[1],[2] e os modos de falha não intencional[3],[4]. A nossa classificação reúne os dois modos de falha separados num único local e aborda as seguintes necessidades:
A necessidade de equipar os programadores de software, as equipas de resposta a incidentes de segurança, os advogados e os decisores políticos com um vernáculo comum para discutir este problema. Após desenvolver a versão inicial da taxonomia no ano passado, trabalhámos com as equipas de ML e segurança em toda a Microsoft, com 23 parceiros externos, organização de normas e governos para compreender como as partes interessadas utilizam a nossa estrutura. Com base neste estudo de utilização e feedback das partes interessadas, iteramos nesta estrutura.
Resultados: Quando apresentados a um modo de falha de ML, observamos frequentemente que desenvolvedores de software e advogados mapearam mentalmente os modos de falha de ML para ataques de software tradicionais, como exfiltração de dados. Assim, ao longo do artigo, tentamos destacar como os modos de falha de machine learning são significativamente diferentes das falhas de software tradicionais de um ponto de vista da tecnologia e da política.
A necessidade de uma plataforma comum para os engenheiros desenvolverem e integrarem nas suas práticas de segurança e desenvolvimento de software existentes. Em termos gerais, queríamos que a taxonomia fosse mais do que uma ferramenta educativa – queremos que esta obtenha resultados tangíveis a nível de engenharia.
Resultados: Usando essa taxonomia como lente, a Microsoft modificou seu processo de Ciclo de Vida de Desenvolvimento de Segurança para toda a sua organização. Especificamente, os cientistas de dados e os engenheiros de segurança da Microsoft partilham agora a linguagem comum desta taxonomia, o que lhes permite modelar de forma mais eficaz as ameaças aos sistemas ML antes de estes serem implementados na produção; as Equipas de Resposta a Incidentes de Segurança também têm uma barra de erros para triagem destas novas ameaças de rede específicas ao ML, o processo padrão para a triagem e resposta de vulnerabilidades utilizado pelo Microsoft Security Response Center e todas as equipas de produtos da Microsoft.
A necessidade de um vocabulário comum para descrever estes ataques entre decisores políticos e advogados. Consideramos que este vocabulário comum para descrever diferentes modos de falha do ML e analisar a forma como os danos podem ser regulados constitui um primeiro passo significativo para uma política informada.
Resultados: Esta taxonomia é escrita para um público interdisciplinar amplo – assim, os formuladores de políticas que estão olhando para as questões de uma perspetiva geral de ML/IA, bem como domínios específicos como desinformação/cuidados de saúde, devem achar útil o catálogo do modo de falha. Também destacamos quaisquer intervenções legais aplicáveis para abordar os modos de falha.
Veja também Modelação de Ameaças de Dependências e Sistemas de IA/ML e Pivôs de Barras de Erros CVDCS para Vulnerabilidades de Machine Learning da Microsoft.
Como utilizar este documento
À partida, reconhecemos que se trata de um documento dinâmico que irá evoluir ao longo do tempo juntamente com o cenário das ameaças. Também não prescrevemos as mitigações tecnológicas a estes modos de falha, dado que as defesas são específicas ao cenário e estão associadas ao modelo de ameaça e à arquitetura do sistema em questão. As opções apresentadas para mitigação de ameaças são baseadas na pesquisa atual e com base na expectativa de que essas defesas também evoluam ao longo do tempo.
Para engenheiros, recomendamos navegar até à descrição geral de possíveis modos de falha e avançar para o documento de modelação de ameaças. Desta forma, os engenheiros podem identificar ameaças, ataques, vulnerabilidades e utilizar a estrutura para planear contramedidas, quando disponíveis. Em seguida, indicamos-lhe a barra de erros que mapeia estas novas vulnerabilidades na taxonomia juntamente com as vulnerabilidades tradicionais do software e que proporciona uma classificação para cada vulnerabilidade de ML (por exemplo, crítica, importante). A barra de erros é facilmente integrada nos manuais de procedimentos/processos de resposta a incidentes existentes.
Para advogados e decisores políticos, este documento organiza os modos de falha da ML e apresenta um quadro para analisar questões-chave relevantes para qualquer pessoa que explore opções políticas, como o trabalho aqui realizado[5],[6]. Especificamente, categorizámos as falhas e as consequências de uma forma que os decisores políticos possam começar a estabelecer as diferenças entre as causas, que por sua vez informarão as iniciativas de políticas públicas para promoverem a segurança de ML. Esperamos que os decisores políticos utilizem estas categorias para começar a delinear a forma como os regimes jurídicos existentes podem (ou não) captar adequadamente problemas emergentes, que regimes jurídicos históricos ou soluções políticas poderiam ter tratado danos semelhantes e onde deveríamos ser especialmente sensíveis às questões das liberdades civis.
Estrutura do Documento
A secções Modos de Falha Intencional e Modos de Falha Não Intencional apresentam uma breve definição do ataque e um exemplo ilustrativo da literatura.
Na secção Modos de Falha Intencional, apresentamos os campos adicionais:
O que tenta o ataque comprometer no sistema ML: Confidencialidade, Integridade ou Disponibilidade? Definimos a Confidencialidade como a garantia de que os componentes do sistema ML (dados, algoritmo, modelo) são apenas acessíveis às partes autorizadas; a Integridade é definida como a garantia de que o sistema ML só pode ser modificado por partes autorizadas; a Disponibilidade é definida como a garantia de que o sistema ML apenas está acessível às partes autorizadas. Em conjunto a Confidencialidade, Integridade e Disponibilidade são denominadas a tríade CIA. Para cada modo de falha intencional, tentamos identificar que parte da tríade CIA está comprometida.
Quanto conhecimento é necessário para montar este ataque: blackbox ou whitebox? Nos ataques ao estilo Blackbox, o atacante NÃO tem acesso direto aos dados de preparação, nenhum conhecimento do algoritmo ML utilizado e nenhum acesso ao código fonte do modelo. O atacante apenas consulta o modelo e observa a resposta. Num ataque ao estilo whitebox, o atacante tem conhecimento de algoritmo ML ou acesso ao código fonte modelo.
Comentário sobre se o atacante está a violar a noção tecnológica tradicional de acesso/autorização.
Resumo das Falhas com Motivação Intencional
Resumo das Falhas Não Intencionais
Detalhes sobre as Falhas Intencionalmente Incentivadas
N.º Cenário | Classe do Ataque | Description | Tipo de Comprometimento | Cenário |
---|---|---|---|---|
1 | Ataques de perturbação | Em ataques de estilo de perturbação, o invasor furtivamente modifica a consulta para obter uma resposta desejada | Integridade | Imagem: O ruído é adicionado a uma imagem de raio-X, o que faz com que as previsões passem de uma varredura normal para uma verificação anormal [1][Blackbox] Tradução de texto: caracteres específicos são manipulados para resultar em tradução incorreta. O ataque pode suprimir uma palavra específica ou até remover a palavra completamente[2][Blackbox e Whitebox] Fala: Os pesquisadores mostraram como dada uma forma de onda de fala, outra forma de onda pode ser replicada exatamente, mas transcreve em um texto totalmente diferente[3][Whitebox, mas pode ser estendida para blackbox] |
2 | Ataques de envenenamento | O objetivo do atacante é contaminar o modelo de máquina gerado na fase de treinamento, para que as previsões sobre novos dados sejam modificadas na fase de testes Alvo: em ataques de envenenamento direcionados, o invasor quer classificar incorretamente exemplos específicos Indiscriminado: O objetivo aqui é causar efeito semelhante ao DoS, o que torna o sistema indisponível. |
Integridade | Em um conjunto de dados médicos onde o objetivo é prever a dosagem do medicamento anticoagulante Varfarina usando informações demográficas, etc. Os pesquisadores introduziram amostras maliciosas com taxa de envenenamento de 8%, o que mudou a dosagem em 75,06% para metade dos pacientes[4][Blackbox] No chatbot Tay, conversas futuras foram contaminadas porque uma fração das conversas anteriores foi usada para treinar o sistema via feedback[5] [Blackbox] |
3 | Inversão do modelo | As funcionalidades privadas utilizadas nos modelos de machine learning podem ser recuperadas | Confidencialidade; | Os pesquisadores foram capazes de recuperar dados de treinamento privados usados para treinar o algoritmo[6] Os autores foram capazes de reconstruir rostos, apenas pelo nome e acesso ao modelo até o ponto em que turks mecânicos poderiam usar a foto para identificar um indivíduo de uma linha com 95% de precisão. Os autores também foram capazes de extrair informações específicas. [Whitebox e Blackbox] [12] |
4 | Ataque de Inferência de Associação | O atacante pode determinar se um dado registo de dados fazia parte do conjunto de dados de preparação do modelo ou não | Confidencialidade | Os pesquisadores foram capazes de prever o procedimento principal de um paciente (por exemplo: cirurgia pela qual o paciente passou) com base nos atributos (por exemplo: idade, sexo, hospital)[7][Blackbox] |
5 | Roubo de modelos | Os atacantes recriam o modelo subjacente ao consultar o modelo de forma legítima. A funcionalidade do novo modelo é a mesma do modelo subjacente. | Confidencialidade | Os investigadores emularam com sucesso o algoritmo subjacente da Amazon, BigML. Por exemplo, no caso da BigML, os investigadores conseguiram recuperar o modelo utilizado para prever se alguém obteria um risco de crédito bom/mau (conjunto de dados do Cartão de Crédito Alemão) com 1150 consultas e em cerca de 10 minutos[8] |
6 | Reprogramação de redes neurais profundas | Através de uma consulta especialmente criada por um atacante, os sistemas de Machine learning podem ser reprogramados para uma tarefa que se desvia da intenção original do criador | Integridade, Disponibilidade | Demonstrou como o ImageNet, um sistema utilizado para classificar uma de várias categorias de imagens, foi reutilizado para contar quadrados. Os autores terminam o artigo com um cenário hipotético: um invasor envia imagens Captcha para o classificador de visão computacional em um serviço de fotos hospedado na nuvem para resolver os captchas de imagem para criar contas de spam[9] |
7 | Exemplo de Contraditório no domínio Físico | Um exemplo contraditório é uma entrada/consulta de uma entidade maliciosa enviada com o único objetivo de enganar o sistema de aprendizado de máquina Esses exemplos podem se manifestar no domínio físico | Integridade | Pesquisadores imprimem em 3D um rifle com textura personalizada que engana o sistema de reconhecimento de imagem pensando que é uma tartaruga[10] Os investigadores constroem óculos de sol com um design que pode enganar os sistemas de reconhecimento de imagem e estes já não reconhecem as faces corretamente[11] |
8 | Fornecedores de ML malicioso que conseguem recuperar dados de preparação | Um fornecedor de ML malicioso pode consultar o modelo utilizado pelo cliente e recuperar os dados de preparação do cliente | Confidencialidade | Os investigadores mostram como o fornecedor malicioso apresenta um algoritmo de backdoor, no qual os dados de preparação privados são recuperados. Conseguiram reconstruir faces e textos, considerando apenas o modelo. [12] |
9 | Atacar a Cadeia de Fornecimento de ML[13] | 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). Estes modelos são organizados num Model Zoo (o Caffe aloja modelos de reconhecimento de imagens populares). Neste ataque, o adversário ataca os modelos alojados no Caffe e envenena assim o conjunto para qualquer outra pessoa. | Integridade | Os investigadores mostram como é possível um atacante registar código malicioso num dos modelos populares. Um programador de ML desprevenido transfere este modelo e utiliza-o como parte do sistema de reconhecimento de imagem no código [14]. Os autores demonstram como no Caffe, onde existe um modelo cujo código hash SHA1 NÃO corresponde ao código hash dos autores, o que indica uma adulteração. Existem 22 modelos sem qualquer código hash SHA1 para verificações de integridade. |
10 | Machine Learning de Backdoor | Tal como em “Atacar a Cadeia de Fornecimento de ML”, neste cenário de ataque, o processo de preparação é total ou parcialmente confiado a terceiros mal intencionados que querem disponibilizar ao utilizador um modelo preparado com uma backdoor. O modelo com backdoor teria um bom desempenho na maioria das entradas (incluindo entradas que o utilizador final pode manter como um conjunto de validação), mas causaria más classificações direcionadas ou degradaria a precisão do modelo para entradas que satisfaçam alguma propriedade secreta, escolhida pelo atacante, a que nos referimos como o acionador de backdoor | Confidencialidade, Integridade | Os investigadores criaram um classificador de placas de rua dos EUA com backdoor que identifica sinais de STOP como limites de velocidade apenas quando um autocolante especial é aplicado ao sinal de STOP (acionador de backdoor). 20 Estão agora a estender esta função a sistemas de processamento de texto, onde palavras específicas são substituídas pelo acionador, sendo este o sotaque do orador[15] |
11 | Explorar dependências de software do sistema ML | Neste ataque, o atacante NÃO manipula os algoritmos. Em vez disso, explora as vulnerabilidades tradicionais do software, como memória intermédia com capacidade excedida. | Confidencialidade, Integridade, Disponibilidade, | Um atacante envia entradas danificadas para um sistema de reconhecimento de imagens que faz com que o mesmo as classifique erradamente ao explorar um erro de software numa das dependências. |
Detalhes sobre as Falhas Não Intencionais
N.º Cenário | Classe do Ataque | Description | Tipo de Comprometimento | Cenário |
---|---|---|---|---|
12 | Acesso Ilícito a Recompensa | Os sistemas de aprendizagem por reforço atuam de formas não intencionais devido a discrepâncias entre a recompensa especificada e a verdadeira recompensa pretendida. | Segurança do sistema | Um enorme corpus de exemplos de jogos em IA foi compilado aqui[1] |
13 | Efeitos Secundários | O sistema RL perturba o ambiente enquanto tenta atingir o seu objetivo | Segurança do sistema | Cenário, texto literal dos autores em [2]: “Suponha que um criador quer um agente RL (por exemplo, o nosso robô de limpeza) para atingir algum objetivo, como mover uma caixa de um lado da sala para o outro. Por vezes, a forma mais eficaz de atingir o objetivo passa por fazer algo não relacionado e destrutivo para o resto do ambiente, como derrubar um vaso com água que está no caminho. Se o agente receber uma recompensa apenas por mover a caixa, provavelmente derrubará o vaso”. |
14 | Mudanças de distribuição | O sistema é testado em um tipo de ambiente, mas é incapaz de se adaptar a mudanças em outros tipos de ambiente | Segurança do sistema | Os investigadores prepararam dois agentes RL topo de gama, Rainbow DQN e A2C numa simulação para evitar lava. Durante a preparação, o agente RL conseguiu evitar a lava com sucesso e atingir o objetivo. Durante os testes, deslocaram ligeiramente a posição da lava, mas o agente RL não a conseguiu evitar [3] |
15 | Exemplos naturais do contraditório | O sistema reconhece incorretamente uma entrada que foi encontrada usando mineração negativa | Segurança do sistema | Aqui, os autores mostram como, através de um processo simples de extração negativa intensiva[4], é possível confundir o sistema ML ao transmitir o exemplo. |
16 | Corrupção Comum | O sistema não é capaz de lidar com perturbações e corrupções comuns, como inclinação, zoom ou imagens com dados irrelevantes. | Segurança do sistema | Os autores[5] mostram como corrupções comuns, como alterações de brilho, contraste, névoa ou ruído adicionados às imagens, têm uma queda significativa nas métricas de reconhecimento de imagens |
17 | Testes Incompletos em Condições Realistas | O sistema de ML não é testado em condições realistas em que se destina a funcionar | Segurança do sistema | Os autores em [25] destacam que, embora os defensores tenham, normalmente, em conta a resistência do algoritmo ML, perdem de vista as condições realistas. Por exemplo, debatem que um sinal de STOP em falta ter sido derrubado pelo vento é mais realista do que um atacante tentar perturbar as entradas do sistema. |
Confirmações
Gostaríamos de agradecer a Andrew Marshall, Magnus Nystrom, John Walton, John Lambert, Sharon Xia, Andi Comissoneru, Emre Kiciman, Jugal Parikh, Sharon Gillet, aos membros do grupo de trabalho de Segurança do Comité AETHER (IA e Ética em Engenharia e Pesquisa) da Microsoft, Amar Ashar, Samuel Klein, Jonathan Zittrain e aos membros do Grupo de Trabalho de Segurança de AI em Berkman Klein pelo útil feedback proporcionado. Gostaríamos também de agradecer aos revisores de 23 parceiros externos, organização de normas e organizações governamentais por moldarem a taxonomia.
Bibliografia
[1] "Security Matters: A Survey on Adversarial Machine Learning". Pré-impressão arXiv arXiv:1810.07339 (2018).
[2] Chakraborty, Anirban, et al. Pré-impressão arXiv arXiv:1810.00069 (2018).
[3] Ortega, Pedro, and Vishal Maini. "Construindo inteligência artificial segura: especificação, robustez e garantia." Blog de Pesquisa de Segurança da DeepMind (2018).
[4] Amodei, Dario, et al., "Problemas concretos na segurança da IA". Pré-impressão arXiv arXiv:1606.06565 (2016).
[5] Shankar Siva Kumar, Ram, et al. Pré-impressão arXiv arXiv:1810.10731 (2018).
[6] Calo, Ryan, et al. Documento de Pesquisa da Faculdade de Direito da Universidade de Washington 2018-05 (2018).
[7] Paschali, Magdalini, et al., "Generalizability vs. Robustness: Adversarial Examples for Medical Imaging." arXiv preprint arXiv:1804.00504 (2018).
[8] Ebrahimi, Javid, Daniel Lowd, and Dejing Dou. "On Adversarial Examples for Character-Level Neural Machine Translation." preprint arXiv arXiv:1806.09030 (2018)
[9] Carlini, Nicholas, and David Wagner. "Exemplos de contraditório de áudio: ataques direcionados à fala para texto." arXiv preprint arXiv:1801.01944 (2018).
[10] Jagielski, Matthew, et al., "Manipulating machine learning: Poisoning attacks and countermeasures for regression learning". Pré-impressão arXiv arXiv:1804.00308 (2018 )
[11] [https://blogs.microsoft.com/blog/2016/03/25/learning-tays-introduction/]
[12] Fredrikson M, Jha S, Ristenpart T. 2015. Model inversion attacks that exploit confidence information and basic countermeasures
[13] Shokri R, Stronati M, Song C, Shmatikov c. 2017. Membership inference attacks against machine learning models. In Proc. of the 2017 IEEE Symp. on Security and Privacy (SP), San Jose, CA, 22–24 May 2017, pp. 3–18. Nova Iorque, NY: IEEE.
[14] Tramèr, Florian, et al., "Stealing Machine Learning Models via Prediction APIs". Simpósio de Segurança da USENIX. 2016.
[15] Elsayed, Gamaleldin F., Ian Goodfellow, and Jascha Sohl-Dickstein. "Reprogramação Adversarial de Redes Neurais." Pré-impressão arXiv arXiv:1806.11146 (2018).
[16] Athalye, Anish, and Ilya Sutskever. "Sintetizando exemplos robustos e contraditórios." arXiv pré-impressão arXiv:1707.07397(2017)
[17] Sharif, Mahmood, et al., "Adversarial Generative Nets: Neural Network Attacks on State-of-the-Art Face Recognition". Pré-impressão arXiv arXiv:1801.00349 (2017).
[19] Xiao, Qixue, et al., "Security Risks in Deep Learning Implementations". Pré-impressão arXiv arXiv:1711.11008 (2017).
[20] Gu, Tianyu, Brendan Dolan-Gavitt, and Siddharth Garg. "Badnets: Identificando vulnerabilidades na cadeia de suprimentos do modelo de aprendizado de máquina." Pré-impressão arXiv arXiv:1708.06733 (2017)
[21] [https://www.wired.com/story/machine-learning-backdoors/]
[22] [https://docs.google.com/spreadsheets/d/e/2PACX-1vRPiprOaC3HsCf5Tuum8bRfzYUiKLRqJmbOoC-32JorNdfyTiRRsR7Ea5eWtvsWzuxo8bjOxCG84dAg/pubhtml]
[23] Amodei, Dario, et al., "Problemas concretos na segurança da IA". Pré-impressão arXiv arXiv:1606.06565 (2016).
[24] Leike, jan, et al., "AI safety gridworlds". Pré-impressão arXiv arXiv:1711.09883 (2017).
[25] Gilmer, Justin, et al., "Motivando as regras do jogo para a pesquisa de exemplos adversários." Pré-impressão arXiv arXiv:1807.06732 (2018).
[26] Hendrycks, Dan, and Thomas Dietterich. "Comparando a robustez da rede neural com corrupções e perturbações comuns." Pré-impressão arXiv arXiv:1903.12261 (2019).