Múltiplas Facetas de Inteligência Artificial e Machine Learning
Pósgraduação unicinos. Olá, bemvindos ao podcast da disciplina múltiplas facetas de inteligência artificial e machine learning, eu sou professor Gabriel Ramos e no episódio de hoje vamos falar sobre a busca de padrões através de aplicações de redes neurais. Vale a pena a gente lembrar pouco do contexto no qual a gente se situa né em torno das redes neurais pra depois entrar em algumas aplicações e poder entender pouquinho melhor como elas funcionam então lembremse que redes neurais nada mais são do que métodos de machine learning que a gente viu dentro do contexto de aprendizado supervisionado embora possa ser usado por outros tipos também e uma rede neural então nada mais é do que uma função uma função matemática que recebe uma entrada alguns dados algumas features algumas alguns atributos de uma mostra de lado e fornece como saída uma resposta que tem que ser o mais parecida possível com uma resposta de referência é o que a gente chama de ontem então uma rede neural é organizada em uma série de camadas cada camada vai ter ou mais neurônios e esses neurônios individualmente fazem a mesma coisa né eles recebem entradas e a partir de processo interno né simples com algumas operações simples matemáticas vai retornar uma saída e aí daí que as saídas de dos neurônios de uma camada servem de entrada nos neurônios da camada seguinte então é essa é a a estrutura de uma rede neural e lá no final de todas as camadas né então lembra que a gente tem as camadas ocultas né que são as camadas que vão se desenrolando dentro da rede e a última camada que tem é a camada de saída essa camada de saída então ela vai fornecer uma uma resposta né então a gente pode ter ou mais neurônios nessa camada e em conjuntos vão fornecer essa resposta, que a gente gostaria de observar.
Speaker 1:Quando a gente faz esse, quando a gente executa o processo de treinamento de uma rede neural, o que a gente precisa é utilizar uma conjunto de dados, que vai fornecer evidência sobre o fenômeno que a gente quer aprender, e a gente vai no processo de treinamento ajustar os pesos dessa rede neural os pesos desse modelo, pra que a gente tenha respostas cada vez mais parecidas com as respostas de referência, assumindo claro o aprendizado supervisionado, então data a sua capacidade de fazer mapeamento de entradas pra saídas, em domínios diversos né, e saindo até daquelas redes mais básicas de múltiplas camadas a perceptron para as redes mais profundas e com arquiteturas mais complexas né como as condicionais as vision transformers entre outras né a gente sabe que nesse processo né, a gente precisa de muitos dados né, e a gente também precisa de mecanismos adequados de treinamento. Essa parte é algoritmo que a gente viu anteriormente, que falta agora a gente ver como que é esse tipo de arquitetura, esse tipo de construção, permite que a gente resolva como problemas complexos. Sempre dizer que podcast a gente está atualmente não vai entrar na parte de matemática né, então espero que a descrição sustenta que eu tenha fornecido até que ajude vocês a se lembrar de alguns dos temas que a gente viu alguns temas que a gente viu anteriormente na na vídeo aula né mas agora nosso foco é tentar entender como que a gente utilizarei isso para resolver problemas reais tá e aqui a gente vai falar de dois problemas em particular deles é a detecção de fraudes, e o outro é, análise de dados clínicos.
Speaker 1:Então deles é mais utilizado no contexto de ecommerce, então lidar com transações eletrônicas e como que a gente eventualmente identifica aquelas que são fraudulentas e no caso dos dados clínicos é uma aplicação na área de saúde de medicina onde a gente pode contribuir por exemplo pra diagnóstico e tudo mais vale destacar que os cases que eu vou comentar aqui são de pesquisas próprias, tá? Então, pesquisas do meu grupo, e, elas se referem à, enfim, aplicações com parceiros né que, por fins conversaram não posso divulgar aqui, mas eu vou deixar genérico o suficiente pra que a ideia como todo possa ser claramente absorvida por todos tá então começando com a detecção de fraudes em transações eletrônicas então quando que esse tipo de demanda surge né então pensa em ecommerce onde existe uma série de produtos à venda e os clientes entram nesse ecommerce e né tentam escolher seus produtos né colocar carrinho e depois são processos de checkout onde o consumidor vai colocar os seus dados né então o endereço né os dados cartão de crédito o cpf entre outras coisas e no momento que a pessoa clica no botãozinho ali de comprar ou de efetuar a compra ou de concluir a compra né a gente usuários né simplesmente olhamos a mensagem ali que às vezes é instantânea às vezes demora olha, operação foi concluída com sucesso, né?
Speaker 1:Mas por baixo dos dos planos, existem diversas operações que são realizadas, tá? E uma dessas operações, é a de detecção de fraudes tá cada empresa cada ecommerce faz esse essa verificação de uma forma diferente tá mas em linhas gerais o que todas buscam é a partir dos dados que ali estão, e de dados que possam ser obtidos a partir desses, é que elas consigam identificar transações que têm perfil, potencialmente fraudulento, tá? Então com isso a gente pode detectar por exemplo pessoas que estão tentando utilizar o cartão de crédito falso ou utilizar o cartão de crédito de outra pessoa ou de repente fazer a compra de tipo de produto que não deveria ser permitida pra qualquer cliente né entre outras coisas então é é tipo de de de tarefa bastante relevante no contexto de ecommerce porque né diferente das transações tradicionais, onde a gente vai na loja e compra né, e as pessoas podem ver né, se a gente está ou não fazendo alguma coisa muito estranha ali, aqui agora a gente tem computador intermediando tudo né, então a gente precisa de meio eletrônico pra lidar com isso. Então, redes neurais são extremamente úteis nesse tipo de situação, tá?
Speaker 1:Então pensem que, utilizando o aprendizado supervisionado como referência né? Que a gente quer a partir de conjunto de atributos daquela transação, determinar se ela é uma fraude ou não tá não vamos dizer que é classificar em positivo ou negativo sendo positivo a fraude e negativo uma transação normal então que tipo de atributos que tipo de features a gente teria aqui a gente falou de algumas já né então exemplo os dados da pessoa que a própria pessoa informa ali né, então qual que é o seu nome, seu endereço, né, de repente o seu CPF, de repente algumas outras, características ou alguns outros dados demográficos que sejam solicitados né, outras coisas o cartão de crédito né é todos esses dados eles podem ser correlacionados né então por exemplo a gente a partir dos dados do cartão de crédito ver se a pessoa tá dizendo que é de lugar mas a gente é de outro então a gente consegue detectar quando o cartão de crédito foi emitido né dependendo da situação a gente consegue detectar algumas coisas assim tá então dizer que são alguns dados que a pessoa informa mas além dos dados que a pessoa informa existe uma série de dados ali não digo ocultos né mas nada que a pessoa não tá vendo mas que ainda assim ela tá entregando pra organização na no momento daquela transação tá então alguns deles são claro relacionadas ao próprio produto que a pessoa tá comprando mas outros podem indicar por exemplo todo o histórico da pessoa das compras anteriores, por exemplo, tá?
Speaker 1:Ou se for cliente novo, talvez a gente não tenha dados de compras anteriores né, mas ainda sempre qualquer cliente a gente vai ter todos os dados da navegação que envolvem ali a forma como a pessoa se comportou no site até colocar aquele produto no carrinho que tipo de navegador que a pessoa está utilizando se ela se a pessoa está ou não fazendo uma anonimização dos seus dados através do navegador ou até mesmo que padrão de uso do teclado e do mouse a pessoa utiliza enfim tem centenas ou milhares de informações que a gente pode obter a partir daquela navegação E mesmo a partir do CPF da pessoa a gente sabe né a gente pode fazer o cadastro, a a busca né em cadastros positivos e negativos né? Pra saber se aquela pessoa é boa pagadora ou não, né? Enfim, tem uma infinidade de dados que a pode utilizar imagina que nesse processo de detecção de fraudes esses dados são obtidos tá então a empresa a partir de parcerias e a partir dos seus mecanismos internos obter uma série de características essas são as features a partir desses dados né dessas informações todas que a gente mencionou aqui aí a gente tem que definir qual que é o rótulo né se aquela transação ali é fraudulenta seja positiva ou não negativo o problema é que essas essa informação né de ser ou não fraude não é algo que a gente tenha instantaneamente tá é uma informação que muitas vezes a gente só vai ter a posteriori ou seja depois que a transação é realizada depois que a gente entrega o produto né então, até coletar essas informações, a empresa naturalmente pode ter alguma perda né, mas geralmente quando a gente treina o modelo, a gente já tem que ter esses dados previamente coletados, então não serão transações que a gente vai desfazer a fraude, né?
Speaker 1:Mas são transações que serviram de aprendizado. Então, supondo que a gente tenha vários dados como esse de fraude, e de não fraude, a gente pode treinar o modelo e a ideia ideia que a partir disso modelo então consiga a partir das transações novas fazer a distinção daquelas que são potencialmente fraudulentas daquelas que não são essa é a ideia principal. Vale destacar que os fraudadores, eles se esforçam muito pra burlar o sistema, né, então eles não querem que o mecanismo que eles utilizam pra executar uma fraude, quando ele ser detectado, né, eles não querem deixar de conseguir fazer fraudes, eles vão inventar frequentemente formas novas de fazer fraudes e isso nos remete a necessidade de fazer o treinamento do modelo então modelo depois que ele é treinado para aprender aquele padrão ele deixa de ser útil depois de tempo porque os tradutores estão se ajustando ao modelo né é o modelo tem que se ajustar aos tradutores novamente então esse é processo contínuo né que vai fazer com que a gente esteja frequentemente né buscando novas informações buscando novos dados novos atributos para conseguir detectar cada vez melhor o padrão de fraude tá aqui quando a gente tá falando em detectar fraudes que são seria classe positiva né a gente tem que encontrar equilíbrio né entre falsos positivos e falsos negativos falso positivo seria o que tudo aquilo que é uma transação legítima a gente marca como fraudulenta a gente não quer que isso aconteça mas também a gente não quer que uma transação fraudulenta seja marcada como legítimo tá então os dois casos a gente quer evitar mas a gente não quer aumentar demais diminui demais o outro não começou cobertor curto né gente puxa o cobertor para lado ele vai destapar os pés né então ele vai é de tapa o outro lado tá então a gente sempre tem que buscar as duas duas métricas importantes né que são a sensibilidade que denota a probabilidade de ter verdadeiro positivo e a especificidade que denota a probabilidade de ser verdadeiro negativo essas duas são muito importantes quando a gente fala de fraudes né frequentemente a gente vai querer maximizar a quantidade ou reduzir né melhor dizendo a quantidade de falsos negativos né porque o que que é falso negativo é uma transação que era pra ser uma transação que era que que que a gente marcou era dizendo né que a gente marcou como sendo negativa na verdade ela é positiva ou seja é aquilo que afinal a gente não detectou a gente quer minimizar isso ao máximo mas também empresa pode querer Olha eu prefiro perder de vez em quando alguma transação pra fraudulento mas eu não quero ficar incomodando os meus bons clientes que foram marcados incorretamente como como positivos então a gente tem que encontrar esse equilíbrio aí depende do negócio tá então esse tipo de de de tarefa super importante que ajuda a reduzir perdas né e reduzindo perdas ajuda a o negócio a se tornar viável e quando economicamente né entregando mais valor não só pra empresa dos consumidores tá dizer que é uma tipo de tarefa bastante utilizado hoje em dia vamos para uma outra outro caso dados clínicos não dentro do contexto de saúde né a ideia aqui é utilizar diferentes dados que a gente possa ter acerca dos nossos pacientes né dentro de hospital dentro de uma clínica pra ajudar a fazer melhor diagnóstico de repetir melhorar o prognóstico do paciente né personalizar tratamento e por aí vai tá então redes sociais são utilizadas largamente também nesse tipo de domínio né no meu grupo mesmo a gente trabalha com várias aplicações em parceria com hospitais e vale destacar deles que eu acho superinteressante que a gente lida com dentro da histopatologia então vocês vão ver que tem uma vídeo aula onde eu falo de redes complementares que eu mencionei nesse assunto também e a histopatologia nada mais é do que uma área né onde a gente tenta mensurar entre outras coisas a gente tenta mensurar a quantidade de células cancerígenas num exame de biópsia então a gente faz uma biópsia de pedaço de tecido posso fazer por exemplo uma remoção de tumor e a gente vai fatiar aquele tecido após processo solidificação pra identificar se existem as células ou não cancerígenas, né?
Speaker 1:Naquele, naquele tecido, os lineares dele. Geralmente é patologista que vai lá e faz isso, né? Conta, quantas células têm, né? Se existir, pra gente saber se, né, pros médicos, né, saberem se precisam ou não fazer uma nova cirurgia. Então esse é processo amoroso né, que envolve muita atenção, e que né, pode, sofrer com algumas, falhas né, alguma falta de atenção e tudo mais.
Speaker 1:E o prejuízo disso naturalmente é bastante grande, então a gente quer minimizar. Então a ideia que a gente utilizou aqui foi utilizar uma rede constitucional que consegue é a partir de uma imagem dessas fazer a segmentação de células, ou seja, pra cada célula existente na imagem, traçar contorno, exato dessa célula, e após isso, a gente pegar essas células, e diferenciar aquelas que são saudáveis, das que não são. Esse é processo que ajuda na histopatologia. O mesmo princípio a gente usou também pra detecção de estenoses. Então estenose é estreitamento de vasos sanguíneos, então o domínio já é pouco diferente, tá, é também dentro da saúde, é também exame de imagem, mas aí é com sem tirar nenhuma parte do paciente né então a gente faz uma angiografia e na geografia a gente tenta detectar nas artérias né principalmente aquelas em volta do coração ali se existe algum estreitamento ou seja se existe acúmulo de placas de gordura ali se isso existe a gente quer detectar né e poder ver também fazer algum procedimento para corrigir aquilo então a gente criou uma rede neural convencional para isso também que consegue identificar essas estenose ou seja esses estreitamentos e fazer definição do contorno deles para que a gente consiga fazer uma mensuração depois também então esses dois tipos de modelos utilizam imagens previamente coletadas e rótulos fornecidos por especialistas para treinar modelo bem como no caso detecção de fraudes aqui a gente está falando do domínio diferente e Vale destacar também que nem sempre a gente trabalha com modelos que possuem como entrada dados no mesmo padrão a gente pode ter modelos também que são multimodais na área da saúde a gente trabalha hoje com modelos multimodais também onde a gente combina dados clínicos dados demográficos e dados de exame de laboratório exame de imagem e por aí vai combinar todos a cada deles vai ter modelo diferente esses modelos cada deles vai ter uma etapa de extração automática de features derivadas das features entrada e depois a gente tem outro modelo que combina essas features extraídas por cada dos modelos os diferentes tipos de dados e combina tudo isso no modelo só e a partir disso a gente consegue produzir uma saída.
Speaker 1:Hoje, a gente consegue trabalhar com a geração de laudos, por exemplo, para exames de raio x. Então a partir de exame de raio x e de novamente dados clínicos e outras coisas, aí a gente consegue, detectar a a condição clínica de paciente, e produzir laudo disso, né? Explicando inclusive quais são as características que mais contribuíram pra aquele resultado ali fornecia, tá? Então tudo isso, na área de saúde, na área de medicina, ajuda o quê? A melhorar a precisão de diagnósticos, ajuda a identificar padrões mais complexos nos dados, e possibilitar, é possibilitar o tratamento individualizado né, é conceito super em alta né, e que está sendo arduamente almejado né por assim dizer pela medicina porque a gente sabe que a medicina individualizada é uma forma de melhorar o prognóstico dos pacientes a qualidade de vida deles e tudo mais tá então aqui a gente falou de dois do dois domínios bem diferentes né e vale a pena destacar que apesar dos resultados que a gente tem obtido até então que são muito interessantes ainda assim a gente tem diversos desafios seja na questão da qualidade de modelos, ou na escalabilidade deles, como também na em questões éticas, então hoje, a gente utiliza dados pra treinar esses modelos, e como a gente já conversou em outros momentos, esse tipo de, de demanda, né?
Speaker 1:Envolpe também que a gente tenha dados de boa qualidade, que representem bem os fenômenos que a gente quer aprender, tá? Ou seja, que representa bem a realidade, não apenas o os dados que a gente tem a partir de de de grupo, de uma amostra específica, né? Então, a gente tem que garantir que tudo que a gente precisa aprender vai ser de fato passado corretamente para o modelo né então os algoritmos vão conseguir fornecer bons modelos para os dados que a gente fornece se eles tiverem também uma boa qualidade de representar em bingo canal tá então e outra coisa que surge aqui também a questão de explicabilidade né então modelos de redes neurais eles são tidos como caixas pretas porque apesar da gente conseguir observar que fornece como entrada que a gente não tem como saída a gente não consegue entender muito bem quais fatores levaram determinadas saídas a serem produzidas então explicabilidade é aspecto chave e que limita bastante também aplicabilidade de modelos do mundo real porque hoje em dia é principalmente em aplicações ou em domínios que são muito delicados né o que sejam muito críticos como a saúde né como de repente alguns outros, momentos do nosso dia a dia né, como por exemplo o trânsito e outras coisas assim, a gente precisa conseguir explicar né, o porquê de determinada decisão ter sido fornecida pelo modelo ou mesmo entender que fatores contribuíram para essas decisões, tá?
Speaker 1:Então isso é uma coisa que está em aberto hoje na literatura, embora existam várias abordagens pra lidar com isso, tá então isso é algo que todo mundo que for utilizar esse tipo de modelo pra resolver os seus problemas tem que ter em mente né as limitações em torno desses modelos tá mas o fator importante também para a gente mitigar os problemas disso é conferir uma maior transparência né deixar tudo muito claro quando a gente está utilizando esses modelos né então quem tiver obtendo resultados a partir deles saber que aqueles resultados são fornecidos por modelos autorais baseados em aprendizado de máquina né que podem não ser completamente corretos né e e assim né tendo mais transparência e né garantindo que todo o restante do processo atenda adequadamente a legislação e a padrões éticos então a gente vai ter uma boa entrega no final e conseguir cumprir o nosso papel né que é ajudar a gerar valor pra sociedade certo gente então é que a gente tinha pra falar aqui nesse podcast hoje era isso tá a gente falou então pouco sobre as redes neurais lembramos como que elas funcionam e falamos de dois casos importantes que são a redes orais dentro de detecção de fraudes e redes orais pra ajudar na análise de dados clínicos dentro da do diagnóstico de doenças a gente falou também de alguns desafios que a gente tem na aplicação desse tipo de abordagem né por exemplo as implicações éticas disso e o objetivo aqui foi que vocês tivessem pouco mais de detalhes sobre como essas coisas funcionam pra expandir o repertório de vocês e conseguir depois naturalmente partir pra outras aplicações mais próximas da realidade de vocês.
Speaker 1:Eu faço aqui convite pra vocês, continuarem os estudos tá seja através de outros materiais ou também através dos nossos hubs visual e leitura inclusive lá vocês encontram outras referências de materiais que podem ser úteis pra vocês e continua se se especializando né a gente almeja que vocês sejam capazes de utilizar o conhecimento aqui adquirido pra resolver problemas relevantes aí na nossa sociedade tá certo bons estudos pra vocês não deixem de assistir ao próximo podcast bons estudos e até a próxima Pósgraduação unicinos.