Compartilhar via


Proteger o futuro da inteligência artificial e do machine learning na Microsoft

Por Andrew Marshall, Raul Rojas, Jay Stokes e Donald Brinkman

Agradecimentos especiais a Mark Cartwright e Graham Calladine

Resumo executivo

A IA (inteligência artificial) e o ML (aprendizado de máquina) já estão causando um grande impacto em como as pessoas trabalham, convivem em sociedade e vivem suas vidas. À medida que o consumo de produtos e serviços criados em torno da IA/ML aumenta, ações especializadas devem ser realizadas para proteger não apenas seus clientes e os dados deles, mas também para proteger sua IA e algoritmos contra abuso, engano e extração. Este documento compartilha algumas das lições de segurança da Microsoft, aprendidas com o design de produtos e a operação de serviços online baseados na IA. Embora seja difícil prever como essa área se desenvolverá, concluímos que há problemas acionáveis a serem resolvidos agora. Além disso, descobrimos que existem problemas estratégicos que o setor de tecnologia deve antecipar para garantir a segurança a longo prazo dos clientes e a segurança dos dados deles.

Este documento não trata de ataques baseados em IA ou até mesmo a IA ser aproveitada por adversários humanos. Em vez disso, nós nos concentramos em problemas que a Microsoft e os parceiros do setor precisam resolver para proteger produtos e serviços baseados em IA contra ataques altamente sofisticados, criativos e maliciosos, sejam eles executados por pessoas mal-intencionadas ou grupos inteiros.

Este documento tem como foco exclusivo problemas de engenharia de segurança pertinentes ao segmento de IA/ML, mas devido à natureza expansiva do domínio InfoSec, entende-se que os problemas e descobertas discutidos aqui se sobrepõem em certa medida aos domínios de privacidade e ética. Como este documento destaca desafios de importância estratégica para o setor de tecnologia, o público-alvo deste documento é a liderança em engenharia de segurança em todo o setor.

Nossas descobertas antecipadas sugerem que:

  • os documentos originais específicos de IA/ML para as práticas de segurança existentes são necessários para mitigar os tipos de problemas de segurança discutidos neste documento.

  • Os modelos do Machine Learning são amplamente incapazes de discernir entre entradas maliciosas e dados anômalos benignos. Uma fonte significativa de dados de treinamento é derivada de conjuntos de dados públicos não coletados e não moderados, abertos a contribuições de terceiros. Os invasores não precisam comprometer os conjuntos de dados quando estão livres para contribuir com eles. Com o tempo, os dados maliciosos de baixa confiança passam a ser dados confiáveis de alta confiança se a estrutura/formatação dos dados permaneça correta.

  • Dado o grande número de camadas de classificadores/neurônios ocultos que podem ser usados em um modelo de aprendizado profundo, demasiada confiança é depositada na saída dos processos e algoritmos de tomada de decisão de IA/ML sem um entendimento crítico de como se chegou a essas decisões. Essa ofuscação cria uma incapacidade de "mostrar seu trabalho" e dificulta a comprovação da defesa das descobertas de IA/ML quando questionada.

  • IA/ML é cada vez mais usado no suporte a processos de tomada de decisão de alto valor na medicina e em outros setores onde a decisão errada pode resultar em danos graves ou morte. A falta de capacidades de relatórios forenses na IA/ML impede que essas conclusões de alto valor sejam defensáveis no tribunal e na opinião pública.

Os objetivos deste documento são (1) destacar problemas de engenharia de segurança que são exclusivos do segmento de IA/ML, (2) apresentar algumas ideias e observações iniciais sobre as ameaças emergentes e (3) compartilhar opiniões iniciais sobre possíveis correções. Alguns dos desafios deste documento são problemas que o setor precisa superar nos próximos dois anos, outros são problemas que já estamos sendo forçados a resolver hoje. Sem uma investigação mais aprofundada sobre as áreas abordadas neste documento, corremos o risco de a IA futura se tornar uma caixa preta devido à nossa incapacidade de confiar ou entender (e modificar, se necessário) os processos de tomada de decisão da IA em um nível matemático [7]. Do ponto de vista da segurança, isso significa efetivamente perda de controle e afastamento dos princípios orientadores da Microsoft em Inteligência Artificial [3, 7].

Novos desafios da engenharia de segurança

Os vetores de ataque de software tradicionais ainda são críticos para resolver, mas eles não fornecem cobertura suficiente no cenário de ameaças de IA/ML. O setor de tecnologia deve evitar combater os problemas da próxima geração com soluções de última geração, criando novas estruturas e adotando novas abordagens que abordam lacunas no design e na operação de serviços baseados em IA/ML:

  1. Conforme discutido abaixo, as bases de desenvolvimento e operações seguras devem incorporar os conceitos de resiliência e discrição ao proteger a IA e os dados sob seu controle. Os documentos originais específicos da IA são necessários nas áreas de autenticação, separação de obrigação fiscal, validação de entrada e mitigação de negação de serviço. Sem investimentos nessas áreas, os serviços de IA/ML continuam em uma batalha difícil contra adversários de todos os níveis de habilidade.

  2. A IA deve ser capaz de reconhecer o desvio em outros, sem ser tendenciosa em suas próprias interações com os humanos. Conseguir isso requer uma compreensão coletiva e em evolução de desvios, estereótipos, vernáculo e outras construções culturais. Essa compreensão ajuda a proteger a IA da engenharia social e dos ataques de violação do conjunto de dados. Um sistema implementado de maneira correta realmente se torna mais forte contra esses ataques e pode compartilhar a compreensão ampliada com outras IAs.

  3. Os algoritmos do Machine Learning precisam ser capazes de distinguir dados introduzidos de maneira mal-intencionada de eventos benignos “Black Swan” [1], rejeitando dados de treinamento com impacto negativo nos resultados. Caso contrário, os modelos de aprendizado sempre são suscetíveis a jogos por invasores e pessoas mal-intencionadas.

  4. A IA deve ter capacidades forenses internos. Isso permite que as empresas forneçam aos clientes transparência e responsabilidade da IA delas, garantindo que as ações não sejam apenas verificadas corretamente, mas também legalmente defensáveis. Essas capacidades também funcionam como uma forma antecipada de "detecção de intrusão de IA", permitindo que os engenheiros determinem o momento exato em que uma decisão foi tomada por um classificador, quais dados influenciaram e se esses dados eram confiáveis ou não. As funcionalidades de visualização de dados nessa área são rapidamente aprimoradas e mostram a promessa de ajudar os engenheiros a identificar e resolver as causas raiz desses problemas complexos [10].

  5. A IA deve reconhecer e proteger informações confidenciais, mesmo que os humanos não as reconheçam como tal. As experiências de usuário avançadas na IA exigem enormes quantidades de dados brutos para treinar, portanto, o "compartilhamento excessivo" por parte dos clientes deve ser planejado.

Cada uma dessas áreas, incluindo ameaças e possíveis mitigações, é discutida em detalhes abaixo.

A IA requer novos documentos originais para os modelos tradicionais de design seguro/operações seguras: a introdução de resiliência e discrição

Os designers de IA precisam garantir a confidencialidade, a integridade e a disponibilidade de dados confidenciais, que o sistema de IA está livre de vulnerabilidades conhecidas e fornecer controles para proteção, detecção e resposta a comportamentos mal-intencionados em relação ao sistema ou aos dados do usuário.

As maneiras tradicionais de se defender contra ataques mal-intencionados não fornecem a mesma cobertura nesse novo paradigma, em que ataques baseados em voz/vídeo/imagem podem contornar os filtros e as defesas atuais. Novos aspectos de modelagem de ameaças devem ser explorados para evitar que novos abusos explorem nossa IA. Isso vai muito além da identificação da superfície de ataque tradicional por meio de difusão ou manipulação de entrada (esses ataques também têm seus próprios documentos originais específicos para IA). Requer a incorporação de cenários exclusivos para o espaço de IA/ML. Os principais são experiências de usuário de IA, como voz, vídeo e gestos. As ameaças associadas a essas experiências não foram tradicionalmente modeladas. Por exemplo, o conteúdo de vídeo agora está sendo personalizado para induzir efeitos físicos. Além disso, a pesquisa demonstra que os comandos de ataque baseados em áudio podem ser criados [9].

A imprevisibilidade, criatividade e maldade de criminosos, adversários determinados e enganadores exigem que instilemos nossas IAs com os valores de Resiliência e Discrição:

Resiliência: o sistema deve ser capaz de identificar comportamentos anormais e impedir a manipulação ou coerção fora dos limites normais de comportamento aceitável em relação ao sistema de IA e à tarefa específica. Esses são novos tipos de ataques específicos para o espaço de IA/ML. Os sistemas devem ser projetados para resistir às entradas que, de outra forma, entraram em conflito com leis locais, ética e valores mantidos pela comunidade e seus criadores. Isso significa fornecer à IA a capacidade de determinar quando uma interação está saindo do "script". Isso pode ser obtido com os seguintes métodos:

  1. Identifique usuários individuais que se desviam das normas definidas pelos vários clusters grandes de usuários semelhantes, por exemplo, usuários que parecem digitar rápido demais, respondem rápido demais, não dormem ou acionam partes do sistema não acionadas por outros usuários.

  2. Identifique padrões de comportamento que são conhecidos por serem indicadores de ataques de investigação de intenção mal-intencionada e o início da Cadeia de Encerramento de Intrusão na Rede.

  3. Reconheça a qualquer momento quando vários usuários atuam de maneira coordenada, por exemplo, vários usuários emitindo a mesma consulta inexplicável, mas deliberadamente criada, picos repentinos no número de usuários ou picos repentinos na ativação de partes específicas de um sistema de IA.

Os ataques desse tipo devem ser considerados em par com ataques de negação de serviço, pois a IA pode exigir correções de bug e treinar novamente para não cair nos mesmos truques. De importância crítica é a capacidade de identificar a intenção mal-intencionada na presença de contramedidas, como as usadas para anular as APIs de análise de sentimentos [4].

Discrição: a IA deve ser uma custódia responsável e confiável de qualquer informação a que tenha acesso. Como seres humanos, sem dúvida atribuímos um certo nível de confiança em nossos relacionamentos de IA. Em algum momento, esses agentes se comunicarão com outros agentes ou com outros humanos em nosso nome. Devemos ser capazes de confiar que um sistema de IA tem discrição suficiente para compartilhar apenas de forma restrita o que precisa compartilhar sobre nós, para que outros agentes possam concluir tarefas em seu nome. Além disso, vários agentes que interagem com dados pessoais em nosso nome não devem precisar de acesso global. Quaisquer cenários de acesso a dados que envolvam vários agentes IAs ou bot devem limitar o tempo de vida do acesso à extensão mínima necessária. Os usuários também devem ser capazes de negar dados e rejeitar a autenticação de agentes de corporações específicas ou localidades, assim como os navegadores da Web permitem o bloqueio de sites, atualmente. A solução desse problema exige um novo pensamento sobre a autenticação entre agentes e os privilégios de acesso a dados, como os investimentos de autenticação de usuário baseados em nuvem feitos nos primeiros anos da computação em nuvem.

A IA deve ser capaz de reconhecer o desvio em outros, sem ser tendenciosa por conta própria

Embora a IA deva ser justa e inclusiva sem discriminar grupos específicos de indivíduos ou resultados válidos, ela precisa ter uma compreensão inata de desvio para conseguir isso. Sem ser treinada para reconhecer o desvio, engano ou sarcasmo, a IA será enganada por quem busca risadas baratas, na melhor das hipóteses, ou pode causar danos aos clientes, na pior das hipóteses.

Atingir esse nível de conscientização exige "pessoas boas ensinando coisas ruins à IA", pois efetivamente requer um reconhecimento abrangente e em evolução dos desvios culturais. A IA deve ser capaz de reconhecer um usuário com quem teve interações negativas no passado e ter cuidado apropriado, semelhante à maneira como os pais ensinam seus filhos a serem cautelosos com estranhos. A melhor maneira de abordar isso é expor com cuidado a IA a enganadores de uma maneira controlada/moderada/limitada. Dessa forma, a IA pode aprender a diferença entre um usuário benigno "que está enrolando" e um usuário realmente mal-intencionado/enganador. Os enganadores fornecem um fluxo valioso de dados de treinamento para IA, tornando-a mais resiliente contra ataques futuros.

A IA também deve ser capaz de reconhecer o desvio em conjuntos de dados em que ela treina. Isso pode ser cultural ou regional, contendo o idioma em uso por um determinado grupo de pessoas ou tópicos/pontos de vista de interesse específico de um grupo. Assim como acontece com os dados de treinamento introduzidos de maneira mal-intencionada, a IA precisa ser resiliente aos efeitos desses dados em suas próprias inferências e deduções. Essencialmente, esse é um problema de validação de entrada sofisticado com semelhanças à verificação de limites. Em vez de lidar com tamanhos e deslocamentos de buffer, as verificações de buffer e limites são palavras sinalizadas em vermelho de uma ampla gama de fontes. O histórico de conversas e o contexto em que as palavras são usadas também são fundamentais. Assim como as práticas de defesa em profundidade são usadas para proteção em camada sobre um front-end tradicional da API de serviço Web, várias camadas de proteção devem ser aproveitadas nas técnicas de reconhecimento e prevenção de desvio.

Os algoritmos do Machine Learning precisam ser capazes de distinguir dados introduzidos de maneira mal-intencionada de eventos benignos “Black Swan”

Inúmeros white papers foram publicados sobre o potencial teórico de adulteração do classificador/modelo do ML, e extração/roubo de serviços onde os invasores têm acesso ao conjunto de dados de treinamento e um reconhecimento informado do modelo em uso [2, 3, 6, 7]. O problema de maior importância aqui é que todos os classificadores do ML podem ser induzidos por um invasor que tem controle sobre os dados do conjunto de treinamento. Os invasores nem precisam da capacidade de modificar os dados do conjunto de treinamento existente, eles só precisam ser capazes de adicionar a ele e fazer com que suas entradas se tornem "confiáveis" ao longo do tempo por meio da incapacidade do classificador do ML de discernir dados mal-intencionados de dados anormais genuínos.

Esse problema da cadeia de fornecedores de dados de treinamento nos apresenta o conceito de "Integridade da decisão", a capacidade de identificar e rejeitar dados de treinamento introduzidos de forma mal-intencionada ou entrada do usuário antes que ela tenha um impacto negativo no comportamento do classificador. A lógica é que os dados de treinamento confiáveis têm uma probabilidade mais alta de gerar resultados/decisões confiáveis. Embora ainda seja crucial treinar e ser resiliente a dados não confiáveis, a natureza mal-intencionada desses dados deve ser analisada antes que se tornem parte de um corpo de alta confiança de dados de treinamento. Sem essas medidas, a IA poderia ser coagida a exagerar no engano e negar serviço a usuários legítimos.

Essa é uma preocupação específica em que algoritmos de aprendizado não supervisionados são treinamentos em conjuntos de dado não estruturados ou não confiáveis. Isso significa que os invasores podem introduzir todos os dados que desejarem desde que o formato seja válido e o algoritmo seja treinado, confiando efetivamente nesse ponto de dados com o restante do conjunto de treinamento. Com entradas criadas suficientes do invasor, o algoritmo de treinamento perde a capacidade de distinguir ruídos e anomalias de dados de alta confiança.

Como exemplo dessa ameaça, imagine um banco de dados de sinais de parada em todo o mundo, em cada idioma. Isso seria extremamente desafiador a ser organizado devido ao número de imagens e linguagens envolvidas. A contribuição maliciosa para esse conjunto de dados passaria despercebida em grande parte até os carros autônomos não reconhecerem os sinais de parada A resiliência dos dados e as mitigações da integridade da decisão precisam trabalhar juntas para identificar e eliminar os danos ao treinamento causados ​​por dados maliciosos, a fim de impedir que eles se tornem uma parte essencial do modelo de aprendizado.

A IA deve ter registros em log forenses e de segurança incorporados para fornecer transparência e responsabilidade

A IA, eventualmente, será capaz de agir em uma capacidade profissional como um agente em nosso nome, ajudando-nos com a tomada de decisões de alto impacto. Um exemplo disso pode ser uma IA que ajuda no processamento de transações financeiras. Se a IA é explorada e as transações manipuladas de alguma maneira, as consequências podem variar do indivíduo para o sistêmico. Em cenários de alto valor, a IA precisa de registros em log de segurança e forense apropriados para fornecer integridade, transparência, responsabilidade e, em alguns casos, evidências em que a responsabilidade civil ou criminal pode surgir.

Os serviços essenciais de IA precisam de recursos de auditoria/rastreamento de eventos no nível do algoritmo, pelo qual os desenvolvedores podem examinar o estado registrado de classificadores específicos que podem ter levado a uma decisão imprecisa. Essa capacidade é necessária para todo o setor, a fim de provar a exatidão e a transparência das decisões geradas pela IA, sempre que chamadas em questão.

Os recursos de rastreamento de eventos podem começar com a correlação de informações básicas de tomada de decisão, como:

  1. O período de tempo em que ocorreu o último evento de treinamento

  2. O carimbo de data/hora da entrada mais recente do conjunto de dados treinado

  3. Pesos e níveis de confiança dos classificadores fundamentais usados para chegar a decisões de alto impacto

  4. Os classificadores ou componentes envolvidos na decisão

  5. A decisão final de alto valor tomada pelo algoritmo

Esse rastreamento é um exagero para a maioria das tomadas de decisão assistidas por algoritmo. No entanto, ter a capacidade de identificar os pontos de dados e os metadados de algoritmos que levam a resultados específicos é de grande benefício na tomada de decisões de alto valor. Essas funcionalidades não apenas demonstram a confiabilidade e a integridade por meio da capacidade do algoritmo de “mostrar seu trabalho”, mas esses dados também podem ser usados para o ajuste fino.

Outra capacidade forense necessária na IA/ML é a detecção de adulterações. Assim como precisamos que nossas IAs reconheçam o desvio e não sejam suscetíveis a ele, devemos ter capacidades forenses disponíveis para ajudar nossos engenheiros na detecção e na resposta a tais ataques. Essas funcionalidades forenses são de grande valor quando emparelhadas com técnicas de visualização de dados [10], permitindo a auditoria, a depuração e o ajuste de algoritmos para resultados mais efetivos.

A IA deve proteger informações confidenciais, ainda que os humanos não o faça

Experiências avançadas exigem dados avançados. Os seres humanos já oferecem voluntariamente grandes quantidades de dados para o ML treinar. Isso varia do conteúdo da fila de streaming de vídeo mundano às tendências nos históricos de compras/transações com cartão de crédito usadas para detectar fraudes. A IA deve ter uma noção de discrição arraigada quando se trata de lidar com dados do usuário, sempre agindo para protegê-los, mesmo quando são voluntariamente oferecidos por um público com excesso de compartilhamento.

Como uma IA pode ter um grupo autenticado de "pares" com quem conversa para realizar tarefas complexas, também deve reconhecer a necessidade de restringir os dados que compartilha com esses pares.

Observações iniciais sobre como resolver problemas de segurança da IA

Apesar do estado recente desse projeto, acreditamos que as evidências compiladas até o momento mostram que uma investigação mais aprofundada em cada uma das áreas abaixo é fundamental para levar nosso setor a produtos/serviços de IA/ML mais confiáveis ​​e seguros. A seguir, apresentamos nossas primeiras observações e pensamentos sobre o que gostaríamos de ver feito neste espaço.

  1. Os corpos de análise de segurança e teste de penetração voltados para IA/ML podem ser estabelecidos para garantir que nossa IA futura compartilhe nossos valores e se alinhe aos Princípios de IA da Asilomar.

    1. Esse grupo também poderia desenvolver ferramentas e estruturas que poderiam ser consumidas em todo o setor para dar suporte à proteção de seus serviços baseados em IA/ML.
    2. Ao longo do tempo, essa experiência será criada nos grupos de engenharia de forma orgânica, como fazia com a experiência de segurança tradicional nos últimos dez anos.
  2. Poderia ser desenvolvido um treinamento que capacitasse as empresas a cumprir metas como democratizar a IA e mitigar os desafios discutidos neste documento.

    1. O treinamento de segurança específico da IA garante que os engenheiros estejam cientes dos riscos apresentados para a IA e os recursos à disposição deles. Esse material precisa ser entregue com o treinamento atual sobre como proteger os dados do cliente.
    2. Isso pode ser feito sem a necessidade de que todos os cientistas de dados se tornem um especialista em segurança. em vez disso, o foco é a conscientização dos desenvolvedores sobre a resiliência e a discrição aplicados aos casos de uso de IA.
    3. Os desenvolvedores precisarão entender os “blocos de construção” seguros dos serviços de IA que são reutilizados em toda a empresa. Será necessário enfatizar o design tolerante a falhas com subsistemas que podem ser facilmente desativados (por exemplo, processadores de imagem, analisadores de texto).
  3. Os classificadores do ML e seus algoritmos subjacentes poderiam ser reforçados e capazes de detectar dados de treinamento mal-intencionados sem contaminar dados de treinamento válidos atualmente em uso ou distorcer os resultados.

    1. Técnicas como Rejeitar na entrada negativa [5] precisam de ciclos de pesquisadores para investigação.

    2. Esse trabalho envolve a verificação matemática, a prova de conceito no código e os testes nos dados anormais mal-intencionados e benignos.

    3. A verificação/moderação humana pode ser benéfica aqui, particularmente onde estão presentes anomalias estatísticas.

    4. "Classificadores supervisionados" podem ser criados para ter um reconhecimento mais universal das ameaças em várias IAs. Isso melhora imensamente a segurança do sistema, pois o invasor não pode mais exfiltrar um modelo específico.

    5. As IAs podem ser vinculadas em conjunto para identificar ameaças nos sistemas umas das outras

  4. Uma biblioteca centralizada de auditoria/forense de ML pode ser criada, estabelecendo um padrão de transparência e confiabilidade da IA.

    1. As capacidades de consulta também podem ser criadas para auditoria e reconstrução de decisões de alto impacto nos negócios por IA.
  5. Os idiomas em uso por adversários em diferentes grupos culturais e de mídia social podem ser continuamente inventariados e analisados pela IA para detectar e responder a enganos, sarcasmo etc.

    1. As IAs precisam ser resilientes em todos os tipos de idioma, sejam eles técnicos, regionais ou específicos do fórum.

    2. Esse corpo de conhecimento também pode ser usado na automação de filtragem/rotulagem/bloqueio de conteúdo para resolver problemas de escalabilidade do moderador.

    3. Esse banco de dados global de termos pode ser hospedado em bibliotecas de desenvolvimento ou até mesmo exposto por meio de APIs de serviço de nuvem para reutilização por IAs diferentes, garantindo que as novas IAs se beneficiem da sabedoria combinada das mais antigas.

  6. Poderia ser criada uma "Estrutura de difusão do Machine Learning" que fornecesse aos engenheiros a capacidade de injetar vários tipos de ataques em conjuntos de treinamento de teste para IA.

    1. Isso poderia se concentrar em não apenas idioma de texto, mas dados de imagem, de voz e de gesto, bem como permutas desses tipos de dados.

Conclusão

Os Princípios de IA da Asilomar ilustram a complexidade de fornecimento no IA de uma maneira que beneficia consistentemente a humanidade. As futuras IAs precisam interagir com outras IAs para proporcionar experiências de usuário atraentes e sofisticadas. Isso significa que não é apenas bom o suficiente para a Microsoft “acertar com a IA” do ponto de vista da segurança; todo o mundo tem uma participação nisso. Precisamos de alinhamento e colaboração do setor com maior visibilidade trazida para as questões deste documento de maneira semelhante à nossa pressão mundial por uma Convenção Digital de Genebra [8]. Ao abordar os problemas apresentados aqui, podemos começar a orientar nossos clientes e parceiros do setor a um caminho onde a IA é verdadeiramente democratizada e aumenta a inteligência de toda a humanidade.

Bibliografia

[1] Taleb, Nassim Nicholas (2007), The Black Swan: The Impact of the Highly Improbable, Random House, ISBN 978-1400063512

[2] Florian Tramèr, Fan Zhang, Ari Juels, Michael K. Reiter, Thomas Ristenpart, Stealing Machine Learning Models via Prediction APIs

[3] Satya Nadella: The Partnership of the Future

[4] Claburn, Thomas: Google's troll-destroying AI can't cope with typos

[5] Marco Barreno, Blaine Nelson, Anthony D. Joseph, J.D. Tygar: The security of machine learning

[6] Wolchover, Natalie: This Artificial Intelligence Pioneer Has a Few Concerns

[7] Conn, Ariel: How Do We Align Artificial Intelligence with Human Values?

[8] Smith, Brad: The need for urgent collective action to keep people safe online: Lessons from last week’s cyberattack

[9] Nicholas Carlini, Pratyush Mishra, Tavish Vaidya, Yuankai Zhang, Micah Sherr, Clay Shields, David Wagner, Wenchao Zhou: Hidden Voice Commands

[10] Fernanda Viégas, Martin Wattenberg, Daniel Smilkov, James Wexler, Jimbo Wilson, Nikhil Thorat, Charles Nicholson, Google Research: Big Picture