Matriz de confusão

No campo de aprendizado de máquina e, especificamente, no problema de classificação estatística , uma matriz de confusão , também conhecida como matriz de erros, [6] é um layout de tabela específico que permite a visualização do desempenho de um algoritmo, tipicamente um aprendizado supervisionado (em aprendizado não supervisionado , geralmente é chamado de matriz correspondente ). Cada linha da matriz representa as instâncias em uma classe prevista, enquanto cada coluna representa as instâncias em uma classe real (ou vice-versa). [2] O nome deriva do fato de que é fácil ver se o sistema está confundindo duas classes (ou seja, geralmente classificando incorretamente uma como outra).

É um tipo especial de tabela de contingência , com duas dimensões (“real” e “previsto”) e conjuntos idênticos de “classes” em ambas as dimensões (cada combinação de dimensão e classe é uma variável na tabela de contingência).

Exemplo

Se um sistema de classificação foi treinado para distinguir entre cães e gatos, uma matriz de confusão resumirá os resultados do teste do algoritmo para uma inspeção mais aprofundada. Supondo que uma amostra de 13 animais – 8 gatos e 5 cães – a matriz de confusão resultante possa se parecer com a tabela abaixo:

Classe real
Gato Cachorro
Classe prevista
Gato 5 2
Cachorro 3 3

Nesta matriz de confusão, dos 8 gatos reais, o sistema previu que três eram cães, e dos cinco cães, previu que dois eram gatos. Todas as previsões corretas estão localizadas na diagonal da tabela (destacadas em negrito), portanto é fácil inspecionar visualmente a tabela quanto a erros de previsão, pois eles serão representados por valores fora da diagonal.

Tabela de confusão 

Na análise preditiva , uma tabela de confusão (às vezes também chamada de matriz de confusão ) é uma tabela com duas linhas e duas colunas que relata o número de falsos positivos , falsos negativos , verdadeiros positivos e verdadeiros negativos. Isso permite uma análise mais detalhada do que a mera proporção de classificações corretas (precisão). A precisão não é uma métrica confiável para o desempenho real de um classificador, porque produzirá resultados enganosos se o conjunto de dados for desequilibrado (ou seja, quando o número de observações em diferentes classes varia muito). Por exemplo, se houvesse 95 gatos e apenas 5 cães nos dados, um classificador específico poderia classificar todas as observações como gatos. A precisão geral seria de 95%, mas com mais detalhes o classificador teria uma taxa de reconhecimento de 100% ( sensibilidade ) para a classe de gatos, mas uma taxa de reconhecimento de 0% para a classe de cães. A pontuação F1 é ainda mais confiável nesses casos, e aqui renderia mais de 97,4%, enquanto a informação remove esse viés e gera 0 como a probabilidade de uma decisão informada para qualquer forma de adivinhação (aqui, sempre adivinhando o gato).

De acordo com Davide Chicco e Giuseppe Jurman, a métrica mais informativa para avaliar uma matriz de confusão é o coeficiente de correlação de Matthews (MCC) [5] .

Assumindo a matriz de confusão acima, sua tabela de confusão correspondente, para a classe cat, seria:

Classe real
Gato Não gato
Classe prevista
Gato 5 verdadeiros positivos 2 falsos positivos
Não gato 3 negativos falsos 3 verdadeiros negativos

A tabela final de confusão conteria os valores médios para todas as classes combinadas.

Vamos definir um experimento a partir de instâncias P positivas e N negativas para alguma condição. Os quatro resultados podem ser formulados em uma matriz de confusão 2 × 2 , da seguinte maneira:

Condição verdadeira
População total Condição positiva Condição negativa Prevalência Σ Condição positiva/population População total Precisão (ACC) = Σ Verdadeiro positivo + Σ Verdadeiro negativo/Σ População total

Condição prevista
Condição prevista
positiva
Verdadeiro positivo Falso positivo ,
erro tipo I
Valor preditivo positivo (VPP), Precisão = Σ Verdadeiro positivo/Σ Condição prevista positiva Taxa de descoberta falsa (FDR) = Σ Falso positivo/condition Condição prevista positiva
Condição prevista
negativa
Falso negativo ,
erro tipo II
Verdadeiro negativo Taxa de falsa omissão (FOR) = Σ Falso negativo/Σ Condição prevista negativa Valor preditivo negativo (VPN) = negative Verdadeiro negativo/Σ Condição prevista negativa
Taxa positiva verdadeira (TPR), Rechamada , Sensibilidade , probabilidade de detecção, Potência Σ Verdadeiro positivo/Σ Condição positiva Taxa de falso positivo (FPR), Fallout , probabilidade de alarme falso Σ Falso positivo/Σ Condição negativa Razão de verossimilhança positiva (LR +) TPR/FPR Odds ratio diagnóstico (DOR) LR +/LR− 1 pontuação = 2 · Precisão · Recuperação/Precisão + Recuperação
Taxa de falsos negativos (FNR), taxa de faltas = Σ Falso negativo/Σ Condição positiva Especificidade (RCM), Seletividade, Taxa negativa verdadeira (TNR) Σ Verdadeira negativa/Σ Condição negativa Razão de verossimilhança negativa (LR−) FNR/TNR

Referências

  1. ^ Fawcett, Tom (2006). “Uma introdução à análise ROC” (PDF) . Cartas de reconhecimento de padrão . 27 (8): 861–874. doi : 10.1016 / j.patrec.2005.10.010 .
  2. Salte para:b Poderes, David MW (2011). “Avaliação: da precisão, rechamada e medida F ao ROC, informação, marcação e correlação” (PDF) . Jornal de Tecnologias de Aprendizado de Máquina . 2 (1): 37-63.
  3. ^ Ting, Kai Ming (2011). Enciclopédia de aprendizado de máquina . Springer. ISBN978-0-387-30164-8.
  4. ^ Brooks, Harold; Castanho, Barb; Ebert, Beth; Ferro, Chris; Jolliffe, Ian; Koh, Tieh-Yong; Roebber, Paul; Stephenson, David (26-01- 2015). “Grupo de Trabalho Conjunto WWRP / WGNE sobre Pesquisa de Verificação de Previsão” . Colaboração para a pesquisa australiana sobre clima e clima . Organização Meteorológica Mundial . Recuperado em 17/07/2019 .
  5. Salte para:b Chicco D, Jurman G (janeiro de 2020). “As vantagens do coeficiente de correlação de Matthews (MCC) sobre o escore F1 e a precisão na avaliação da classificação binária” . BMC Genomics . 21 (6) doi : 10.1186 / s12864-019-6413-7 . PMC 6941312 . PMID 31898477 .
  6. ^ Stehman, Stephen V. (1997). “Seleção e interpretação de medidas de precisão de classificação temática”. Sensoriamento Remoto do Ambiente . 62 (1): 77-89. doi : 10.1016 / S0034-4257 (97) 00083-7 .

Fonte: https://en.wikipedia.org/wiki/Confusion_matrix

Plataforma UiPath

A plataforma RPA possui três produtos principais:

  • UiPath Studio – uma ferramenta avançada que permite projetar processos de automação de maneira visual, através de diagramas.
  • UiPath Robot – executa os processos construídos no Studio, como um humano faria. Os robôs podem trabalhar sem supervisão (executar sem supervisão humana em qualquer ambiente, seja ele virtual ou não) ou como assistentes (um ser humano aciona o processo).
  • UiPath Orchestrator – um aplicativo da web que permite implantar, agendar, monitorar e gerenciar robôs e processos, enquanto o tratamento de exceções de negócios está disponível por meio de filas de trabalho centralizadas.

Neste tutorial, você aprenderá muitas informações básicas sobre os três aplicativos apresentados acima e as palavras-chave usadas com eles.

Tipos de fluxo de trabalho e atividades

Vários tipos de fluxos de trabalho estão disponíveis no Studio (sequências, fluxogramas e processos de negócios transacionais) que ajudam a criar seu fluxo de trabalho de automação de acordo com suas necessidades.

Para criar esses fluxos de trabalho, você precisa de atividades (ações que você usa para automatizar aplicativos, como clicar e digitar). Cerca de 300 dessas atividades existem e permitem que você interaja com navegadores da Web, aplicativos de área de trabalho, PDFs, imagens, bancos de dados, terminais, planilhas do Excel, contas de e-mail e muitos outros, além de criar facilmente solicitações HTTP e SOAP.

Funcionalidade do Gravador

A maneira mais fácil de criar fluxos de trabalho é usando o recurso de registro. Quatro tipos de gravações estão disponíveis: Basic , Desktop , Web e Citrix . Os dois primeiros podem ajudá-lo a automatizar os aplicativos de desktop, enquanto os outros permitem que você lide adequadamente com aplicativos da Web e ambientes virtuais.

Variáveis ​​e Funções .Net

Uma variável permite que você armazene um valor, mas apenas de um determinado tipo. Além destes, as funções Net também pode ser usado para melhorar a sua automação, como .trim que remove os espaços do início e final de uma string, ou .ToStringque transforma um certo tipo de variável em uma string.

Robôs e orquestrador

Os robôs, os executores do UiPath, podem interagir com uma grande quantidade de aplicativos ao mesmo tempo. Um exemplo é fornecido no vídeo.

O orquestrador, a peça final do quebra-cabeça, é usado para gerenciar vários robôs implantados. Esse tipo de ambiente geralmente é encontrado em grandes empresas, que precisam automatizar muitos processos de negócios. A primeira coisa que você precisa fazer neste aplicativo da Web é registrar seu (s) robô (s). Depois disso, você precisa agrupá-los em um ambiente.

Os fluxos de trabalho publicados nessa plataforma precisam estar vinculados a um ambiente e, a partir daí, você começa a executar: seja agora ou com base em um agendamento definido de maneira personalizada. 
Você pode executar um processo em um ou vários robôs, um número específico deles ou em todos os robôs agrupados em um ambiente.

Ativos e Filas

Como os robôs podem precisar compartilhar informações, um tipo especial de variáveis ​​é introduzido no orquestrador, ativos. Eles permitem que você armazene informações (incluindo credenciais) no banco de dados do aplicativo da Web, para que seja fácil alterar um valor que é usado em vários processos, e vários robôs podem ter acesso a ele.

O UiPath também faz uso de filas de trabalho para distribuir a carga de um processo transacional entre vários robôs. Eles podem ser programados para começar antes ou depois de uma determinada data, e informações detalhadas contidas em cada item da fila podem ser visualizadas.

Logs, Auditoria, Alertas e Outros 

Na guia Registros, você pode ver facilmente como os Robôs foram executados, quais tarefas foram concluídas ou se falharam. Além disso, todas as etapas realizadas pelo usuário podem ser auditadas e os alertas são enviados por e-mail para todos aqueles que possuem as permissões necessárias.

Finalmente, o gerenciamento de funções está disponível, juntamente com outros recursos interessantes, como a importação de usuários de um grupo do Active Directory, a divisão de processos de automação entre equipes por meio de vários inquilinos e a exibição de informações em gráficos precisos.

 

 

Fonte:  https://www.uipath.com/developers/video-tutorials/introduction-to-uipath

Pacote WEKA – Análise de Dados para Aprendizagem de Máquina

O pacote de software Weka (Waikato Environment for Knowledge Analysis) começou a ser escrito em 1993, usando Java, na Universidade de Waikato, Nova Zelândia sendo adquirido posteriormente por uma empresa no final de 2006. O Weka encontra-se licenciado ao abrigo da General Public License sendo portanto possível estudar e alterar o respectivo código fonte.

O Weka tem como objetivo agregar algoritmos provenientes de diferentes abordagens/paradigmas na sub-área da inteligência artificial dedicada ao estudo de aprendizagem de máquina.

Essa sub-área pretende desenvolver algoritmos e técnicas que permitam a um computador “aprender” (no sentido de obter novo conhecimento) quer indutiva quer dedutivamente.

O Weka procede à análise computacional e estatística dos dados fornecidos recorrendo a técnicas de mineração de dados tentando, indutivamente, a partir dos padrões encontrados gerar hipóteses para soluções e no extremos inclusive teorias sobre os dados em questão.

Fontes:

https://www.cs.waikato.ac.nz/ml/weka/

 

 

A segurança do bitcoin pela força computacional

 

A segurança no bitcoin é alcançada pela descentralização e pela força computacional. Este não é um vídeo técnico, mas sim uma visão geral do funcionamento da tecnologia.

Para fontes mais técnicas e detalhas, ver artigos abaixo.

Para saber mais:

Artigo “A grande inovação tecnológica do bitcoin Parte 1/2” http://www.infomoney.com.br/blogs/cam… Mining Bitcoin Wiki: https://en.bitcoin.it/wiki/Mining

Beginners’ Guide to Mining: https://99bitcoins.com/beginners-guid…

Bitcoin Mining Explained: https://chrispacia.wordpress.com/2013…

Everything you need to know about BTC mining: https://www.bitcoinmining.com/

How the bitcoin protocol actually works: http://www.michaelnielsen.org/ddi/how…

“Bitcoin – a Moeda na Era Digital”, livro publicado pelo Instituto Mises Brasil em 2014. http://www.mises.org.br/Ebook.aspx?id=99

Blog “Moeda na Era Digital” no portal InfoMoney http://www.infomoney.com.br/blogs/cam…

Está pensando em usar ou comprar bitcoin? Leia aqui antes: http://www.infomoney.com.br/blogs/cam…

Apoie este canal! Bitcoin: 1C6qa2DctPUcyAasDkgdBTJjhgpXaVjcUE

Contatos: Email: ulrich@mises.org.br

Facebook: https://www.facebook.com/fernando.ulrich

Twitter: https://twitter.com/fernandoulrich

Nós quase demos em construir cérebros artificiais

Hoje, as redes neurais artificiais estão fazendo arte, escrevendo discursos, identificando rostos e até mesmo dirigindo carros. Parece que estamos montando a onda de uma era tecnológica inovadora, mas o aumento atual das redes neurais é realmente uma espécie de renascimento.

Pode ser difícil de acreditar, mas os pesquisadores de inteligência artificial já começaram a ver a promessa nas redes neurais durante a Segunda Guerra Mundial em seus modelos matemáticos. Mas, na década de 1970, o campo estava pronto para desistir deles inteiramente.

“[T] aqui não houve resultados impressionantes até que os computadores crescessem, isto é, até os últimos 10 anos”, diz Patrick Henry Winston, professor do MIT especializado em inteligência artificial. “Continua a ser o facilitador mais importante do aprendizado profundo”.

Redes Neurais

As redes neurais de hoje são essencialmente árvores de decisão que dependem da lógica matemática que se assemelha, por falta de uma melhor analogia, ao disparo de sinapses no cérebro humano. Várias camadas de neurônios artificiais, ou nós, são utilizados para chegar à solução de um problema. À medida que os dados são alimentados através das camadas, uma computação simples ocorre em cada nó e a solução é passada para a próxima camada de neurônios para outra rodada de cálculos. O tempo todo, a matemática que ocorre em cada neurônio está sendo ligeiramente modificada pelo resultado anterior. Desta forma, uma rede neural pode se ensinar padrões em dados que combinam com uma solução desejada e otimizar o caminho para ele, como ajustar um violão. Quanto mais dados você alimenta uma rede neural, melhor fica ao ajustar seus neurônios e encontrar um padrão desejado.

Enquanto o campo emergiu nos últimos anos como um tour de force para especialistas em informática e até mesmo alguns hobbyists, a história da rede neural remonta até o início dos computadores. O primeiro mapa de uma rede neural veio em 1943 em um artigo de Warren Sturgis McCulloch e Walter Pitts. Mas o quadro de McCulloch tinha pouco a ver com a computação; Em vez disso, ele estava focado na estrutura e função do cérebro humano. O modelo de função de neurônio de McCulloch-Pitts, é claro, surgiu durante um tempo em que a tecnologia para monitorar essa atividade não existia.

McCulloch e Pitts acreditavam que cada neurônio no cérebro funcionaria como um interruptor on-off (como números binários 1 e 0), e que as combinações desses neurônios disparariam ou desativariam, produzindo decisões lógicas. Na época, havia muitas teorias concorrentes para descrever a forma como o cérebro operava, mas de acordo com um artigo de Gualtiero Piccinni da Universidade do Missouri, St. Louis, o modelo de McCulloch-Pitts fez algo que os outros não tinham: Funcionam para algo que se assemelhava a um computador simples, e isso despertou interesse em construir um cérebro artificial a partir do zero.

Sucesso inicial

O primeiro sucesso – e esse é um generoso termo – conceito de rede neural foi o algoritmo Perceptron do Frank Rosenblatt da Universidade Cornell. O Perceptron foi originalmente concebido para ser uma máquina, embora a sua primeira implementação fosse como uma classe de redes neurais que pudessem tomar decisões razoavelmente rudimentares. Eventualmente, o algoritmo foi incorporado em um computador com tamanho de geladeira chamado Mark 1, que era uma máquina de reconhecimento de imagem. Possui uma matriz de 400 fotocélulas ligadas à sua rede neural artificial, e poderia identificar uma forma quando era realizada antes do “olho”.

Poucos anos depois, em 1959, ADALINE chegou por meio de pesquisadores da Universidade de Stanford e, na época, era o maior cérebro artificial. Mas, também, só pode lidar com alguns processos por vez e foi concebido como uma demonstração de aprendizagem de máquinas em vez de ser configurado para uma tarefa específica.

Esses pequenos, mas tentadores avanços na computação alimentaram a histeria em torno da inteligência artificial na década de 1950, com a Sciencedirigindo a manchete “Human Brains Replaced?” Em uma questão de 1958 sobre redes neurais. Robôs inteligentes invadiram a ficção científica com um clipe mais rápido. Este mesmo ciclo, porém, repetiu-se com muitos processos automatizados ao longo da história. Como Adelheid Voskuhl apontou nos Andróides no Iluminismo , os autômatos executados no relógio foram construídos no século 18 como uma ameaça para a humanidade e a prova de que as máquinas governariam o mundo no devido tempo. Mas esses andróides do Iluminismo não passaram de marionetes glorificados.

Em meados do século 20, a pesquisa era lenta e não conseguia acompanhar a imaginação pública, como observa o professor de psicologia da Universidade de Toronto, Eyal Reingold. Relata que o cérebro artificial estava prestes a substituir a mente humana tão longe da realidade quanto possível.

“Infelizmente, esses sucessos anteriores causaram que as pessoas exagerassem o potencial das redes neurais, particularmente à luz da limitação na eletrônica, então disponível”, escreveu ele em uma história de inteligência artificial. “Este exagero excessivo, que decorreu do mundo acadêmico e técnico, infectou a literatura geral da época”.

O inverno está chegando

Não era o receio de uma aquisição de robôs que quase mataram a pesquisa da IA ​​no início dos anos 1970, porém; Era uma combinação de fatores. Enquanto o professor de informática do MIT, Marvin Minsky, é muitas vezes acreditado por fornecer um título de morte para Perceptrons, havia muito mais na história.

Havia o problema dos cortes no financiamento do governo. O governo estava canalizando mais dinheiro em programas de tradução que poderiam converter o russo para o inglês quase instantaneamente. As redes neurais iniciais mostraram essas habilidades com um vocabulário de 250 palavras , mas a pesquisa subseqüente foi lenta no melhor. Em meados da década de 1960, uma comissão governamental chamada Comitê Consultivo de Processamento de Linguagem Automática considerou a tradução automática “sem esperança”.

Conforme destacado por Gary Yang, um relatório de 1973 chamado Lightfoot Report também apontou que várias áreas onde a aprendizagem de máquinas poderiam ser aplicadas – como as funções de piloto automático – eram realmente melhor atendidas por métodos muito menos tecnologicamente avançados.

Nils Nilsson, professor aposentado de ciência da computação da Universidade de Stanford, trabalhou nessas primeiras gerações de inteligência artificial. Uma das maiores reivindicações da fama foi Shakey , um robô construído na década de 1960 que poderia realizar um reconhecimento de imagem rudimentar. Foi assim chamado, porque ele se perdeu quando se moveu, usando uma câmera de TV para capturar e entender o mundo ao seu redor. Poderia interpretar as entradas do computador sobre um objeto na sala e interagir com ele de determinadas formas. Também foi um sucesso inicial na rede neural, mas não foi suficiente.

Winston diz que um dos problemas era que as redes neurais não podiam ter uma abordagem abrangente. Ele diz que o documento Perceptron de Marvin Minsky mostrou que outras áreas de pesquisa de inteligência artificial eram necessárias – e que a tecnologia ainda não estava disponível.

“Os escritos de Minsky eram para uma categoria especial de Perceptrons”, diz Nilsson. “A principal razão pela qual a pesquisa sobre redes neurais se desviou na década de 60, que ninguém conseguiu descobrir uma maneira de treinar redes neurais de várias camadas”.

Para resumir: o artigo de Minsky demonstrou que, mesmo no seu mais complexo, a classe Perceptron de AI era muito binária em seus pensamentos, dificultando a habilidade da máquina de aprender a atacar tarefas mais complexas. Na opinião de Minsky, você precisava de diferentes tipos de inteligência artificial para conversar uns aos outros, o que pode ter ultrapassado as capacidades do hardware no momento.

“Minsky era tudo sobre pensar que você precisava de múltiplas representações, métodos e abordagens”, diz ele.

A rede neural começou assim a se retirar da imaginação pública, inaugurando o que foi chamado de “Inverno de Inverno”, onde o financiamento da pesquisa de inteligência artificial secou e muitas linhas de pesquisa pararam. Isso incluiu redes neurais e pesquisa de AI mudou para outras áreas de foco.

“As pessoas trabalharam em uma variedade de coisas: sistemas experientes, o uso da lógica para fazer raciocínio, reconhecimento de fala, visão computacional e robôs”, diz Nilsson. Sistemas experientes, destinados a ser vastos repositórios de conhecimento de especialistas computorizados em declarações de lógica, levaram a um segundo tipo de inverno AI quando suas habilidades também estavam superadas.

Fazendo um retorno

Mas em 1974, Paul Werbos, então estudante de doutorado de Harvard, introduziu uma maneira de melhorar as redes neurais. Ao espalhar várias redes neurais um ao outro, você poderia ter certos erros nos neurônios verificar os outros em um processo chamado backpropagation, uma maneira em que um cérebro artificial poderia “adivinhar” e procurar uma nova decisão.

Isso foi importante. As redes neurais anteriores poderiam ficar penduradas na mesma decisão. Se você colocou várias decisões em um resultado final, a máquina poderia essencialmente usar uma parte da rede neural para verificar novamente outra parte. Isso, de fato, deu uma complexidade em camadas à sua linha de pensamento. Em vez de pensar em preto e branco de entradas verdadeiras / falsas Perceptron, poderia interpretar um valor neutro para chegar a uma decisão pesando vários fatores.

Na verdade, ele iria além das declarações de lógica e na aprendizagem complexa de máquinas.

Era um documento arrojado e avançado – talvez um pouco mais ansioso. Nenhum hardware de computador no momento poderia lidar com operações tão complexas.

Nilsson também aponta para a publicação de 1986 do processamento distribuído paralelo: explorações na microestrutura da cognição de David E. Rumelhart da Universidade da Califórnia em San Diego e James L. McClelland da Universidade Carnegie Mellon. Melhorou o trabalho de Werbos mostrando um dos melhores mapas modernos da rede neural humana, criando o melhor mapa do cérebro.

Este mapa também ajudou a refinar as idéias de Werbo, mostrando como os neurônios funcionaram no cérebro e como você poderia aplicar isso às redes neurais artificiais. Você poderia resolver a incapacidade de entender as funções neutras ao ter outras redes neurais conectadas para obter uma resposta mais “refinada” neutra. Só precisava de um chute de algumas áreas: “grandes avanços no poder do computador e grandes bancos de dados que permitiram” aprendizado profundo “, como disse Nilsson. Esses avanços na computação chegaram. Hoje, os pesquisadores têm o poder de processamento e acesso a troves de dados armazenados em “a nuvem” para ensinar novas funções de algoritmos.

ADALINE e seus primos primitivos podem ter desaparecido da percepção pública, uma vez que a aprendizagem por máquinas passou a ser própria na última década. Mas essa revolução, décadas atrás, não foi dificultada por essas redes neurais. Em vez disso, eles eram de alguma forma muito primitivos e muito avançados para o seu tempo, mas seu tempo certamente chegou.