QUALIFICAÇÃO PROFISSIONAL OPERADOR DE LOGÍSTICA PROF. MAYLA SAITO MAYLA CRISTINE ANANIAS SAITO 1 Mayla Cristine Ananias Saito Possui graduação em Engenharia de Produção Mecânica pela Faculdade Universidade Paulista (2016), Pós-Graduação em PÓSGRADUAÇÃO EM GESTÃO DE PROJETOS APLICADOS À INOVAÇÃO DA INDUSTRIA 4.0 pela Faculdade SENAI de Tecnologia Mecatrônica (2020). Tem experiência na área de Engenharia Industrial, Manutenção, Qualidade, Cadeia de Suprimentos e Indústria 4.0 com ênfase em Gestão de Projetos e Melhoria Contínua. É especialista de projetos corporativos voltados a inovação e indústria 4.0 na Saint-Gobain. 2 FUNDAMENTOS DE LOGISTICA LOGÍSTICA O QUE É (Significado) PRINCIPAIS TIPOS DICAS PRÁTICAS 3 FUNDAMENTOS DE LOGISTICA É o processo de transporte e armazenamento de matéria-prima ou mercadorias. Considerando desde o ponto de origem até a venda/consumo por parte dos consumidores. O QUE É LOGÍSTICA (Significado)? 4 FUNDAMENTOS DE LOGISTICA Para que isso seja possível, ela reúne todas as tarefas que estão relacionadas às matérias primas ou mercadorias nas empresas. Como o transporte, a armazenagem, gestão de estoques, previsão de demanda, e o design das redes de distribuição. O QUE É LOGÍSTICA (Significado)? 5 FUNDAMENTOS DE LOGISTICA PLANEJAMENTO EXECUÇÃO CONTROLE DA DISTRIBUIÇÃO DE PRODUTOS MOVIMENTAÇÃO ARMAZENAMENTO DELES. O QUE É LOGÍSTICA (Significado)? 6 FUNDAMENTOS DE LOGISTICA EVOLUÇÃO 7 FUNDAMENTOS DE LOGISTICA ARMAZENAMENTO É a etapa da logística que reúne todas as funções necessárias para estocagem, como: Recepção, descarga, carregamento, arrumação e conservação das matérias de produtos em processo e de produtos acabados. COMO FUNCIONA? 8 FUNDAMENTOS DE LOGISTICA ARMAZENAMENTO É a etapa da logística que reúne todas as funções necessárias para estocagem, como: Recepção, descarga, carregamento, arrumação e conservação das matérias de produtos em processo e de produtos acabados. COMO FUNCIONA? 9 FUNDAMENTOS DE LOGISTICA TRANSPORTE É a etapa da logística que reúne todas as funções para garanti a entrega dos produtos para os clientes. E isso envolve planejamento de rotas, estrutura, equipe e outras questões. COMO FUNCIONA? 10 FUNDAMENTOS DE LOGISTICA ENTRADA OU ABASTECIMENTO INTERNA OU PRODUÇÃO DISTRIBUIÇÃO OU SAÍDA PRINCIPAIS TIPOS LOGÍSTICA REVERSA 11 FUNDAMENTOS DE LOGISTICA Estude o processo logístico da sua empresa e analise todas à movimentação física do produto e matériaprima, tendo como foco o prazo de recebimento e entrega. Faça um planejamento e trace metas e objetivos realistas e busque padronizar os processos através de ferramentas especificas e de melhoria continua; DICAS PRÁTICAS Controle do estoque dos níveis de estoque e focar em uma abordagem equilibrada em relação à quantidade de produtos, baseada em um volume máximo e um mínimo para cada item de acordo com a sua saída. 12 FUNDAMENTOS DE LOGISTICA Garanta que os materiais sejam movimentados e entregue com segurança, da forma rápida em boas condições e pelo melhor preço possível; Invista em tecnologia, com a evolução acelerada do mercado se empresas desejam ser competitivas e elevar suas operações logísticas a novos patamares, elas precisam inovar e ficar atentas às tendências. DICAS PRÁTICAS 13 Mayla Cristine Ananias Saito 14 O cartão Kanban indica criterio de produção cada cor , vermelho critico, amarelo médio, verde não prioritario 15 16 Inteligência Artificial aplicada a Indústria 4.0 A área de Aprendizagem de Máquina é atualmente um dos campos de trabalho mais relevantes da Inteligência Artificial, sendo responsável pela utilização de algoritmos inteligentes que tem a função de fazer com que os computadores aprendam por meio de bases de dados. O curso tem como objetivo compreender os diferentes paradigmas que embasam as aplicações da IA. Entender os principais objetivos e as limitações da Inteligência Artificial (IA). Aplicar os conceitos e técnicas da Inteligência Artificial na gestão da Indústria 4.0. Bibliografia: BRAGA, Antônio de Pádua; CARVALHO, André Carlos Ponce de Leon Ferreira; LUDERMIR, Teresa Bernarda. Redes neurais artificiais: teoria e aplicações. 2. ed. Rio de Janeiro: LTC, 2007. 226p. COPPIN, Ben. Inteligência artificial. Rio de Janeiro, RJ: LTC, 2010. 610 p. GOLDSCHMIDT, Ronaldo; PASSOS, Emmanuel Lopes. Data mining: um guia prático. Rio de Janeiro: Elsevier, 2005. 261 p. RUSSEL, Stuart; NORVIG, Peter. Inteligência Artificial. 2 ed. Rio de Janeiro: Campus, 2004. 17 O programa aborda os seguintes tópicos: A quarta revolução industrial Machine Learning & Redes Neurais Artificiais Manufatura preditiva Manutenção Proativa e Preditiva Gestão Inteligente da Qualidade Comunicação com a Cadeia de suprimentos 18 Um novo modelo: a Indústria 4.0 se apoia nos ombros da Manufatura Enxuta Melhor Qualidade,menor custo e melhor leadtime 19 20 Aula # 1 A Quarta Revolução Industrial PROF. MAURO C. ANDREASSA MANDREAS 21 22 23 CPS (cyber-physical system) é um sistema composto por elementos computacionais colaborativos com o intuito de controlar entidades físicas. A geração anterior à dos sistemas ciberfísicos é geralmente conhecida como sistemas embarcados, e encontraram aplicações em áreas diversas, tais como aeroespacial, automotiva, processos químicos, infraestrutura civil, energia, saúde, manufatura, transporte, entretenimento, e aplicações voltadas ao consumidor. Sistemas embarcados, no entanto, tendem a focar mais nos elementos computacionais, enquanto que sistemas ciberfísicos enfatizam o papel das ligações entre os elementos computacionais e elementos físicos. 24 O relatório Lighthill é o nome comumente usado para o papel "Inteligência Artificial: Um Estudo Geral", de James Lighthill , publicado em Inteligência Artificial: um simpósio de papel em 1973. - Deep Learning Neural networks/Fuzzy Logic /Genetic Algorithm Publicado em 1973, foi compilado por Lighthill para os britânicos Science Research Council como uma avaliação da pesquisa acadêmica no campo da inteligência artificial . O relatório deu um prognóstico muito pessimista para muitos aspectos centrais da investigação neste domínio, afirmando que "Em nenhuma parte do campo têm as descobertas feitas até agora produziu o grande impacto que foi então prometido". 25 Os sistemas ciber-físicosociais (Cyber-PhysicalSocial Systems - CPSS´s) são a extensão dos sistemas ciber-físicos (CPS), que integram perfeitamente o espaço cibernético, o espaço físico e o espaço social. Os CPSS´s promovem o recurso de informação do espaço único para o triespaço, de modo a liderar uma revolução na ciência de dados 26 Wisdom manufacturing: new humans-computers-things collaborative manufacturing model, trad. livre: Manufatura com sabedoria: um modelo colaborativo de manufatura com novos seres humanos – computadores – coisas 27 28 29 30 31 32 33 34 35 36 ERP: Enterprise Resource Planning MES: Manufacturing Enterprise System CRM: Customer Relationship Management 37 38 39 40 41 Desenvolvimento de Sistemas Inteligentes Matemático, preciso e confiável Controlador Algoritmo Linguístico, incertezas quantitativas mas bem descritas qualitativamente Regras de producao + Lógica Fuzzy Aleatórios combinacao de técnicas 42 Desenvolvimento de Sistemas Inteligentes Se: Existe um modelo matemático preciso para a Planta e as especificacoes de desempenho sao tais que permitem uma solucao analíticaadequada do ponto de vita prático IA questionável É pouco conhecido em termos quantitativos, mas existe uma boa heurística de controle ser de grande valia. IA pode Heurística provém do grego antigo εὑρίσκω, transl. heurísko, 'eu encontro', 'eu 'acho' (de εὑρίσκειν, transl. heurískein: 'encontrar', 'descobrir', 'inventar', 'obter'). 43 5 Reasons why Businesses Struggle to Adopt Deep Learning When big potential doesn’t translate to business benefits Ganes Kesari Sep 23, 2018 44 Mercado Global de IA = US$ 7.35 bilhoes (fonte: Statista) Reconhecimento de imagen & escrita Processamento de fala Deteccao Classificacao Identificacao de objetos Total de aporte: China: 48% EUA: 38% 45 Machine Learning é um novo paradigma 46 Aula # 2 Uma Breve História da IA e sua Matemática 47 48 O que é IA? • Psicologia e Filosofia: tentam entender a inteligência. • IA: tenta entender como pensamos (perceber, compreender, prever e manipular o mundo) e também construir entidades inteligentes. • A IA sistematiza e automatiza tarefas intelectuais ( diagnóstico médico, jogo de xadrez, Demostração de teoremas) à campo universal 49 IA Fraca: As máquinas podem agir com inteligencia? IA Forte: As máquinas que agem com inteligencia estao realmente pensando ou estao simulando o pensamento 50 Teste de Turing 51 Consideremos a seguinte questão: as máquinas conseguem pensar? É com essa instigante indagação que o matemático Alan Turing inicia o trabalho Computing Machinery and Intelligence (Máquinas Computacionais e Inteligência, em tradução livre), escrito por ele em 1950. Turing defende a criação de um teste hipotético para analisar se um sistema computacional é ou não inteligente como um ser humano, conhecido popularmente como Teste de Turing. 52 O Teste de Turing testa a capacidade de uma máquina exibir comportamento inteligente equivalente a um ser humano, ou indistinguível deste. No exemplo ilustrativo original, um jogador humano entra em uma conversa, em linguagem natural, com outro humano e uma máquina projetada para produzir respostas indistinguíveis de outro ser humano. Todos os participantes estão separados um dos outros. Se o juiz não for capaz de distinguir com segurança a máquina do humano, diz-se que a máquina passou no teste. O teste não verifica a capacidade de dar respostas corretas para as perguntas; mas sim o quão próximas as respostas são das respostas dados por um ser humano típico. A conversa é restrita a um canal de texto, como um teclado e uma tela para que o resultado não dependa da capacidade da máquina de renderizar áudio. 53 O Quarto Chines 54 O quarto chinês foi um argumento construído por John Searle em 1980, um filósofo norte-americano que pretendia com essa teoria contrapor os pesquisadores da área da Inteligência Artificial. O argumento de Searle é baseado no fato de que os computadores podem entender somente a sintaxe mas não a semântica. Considere que por algum motivo você foi preso na China e necessita desesperadamente provar sua inocência, porém, você está impossibilitado de entrar em contato com a embaixada do Brasil e todos na prisão somente falam chinês. De tempos em tempos, o governo da China lhe envia algumas mensagens (com aqueles símbolos em chinês) que você precisa responde-las, porém, você não entende nada de chinês e praticamente não consegue diferenciar os símbolos da linguagem de meros rabiscos! Por sorte, você tem um colega de cela que por algum motivo possui uma lista de palavras em português que são correlacionadas com os símbolos em chinês. Dessa forma, você agora pode pegar a mensagem em chinês, comparar os símbolos dessa tabela de correlação, entender o texto que foi enviado para você e até mesmo elaborar uma resposta. Com isso, você agora consegue se comunicar com o governo chinês mesmo sem saber uma palavra sequer dessa língua, ou seja, você vai adquirindo experiência com a manipulação desses símbolos. 55 Com base nesse exemplo, Searle argumenta que a pessoa no quarto (ou prisão em nosso exemplo), somente consegue as respostas manipulando os símbolos em chinês sem um significado ou semântica, ou seja, a pessoa se comportou exatamente como um computador por meio da execução baseada em elementos formais. Ele também justifica que por mais que os computadores possam ter esses elementos formais para realizarem o processamento, eles jamais compreenderão todo o contexto (assim como a pessoa dentro do quarto). Um dos objetivos de Searle foi também responder ao Teste de Turing, que considera um computador inteligente se ele conseguir fingir ser um humano em interações com outros humanos. Porém, Searle procura justificar que somente “seguir regras” é como se fosse trabalhar somente em um nível sintático mas sem um conhecimento ou compreensão do que efetivamente está acontecendo. Em resumo, para o filósofo a compreensão está relacionada a possuir estados mentais e efetivamente “pensar”. 56 Qual a diferenca entre Computacao Cognitiva e IA? IA amplia o pensamento humano para resolucao de problemas complexos. Ela foca cirurgicamente na reflexao da realidade e propicia resultados acurados. Computacao Cognitiva foca em imitar o comportamento humano e obter uma base para resolver problemas complexos. Computacao Cognitiva tenta replica como os humanos resolveriam problemas enquanto IA busca criar novas maneiras de resolver problemas que podem ser até potencialmente melhores que os humanos. IA nao pretende imitar os pensamentos humanos e processos, mas sim resolver um problema através do melhor algoritmo. Computacao Cognitiva nao é responsável por tomar decisoes por humanos. Ela simplesmente suplementa informacao para os humanos tomarem decisoes. IA é responsável por tomar decisoes por sua própria conta minimizando o papel dos humanos. 57 Uma Breve História da IA Support-Vector Machine 58 Algorítmo ( a palavra vem de Al-Khowarazmi, matemáticopersa do século IX ) substantivo masculino 1. MATEMÁTICA sequência finita de regras, raciocínios ou operações que, aplicada a um número finito de dados, permite solucionar classes semelhantes de problemas. 2. INFORMÁTICA conjunto das regras e procedimentos lógicos perfeitamente definidos que levam à solução de um problema em um número finito de etapas. 59 O primeiro algoritmo não trivial foi o algoritmo de Euclides para calcular o MDC –Máximo Divisor Comum 60 Perceptron Perceptron é uma rede neural de camada única e um Perceptron de várias camadas é chamado de Rede Neural Artificial. O Perceptron é um classificador linear (binário). Além disso, é usado na aprendizagem supervisionada e pode ser usado para classificar os dados de entrada fornecidos. Mas o Perceptron tem ainda outras características importantes, como a representação de condicionais lógicos (and, or, xor), problemas com dados não linearmente separáveis e as funções de ativação. 61 A rede Adaline (Adaptive Linear Element) Proposta por Widrow e Hoff (1960) tem a mesma estrutura do Perceptron, diferenciando apenas no algoritmo de treinamento. Características da Adaline * Rede adaptativa * Inclusão de um algoritmo pioneiro para treinamento de redes de múltiplas camadas, o algoritmo de treinamento da Regra Delta * O algoritmo da Regra Delta é baseado no método dos mínimos quadrados. * Método de aprendizado mais suave Mínimos Quadrados: Técnica de otimização matemática que procura encontrar o melhor ajuste para um conjunto de dados tentando minimizar a soma dos quadrados das diferenças entre o valor estimado e os dados observados (tais diferenças são chamadas resíduos) 62 O Problema XOR (OU Exclusivo) 63 Um único Perceptron consegue resolver somente funções linearmente separáveis. Em funções não linearmente separáveis, o Perceptron não consegue gerar um hiperplano, esta linha nos gráficos abaixo, para separar os dados. A questão é que no mundo real raramente os dados são linearmente separáveis, fazendo com o que o Perceptron tenha capacidade limitada. Mas ainda assim o Perceptron tem sua utilidade, porque resulta em algumas funções lógicas, como os operadores booleanos AND, OR e NOT, que são linearmente separáveis, isto é, eles podem ser realizadas usando um único Perceptron. 64 Acima, os dois eixos são as entradas que podem levar o valor de 0 ou 1 e os números no gráfico são a saída esperada para uma entrada específica. Usando um vetor de peso apropriado para cada caso, um único Perceptron pode executar todas essas funções. No entanto, nem todos os operadores de lógica são linearmente separáveis. Por exemplo, o operador XOR não é linearmente separável e não pode ser alcançado por um único Perceptron. 65 No entanto, esse problema poderia ser superado usando mais de um Perceptron organizado em redes neurais feed-forward, que veremos nos próximos slides. Uma vez que é impossível desenhar uma linha para dividir as regiões contendo 1 ou 0, a função XOR não é linearmente separável, conforme pode ser visto abaixo: XOR ou exclusivo Operação lógica entre dois operandos que resulta em um valor lógico verdadeiro se e somente se os dois operandos forem diferentes, ou seja, se um for verdadeiro e o outro for falso. É conhecido também pelas abreviações XOR ou EXOR (do inglês exclusive or) e ainda por XOU ou EOU. 66 Perceptron de Múltiplas Camadas Cada um desses Perceptrons está tomando uma decisão ponderando os resultados da primeira camada de tomada de decisão. Desta forma, um Perceptron na segunda camada pode tomar uma decisão em um nível mais complexo e mais abstrato do que os Perceptrons na primeira camada. E as decisões ainda mais complexas podem ser feitas pelos Perceptrons na terceira camada. Desta forma, uma rede de Perceptrons de várias camadas pode envolver-se em uma tomada de decisão sofisticada. 67 68 Backpropagation 69 O Algoritmo Backpropagation As Redes Neurais Artificiais (RNA) conta com inúmeros algoritmos para reconhecimento de padrões: Kohonen, Perceptron, Adaline, Backpropagation e muitos outros, cada um com sua especificidade. A principal vantagem em se usar o Backpropagation é que o mesmo trabalha com multicamadas e resolve problemas “não-linearmente separáveis” e alguns algoritmos não resolvem. Em resumo, um problema “não-linearmente separável” é aquele onde não poderemos separar 2 classes distintas no eixo cartesiano bidimensional apenas traçando uma reta. Veja figura abaixo: Problema não-linearmente separável 70 Perceba que não é possível separar o padrão “o” do padrão “x” apenas traçando uma reta. Isso significa que se você tiver como objetivo identificar se aquele objeto é redondo ou quadrado e em algum momento esses padrões apresentam a característica acima, algoritmos que não resolvem problemas desse tipo não serão capazes de distinguir redondo de quadrado. Outra característica importante é que o Backpropagation é feedforward, ou seja, a conexão entre os neurônios não é cíclica, indo do inicio até o fim você não encontrará um ciclo. Como funciona Em qualquer RNA temos os seguintes itens: Neurônios e Pesos. Os neurônios armazenam os valores que serão calculados para definição dos Pesos, onde estes pesos são a “chave” para funcionamento de toda RNA, é pelo peso que a RNA consegue identificar que aquele objeto é redondo e não quadrado. O Backpropagation é multicamada, pois tem no mínimo 3 camadas. No próximo slide você pode ver um Backpropagation de 3 camadas simples apenas para efeito didático. 71 Algoritmo Backpropagation Temos então 4 neurônios de entrada (x1, x2, x3 e x4), onde cada um destes se liga a todos os neurônios intermediários (camada oculta ou hidden layer) e cada neurônio da camada oculta se liga a todos os neurônios da camada de saída. 72 O SVM realiza a separação de um conjunto de objetos com diferentes classes, ou seja, utiliza o conceito de planos de decisão. Podemos analisar o uso do SVM com o seguinte exemplo. Na figura abaixo é possível observar duas classes de objetos: azul ou laranja. Essa linha que os separa define o limite em que se encontram os pontos azuis e os pontos laranjas. Ao entrarem novos objetos na análise, estes serão classificados como laranjas se estiverem à direita e como azuis caso situem-se à esquerda. Neste caso, conseguimos separar, por meio de uma linha, o conjunto de objetos em seu respectivo grupo, o que caracteriza um classificador linear. 73 No entanto, problemas de classificação costumam ser mais elaborados, sendo necessário realizar a separação ótima por meio de estruturas mais complexas. O SVM propõe a classificação de novos objetos (teste) com base em dados disponíveis (treinamento). Como pode-se observar na figura abaixo. A separação ótima nesse caso ocorreria com a utilização de uma curva. 74 Na esquerda da figura abaixo observamos a complexidade em separar os objetos originais. Para mapeá-los, utilizamos um conjunto de funções matemáticas, conhecido como Kernels. Esse mapeamento é conhecido como o processo de reorganização dos objetos. Observa-se que à direita da figura há uma separação linear dos objetos. Assim, ao invés de construir uma curva complexa, como no esquema à esquerda; o SVM propõe, nesse caso, essa linha ótima capaz de separar os pontos azuis dos laranjas. O que é Kernel? Em Estatística, estimativa de densidade por Kernel (EDK) é uma forma não-paramétrica para estimar a Função densidade de probabilidade (FDP) de uma variável aleatória. Estimativa da densidade por Kernel é um problema fundamental de suavização de dados onde inferências sobre a população são feitas com base em uma amostra de dados finita. 75 Lógica Fuzzy – Lógica Nebulosa ou Lógica Difusa A lógica fuzzy é a forma de lógica multivalorada, na qual os valores de verdade das variáveis podem ser qualquer número real entre 0 (correspondente ao valor falso) e 1 (correspondente ao valor verdadeiro), diferentemente do que se verifica na lógica booleana, segundo a qual os valores lógicos podem ser apenas 0 ou 1. 76 77 78 79 80 81 82 83 84 Aula # 3 As Habilidades Socioemocionais do Gestor de Projetos 85 As Habilidades Socioemocionais / Soft Skills 86 87 88 89 Inteligência Emocional 90 91 Agentes e Ambientes: Um agente é tudo o que pode ser considerado capaz de perceber seu ambiente por meio de sensores e de agir sobre ese ambiente por intermédio de atuadores. 92 Sugerir ações exploratórias a longo prazo, ações muito melhores que a curto prazo. Um modelo geral de agentes com aprendizagem 93 Eixo de Expressividade Crescente: Raciocínio e Aprendizagem Ir de uma cidade a outra Ir de uma cidade a outra levando em consideracao a quantidade de gasolina no tanque, dinheiro trocado para o pedágio, GPS etc Ir de uma cidade a outra levando em consideracao a quantidade de gasolina no tanque, dinheiro trocado para o pedágio, GPS etc e preocupado com grandescaminhoes que passam em sentido contrário... 94 Estados e Transições entre Estados Cada estado do mundo é indivisível – nao tem estrutura interna. Algoritmos de busca Modelos Ocultos de Markov Processos de Decisão de Markov Divide cada estado em um conjunto fixo de variáveis ou atributos. Algoritmos de Satisfação de Restrição Lógica proposicional Planejamento Redes bayesianas Algoritmos de aprendizado de máquina O mundo tem coisas que estao relacionadas umas com as outras, nao apenas variáveis com valores Compreensão de linguagem natural Bancos de dados relacionais e lógica de primeira ordem Modelos de probabilidade de primeira ordem 95 Aprendizagem baseada em conhecimento Atomico,indivisível: Caixa-preta Busca Clássica e Busca além da Clássica sao problemas do mundo simplificado Busca-em-Árvore: considera todos os caminhos possíveis Busca-em-Grafo: evita considerar caminhos redundantes 96 b – número máximo de sucessores d qualquer nó 97 Busca Clássica: Busca-em-Árvore & Busca-em-Grafo Seleccionar ações em ambientes determinísticos, observáveis, estáticos e completamente conhecidos. O agente pode construir sequências de ações que alcançam seus objetivos; esse processo é chamado de busca clássica. Quando um objetivo é encontrado, o caminho até esse objetivo também constitui uma solução para o problema. Busca Informada ou heurística: podem ter acesso a uma funcao heurística. Utilizam conhecimento específico do problema na escolha do próximo nó. Funcao heurística estima o custo do camiho mais barato do estado atual até o estadofinalmais próximo. Identifica se um objetivo émais “promisor” que outro. Busca Gulosa de Melhor Escolha Busca A* Busca Recursiva de Melhor Escolha (RBFS) Busca nao-informada ou cega: tem acesso apenas a informacao do problema. Busca em Largura (BrFS – Breadth-first search) Busca de Custo Uniforme Busca de Profundidade (DFS – Depth-first search) Busca de Profundidade Limitada Busca de Aprofundamento iterativo (IDS – Iterative Deeping Search) Busca Bidirecional 98 99 Além da Busca Clássica Além da busca clássica: o caminho é irrelevante. Se o caminho até o objetivo não importa, usamos algorítmos de busca local: Algorítmos como Têmpera Simulada (inspirado na física estatística) Busca de Subida de Encosta e Genéticos (inspirado na biología evolutiva) 100 Busca Competitiva 101 102 Uma Árvore de Busca (parcial) para o Jogo da Velha 103 Aula # 4 Machine Learning & Redes Neurais Artificiais 104 105 106 107 Conceituação: . 1948: O matemático americano Norbert Wiener criou o termo cibernética. . 1950: Alan Turing propos um método para fornecer uma definição operacional satisfatória de inteligencia. O computador passará no teste se um interrogador humano, depois de propor algumas perguntas por escrito, não conseguir descubrir se as respostas escritas vem de uma pessoa ou de um computador. Inteligência Artificial . Estudo das faculdades mentais através do uso de modelos computacionais. . Estudo de como fazer os computadores realizarem tarefas que, no momento, são feitas melhor por pessoas. . Ideias que permitem habilitar os computadores a fazerem coisas que tornam as pessoas inteligentes. . Campo de conhecimentos onde se estudam sistemas capazes de reproduzir algumas das atividades mentais humanas. 108 Aprendizagem de Máquina 109 110 111 112 113 Aprendizagem semissupervisionada Poucos exemplos rotulados e deve-se fazer o que puder de uma grande colecao de exemplos nao rotulados. 114 Entao, qual curva se ajusta melhor aos pontos? Navalha de Ockham: prefira a alternativa mais simples hipótese que seja consistente com os dados. 115 Teoria da Entropia da Informacao 116 Teoria da Entropia da Informacao 117 Teoria da Entropia da Informacao 118 Sistemas de Apoio à Decisão (Decision Support Systems) Sistemas de apoio à decisão (em inglês, Decision Support Systems) é uma classe de Sistemas de Informação ou Sistemas baseados em Conhecimento. Refere-se simplesmente a um modelo genérico de tomada de decisão que analisa um grande número de variáveis para que seja possível o posicionamento a uma determinada questão. 119 Hättenschwiller (1999) diferencia como: SAD passivo SAD ativo, e SAD cooperativo. Um SAD passivo é um sistema que auxilia o processo de tomada de decisão, mas não traz explicitamente sugestões ou soluções. Um SAD ativo pode trazer sugestões ou soluções para o problema apresentado. Um SAD cooperativo apresenta para o tomador de decisão (que atua como um conselheiro) as opções de modificar, completar, ou refinar as sugestões apresentadas por outros colaboradores, para que estas sugestões sejam validadas. O sistema realizará a validação das sugestões até que uma solução consolidada seja gerada. 120 Sprage e Carlson (1982) identificam três componentes fundamentais de um SAD: Sistema Gerenciador de Banco de Dados (SGBD); Sistema Gerenciador de Modelagem Básica (MBMS); Sistema de Geração de Diálogo e Gerenciamento (DGMS); 121 Principais Técnicas aplicadas na construção de SAD Redes Neurais Lógica Fuzzy Agentes e MultiAgentes Mineração de Dados Mineração de Textos Redes Bayesianas 122 Sistemas de Recomendação 123 Sistemas de Recomendação 124 Um Sistema de Recomendação (RecSys) tem como principal objetivo filtrar o conteúdo que é entregue ao usuário, tentar prever a “nota” ou “preferência” que o usuário daria a um conteúdo para então realizar recomendação baseada nessa preferência. Dessa forma, a experiência de consumo dentro da plataforma se torna mais otimizada e interessante. 125 Os exemplos são diversos: a Amazon recomenda livros (ou qual coisa do marketplace), a Netflix faz recomendação de Filmes, o Mendeley recomenda artigos ciêntíficos, a Globo.com recomenda notícias e o Spotify as músicas. 126 Filtragem Baseada em Conteúdo (Content-Based) Gera as recomendações com base na similaridade do conteúdo já consumido pelo usuário. Ou seja, utiliza os conteúdos que o usuário já consumiu na plataforma (leu, comprou, assistiu, ouviu, clicou etc) para gerar um perfil, então o sistema busca conteúdos semelhantes que ainda não foram vistos pelo usuário e recomenda em seguida. Uma equação pondera o efeito de palavras de alta frequência na determinação da importância de um item. Em seguida, outros cálculos matemáticos determinam a proximidade entre diferentes itens. Por exemplo: a sentença 2 tem maior probabilidade de usar o termo 2 do que o termo 1. O contrário se aplica à sentença 1. Veja gravura abaixo: 127 A limitação da abordagem de Filtragem por Conteúdo surge quando a similaridade entre esses itens não é claramente definida. Porém, mesmo quando a similaridade é clara, os resultados do sistema de conteúdo tendem a ser muito homogêneos. Isso faz com que os itens recomendados nunca caiam fora da zona de conforto definida no início do registro dos usuários. As pessoas mudam com o tempo, assim como mudam suas preferências. Sistemas de conteúdo simples têm dificuldade para acompanhar essas mudanças. 128 Filtragem colaborativa baseada em memória Por outro lado, a abordagem da Filtragem Colaborativa ignora as características do conteúdo e foca na interação entre o Usuário X Conteúdo. Parte do princípio que o sistema não precisa saber as características do conteúdo, mas sim quais conteúdos o usuário consumiu para identificar quais outros usuários tiveram o mesmo comportamento de consumo. Dessa forma é possível “trocar” recomendações entre usuários semelhantes ao processar o coletivo. É fundamentada pelo comportamento dos usuários no passado. Em outras palavras, é baseada na similaridade de preferências, gostos e escolhas entre usuários ao longo do tempo. Ela analisa o quão semelhante o gosto de um usuário é para o outro e faz recomendações com base nisso. Por exemplo, se o usuário A gosta dos filmes 1, 2, 3 e o usuário B gosta dos filmes 2, 3, 4, eles aparentam ter interesses semelhantes. Logo, o usuário A é propenso a gostar do filme 4 e o usuário B deve gostar do filme 1. Este é um dos algoritmos mais comumente utilizados, pois não depende de nenhuma informação adicional. 129 Há dois principais tipos de algoritmos de filtragem colaborativa: Filtragem colaborativa usuário-usuário: O sistema encontra usuários parecidos com base na similaridade e recomenda filmes que os primeiros usuários parecidos escolheram no passado. O algoritmo é muito eficaz, mas requer tempo e recursos, pois necessita que todas as informações pareadas sejam computadas, o que leva tempo. Filtragem colaborativa item-item: É semelhante ao algoritmo anterior, mas, ao invés de encontrar usuários parecidos, tenta encontrar filmes parecidos – a partir das escolhas dos usuários. Esse algoritmo consome muito menos recursos. O sistema não precisa analisar todos os índices de similaridade entre usuários, mas sim a similaridade entre filmes – o que representa um número menor de itens ao longo do tempo. 130 131 Filtragem colaborativa baseada em modelos Para resolver alguns problemas da abordagem anterior, há a filtragem colaborativa baseada em modelos. Ela começa a partir de uma técnica chamada “redução da dimensionalidade”. Em linhas gerais, ela se trata de um tratamento dos dados brutos. As dimensões são “reduzidas” porque essa técnica permite encontrar padrões de gostos e preferências, o que, por sua vez, permite identificar correlações, remover dados incomuns, interpretar e visualizar dados, além de armazená-los com mais facilidade. Essa técnica permite com que o sistema aprenda as preferências dos usuários e os atributos dos itens avaliados e, então, crie previsões sobre classificações ainda desconhecidas. 132 A maior limitação desses sistemas Colaborativos é que eles dependem muito das preferências dos usuários para recomendar coisas. Em um cenário de início frio (cold start), onde não temos muitos usuários ou o usuário é novo ou o produto é novo, não conseguimos gerar recomendações úteis. Por conta disso, podemos entender que sistemas colaborativos têm seu desempenho inversamente proporcional à esparsidade das matrizes de utilidade que definem as preferências dos usuários. É por isso que, na minha experiência, sistemas colaborativos sempre exigem modificações particulares ao problema sendo resolvido, sejam elas nos próprios algoritmos ou até nos dados em si. 133 Sistemas Híbridos (Hybrid) Como o próprio nome já diz, os sistemas híbridos são os que têm características ou combinam as abordagens de Filtragem Colaborativa e Baseado em Conteúdo. De forma geral, os resultados são melhores que os dois separadamente, isso fica evidente quando comparamos os pontos fortes e fracos de cada categoria. 134 Casos de Uso de Machine Learning 1. Detecção de Fraudes – Bancos e operadoras de cartões de crédito estiveram entre os primeiros a usar a aprendizagem de máquina. Eles costumam usar a tecnologia para identificar transações que podem ser fraudulentas. Se a sua operadora de cartão de crédito o telefonar para validar uma compra específica que você tenha feito recentemente, a empresa provavelmente usou o aprendizado de máquina para sinalizar uma transação suspeita em sua conta. 2. Sistemas de Recomendação – Os mecanismos de recomendação on-line usados por empresas como Amazon e Netflix estão entre os exemplos mais cristalinos de aprendizado de máquina. Usando dados coletados de milhões de compradores e usuários, os sistemas de aprendizado de máquina são capazes de prever itens que você pode gostar, de acordo com suas compras anteriores ou hábitos de visualização. 3. Mecanismos de Busca – Google, Microsoft Bing e outros mecanismos de busca usam a aprendizagem de máquina para melhorar suas capacidades minuto a minuto. Eles podem analisar dados sobre quais links usuários clicam em resposta a consultas para melhorar seus resultados. Eles também estão usando o aprendizado da máquina para melhorar seu processamento de linguagem natural e fornecer respostas específicas para algumas questões. 135 4. Sistemas de Vigilância em Vídeo – O aprendizado de máquina permite que os sistemas de reconhecimento facial melhorem o tempo todo. Em alguns casos, esses sistemas podem identificar criminosos conhecidos, ou podem ser capazes de identificar comportamentos ou atividades que estão fora da norma ou quebram a lei. 5. Reconhecimento de Manuscrito – O Serviço Postal dos EUA usa a aprendizagem de máquina para treinar seu sistema que reconhece endereços manuscritos. 6. Processamento de Linguagem Natural – Hoje, a maioria de nós dá por certo que assistentes pessoais como Siri, Alexa, Cortana ou Assistente do Google poderão entender pedidos de voz e responder a perguntas. Ao longo do tempo, essas ferramentas usam aprendizado de máquina para melhorar suas habilidades para reconhecer, entender e processar a entrada verbal. 7. Bots de Serviço ao Cliente – Os agentes automatizados podem usar o processamento de linguagem natural e os dados de atendimento ao cliente para responder a perguntas comuns e melhorar a qualidade dessas respostas ao longo do tempo. 8. Segurança de TI – Muitas das soluções de segurança de TI mais avançadas de hoje, como ferramentas de análise de comportamento de usuário, usam algoritmos de aprendizado de máquina para identificar potenciais ataques. O aprendizado de máquina estabelece uma linha de base do comportamento “normal” 136 que usa para detectar anomalias, potencialmente permitindo que as organizações identifiquem e atenuem ameaças. 9. Análise de Streaming de Dados – No mundo 24/7 de hoje, muitos dados, como feeds de redes sociais e transações de vendas on-line, são atualizados constantemente. As organizações usam a aprendizagem de máquina para encontrar insights ou identificar problemas potenciais em tempo real. 10. Manutenção Preditiva – A Internet das Coisas (IoT) oferece muitos casos de uso de aprendizagem de máquina, incluindo a manutenção preditiva. As empresas podem usar dados históricos de equipamentos para prever quando as máquinas provavelmente falharão, permitindo que eles façam reparos ou instale peças de reposição de forma proativa antes que afete operações comerciais ou de fábrica. 11. Detecção de Anomalia – Da mesma forma que o aprendizado de máquina pode identificar comportamentos anômalos em sistemas de TI, ele também pode detectar anomalias em produtos manufaturados ou itens alimentares. Em vez de contratar inspetores para examinar produtos visualmente, as fábricas podem usar sistemas de aprendizado de máquina que foram treinados para identificar itens que não atendem aos padrões ou especificações. 12. Previsão de Demanda – Em muitas indústrias, obter a quantidade certa de produto na localização certa é fundamental para o sucesso comercial. Os sistemas de aprendizagem de máquina podem usar dados históricos para prever as vendas de forma muito mais precisa e rápida do que os seres humanos podem por conta própria. 137 13. Logística – Para empresas de transporte, configurar horários e rotas é uma tarefa complexa e demorada. Os sistemas de aprendizagem de máquina podem ajudar a identificar a maneira mais eficiente e econômica de transportar bens ou pessoas do ponto A ao ponto B. 14. Negociação Financeira – Todo comerciante espera encontrar padrões no mercado que lhe permitam comprar baixo e vender alto. Os algoritmos de aprendizagem de máquina podem ajudar a identificar oportunidades potenciais com base na atividade do mercado no passado. 15. Diagnóstico de Cuidados de Saúde – Muitos especialistas prevêem um futuro em que as ferramentas de diagnóstico de aprendizagem de máquina funcionam ao lado de profissionais humanos para identificar doenças e determinar o curso de tratamento mais efetivo. Os sistemas informatizados podem ser particularmente bons na detecção de anomalias e consequentemente na detecção de doenças raras. 16. Veículos Autônomos – Veículos autônomos são uma das aplicações mais fascinantes da aprendizagem de máquina. Em um futuro não muito distante, veículos capazes de navegar por conta própria podem se tornar a regra. 17. Robôs – Embora eles tenham sido um elemento básico da ficção científica, os robôs com habilidades de aprendizado de máquina poderiam muito em breve ser parte da vida cotidiana. Esses robôs poderiam melhorar suas capacidades ao longo do tempo, permitindo que elas se tornassem mais úteis para os seres humanos. 138 Aula # 5 Machine Learning Supervisionado, NãoSupervisionado e Semissupervisionado (ou Supervisao muito fraca ) 139 140 141 142 143 144 O agente aprende padroes na entrada, embora nao seja fornecido nenhum feedback explícito. A tarefa mais comum de aprendizagem nao supervisionada é o agrupamento (clustering). O agente observa alguns exemplos de pares de entrada e saída, e aprende uma funcao que faz o mapeamento da entrada para a saída. Aprendizagem de uma funcao de valores discretos é chamada de classificacao; a prendizagem de uma funcao contínua é chamada de regressao. 145 146 147 148 SOM (Self-Organized Map) – Mapas de Kohonen Capacidade de organizar dimensionalmene dados complexos em grupos (clusters), de acordó com suas relacoes. Ideal para padroes desconhecidos ou indeterminados. Diminui a dimensao e um grupo de dados conseguindo manter a representacao real com relacao as propiedades relevantes dos vetores de entrada . 149 Mapas Auto-Organizáveis de Kohonen Entradas semelhantes sejam agrupadas Produzir saídas semelhantes 150 Aprendizagem em Árvores de Decisao Indutiva Trivialmente, há uma árvore de decisão consistente para qualquer conjunto de treinamento com um caminho (da raiz a uma folha). Isso seria uma representação em uma árvore exponencialmente grande, pois a tabela verdade tem exponencialmente muitas linhas. Devemos procurar por árvores de decisão mais compactas. Tabela da Verdada (True Table) e Árvore de Decisao de uma Funcao Boleana 151 Adota uma estratégia de busca gulosa de dividir para conquistar: sempre testando o atributo mais importante em primeiro lugar. 152 AIoT Artificial Intelligence of Things 153 AIoT Inteligência artificial + Internet das Coisas (Artificial Intelligence of Things) = AIoT. IoT = conectividade e geração de dados. IA = sistemas mais completos com técnicas de aprendizado de máquina. Grande Desafio da IoT Nossa capacidade de gerenciar, analisar e interpretar a infinidade de dados gerados por ela. A saída pode estar justamente na inteligência artificial, com soluções que criem valor de fato para os dados gerados pela Internet das Coisas. Portanto AIoT une a necessidade de dados e análises da Internet das Coisas com a otimização e o tratamento da inteligência artificial, criando soluções que sejam capazes de oferecer personalização e aprendizagem ao mesmo tempo. Trata-se de sistemas conectados, que analisam hábitos, padrões e preferências de praticamente qualquer coisa e tomam decisões rápidas e assertivas. 154 Com a introdução dos chips de IA, os dispositivos IoT podem ser mais ativos do que passivos. Por exemplo, um alto-falante inteligente habilitado para IA pode processar a palavra acionadora usando um modelo de processamento de linguagem natural (PNL) localmente, em vez de enviar toda a captura de voz para a nuvem para processamento. Isso significa essencialmente que um sistema IoT habilitado para IA será: Mais robusto, Mais seguro e Ainda mais escalável. 155 Aula # 6 Deep Learning 156 Tradicionalmente, a qualidade dos algoritmos depende muito da representação dos dados em certas características (as chamadas features). Assim, Feature Engineering e pré-processamento consomem grande parte dos esforços dos especialistas e são específicos para cada domínio — na análise de imagens, por exemplo, é comum fazer o pré-processamento com algoritmos de detecção de fronteiras (os chamados edges) para facilitar a identificação de objetos. Já os algoritmos do tipo Deep Learning têm uma abordagem inovadora, pois dispensam grande parte desse pré-processamento e geram automaticamente propriedades invariantes em suas camadas hierárquicas de representação. 157 Dados sensoriais (pixels de imagens, por exemplo) são alimentados a uma primeira camada, sendo que a saída de cada uma delas torna-se a entrada da camada seguinte. Logo, o empilhamento de várias faixas desses “neurônios” é a ideia básica dos algoritmos do tipo Deep Learning. Um dos principais termos que anda lado a lado com o conceito de Deep Learning é o de Machine Learning — ambos intimamente ligados com a Inteligência Artificial. Porém, não são sinônimos e é importante saber diferenciá-los. Para compreender essas diferenças sutis, é essencial compreender que um evoluiu do outro. Tudo começou com o conceito de Inteligência Artificial — mais amplo, que abrange diversos outros pontos, nos quais Deep Learning e Machine Learning estão inclusos. Ao mesmo tempo, se a IA é, hoje, revolucionária, muito se deve justamente aos avanços gerados pelo Deep Learning e Machine Learning. 158 E dentro deste conceito, temos o Deep Learning (ou “Aprendizagem Profunda”). Em um nível mais profundo, com algoritmos de alto nível, as máquinas passam a agir de forma similar a rede neural do cérebro humano. Isso é possível por meio da criação do princípio de redes neurais artificiais. A ideia é que os dados sejam submetidos a diversas camadas de processamento não lineares, tal como ocorre na rede de neurônios. Eles são capazes de reconhecer imagens e falas, conseguem processar a linguagem humana e realizam tarefas extremamente complexas sem a intervenção humana no processo. 159 Nos últimos anos, o Deep Learning ajudou a forjar avanços em áreas muito diversas, como a percepção do objeto, a tradução automática e o reconhecimento de todos os tópicos de pesquisa de voz, que tem sido, por muito tempo, difícil para os pesquisadores de Inteligência Artificial. A importância do Deep Learning é tamanha que o Google, por exemplo, disponibilizou um curso gratuito sobre o assunto para qualquer internauta interessado. Por meio da plataforma TensorFlow é possível conhecer o mecanismo e entender, na prática, como as máquinas podem “aprender e interpretar” mais profundamente. A importância de entender de Deep Learning se dá pelo imenso crescimento que essa abordagem tem experimentado nos últimos anos. O que é TensorFlow? TensorFlow é uma biblioteca de código aberto para aprendizado de máquina aplicável a uma ampla variedade de tarefas. É um sistema para criação e treinamento de redes neurais para detectar e decifrar padrões e correlações, análogo (mas não igual) à forma como humanos aprendem e raciocinam. Podemos definir então o Tensor como sendo uma estrutura de dados que contém valores primitivos e estão em um array -n dimensional 160 Outros métodos de Machine Learning versus Deep Learning Existem alguns pontos importantes que diferem as técnicas clássicas de Machine Learning dos métodos de Deep Learning. Os principais são: A necessidade e o efeito de muitos dados, Poder computacional e a Flexibilidade na modelagem dos problemas. 161 Muitos dados Uma verdade absoluta sobre machine learning é: Não existe Machine Learning se não existir dados! Sem dados não há o que aprender ou sobre o que descobrir padrões. Embora os dados sejam o “combustível” das técnicas de Machine Learning existem dois problemas que afligem as técnicas clássicas com relação aos dados, a “maldição da dimensionalidade” e a estagnação da performance ao adicionar mais dados após um certo limite. 162 Uma analogia é a melhor forma de explicar a “maldição da dimensionalidade”, até porque o ser humano sofre do mesmo mal. Pense que você está querendo comprar um carro, e seu objetivo é escolher um carro com melhor custo benefício. Inicialmente você só pode escolher o carro pelo ano e preço, creio que seja uma tarefa bem simples escolher o melhor carro. Agora, pense que você tem que escolher o carro baseado no ano, preço, marca, modelo, cor, assessórios, estofado, tamanho do tanque… etc. São tantas características, ou seja, tantas informação sobre o problema que uma pessoa acabaria se prendendo aos detalhes e perdendo o foco principal. É isso que acontece com a maioria das técnicas clássicas ao adicionar dimensionalidade ao problema. Existe uma área de pesquisa focada apenas na redução de dimensionalidade, os métodos de ML utilizam essas técnicas para minimizar esse problema. 163 Comparação de Deep Learning com outros algoritmos com relação a quantidade de dados. 164 Outra questão, é que as técnicas clássicas chegam a um ponto de saturação com relação a quantidade de dados, ou seja, chegam no limite máximo que conseguem extrair de informação dos dados. O mesmo não acontece facilmente com Deep Learning, que são preparadas para trabalhar com uma maior quantidade de dados. Esses dois problemas dos algoritmos clássicos de Machine Learning reforçam um dos principais benefícios do uso de Deep Learning, que é: Quanto mais dados, melhor! Fonte: https://medium.com/data-hackers/deep-learning-do-conceito-%C3%A0s-aplica%C3%A7%C3%B5es-e8e91a7c7eaf 165 Optimal number of features Performance de um algoritmo clássico de ML ao adicionar características 166 Fonte: https://medium.com/data-hackers/deep-learning-do-conceito-%C3%A0s-aplica%C3%A7%C3%B5es-e8e91a7c7eaf Flexibilidade na estrutura das redes neurais e Deep Learning Embora existam diversas técnicas clássicas e sejam de propósito geral, a estrutura de Deep Learning e sua unidade mais básica, o neurônio, consegue ser o mais genérico e flexível possível. A formulação matemática de um neurônio (esse mesmo que tem ai na sua cabeça) é o mais simples possível, e fazendo um paralelo nós temos que: 167 Baseado em “A Logical Calculus of the ideas Immanent in Nervous Activity” McCulloch and Pitts, 1943 168 De forma resumida, o neurônio é composto por entradas (os dendritos), um núcleo de processamento (o núcleo) e saídas (o axônio). Dessa forma um sinal entra, é processado e sai diferente. Matematicamente, o neurônio pode ser modelado como um somatório das entradas multiplicado por pesos, em que esse valor passa por uma função de ativação. Essa proposta foi feita por McCulloch em 1943 e posteriormente refinada por Rosenblatt em 1950. 169 170 ... se a base teórica das redes neurais é datada de 1943, por que só agora estamos falando de Deep Learning ? Existem várias respostas para essa pergunta, mas todas de algum modo fazem referência aos dois pontos que já comentei nesse artigo e ao momento que estamos vivendo, que são: Quantidade de dados disponível e a limitação das técnicas clássicas Poder computacional suficiente para treinar redes complexas Embora apenas um neurônio não seja útil, a flexibilidade de interligar vários neurônios em estruturas mais complexas para resolver problemas é o grande diferencial das arquiteturas de Deep Learning. 171 Um exemplo de como funciona Deep Learning Abaixo tem uma estrutura simplificada de uma Rede Neural Convolucional (CNN). Esse tipo de rede é muito utilizada para reconhecimento facial, detecção de objetos em imagens, extração de características.. etc 172 173 Uma RNA geralmente é composta por varias camadas (Layers). Dependendo do problema a ser resolvido a quantidade de camadas pode variar entre dezenas, como uma VGG16 com 16 camadas, até centenas de camadas profundas, como uma ResNet da Microsoft de 152 camadas. É tudo uma questão da complexidade do problema com o tempo e poder computacional disponível para resolver. Existem inúmeras arquiteturas diferentes com propósitos diferentes, seu funcionamento também depende da estrutura, mas de forma geral, todas são baseadas nas redes neurais. Abaixo alguns exemplos: 174 175 http://www.asimovinstitute.org/neural-networkzoo/?utm_content=buffer607bd&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer Essa liberdade de arquitetura possibilita que Deep Learning resolva inúmeros problemas, e seja na verdade como uma caixa de peças lego, só esperando ser montada e desmontada para construir coisas novas. 176 177 178 Técnicas Computacionais Supervisionada Conjuntos de entrada e saída Exemplos de treino (para cada x, um respectivo y) Conjunto de treino ([ [x1,y1] [x2,y2] ... [xn,yn]) Dada uma E/S, produzir um classificador Não-supervisionada Conjuntos de entrada (x), ([x1] [x2],... [xn]) Determinar como os dados podem ser organizados ou agrupados (Probabilidade e estatística, data mining) Aprendizagem por reforço Encadeamento de ações, sem treinamento Ajustes tem tempo-real (programação paralela, otimização de algoritmos) Pavlov 179 Reconhecimento de Padrões Processamento de Linguagem Natural Escrita Falada Interpretação Visão Computacional Reconhecimento facial (aeroportos) Técnicas Computacionais Redes Neurais Computação Gráfica Processamento de sinais (Circuitos e Tec. Dig.) Segmentação (classificadores à cálculo e calc. numérico) Geometria / Matemática Abordagens baseadas em técnicas de aprendizagem 180 Aula # 7 Perceptron 181 PERCEPTRON – REDES NEURAIS As Redes Neurais Artificiais (RNAs) são modelos computacionais inspirados no sistema nervoso central, ou seja, capazes de realizar o Machine Learning e reconhecimento de padrões. O tipo mais simples de rede neural artificial foi proposto em 1958 por Frank Rosenblatt, conhecido como perceptron. A palavra em latim para o verbo compreender é “percipio“, e sua forma mais elevada é “perceptum”, ou seja, a rede deve ser capaz de compreender o mundo exterior. Esse algoritmo de aprendizagem supervisionada considera um período de treinamento (com valores de entrada e saída) para definir se uma nova entrada pertence a alguma classe específica ou não. 182 Mark I Perceptron. Foto: Cornell Aeronautical Laboratory 183 O Mark I Perceptron foi uma máquina projetada para reconhecimento de imagem e foi a primeira implementação do algoritmo. Tinha uma matriz de 400 fotocélulas, conectadas aleatoriamente aos “neurônios”. Os pesos foram codificados em potenciômetros, e as atualizações de peso durante a aprendizagem eram realizadas por motores elétricos. Atualmente, o algoritmo pode ser implantado em qualquer computador usando diversas linguagens de programação. O Perceptron é um classificador linear, ou seja, os problemas solucionados por ele devem ser linearmente separáveis. O gráfico a seguir mostra um conjunto de pontos bi-dimensional que pode ser separado linearmente – note que é possível passar uma linha reta entre os dois grupos de cores diferentes: 184 Gráfico com problema linearmente separável em duas dimensões 185 A separação entre as duas classe está representada por uma reta, já que é um gráfico de duas dimensões – se fossem três dimensões, seria um plano; 4 dimensões ou mais, seria um hiperplano. Ainda no gráfico, a reta define o limite entre duas regiões, por isso é chamada de função limiar. Essa função é responsável por determinar a forma e a intensidade de alteração dos valores transmitidos de um neurônio a outro. A Universidade do Texas das Ciências da Computação (UTCS) possui uma versão online desse problema, na qual é possível incluir pontos vermelhos e azuis, recalculando-se automaticamente a melhor reta para separar os conjuntos e depois apresentando a classificação pelo algoritmo pressionando os botões “train” e “classify”. Agora imagine se existissem dois pontos vermelhos, um em (-1,-1) e outro em (1,1), e dois azuis, um em (-1,1) e outro em (1,-1). Não teria como passar uma linha reta dividindo o gráfico em duas regiões. Esse é conhecido como “problema XOR” (“ou exclusivo”), sendo que XOR é uma operação lógica entre dois operandos que resulta em um valor lógico verdadeiro se e somente se exatamente um dos operandos possui valor verdadeiro. Esse problema pode ser solucionado com a criação de uma camada intermediária em uma rede com dois neurônios e graficamente com uma estrutura em três (ou mais) dimensões. Desse modo, é possível o uso de funções não-lineares. 186 Algoritmo Um neurônio recebe um impulso através dos dendritos, processa o sinal e dispara um segundo impulso, que produz uma substância neurotransmissora que flui do corpo celular para o axônio, e então para outro neurônio. 187 188 Uma analogia pode ser feita para criar um “neurônio artificial”: 1 Os sinais de entrada {x1, x2, xn} são ponderados/multiplicados por {w1, w2, wn} 2 A função agregadora {Σ} recebe todos os sinais e realiza a soma dos produtos dos sinais 3 Ao resultado, é somado o limiar de ativação {Θ} (também chamado de bias ou parâmetro polarizador), soma essa conhecida como potencial de ativação {u}; o bias é uma constante que serve para aumentar ou diminuir a entrada líquida u, de forma a transladar a função de ativação no eixo de u Obs.: o bias pode ser tratado como “mais um peso”, o que na prática envolve acrescentar uma nova entrada do tipo xk0 = 1 com um peso associado wk0. A função de ativação {g} é aplicada sobre o potencial de ativação {u} para deixar o sinal passar ou não 189 Todas as saídas da rede são trocadas no início de intervalos discretos chamados de época. No início de cada época, a soma das entradas de cada neurônio é somado e aplicada a função de ativação. Essa função de ativação pode ser uma função bipolar (somente dois valores de saída), uma reta (função linear) ou até uma função gaussiana, hiperbólica, etc. No caso de uma função bipolar, pode-se considerar a saída igual a “1” se o valor de u (somatório dos produtos) for maior ou igual a 0 e “-1” no caso de u < 0. O processo de treinamento tem como objetivo calibrar os pesos de modo iterativo, partindo de valores aleatórios (geralmente entre 0 e 1). A taxa de aprendizagem {η} (também um valor entre 0 e 1) diz o quão rápido a rede chega ao seu processo de classificação: um valor muito pequeno causa demora a convergir, enquanto que um valor muito alto pode levar para valores fora do ajuste e nunca convergir. Assim, o vetor contendo os pesos de um passo de iteração será o resultado da soma de si mesmo no passo anterior com o produto das seguintes parcelas: a taxa de aprendizagem, a amostra de aprendizagem desse passo e a diferença entre o valor desejado (saída “certa”) para esse passo e o valor de saída produzido pela rede (passo 6.2.3.1 do algoritmo abaixo). Essa diferença é chamada de erro de saída: se for diferente de zero, é aplicada a correção. 190 Juntando tudo, veja como fica o algoritmo da fase de treinamento: 1 Obter o conjunto de amostras de treinamento {x(k)} 2 Associar o valor desejado {d(k)} para cada amostra obtida 3 Iniciar o vetor de pesos {w} com valores aleatórios pequenos 4 Especificar a taxa de aprendizagem {η} 5 Iniciar o contador de número de épocas (época = 0) 6 Repetir as seguintes instruções até que o erro de saída inexista: 6.1 Inicializa erro (erro = “inexiste”) 6.2 Fazer o seguinte loop para todas as amostras de treinamento {x(k), d(k)}: 6.2.1 u = wT.x(k) 6.2.2 y = g(u) 6.2.3 Se o erro existir (y diferente de d(k)): 6.2.3.1 w = w + η.x(k).(d(k)-y) 6.2.3.2 Atualiza condição de erro (erro = “existe”) 6.3 Atualiza contador de épocas (época = época + 1) 191 Após o treinamento, entra o algoritmo de operação para gerar novos valores: 1 Obter o conjunto de amostras a serem classificadas 2 Carregar o vetor de pesos {w} ajustado no treinamento 3 Para cada amostra {x}: 3.1 u = wT.x 3.2 y = g(u) 3.3 Verificar saída 3.3.1 Se y = -1, amostra {x} pertence à {classe A} 3.3.2 Se y = 1, amostra {x} pertence à {classe B} Com isso, as novas amostras devem ser classificadas em uma das duas classes com base em classificações realizadas no período de treinamento. 192 A Diferença Entre Inteligência Artificial, Machine Learning e Deep Learning 193 Machine Learning da maneira mais básica é a prática de usar algoritmos para coletar dados, aprender com eles, e então fazer uma determinação ou predição sobre alguma coisa no mundo. Então ao invés de implementar as rotinas de software na mão, com um set específico de instruções para completar uma tarefa em particular, a máquina é “treinada” usando uma quantidade grande de dados e algoritmos que dão e ela a habilidade de aprender como executar a tarefa. Machine learning veio direto das mentes do pessoal do início da IA, e a abordagem com algoritmos através dos anos incluiu árvore de aprendizado, programação lógica indutiva, agrupamento, aprendizado reforçado, redes Bayesianas, entre outros. Como sabemos, nenhuma dessas soluções chegou ao objetivo final de uma IA genérica, e mesmo uma IA limitada estava fora do nosso alcance com as abordagens iniciais de machine learning. 194 Da maneira que as coisas evoluíram, uma das melhores áreas de aplicação para machine learning por muitos anos foi a de visão computacional, apesar de ainda requerer muito trabalho manual para completar uma tarefa. Pessoas escreveram na mão classificadores como filtros detectores de beiradas em imagens para que os programas conseguissem identificar onde um objeto começou e terminou; detectores de formato para determinar se algo na imagem tem oito lados; um classificador para reconhecer as letras “P-A-R-E”. De todos esses classificadores criados manualmente, eles construíram algoritmos que entendem uma imagem e “aprendem” a determinar se é uma placa de pare. Nada que seja surpreendente. Especialmente em um dia com neblina quando a placa não é perfeitamente visível, ou se uma árvore tapa metade dela. Há uma razão pela qual visão computacional e detecção de imagens não chegava nem perto de rivalizar com humanos até muito recentemente, ela era muito rasa e propensa a erros. Tempo e o algoritmo de aprendizado certo fizeram toda a diferença. 195 Outra abordagem em forma de algoritmo do início do movimento de Machine Learning, Redes Neurais Artificias, surgiram e desapareceram através das décadas. Rede neurais são inspiradas pelo nosso entendimento da biologia do nosso cérebro — todas as interconexões entre neurônios. Mas, diferente de um cérebro biológico onde qualquer neurônio pode se conectar com qualquer outro neurônio dentro de uma certa distância física, essas redes neurais artificiais tem camadas discretas, conexões e direções de propagação de dados. Você pode, por exemplo, pegar uma imagem, cortar ela em uma pilha de pequenos pedaços que são recebidos pela primeira camada da rede neural. Na primeira camada neurônios individuais, então passam os dados para uma segunda camada. A segunda camada faz o seu trabalho, e assim por diante, até que a camada final produza a saída. 196 Cada neurônio atribui um peso para os dados que entram — o quão correto ou incorreto ele é relativo a tarefa que está sendo executada. A saída final é então determinada pelo total desses pesos. Tome como exemplo a nossa placa de pare. Atributos de uma foto de uma placa de pare são cortados e examinados pelos neurônios — o seu formato octogonal, a sua cor vermelha, as suas letras distintas, o tamanho comum para placas de trânsito e o seu movimento (ou falta dele). O trabalho da rede neural é concluir se a imagem é de uma placa de pare ou não. Ela traz um “vetor de probabilidade”, que é um valor calculado a partir dos pesos atribuídos a imagem. Em nosso exemplo o sistema pode estar 87% confiante que a imagem é de uma placa de pare, 7% confiante que é uma placa de limite de velocidade e 5% que é um gato preso em uma árvore, e assim por diante — a arquitetura da rede então diz para a rede neural se está certo ou não. 197 Mesmo esse exemplo está indo a frente, porque até recentemente redes neurais eram evitadas pela comunidade pesquisadora de IA. Elas estavam presentes desde o início de IA, e haviam produzido muito pouco no sentido de “inteligência”. O problema era que mesmo a rede neural mais básica exigia muito computacionalmente, então era uma abordagem nem um pouco prática. Ainda assim, um grupo de pesquisa pequeno liderado por Geoffrey Hinton na Universidade de Toronto se manteve firme, finalmente conseguindo paralelizar os algoritmos para supercomputadores executa-los e provar o conceito, mas só quando GPUs foram incumbidos da tarefa que a promessa foi cumprida. 198 Se voltarmos para nosso exemplo da placa de pare, as chances são de que enquanto a rede está sendo ajustada ou “treinada”, está produzindo respostas erradas — recorrentemente. Ela precisa de treino. A rede precisa ver centenas de milhares, até milhões de imagens, até os pesos de cada informação recebida pelos neurônios estarem tão precisamente calibrados que conseguem responder de forma correta praticamente toda vez — com neblina ou sem neblina, com sol ou chuva. É nesse ponto que a rede neural aprendeu como que uma placa de pare se parece; ou a rosto de sua mãe no caso do Facebook; ou um gato, que é o que Andrew Ng fez na Google em 2012. 199 O grande avanço de Ng foi de pegar essas redes neurais, e essencialmente faze-las grandes, aumentar as camadas e os neurônios, e então alimentá-las com um nível massivo de dados para que fossem treinadas. No caso de Ng, eram imagens de 10 milhões de vídeos do YouTube. Ng colocou a palavra “deep” no deep learning, que descreve todas as camadas nessas redes neurais. Hoje, reconhecimento de imagens por máquinas treinadas através de deep learning em alguns cenários possuem uma taxa de acerto maior que a de humanos, e isso varia de gatos até identificar indicadores de câncer no sangue e tumores em exames de ressonância magnética. O AlphaGo da Google também aprendeu as regras do jogo e treinou para sua partida — calibrou sua rede neural — jogando contra si mesmo repetidamente. 200 Estudo de Caso: Otimização do processo de fabricação Talvez o mais óbvio, mas ainda um dos mais difíceis de implementar casos de uso de IA, seja a otimização automatizada do processo de fabricação. Uma implementação dessa otimização é através de máquinas ou robôs autônomos. A ideia por trás desses ativos autônomos é que eles replicam tarefas humanas monótonas no processo de fabricação, economizando custos. Antes de serem colocadas em produção, as máquinas / robôs autônomos executam a mesma tarefa repetidamente, aprendendo cada vez até atingirem precisão suficiente. A técnica de aprendizado por reforço é frequentemente usada para treinar robôs e máquinas autônomas. Sob essa técnica, um robô pode ensinar-se de forma relativamente rápida e executar uma tarefa sob a supervisão de um humano. Os "cérebros" de um robô / máquina desse tipo são geralmente redes neurais. 201 Um sistema de aprendizado por reforço replica o processo natural de aprendizado humano: um agente (por exemplo, um robô) executa uma ação que é observada por um ambiente. Uma certa recompensa é gerada e enviada de volta ao agente. Depois de repetir o processo várias vezes, o "cérebro" de um robô, ou seja, uma rede neural, otimiza o comportamento para satisfazer o ambiente. Fonte: Mao, 202 Alizadeh, Menache e Kandula (2016). Estudo de caso: A ABB está investindo US $ 150 milhões para construir uma fábrica de robótica “avançada, automatizada e flexível” em Xangai. Nesta fábrica, a ABB fabricará robôs usando robôs. Segundo a ABB, esses robôs terão elementos autônomos e colaborativos. A autonomia dos robôs é construída com o uso de IA e gêmeos digitais. Fonte: ABB. 203 Manufatura preditiva 204 Robotic Process Automation (RPA) é o uso de software com Inteligencia Artificial e habilidades de aprendizado de máquina para atividades repetitivas e de alto volume. 205 Retrofitting Retrofit é uma palavra em inglês originada do prefixo “retro”, que significa movimentar-se para trás, e do sufixo “fit”, que significa adaptação/ajuste. Este termo passou a ser utilizado pela indústria aeronáutica no início da década de 90 nos Estados Unidos e em países Europeus, para reportar-se à atualização de aeronaves, adaptando-as para novos equipamentos existentes no mercado. Nesta perspectiva, retrofitting industrial é o processo de atualização das máquinas, substituindo ou modernizando peças e softwares por modelos com versões mais recentes. Retrofit é importante para a Indústria 4.0, uma vez que essa técnica oferece uma adaptação, evitando a necessidade de uma nova máquina, que requer um investimento inicial alto e, consequentemente, o aumento dos custos unitários. Schlechtendah et. al. (2015) apresentam alternativas para adaptar sistemas que inicialmente não foram projetados com interface para indústria 4.0, podem ser expandidos para participar de uma fábrica 4.0, ao propor retrofitting baseado em conceitos de gateways de comunicação e em um servidor de informações. 206 A estrutura recomendada para o retroffiting é: Planejamento do projeto; Diagnóstico do equipamento; Identificação de oportunidades; Testes e por fim, Verificação dos resultados. 207 O processo é dividido em três partes: infraestrutura, comunicação e aplicação. As três partes do processo de adaptação são compostos pelos componentes que já existiam no equipamento ou na indústria e os adicionais componentes que ajudaram na migração para a Indústria 4.0. Em alguns, o equipamento antes da adaptação não possui a partes de comunicação e / ou aplicação, ou simplesmente não podem ser reutilizados porque são muito antigos, mas após a adaptação eles trabalham devido à integração com os componentes da indústria 4.0 208 Tecnologias usadas na adaptação As tecnologias usadas para apoiar a adaptação de equipamentos são: IoT: tecnologiaconcebida como uma rede global de máquinas e dispositivos capazes de interagir entre si. A IoT é reconhecida como uma das áreas mais importantes da tecnologia. SDN: redes de computadores tradicionais foram limitados em comparação com os avanços tecnológicos na área de comunicação, especialmente em gestão, flexibilidade e requisitos de escalabilidade. Ao contrário dessa limitação, a solução é conhecida como SDN (Software-Defined Networks) OPC: a fase de migração das indústrias automatizadas para a Indústria 4.0 é uma tarefa de longo prazo, porque eles dependem de esforços e tecnologias de integração. Essa migração depende na identificação de pontos comuns entre as tecnologias. OPC (Open Communication Platform) Computação em nuvem: usando serviços sob demanda, a computação em nuvem transformou as infraestruturas tradicionais da computação, permitindo a execução de toda a computação que não precisa próprios servidores ou mainframes. Abrindo um novo modelo de serviço na computação, as empresas agora oferecem hardware, plataformas e software como serviços de assinatura. 209 Aprendizado de Máquina para Segurança Cibernética 210 Conjuntos de árvore de decisão, locality sensitive hashing, modelos comportamentais ou incoming stream clustering - todos os métodos de aprendizado de máquina são projetados para atender aos requisitos de segurança do mundo real: baixa taxa de falsos positivos, interpretabilidade e robustez a um potencial adversário. No caso específico de aprendizado supervisionado para antimalware, a tarefa pode ser formulada da seguinte maneira: dado um conjunto de features de objeto X e os rótulos de objeto correspondentes Y como entrada, crie um modelo que produza os rótulos corretos Y ‘ para os objetos de teste X ‘ não são conhecidos previamente. X pode ser algum feature com conteúdo ou o comportamento de um arquivo (e.g. arquivos de estatísticas, lista de funções usadas da API etc.) e os rótulos Y podem ser simplesmente “malware” ou “benignos” (em casos mais complexos, podemos estar interessados em uma classificação com maior granularidade, como vírus, Trojan-Downloader, adware etc.). No caso de aprendizado não supervisionado, estamos mais interessados em revelar a estrutura oculta dos dados - por exemplo, encontrar grupos de objetos semelhantes ou altamente correlacionados. 211 212 Conjunto de árvore de decisão Nessa abordagem, o modelo preditivo assume a forma de um conjunto de árvores de decisão. Todo nó sem folha da árvore contém algumas perguntas sobre os recursos de um arquivo, enquanto os nós que possuem folha contêm a decisão final da árvore sobre o objeto. Durante a fase de teste, o modelo percorre a árvore, respondendo às perguntas nos nós com os recursos correspondentes do objeto em consideração. No estágio final, as decisões de várias árvores são calculadas como uma maneira específica do algoritmo para fornecer a decisão final sobre o objeto. O modelo beneficia o estágio de proteção proativa de pré-execução no site do nó de extremidade. Uma de nossas aplicações dessa tecnologia é o Cloud ML para Android, usado para detecção de ameaças móveis 213 214 Hash de similaridade (Hash sensível à localidade) Os hashes usados para criar “pegadas” de malware algum tempo atrás eram sensíveis a todas as pequenas alterações em um arquivo. Essa desvantagem foi explorada pelos criadores de malware por meio de técnicas de ofuscação, como o polimorfismo no servidor: pequenas alterações no malware tiraram o foco do radar. O hash de similaridade (ou hash sensível à localidade) é um método para detectar arquivos maliciosos semelhantes. Para fazer isso, o sistema extrai recursos de arquivo e usa o aprendizado de projeção ortogonal para escolher os recursos mais importantes. Em seguida, a compreensão baseada em Machine Learning é aplicada para que vetores de valor de características semelhantes sejam transformados em padrões semelhantes ou idênticos. Esse método fornece uma boa generalização e reduz notavelmente o tamanho da base dos registros de detecção, pois agora um registro pode detectar toda a família de malware polimórfico. O modelo beneficia o estágio de proteção proativa de pré-execução no site do nó de extremidade. É aplicado em nosso Sistema de detecção de hash de similaridade. 215 Similarity hashing (Locality sensitive hashing) 216 Modelo comportamental Um componente de monitoramento fornece um log de comportamento - a sequência de eventos do sistema ocorridos durante a execução do processo, juntamente com os argumentos correspondentes. Para detectar atividades maliciosas nos dados de log observados, nosso modelo compacta a sequência de eventos obtida em um conjunto de vetores binários e treina a rede neural profunda para distinguir logs limpos e maliciosos. 217 218 Cluster de fluxo de entrada Os algoritmos de clustering baseados em Machne Learning permitem separar eficientemente os grandes volumes de arquivos desconhecidos que chegam à nossa infraestrutura em um número razoável de clusters, alguns dos quais podem ser processados automaticamente com base na presença de um objeto já anotado dentro dele. 219 220 Aula # 8 Manutenção proativa e preditiva 221 222 223 224 225 Os 7 Princípios da Estratégia de Manutencao 4.0 1. 2. 3. 4. 5. 6. 7. Investimentos baseados em “Business Cases” Tenha uma abordagem incremental Faca um Upgrade nas práticas atuais de manutencao Adaptabilidade Dados sao um verdadeiro patrimonio A mplementacao deverá ser baseada em trabalho colaborativo com o chao de fábrica Compartilhe os riscos com os fornecedores 226 227 228 229 Estudo de caso: O maior caso de uso da IA industrial é a "Manutenção Preditiva" (estimada em mais de 24% do mercado total em 2018). A Manutenção Preditiva utiliza análises avançadas (por exemplo, Machine Learning) para determinar a condição de um único ativo ou de um conjunto inteiro de ativos (por exemplo, uma fábrica). O objetivo: prever quando a manutenção deve ser realizada. A manutenção preditiva geralmente combina várias leituras do sensor, às vezes fontes de dados externas e executa análises preditivas em milhares de eventos registrados. Prever a vida útil restante de um ativo usando o ML supervisionado é a técnica mais comum em manutenção preditiva (veja próximo slide) Um exemplo de previsão de vida útil restante (Remaining Useful Life - RUL) por meio da técnica de regressão Machine Learning. Com o limite de falha fornecido, um ativo provavelmente será interrompido em 9,5 dias. Fonte: Mathworks Figura 2: Um exemplo de previsão de vida útil restante (RUL) via técnica de regressão ML. Com o limite de falha fornecido, um ativo provavelmente será interrompido em 9,5 dias. Fonte: Mathworks, Imagem: Businesswire.com 230 Um exemplo de previsão de vida útil restante (RUL) via técnica de regressão ML. Com o limite de falha fornecido, um ativo provavelmente será interrompido em 9,5 dias. Fonte: Mathworks, Imagem: Businesswire.com 231 Estudo de caso: Deutsche Bahn, o operador ferroviário alemão, aproveita os dados dos comutadores ferroviários para prever falhas, diminuindo assim atrasos inesperados em escala. Fonte: Estudo de caso da Konux Exemplo 2: A Nissan executa uma plataforma de manutenção preditiva de IA para realizar o prognóstico de RUL em 7.500 ativos. A empresa alega uma redução não planejada do tempo de inatividade de 50% e um período de retorno do investimento <<3 meses. A Nissan escalou a solução de 20 ativos críticos para milhares sem aumentar a carga de trabalho da equipe no local. Fonte: Manufacturing.net Um dos maiores desafios da Manutenção Preditiva é a eliminação dos desequilíbrios de dados, pois muitas vezes não há dados de falha suficientes para todos os ativos. Os dados são chamados desequilibrados, quando os eventos de falha representam menos do que um compartilhamento específico necessário do conjunto de dados. Para fazer previsões precisas dos dados, esses desequilíbrios devem ser eliminados primeiro. Existem 2 métodos principais para obter dados balanceados: amostragem de dados e algoritmos de aprendizado sensíveis a custos. 232 Aula # 9 Gestão Inteligente da Qualidade 233 A área de qualidade é difundida em todos os ramos de atividades, sendo basicamente divididas em controle de qualidade e garantia da qualidade, portanto a qualidade 4.0 se aplica como as tecnologias mencionadas acima podem se integrar com a área da qualidade, sistemas de gestão, certificações, entre outros fatores. O blockchain, por exemplo, pode ser um método importantíssimo para rastreabilidade de processos, desde um certificado de calibração de equipamentos até mesmo o controle de análise de dados de um processo. A internet das coisas (IoT) e o big data, por exemplo, já são utilizadas para monitoramento e medição de processos em tempo real. A forma como hoje monitoramos um simples indicador será transformada com a Qualidade 4.0, os indicadores poderão ser realizadas em tempo real, com centenas de milhares de dados ao mesmo tempo por meio de uma avaliação de big data, com a internet das coisas (IoT) cada equipamento de monitoramento e medição ou um processo específico poderá ser monitorado em tempo real, esses são apenas alguns exemplos da Qualidade 4.0 234 Em pesquisa recente da American Society of Quality com empresas no mundo todo, foi identificado que apenas 16% das empresas iniciaram alguma iniciativa sobre Qualidade 4.0, e 63% das empresas declaram que não iniciaram qualquer planejamento sobre o tema. Segundo a pesquisa, a Europa está a frente da corrida da Qualidade 4.0. Cerca de 21% das empresas já iniciaram planejamento sobre o tema, enquanto nos EUA esse número cai para 6% e no Brasil é praticamente inexistente. Nessa mesma pesquisa, as empresas que iniciaram as iniciativas da Qualidade 4.0 declararam que pretendem aplicar o conceito para centralização de dados sobre qualidade, segurança de dados e monitoramento contínuo em qualquer lugar e em qualquer momento. 235 236 Fonte: https://www.juran.com/blog/quality-4-0-the-future-of-quality/ Os 11 Eixos da Qualidade 4.0: 1) Data 2) Conectividade 3) Analytics 4) Colaboracao 5) Desenvolvimento de App´s 6) Escalabilidade 7) Sistemas de Gerenciamento 8) Compliance 9) Cultura 10) Lideranca 11) Competencias 237 238 Fonte: https://www.slideshare.net/TulipInterfaces/how-to-reduce-cost-of-quality-with-industry-40-juran-agile-manufacturing-summit 239 Fonte: https://www.nikonmetrology.com/en-gb/about-us/news/frost-sullivan-laser-radar-revolutionize-automotive-body-in-white-inspection Estudo de Caso: Inspeção e garantia da qualidade A inspeção e a garantia da qualidade são a segunda maior categoria de casos de uso de IA industrial, com 20,5%. Embora existam várias maneiras de fazer a inspeção de qualidade baseada em IA, a inspeção óptica automatizada é de longe a maior subcategoria. A inspeção óptica automatizada é uma técnica em que uma câmera verifica autonomamente o dispositivo em teste quanto a falhas catastróficas (por exemplo, falta de componente) e / ou defeitos de qualidade (por exemplo, tamanho do filete, forma ou inclinação do componente). A visão computacional é a base da inspeção óptica. Depois que as imagens são reconhecidas, o Machine Learning Semi-Supervisionado é a técnica mais eficaz para classificar imagens em classes de falha. O principal benefício desse caso de uso é a redução de custos, e os principais beneficiários em potencial são grandes instalações de fabricação, nas quais uma pequena redução no tempo de sucata ou teste pode gerar uma economia muito grande. Implicações de custo: após a implementação da inspeção óptica em uma de suas plantas, a BOSCH afirmou obter uma economia de US $ 1,3 milhão devido a 45% da redução total do tempo de teste. Fonte: BOSCH. 240 Aula # 10 Comunicação com a cadeia de suprimentos 241 242 243 Fonte: https://medium.com/@sajjad.khaksari/logistics-industry-4-0-b132f0a8f391 244 Fonte: https://www.slideshare.net/jayeshcspai/logistics-40 Funcionamento do Blockchain Blockchain tem um funcionamento parecido com o dos livros-razão. Toda transação que é feita é colocada em um bloco, que é carimbado com um código criptografado com os detalhes da transação, chamado ‘hash’. Esse bloco é, então, adicionado à cadeia de blocos (no inglês, Blockchain). Depois disso, os participantes da transação registrada não podem voltar atrás. Qualquer tentativa de deletá-la ou alterá-la será em vão. O Blockchain registra, em ordem cronológica e linear, todas as transações que ocorrem. Elas são públicas e compartilhadas com os participantes do sistema. Duas partes, membros de uma rede online de Blockchain, decidem fazer uma transação; A primeira parte pretender enviar dinheiro à segunda; A primeira parte gera um registro online, o bloco, que representa a transação; Cada nó (participante da transação) recebe uma cópia desse novo bloco; Cada nó aprova a transação como válida, por meio de um protocolo de acordo; O bloco é carimbado com o hash e vinculado à cadeia; A segunda parte recebe o dinheiro da primeira. Fonte: https://www.conexaofintech.com.br/blockchain/como-implantar-a-tecnologia-blockchain-sem-ser-um-desenvolvedor/ 245 Livros-Razão. 246 Linguagem Python – Machine Learning & Inteligencia Artificial A linguagem Python foi concebida no final de 1980 e sua implementação foi iniciada em Dezembro de 1989 na Holanda. Utiliza poucos caracteres especiais, o que a torna simples de entender. E conta com identificação para marcação dos blocos, o que facilita sua leitura e manutenção de código, entre outras características. Essa linguagem também é livre e multiplataforma, então os programas escritos em uma plataforma serão executados na maioria das plataformas existentes sem necessidade de adaptação. 247 Principal razão para a popularidade da linguagem Python: bibliotecas. Uma biblioteca em Python é um grupo de código pré-agrupado para importar para o ambiente para estender a funcionalidade da linguagem. Pandas: manipulação dados. NumPy: todos os tipos de operações matemáticas. O Scikit-Learn: geral para a construção de modelos preditivos e que também possui muitas ferramentas usadas em todo o pipeline de Machine Learning. Matplotlib: visualização Keras/TensorFlow: construção de modelos de Deep Learning NLTK: processamento de linguagem natural BeautifulSoup: web scraping. 248 Jupyter Notebook Maneira poderosa de criar código em Python. Interface web que permite prototipagem rápida e compartilhamento de projetos relacionados a dados. Em vez de escrever e reescrever um programa inteiro, pode escrever linhas de código e executá-las uma por vez ou em pequenos lotes. Uma codificação mais fácil de depurar e entender, além de permitir a construção de projetos inteiros usando apenas o navegador. “Literate Programming” (em uma tradução livre, algo como Programação Alfabetizada). A Literate Programming é um estilo de desenvolvimento de software criado pelo cientista da computação de Stanford Donald Knuth. Esse tipo de programação enfatiza uma primeira abordagem em prosa, na qual o texto amigável ao homem é colocado com blocos de código. Excelente para demonstração, pesquisa e objetivos de ensino, especialmente para a ciência. 249 A simplicidade, a legibilidade, as bibliotecas e o ambiente de desenvolvimento integrado fazem da linguagem Python uma das linguagens mais usadas em Machine Learning e IA. 250