Aula4 Flashcards

1
Q

O que é Machine Learning?

A

O machine learning é uma abordagem baseada na estatística, na qual a máquina acaba por realizar o trabalho mais complicado, que é a parte da aprendizagem, contudo nem todos os modelos são de aprendizagem (exemplo: sistemas de informação, como o sistema de informação de doentes de um hospital, é apenas um sistema de inserção de utilizadores). Os humanos não têm que pensar muito acerca do mesmo. Sim e não, sim no sentido em que podemos utilizar aplicações para isso em que damos o input, selecionamos o modelo de machine learning e deep learning, e a máquina trabalha sozinha e vamos buscar os outputs. O grande problema é qual o valor destes outputs para o negócio. Se não conhecermos bem o negócio de nada serve o machine learning, porque não sabemos como aplicar os outputs. Por outro lado, se também desconhecer o modelo que esta a ser usado também não consigo perceber qual é o valor dos outputs. Portanto de uma maneira ou de outra, é necessário conhecer minimamente os modelos, mesmo que entenda muito em detalhe o lado da matemática, é preciso entender o conceito do modelo que está por trás, pois é necessário perceber o valor dos outputs.
Com a explosão do Big Data cada vez mais a aprendizagem se torna um componente importante dos sistemas. Se bem que não chamamos sistemas de informação, mas chamamos sistemas de gestão de conhecimento.
O machine learning é muito mais simples de perceber como é que pode ajudar o negócio a crescer, ou ter mais conhecimento aprofundado sobre o negócio. Contudo o AI é muito mais abrangente que o machine learning.
O machine learning é um classificador binário, pois, pretende-se perceber se um output diz respeito a um dado objeto, e o resultado é sim ou não.
O machine learning está cada vez mais próximo do modelo orientado aos dados, e daí a sua aplicação na área do Big Data.
O machine learning é muito poderoso, pratico e útil. Utilizado para reconhecimento de caracteres e de voz, NLP, bioinformática, analise de stocks, robótica, computação visual, deteção de malware, deteção de spam, veículos autónomos (exemplo da Tesla).
Exemplo: técnicas de detenção de cancro (radiografias), para verificar a probabilidade de um dado cancro evoluir (modelos de machine learning e deep learning com base em imagens).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Que abordagem segue o ML?

A

Segue uma abordagem de caixa preta (black box). Não conhecemos o detalhe, o que nos interessa é os inputs e os outputs, enquanto que no White box interessa-nos o processamento.
A abordagem black box permite-nos ter resultados mesmo que não conheça em detalhe os algoritmos.
A abordagem black box tem limitações especialmente quando se tratam de novas aplicações, e nesse caso precisamos de conhecer os algoritmos e adapta-los.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Modelo de auto mecânico

A

Modelo de auto mecânico ou modelo de rotina, é basicamente um processo iterativo que nos permite verificar qual é o problema, contudo pode não ser fácil de corrigi-lo.
Não há um livro de receitas, temos efetivamente que perceber as características dos algoritmos para de alguma maneira percebermos o potencial de cada um deles. É preciso ter conhecimentos multidisciplinares, e um conhecimento bastante aprofundado do algoritmo em si e também da área do negócio.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Técnicas do machine learning

A

Numa perspetiva de passado (retrospetiva do passado) ou futuro (prever o que irá acontecer nos próximos anos). Modelos supervisionados e modelos não supervisionados: explorar o que é conhecido ou o que é desconhecido (abordagem proativa).
Em suma, é a retrospetiva, o conseguir prever, o ser proativo na procura e na deteção.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Modelos do ML mais conhecidos

A
  • São os mais simples de perceber, comparativamente ao deep learning.
  • HMM são os modelos Markov, e que deram início ao machine learning. O PHMM é uma das derivações do modelo de Markov.
  • PCA ainda é bastante usado, e baseado na matemática.
  • No clustering temos o K-means que é bastante simples de utilizar e o EAM.
  • Temos Deep Learning, Redes Neuronais, entre outros.
  • Hidden Markov Model (HMM)
  • Profile Hidden Markov Model (PHMM)
  • Principal Component Analysis (PCA) and Singular Value Decomposition (SDV)
  • Support Vector Machine (SVM)
  • Clustering (emphasis on K-means and EM)
  • Deep Learning, Neural Networks (ANN)
  • Data analysis
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Modelo – Hidden Markov Model (HMM)

A

É um modelo em cadeia de acontecimentos. É um processo sequencial onde em cada ponto dá um output. O estado de objeto em termos de previsão é progressivamente melhor. Exemplo: processo de subida da encosta, onde progressivamente estamos mais perto do cume da encosta.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Exemplo de aplicação dos modelos de Markov

A

Temos 3 estados, sol, chuva e nublado.
De sol para nublado a probabilidade é de 0.2 e assim sucessivamente. Com este modelo conseguimos representar a probabilidade associada a cada acontecimento e conseguimos perceber a probabilidade associado à transição entre os elementos. Estas probabilidades são dadas pela execução do modelo com base no histórico que aconteceu num dado país. Modelo simples de implementar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Problema da subida da encosta

A

O problema é pensarmos que estamos no topo da encosta quando não estamos, sendo que isso corresponde aos máximos e mínimos locais. Portanto aquilo é o topo, mas naquela vizinhança.
O problema grande da subida na encosta na IA é então assumirmos que estamos no máximo local e uma das estratégias para evitar é a diversificação. Em vez de dar pequenos saltos ao longo da montanha, opta-se por dar saltos aleatórios, na expectativa que um desses saltos dê um valor maior que o tenho agora estabelecido como máximo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Modelo Profile Hidden Markov Model (PHMM)

A

Derivação do modelo de Markov, e como tal é idêntico. Tem uma informação posicional, que permite ter maior adaptabilidade sobretudo às áreas de segurança, nomeadamente na deteção de malware.

Existe a realimentação do modelo/processo. Os próprios outputs através da informação posicional podem realimentar o modelo. Probabilidade de ter vários ciclos, e permite que uma sequência de alinhamento seja inserida ou apagada. Há um género de mutação com o objetivo de escapar aos mínimos e máximos locais, há aspetos aleatórios que são estabelecidos ao longo do modelo. É melhor que modelo tradicional de Markov e permite obter melhores resultados sobretudo na área da segurança.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Principal Component Analysis (PCA)

A

A matemática é bastante importante. Onde o modelo de treino é baseado na álgebra linear. Porque para traçar, por exemplo, uma reta é necessário saber a maior variância dos elementos para permitir traçar a direção da reta e, portanto, é possível minimizar os pontos nessa direção nessa reta.

Estilo de aranha, são modelos de controlo, e serve para verificar se o modelo está a ser ou não bem construído. Temos que traçar retas no sentido de descrever e minimizar a distância dos elementos entre eles. Permite perceber a tendência dos objetos e como construir os clusters associados a cada um deles. Estamos preocupados em estabelecer o comportamento de algo e traçar o comportamento dos objetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Support Vector Machine (SVM)

A

Pode ser contraintuitivo de como é que se pode perceber e construir os objetos.
Queremos separar objetos e não traçar uma reta que permite descrever os objetos, mas estabelecer uma reta que permite perceber se acima ou abaixo da reta estão dentro de uma classe ou outra classe. Tendo este classificador conseguimos perceber qual a classe de um dado objeto. É estabelecida uma equação que é classificadora dos objetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Clustering (emphasis on K means and EM)

A

Um dos modelos mais usados ao nível do clustering é o K-means e é bastante utilizado por ser simples de perceber. O K-means é um modelo não supervisionado, apenas necessita dos dados logo não tem qualquer intervenção humana. Necessita de conhecimento em termos de distribuição Gaussiana e termos estatísticos. Nesta técnica temos os objetos, estabelecem-se os centroides aleatoriamente, sucessivamente vão se aproximar, porque queremos minimizar a distância dos objetos a cada respetivo centroide, o centroide vai sendo recalculado até ter algo estabilizado. Em suma, é um processo iterativo em que minimizamos a distância de cada ponto ao respetivo centroide. O K-means é bastante aplicado em machine learning, contudo tem baixa capacidade de aprendizagem learning, ou seja, é limitada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Deep Learning

A

Conceito mais complicado que o machine learning. No AI temos que estabelecer/compreender padrões do comportamento humano e perceber como nos pode ajudar nas atividades do dia a dia.
No machine learning estamos preocupados com a aprendizagem do computador, há um processo de treino e um processo de aplicação.
O deep learning é de alguma maneira um processo semelhante ao machine learning, enquanto que o ML não se preocupa em usar modelos baseados do nosso cérebro/modelos parecidos com a nossa capacidade de inteligência, já o deep learning sim. A grande característica dos modelos Deep learning é imitar de alguma maneira os neurónios humanos, se bem que há modelos que não são inspirados nesta característica.

Servem de base para os modelos das redes neuronais. As redes neuronais tentam imitar o comportamento humano.
Nas redes neuronais temos inputs e outputs como acontecia no machine learning, temos várias cadeias (idêntico ao modelo de Markov). Os modelos neuronais servem 90% dos modelos de Deep learning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Characteristics Markov vs Deep Learning:

A

Comparativamente com o Markov, o modelo das redes neuronais tem vários outputs distintos e é só quando o modelo termina, enquanto que no modelo Markov o output é para cada camada. Isto pode ser bom ou mau, mas é mau no sentido de estarmos meses à espera do resultado, porque não temos o resultado de cada camada, mas sim o resultado apenas no final do modelo, e só no fim do modelo é que temos a perceção se o modelo está de acordo com o pretendido, porque não temos evidencias de cada camada, mas sim do modelo todo. Para contornar isto, podíamos analisar o processo a meio, mas dada esta interrupção do processo poderia ter que reiniciar o modelo, não é uma tarefa simples.
Uma das características essenciais do DL é o conexionismo, que é o facto de todas as camadas estarem ligadas entre si, que é para imitar o cérebro humano e os neurónios humanos, isto não existia nas cadeias de Markov.

Temos várias camadas, temos um processamento e uma técnica chamada Backpropagation (propagação ao contrário). Propagação ao contrário é um dos modelos mais usados para o treino das redes neuronais, sendo este processo complexo baseado na matemática e equações diferenciais, onde em vez de estar a realimentar o modelo exclusivamente da esquerda para direita como as cadeias de Markov, alimentam-se da direita para a esquerda, as camadas anteriores têm informação sobre aquilo que se está a suceder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

ML vs DL

A
  • No machine learning temos os elementos de input, há extração da informação relevante e há a técnica de classificação, e um output do sim e não (por exemplo é um carro ou não é).
  • No deep learning há um output na mesma, mas o processo de extração das características e classificação é automático e temos que esperar tipicamente muito mais tempo que o machine learning e por fim um output (por exemplo é um carro ou não é).

O machine learning tem melhores resultados para pouca quantidade de dados, tem melhor desempenho, mas quando os dados crescem os modelos de deep learning têm melhor desempenho e são mais uteis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Técnicas de redes neuronais – MLP

A

É a base dos modelos deep learning, é o primeiro algoritmo que surgiu em modelos de deep learning. É um processo sequencial de cada camada escondida. Técnica base de redes neuronais. Não há loops, nem feedbacks. São várias camadas escondidas, ou seja, nas cadeias Markov cada camada tinha resultados e aqui não tem porque é escondida, mas mesmo que saiba o resultado de cada um deles não nos diz nada, interessa-nos apenas o input do mesmo.

17
Q

Técnicas de redes neuronais – CNN

A

Técnica tipicamente utilizada para reconhecimento de imagens. Tem um modelo de treino muito mais robusto, bastante populares na área médica, na deteção de imagens.

18
Q

Técnicas de redes neuronais – RNN e LSTM

A

RNN e LSTM são modelos parecido, o modelo LSTM tem memoria, baseiam-se no princípio do gradiente, e isso tem um problema porque o calculo do gradiente é demorado e por isso de processamento lento.
Continuam a existir as respetivas camadas, e temos realimentação de cada um deles. Podemos aceitar ou não o resultado realimentando o modelo.

19
Q

Técnicas de redes neuronais - ResNet

A

Modelo bastante conhecido. Comparativamente com o RNN e LSTM tem um processamento mais rápido, tem uma abordagem capaz de reduzir o tempo de execução. Para reduzir esse tempo é necessário estabelecer uma dada probabilidade de ocorrência destas camadas não serem todas executadas, criando shortcuts, melhorando o gradiente, aumentando o desempenho.

20
Q

Aspetos críticos do ML e DL

A
  1. A questão das questões/perguntas, pois, é necessário perceber quais são as questões importantes, como na área do negócio e a sua utilidade nesse capítulo.
  2. A matemática é muito complexa, mas deve ser tratada como “amiga” e não devemos ignorar este aspeto. Devemos explorar.
  3. Não ter medo de trabalhar de forma árdua, é preciso treinar os modelos, perceber o que está por trás deles, perceber a matemática que envolve. É preciso muito trabalho.
  4. É um processo de aprendizagem em 3 passos, ler livros/artigos científicos, estar presentes em sessões/workshops e ir para o terreno.

O machine learning e deep learning são utilizados em bastantes áreas, não está apenas associado a cibersegurança. Tanto que o machine learning é bastante aplicado no Big Data.
Os conhecimentos de informática não chegam, são necessários conhecimentos matemáticos. E nem tudo são aspetos positivos, o machine learning e deep learning também trazem coisas negativas, pois, também podem ser alvos de ataques, ou construir modelos de deep learning para atacar, por exemplo, atacar modelos para obter outputs diferentes.

21
Q
  1. Quais são as etapas genéricas de um algoritmo de aprendizagem máquina?
A

Fase de treino e fase de teste.
* Fase de treino, onde um algoritmo aprende com os dados de treino para formar um modelo com parâmetros do modelo.
* Fase de teste, onde o modelo treinado é aplicado a uma tarefa específica, como classificação, para dar um rótulo previsto para os dados de entrada. É importante perceber a adequabilidade do algoritmo/modelo que está a ser proposto (utilizando a estatística).

22
Q
  1. Dê um exemplo de um algoritmo que use a abordagem de redes neuronais e outro que não?
A

Não neuronal - Markov, SVM, K-means e Naive-Bayes (Redes Bayesianas).
Neuronal – PHMM. Penso que os algoritmos DNN, RNN e CNN também são Neuronais (pág. 74722 do artigo cientifico IEEE da aula 4).

23
Q
  1. Quais as principais razões para um algoritmo de aprendizagem máquina ser atacado?
A

Na fase de treino e na fase de teste é o procedimento da informação, e são servidos com propriedade intelectual, por norma estão interligados/integrados em rede e podem ser alvos de ataques.
Muitos algoritmos utilizam dados e esses dados podem ter informação bastante importante sobre o negócio ou sobre a empresa. Potenciam também outros tipos de ataques por causa do alojamento em Clouds, estarem em rede e em outros meios.
Em suma, existe muita informação de grande valor comercial e que pode implicar o negócio.

24
Q
  1. Explique um modelo de ataque ao algoritmo SVM.
A

Está relacionado com a técnica baseada na diferenciação matemática (derivadas – técnica do gradiente ascendente para encontrar a solução ótima). Obriga a um conhecimento aprofundado do algoritmo e dos dados de treino, sendo que os dados de treino são altamente apetecíveis. Pode ser atacado através da técnica inversa do gradiente.

25
Q
  1. Explique o conceito de “data sanitization”.
A

É ocultar determinado tipo de dados, para que não sejam percetíveis em alvo de ataque e, por isso, utilizarem algum tipo de sanitização.
A ideia é que os dados de cariz confidencial não sejam expostos no modelo, pois, podem não ser necessários para a execução do algoritmo.

A sanitização dos dados é efetuada para tornar os dados permanentemente irrecuperáveis por meios físicos ou digitais (por exemplo, destruição física, apagamento criptográfico ou apagamento de dados).
É o processo de remoção ou destruição deliberada, permanente e irreversível dos dados armazenados num dispositivo de memória para os tornar irrecuperáveis. Um dispositivo que tenha sido sanitizado não tem dados residuais utilizáveis, e mesmo com a ajuda de ferramentas forenses avançadas, os dados nunca serão recuperados. Existem três métodos para conseguir a sanitização dos dados: destruição física, apagamento criptográfico e apagamento de dados.