Robô escrevendo código e humanos, incautos, rindo ao fundo.

Inteligência Artificial: como lidar com os erros?

Por
7/4/15, 10h07 12 min 20 comentários

No primeiro texto desta série, expliquei o conceito de aprendizado de máquina que tem se tornado cada vez mais presente em nosso dia a dia. Diferente de outros tipos de software, esse tem uma característica de independência: nem sempre sabemos o que está ocorrendo e nem mesmo se ele está fazendo certo ou errado. Tal comportamento pode ter origem em muitos problemas…

Algoritmo de IA não erra, tem baixa acurácia

Uma característica comum dos algoritmos de IA é o erro. Os algoritmos “tradicionais” geralmente são determinísticos: para uma determinada entrada, ele deve sempre fornecer a(s) resposta(s) correta(s). Os algoritmos de IA não. Eles podem errar para alguns casos e isso é aceitável, já que nem sempre há uma forma de contornar esses erros.

Isso ocorre quando há o que chamamos de outliers, termo que pode ser traduzido para “ponto fora da curva.” Muitas vezes é impossível tratá-los sem prejudicar o desempenho para os demais casos. Por isso, não podemos dizer que o algoritmo do Facebook que filtra os posts no seu Feed de notícias esteja errado caso você não goste do que vê.

Segundo este estudo em que as pessoas selecionaram manualmente os posts que desejariam ver no Facebook, esses selecionados por elas mudaram apenas 17% em relação aos que o algoritmo havia escolhido por conta própria. Ou seja, na média, as pessoas estão satisfeitas com os resultados do algoritmo do Facebook. Se você está insatisfeito, pode ser que você seja um outlier da rede social, alguém que o algoritmo não consegue personalizar o feed da forma correta. Entretanto, sem as técnicas de IA, a seleção seria pior: o algoritmo se basearia no usuário médio e muito mais gente ficaria insatisfeita.

Qual o problema então?

A questão é que, embora a gente esteja falando do feed do Facebook, algumas empresas já usam técnicas similares para preencher vagas. Nesse caso, não ser um outlier é muito importante para o indivíduo. É verdade que esse problema não é muito diferente dos critérios de contratação subjetivos aplicados por humanos. Na média, eles podem ser até mais justos, já que mitigam possíveis preconceitos ocultos nos recrutadores. O problema é que, diferentemente de regras e políticas de RH, os algoritmos de IA são um emaranhado de parâmetros autorregulados: como questionar um algoritmo baseado em aprendizado de máquina?

Além dos problemas de outlier, é possível que o projetista do algoritmo tenha feito algo errado ao projetá-lo. Por exemplo, se você mapear erroneamente alguma informação, é possível que determinados candidatos perfeitamente adequados à função nunca sejam considerados como bons pelos algoritmos.

Esse tipo de problema não é muito diferente dos outros erros de programação, mas é bem mais complicado de diagnosticar pelas características não determinísticas do aprendizado de máquina. É importante lembrar que esses algoritmos têm um comportamento “caixa-preta,” nem mesmo quem projeta o modelo consegue identificar os motivos para um funcionário ser considerado bom ou ruim de acordo com o algoritmo. Modelos mal projetados não avisarão que estão com problema, simplesmente entregarão resultados errados ao usuário.

Quem paga a conta?

Ilustração do carro autônomo do Google.
Ilustração: Google.

A questão do recrutamento de funcionários é complicada, mas nada muito diferente dos outros problemas de tecnologia. Se um site de e-commerce vende o produto com um preço errado, quem deve pagar a conta: a loja, o programador ou o consumidor? Inserindo aprendizado de máquina e vidas humanas, esse “dilema do Walmart” chega a outro nível.

Em 1996, o cientista Dean Pomerleau desenvolveu um carro autônomo utilizando redes neurais. Inicialmente, ele andava a 7 km/h, mas pouco tempo depois já estava chegando a 88 km/h em rodovias. O carro percorreu grandes distâncias com o mínimo de intervenção humana. Apesar do sucesso, o cientista Sebastian Thrun, do Google, é cauteloso com esse tipo de tecnologia. O problema é a falta de autonomia que os engenheiros têm sobre o equipamento, afinal os algoritmos de aprendizado de máquina são uma caixa-preta. Um carro treinado por aprendizado de máquina pode tomar decisões estranhas como confundir a sombra das árvores com o fim da estrada, causando acidentes imprevisíveis.

Isso não significa que o carro do Google tenha abandonado técnicas de aprendizado, mas sim que elas são utilizadas de modo criterioso. A analogia que Sebastian Thrun faz dessa questão com o sistema ensino é muito boa: na escola, é interessante misturar o ensino de regras bem definidas com auto aprendizado. A questão para o futuro é se teremos essa parcimônia em utilizar a IA em sistemas que possam trazer riscos às nossas vidas.

Um artigo na Wired falou sobre os dilemas éticos dos acidentes de um carro autônomo. Imagine que um carro autônomo seja, em média, 90% menos fatal que um carro dirigido por humanos. Parece óbvio que é melhor utilizar carros autônomos, mas pode não ser simples assim. As pessoas que morrem não são as mesmas e quem mata, também não.

Uma visão utilitarista do problema diria que é melhor matar 10 vezes menos, mas essa visão pode entrar em confronto com outros valores. Um experimento filosófico famoso que questiona essa lógica, proposto por Philippa Foot, trata do problema de contabilizar vidas.

Imagine que um trem operado por você esteja indo em direção a cinco trabalhadores que serão invariavelmente mortos se o trem seguir em seu caminho atual. Porém, existe uma bifurcação na qual há apenas um homem morrerá. E você pode mudar a chave. O correto, apesar de difícil, seria mudar a chave para o lado que há apenas um homem, certo?

Acho que muitos diriam sim, mas e se você, ao invés de apenas mudar a chave, tivesse que empurrar esse único homem no trilho do trem para salvar os outros cinco? Parece pior empurrar alguém, mas quantitativamente o resultado é o mesmo. E se os outros cinco estão correndo risco de morte pois não colocaram a sinalização correta antes de iniciar o trabalho. A lógica de que é melhor salvar cinco do que um continua valendo?

Exposição Desire of Codes, da artista Seiko Mikami.
Foto: Ars Electronica/Flickr.

As questões acima são hipotéticas, mas a ideia é mostrar que nem sempre se entende menos pessoas morrendo como vantagem. Ainda é uma incógnita como o custo-benefício de tecnologias autônomas matando pessoas será interpretado pela população. Vamos imaginar que, futuramente, seja possível fazer uma viagem entre Brasil e Europa nos seguintes termos:

  • Alto custo: seu avião terá um piloto humano.
  • Médio custo: seu avião terá um caríssimo sistema desenvolvido para fazer decolagens e pousos sem intervenção humana.
  • Baixo custo: seu avião terá um sistema bem mais em conta, pois usou aprendizado de máquina, mas para esse sistema não é possível dar garantias pelo caráter caixa-preta do algoritmo. Até o atual momento, depois de mil vôos, nenhum problema foi identificado.

Nesses termos, você precisaria pensar quais valores seriam justos pelo risco assumido em troca. Além disso, é possível que um governo considerasse inadmissível as duas últimas opções, independentemente dos custos reduzidos delas. Principalmente a última, uma operação arriscada como pilotar um avião não deve ser deixado a cargo de um algoritmo imprevisível. (À luz do triste acidente com o avião da Germanwings, alguns levantaram a bandeira da automação total da cabine. Não é a solução, como apontou este especialista, pelo menos a curto e médio prazo.)

A discussão sobre esse tema passa pelas espinhosas questões de livre mercado e moral. Já é complicado definir a culpa de quem comete erros em sistemas comuns, em sistemas de IA tudo pode ficar um pouco pior. E, por fim, tudo chega a extremos quando esses sistemas envolvem vidas humanas.

Algoritmos não tiram conclusões

Frase sobre inteligência artificial escrita em um tipo de maleta.
“Inteligência artificial não é páreo para a estupidez natural.” Foto: Sean Davis/Flickr.

Repostas erradas dos algoritmos podem ter efeito nefastos, mas respostas corretas com interpretações erradas também são potencialmente problemáticas. As correlações apresentadas neste site mostram, de forma bem humorada, que nem todas as correlações têm uma relação de causa e efeito.

Nate Silver, que ficou famoso ao predizer com mais sucesso que qualquer um os resultados das eleições nos EUA, explica em seu livro O Sinal e o Ruído: Por que tantas previsões falham e outras não, o problema de confundir correlações com causalidade. Um exemplo famoso de correlação sem relações causais utilizado pelo autor é o do Super Bowl como indicador econômico. Em um período de 31 anos, o resultado do campeonato predisse o crescimento do mercado econômico corretamente 28 vezes. Se um time da NFL ganhasse, o mercado subiria. Se um time da AFL ganhasse, o mercado cairia.

Obviamente, era só uma coincidência, mas não há medidas quantitativas que negam sua eficiência por retrospecto. Correlações casuais acontecem e isso ocorrerá muito mais frequentemente com algoritmos procurando-as em massas de dados gigantescas. Nesse caso, o erro cometido não é dos algoritmos, mas dos humanos que interpretam seus resultados. Os algoritmos não podem explicar relações de causa e efeito, essa parte do processo precisa ser feita pelos humanos que são demasiados talentosos na arte de encontrar padrões.

Um causo interessante no mundo da tecnologia, que exemplifica essa nossa tendência de encontrar padrões inexistentes, é o modo aleatório do iPod citado no livro O Andar do Bêbado: Como o acaso determina nossas vidas, de Leonard Mlodinow. A Apple teve que mudar o aleatório das músicas, deixando-o menos aleatório, porque as pessoas se incomodavam de ouvir as mesmas músicas repetidas vezes e ouvir músicas do mesmo artista sendo tocadas em sequência. Nas palavras de Steve Jobs: “menos aleatória para que pareça mais aleatória.”

Sala dos servidores
Foto: Facebook.

O conceito de Big Data só deve piorar a situação. “Big Data” é um termo genérico que se refere às grandes bases de dados que estão disponíveis, mas que ainda apresentam dificuldades na extração de informações.

Na contramão das recomendações de Nate Silver, parece que a ideia de Big Data está colaborando para o afrouxamento dos cuidados estatísticos e qualitativos ao tratar com os dados. Isso vem da noção de que há tantos dados disponíveis que se preocupar com amostragem, como se faz para pesquisas de eleições, por exemplo, não é algo relevante para essas quantidades monstruosas de dados.

Um dos sucessos do Big Data é o Google Flu Trends, que previu a propagação da gripe apenas com dados estatísticos, sem aplicar nenhum conhecimento da doença, nem fazer exames em pessoas. Outra vitória do Big Data é o famoso caso da Target, que passou a enviar cupons de produtos de bebês para uma adolescente. O pai questionou esses cupons, mas depois descobriu-se que ela realmente estava grávida. São casos interessantes, mas os sucessos da mineração de dados devem ser avaliados com cautela.

Não há uma medida simples para medir o desempenho de algoritmos de classificação como as redes neurais. Em geral, eles são avaliados com várias medidas que tratam de aspectos diferentes. Para o caso de sucesso da Target, várias outras mulheres receberam cupons de desconto para bebês erroneamente. Muitas vezes não tenho o mínimo interesse nos livros que a Amazon me recomenda e todo dia recebo propagandas indesejadas. Esses erros são chamados de falsos positivos. Se ignorarmos essa medida, posso desenvolver um mecanismo que diagnostica qualquer câncer com 100% de precisão — basta classificar todos os casos como positivos. O próprio Google Flu Trends, por exemplo, sofreu do problema de superestimar os casos de gripe nos EUA.

No final, as informações extraídas desses algoritmos pode ter um efeito contrário ao esperado. A grande quantidade de dados e resultados faz com que seja mais fácil criar um recorte arbitrário da realidade.

Máquinas com poder decisório?

Os algoritmos de aprendizado de máquina ajudam muito a resolver vários problemas antes muito difíceis e até impossíveis. Os dados se tornarão cada vez mais importantes e presentes em nossa sociedade. Entretanto, é bom lembrar que estamos abrindo mão de controle e isso inclui os próprios engenheiros. Além disso, cada vez mais pessoas devem lidar com informações estatísticas que, se mal analisadas, podem ser um outro grande problema.

Acredito que eles tenham muito mais a agregar do que atrapalhar, mas é provável que a discussão floresça cedo ou tarde, a partir do momento que houver casos de pessoas lesadas (literalmente inclusive) por erros cometidos por esse algoritmo. Será que não é certo deixar que as máquinas tomem algumas decisões?

Foto do topo: Steve Jurvetson/Flickr.

Compartilhe:
  • rodrigo

    foda da IA é prever o ” e se”, “talvez”.. os caminhos cognitivos que balanceiam pequenos prejuízos para que algo seja parcialmente feito, a IA sempre tenta o bem feito, o normatizado…

  • Marlon J Anjos

    Ótimo texto

  • thiagones80

    A cnn publicou um artigo recente sobre o assunto, relacionado ao ocorrido com o avião da GermanWings. Nesse caso uma IA teria evitado. Mas essa mesma IA teria provavelmente matado todos os ocupantes do voo que pousou heroicamente no Rio Hudson, pois bloquearia a opção menos lógica.

    Claro que são situações diferentes, um era um avião “saudável” e o outro com problemas nos dois motores o que já dá pra imaginar um belo SE na frente. Mas ainda assim, onde começa o limite da tecnologia interferindo e negando o comando humano.

    Sobre máquinas em geral, eu sempre penso que o dia que a humanidade perder a possibilidade de controlar máquinas pelo risco, provavelmente vamos regredir a nossa inteligência. Lembrando que até uma bicicleta é uma máquina e que você pode morrer em cima dela.

    Ótimo texto! Acho que ajuda a iniciar um debate que ja está em rota de colisão com muita polêmica, filosofia e algoritmos, com o perdão do trocadilho da colisão.

    • No caso da aviação, afirmo que o avião é praticamente controlado pela A.I.
      O piloto e o co-piloto estão lá muito mais pra quando a A.I. falha ou não tem capacidade de contornar uma situação, como o pouso no Rio Hudson. Assim você fica com o melhor dos dois mundos.

      • thiagones80

        ao que sei… existem duas linhas de pensamento.. a Da Boeing onde o piloto tem mais controle da maquina e da Airbus onde a maquina “controla” os limites do avião….

        Sobre o Airbus, também pelo que sei, ele tem dois modos… Normal Law, onde todas as medidas de pilotos que podem causar danos do avião são ignoradas (adendo: situações anormais, como uma guinada muito brusca, que pode danificar a integridade do avião) e a Alternate Law, onde o piloto que manda. Até onde vai o Alternate Law ainda não pesquisei…

        mas sim, vc tem razão, hoje o piloto observa a maquina… o problema ai é que como mero observador ele se torna inexperiente (aspas enormes). pelo custo, as cias treinam menos… e quando a maquina falha, o bicho pega, vide o caso do AirFrance, cujo problema um avião da TAM já passou, mas os pilotos treinados sabiam o que fazer.

    • Vagner “Ligeiro” Abreu

      “o dia que a humanidade perder a possibilidade de controlar máquinas por causa do risco, provavelmente vamos regredir a nossa inteligência. ”

      Lembrei de “Idiocracia” :3 De tão acostumado a ter outras coisas nos servindo, o mundo (no filme) se tornou idiota.

  • Que texto excelente.

  • Muita gente vem reclamando das A.I dos driverless cars porque ela pode decidir que o motorista deve morrer para salvar pedestres, ciclistas, ou mais pessoas.

    Este é um artigo do Cardoso, excelente escritor sobre tecnologia que gosto muito, onde ele da a opinião dele sobre carros que podem decidir contra o motorista quando colocados em situações de escolha específicas.

    http://meiobit.com/311276/inteligencia-artificial-poderia-permitir-que-robos-matem-pessoas-para-proteger-a-vida-da-maioria/

    “Eu sei que soa demasiado egoísta mas não estou preparado para entrar num carro que é programado para me matar quando achar necessário.”

    Quando colocado em uma sinuca de bico, como o exemplo do Cardoso, o pensamento faz muito sentido. Porém, e se for provado estatisticamente que, com o uso de carros que tomam as decisões, menos motoristas morrem?

    Supondo que a resposta para essa pergunta seja sim: mesmo o carro podendo te matar quando achar necessário, você estaria mais seguro, estatisticamente. Em uma visão ainda individualista (ou egoista, encare como quiser), faz mais sentido confiar na tecnologia doque nas suas próprias habilidades, pois o carro que pode te matar em uma situação rara, como a do exemplo, pode te salvar em muitas outras situações mais frequentes.

    • Vale ressaltar que o dilema não é apenas egoísta: minha vida vale mais que a dos outros.

      Como pontuei no texto, quando estamos envolvendo vidas de outras pessoas também temos dificuldades em decidir por decisões utilitárias em determinadas circunstâncias: ou seja, decisões em que morrem menos pessoas. Isso tem muito a ver com nossos valores, principalmente após a Segunda Guerra.

      Nesse livro http://www.skoob.com.br/justica-192131ed214691.html, tem uma discussão desse tipo de problema com várias ideias e situações. A questão da nossa prórpia sobrevivência é importante, mas esse dilema vai bem mais fundo que nosso instinto natural de sobrevivência.

      • Sim, concordo. Eu resolvi nem entrar nesse dilema só pra mostrar que o argumento do “egoismo” contra a A.I. dos driverless cars também não faz sentido se a resposta da pergunta acima é sim. Eu vejo muita gente projetando medo nas A.I.

        Acho válido encarar o assunto com bastante ceticismo, já que o assunto meche com segurança em geral; porém, muito to medo anti-A.I. é muito mais emocional doque racional.

        Muito obrigado pela dica de livro, coloquei na bucket list.

    • Vagner “Ligeiro” Abreu

      Na questão da decisão ética de “se matar para salvar outro”, depende do “caráter”, ou da visão pessoal sobre a vida e seu valor na sociedade. Isso não é algo só ético, é um valor pessoal e subjetivo.

      Não é só a questão de matar mais ou menos vidas, a própria vida ou a do alheio mas o valor ético nisso tudo.

      Se a pessoa per si é egoísta ou a situação não dá o devido valor a um alvo a ser atingido, sim, ela vai preferir sempre que atinga um alvo que não seja ela. Se sou uma pessoa sendo assaltada, para o ladrão, a vida do assaltado é “zero”. O que importa é o valor que ela dá ao que tenho. Nisso, eu por exemplo reagiria a um assalto, pois sei que para o ladrão, qualquer reação ele vai atirar. O valor que dou a um assaltante é zero também.

      Para “humanistas”, “toda vida deve ser preservada”. Logo, então nenhuma vida deveria ser perdida, toda vida tem valor 1, tem representação. Tipo um “Sakamoto”, por exemplo. Só que para muitos de nós é difícil aceitar esta condição (ou entende-la), pois subentende-se que há pessoas que para estas, importa a própria vida e mais nada. Ou nós mesmos pensamos assim.

      Usando uma outra analogia besta, o famoso episódio do “Julgamento do Chaves”, onde o personagem atropela o gato do Quico, porque desviou de um “bocó na rua vendo a dona bonita”, que nada mais era que o juiz do caso, este que inocenta do então crime acusado. Eis o ponto: o gato tinha menor valor que a vida do “bocó na rua”, e isso foi um valor subjetivo. :3 .

      Ponto principal é entender que para quem prefere a própria vida à vida alheia, é porque pela lógica deste, o valor da vida alheia é zero, nulo. Para quem prefere preservar qualquer vida ou dá valor a vida alheia, toda vida alheia é valor 1. A pessoa não se preocupa se o risco para si existe, até porque risco existe de toda forma. Só que ela sabe que tanto o valor de sua vida quanto do alheio é 1.

      • Eu estava receoso em comentar sobre isso justamente porque eu não quero discutir sobre oque é mais ou menos certo, mais ou menos ético, se é subjetivo ou objetio. Não é disso que estou falando. Estou simplesmente apontando a falha em um argumento que vem muito uzado para criticar a substituição da ação humano por A.I.

        Eu tinha certeza que eu ia ser mal interpretado.

        • Vagner “Ligeiro” Abreu

          Eu não tou falando que lhe interpretei como certo ou errado, não sou muito fã disto, mas sim que na nossa questão subjetiva, uma vida pode ter valor “zero” ou “um”, e isso pode ser colocado em uma inteligência artificial ou até em uma condição comum de máquina.

          Um exemplo disto é uma cena do filme Knight Rider 2000, onde um protótipo com uma I.A. em teste desvia de um cervo, e diz que caso em colisão, não resultaria em danos no veículo . https://www.youtube.com/watch?v=ur2wx9wDL70 .

          A propósito, a “Super Máquina” não deixa também de ser uma série que tem um teco de filosofia sobre inteligência artificial. =)

          Não é “desconfiar da I.A.”, mas da sua programação ou seu uso. Não apoio também o Cardoso, vou na sua linha de “a I.A. tem possibilidade menor de fazer algo errado comigo do que com qualquer outra coisa”. Como já mencionado por vocês, sistemas avionicos são feitos para dar controle automático sem falhas em aviões comerciais. Não considero bem uma I.A., mas não deixa de ser uma forma eletrônica de “trilho”.

          • Faz todo sentido lógico xD

          • Vagner “Ligeiro” Abreu

            Só uma coisa que não concluí o raciocínio: acho que no final, é possível entender o temor do Cardoso. Como falei no último parágrafo: não se desconfia da inteligência artificial, mas da sua programação e uso.

            Sim, para um programador na qual sua ética é voltada a manter a vida do ser humano, uma I.A. sempre vai ser programada para o maior número de preservação de vidas possíveis. O ponto é quais valores as vidas terão em cada situação de emergência previsível a ser calculada pela I.A.? Novamente o paradoxo da chave de trilhos.

            Voltando a situação do filme, imaginemos que o carro é programado por um cara do Greenpeace (usando um esteriótipo). A vida do cervo vai ter mais valor que a vida humana. Logo, o carro pode capotar e os ocupantes morrerem, mas o cervo fica vivo. Em um sistema avionico é possível fazer algo parecido: se o radar identificar uma revoada de pássaros, e o programador do sistema de piloto automático for um cara pró-pássaros fervoroso, o avião pode fazer o que for para preservar os pássaros, mas em compensação até matando as vidas dentro dele.

            Novamente: o ponto não é discutir a possibilidade de preservação de vida humana de uma I.A., mas quem fez esta programação de preservação. Para “egoístas”, se ele puder ter o mínimo de controle para que a própria vida se mantenha, é o que ele quer. Não importa a vida alheia, só quer a própria vida salva. E ele quer a certeza absoluta disso. 100%.

          • Não sou programador, mas do pouco que conheço, tenho a impressão que 100% de certeza é uma daquelas perfeições inalcansáveis.

            Assumindo que isso é verdade, na visão do egoista: é mais lógico seguir aquilo que estatisticamente combina com seus valores; no caso, usar a A.I. mesmo que sem ter certeza absoluta de sua segurança pois você tem um ganho de certeza.

            Assumindo que isso não é verdade, ainda na visão do egoista: mais motivos pra usar a A.I.

            Eu entendo o temor do Cardoso também, mas eu acho que este medo de muito mais a ver com influências emocionais doque lógicas, oque é muito íntimo da pessoa.

            Escelente discussão, muito bons argumentos e perspectivas levantadas. Este é o melhor portal para se ter uma conversa inteligente que eu já comentei. Parabéns.

          • Valeu, Lucas :)

          • Vagner “Ligeiro” Abreu

            Valeu.

            Mas só concluindo: para sua visão de lógica ao que noto, é melhor confiar em uma I.A. de qualquer maneira, mesmo se sua programação estiver “viciada”, ou seja, fora do padrão esperado de quem fará uso do equipamento inteligente.

            Usar uma inteligência artificial é o que também espero pode fazer no futuro. Via de fato, nós não somos máquinas, e com isso fazemos mais atitudes por impulso e emoção do que por razão. Espero ver um trânsito de veículos como uma “linha de trem bem controlada”, não com estúpidos pensando que são os donos da pista.

            O temor é que esta razão fique apenas a “razão” principal de viver, eliminando a emoção e impulso em casos extremos. E que no final acabe “suicidando” por justamente deixar a razão dominar, e não a emoção. Ou por um “vício”, ou melhor, uma razão feita por outro tipo de emoção, a razão em ação faça uma atitude programada contrário ao ideal esperado.

            Enfim, realmente ótimo debate. Senti saudades de conversar assim nos comentários. Quando não se há malcriados idiotas azucrinando comentários, temos um debate saudável :D