De Paul Christiano e Dario Almodei. 22 de outubro de 2018.
Estamos propondo uma técnica de segurança de IA chamada amplificação iterada que nos permite especificar comportamentos e objetivos complicados que estão além da escala humana, demonstrando como decompor uma tarefa em subtarefas mais simples, em vez de fornecer dados rotulados ou uma função de recompensa. Embora essa ideia esteja em seus estágios iniciais e tenhamos apenas concluído experimentos em domínios algorítmicos de brinquedos simples, decidimos apresentá-la em seu estado preliminar porque acreditamos que poderia provar ser uma abordagem amplificável para a segurança da IA. |
Se quisermos treinar um sistema de aprendizado de máquina para executar uma tarefa, precisamos de um sinal de treinamento: uma forma de avaliar seu desempenho para ajudá-lo a aprender. Por exemplo, rótulos no aprendizado supervisionado ou recompensas no aprendizado por reforço são sinais de treinamento. O formalismo do aprendizado de máquina geralmente pressupõe que um sinal de treinamento já está presente e se concentra em aprender com ele, mas na realidade o sinal de treinamento tem que vir de algum lugar. Se não tivermos um sinal de treinamento, não poderemos aprender a tarefa e, se tivermos o sinal de treinamento errado, podemos ter um comportamento não intencional e às vezes perigoso. Assim, seria valioso, tanto para o aprendizado de novas tarefas como para a segurança da IA, melhorar a nossa capacidade de gerar sinais de treinamento.
Como geramos atualmente sinais de treinamento? Às vezes, o objetivo que desejamos pode ser avaliado por meio de algoritmos, como contar a pontuação em um jogo de Go ou verificar se um conjunto de números foi classificado com sucesso (painel esquerdo da figura abaixo). A maioria das tarefas do mundo real não se presta a um sinal de treinamento algorítmico, mas muitas vezes podemos obter um sinal de treinamento fazendo com que um humano execute a tarefa (por exemplo, rotulando um conjunto de treinamento ou demonstrando uma tarefa de aprendizado por reforço) ou julgue o desempenho de uma IA na tarefa (painéis intermediários da figura abaixo). No entanto, muitas tarefas são tão complicadas que um ser humano não consegue julgá-las ou executá-las – por exemplo, projetar um sistema de trânsito complicado ou gerenciar cada detalhe da segurança de uma grande rede de computadores (painéis à direita da figura abaixo).
A amplificação iterada é um método para gerar um sinal de treinamento para os últimos tipos de tarefas, sob certas suposições. Ou seja, embora um ser humano não possa executar ou julgar toda a tarefa diretamente, presumimos que um ser humano possa, dada uma parte da tarefa, identificar claramente os componentes menores que a compõem. Por exemplo, no exemplo do computador em rede, um ser humano poderia dividir “defender uma coleção de servidores e roteadores” em “considerar ataques aos servidores”, “considerar ataques aos roteadores” e “considerar como os dois ataques anteriores poderiam interagir”. Além disso, presumimos que um ser humano possa realizar instâncias muito pequenas da tarefa, como, por exemplo, “identificar se uma linha específica em um arquivo de registro é suspeita”. Se essas duas coisas forem verdadeiras, então podemos construir um sinal de treinamento para grandes tarefas a partir de sinais de treinamento humano para pequenas tarefas, usando o humano para coordenar a sua montagem.
Em nossa implementação de amplificação, começamos retirando como amostras pequenas subtarefas e treinando o sistema de IA para realizá-las, solicitando demonstrações de humanos (que podem realizar essas pequenas tarefas). Começamos então a retirar como amostras tarefas um pouco maiores, resolvendo-as ao pedir aos humanos que as dividam em pequenos pedaços, os quais os sistemas de IA treinados na etapa anterior podem agora resolver. Usamos as soluções para essas tarefas um pouco mais difíceis, que foram obtidas com ajuda humana, como um sinal de treinamento para treinar sistemas de IA para resolver essas tarefas de segundo nível diretamente (sem ajuda humana). Em seguida, continuamos com as tarefas compostas, construindo iterativamente um sinal de treinamento à medida que avançamos. Se o processo funcionar, o resultado final será um sistema totalmente automatizado que pode resolver tarefas altamente complexas, apesar de começar sem nenhum sinal de treinamento direto para essas tarefas. Este processo é um pouco semelhante à iteração especializada (o método usado no AlphaGo Zero), exceto que a iteração especializada reforça um sinal de treinamento existente, enquanto a amplificação iterada cria um sinal de treinamento do zero. Ele também tem características em comum com vários algoritmos de aprendizado recentes que usam decomposição de problemas em tempo real para resolver um problema no momento de teste, mas difere porque opera em ambientes onde não há sinal de treinamento prévio.
Experimentos
Tal como acontece com o nosso trabalho anterior sobre segurança da IA via debate, trabalhar diretamente em tarefas para além da escala humana é demasiado difícil para um projeto de protótipo. Além disso, usar um ser humano real como sinal de treinamento introduz complicações; por isso ainda não fizemos isso (embora planejemos fazê-lo no futuro). Para nossos primeiros experimentos, tentamos amplificar um sinal de treinamento algorítmico, para mostrar que a amplificação iterada pode funcionar nesta configuração simples. Também limitamos nossa atenção ao aprendizado supervisionado (ao contrário de nosso trabalho anterior sobre sinais de treinamento humano em aprendizado por reforço). Tentamos o método em cinco tarefas algorítmicas de brinquedo. Essas tarefas têm soluções algorítmicas diretas que fingimos não saber (por exemplo, encontrar o caminho mais curto entre dois pontos num gráfico). Os problemas também podem ser resolvidos juntando pequenas deduções de uma etapa (por exemplo, combinando dois caminhos para formar um caminho mais longo), mas seria necessário um esforço exponencialmente grande para juntar tudo manualmente. Usamos amplificação iterada para aprender o algoritmo direto usando apenas as peças como sinal de treinamento, simulando assim a situação em que um humano sabe como combinar subpeças de uma solução, mas não consegue fornecer um sinal de treinamento direto.
Em cada uma dessas cinco tarefas (alimentação de permutação, atribuições sequenciais, busca-curinga, caminho mais curto e localização de união), somos capazes de ter um desempenho competitivo apenas aprendendo diretamente a tarefa por meio de aprendizado supervisionado, apesar de sermos prejudicados por não termos um sinal de treinamento direto (o objetivo aqui é combinar o aprendizado supervisionado com menos informação, e não superá-lo).
A amplificação tem características em comum com nosso trabalho anterior sobre segurança da IA via debate. Tal como o debate, ela procura treinar tarefas que estão para além da capacidade humana de executar ou julgar diretamente, através de um processo iterativo que permite aos humanos fornecer supervisão indireta — no entanto, a abordagem específica é diferente. Ela também se baseia em nosso trabalho sobre feedback humano, implementando um sistema de previsão de recompensas, e versões posteriores provavelmente incluirão feedback de humanos reais. Até agora, exploramos todos esses métodos de forma preliminar e agora estamos trabalhando para aumentá-los para resolver problemas mais interessantes e realistas.
Se você estiver interessado em nos ajudar a estender ferramentas como a amplificação iterada para construir IA segura e poderosa, considere ingressar na OpenAI.
Tradução: Luan Marques
Link para o original