Machine Learning

EM javascript

DEVFEST MACEIÓ🏖

💡Thadeu luz

thadeu.us

  1. O quê?

  2. Por quê?

  3. Como?

📚 O que é aprendizagem de máquina?

você Não coda a solução...

Você mostra exemplos

🥛, 🥚, 🍚   ⇒ 🎂

📝  (               )

(🎂) ⇒ 🥛, 🥚, 🍚

🤖

📝

(🎂) ⇒ 🥛, 🥚, 🍚

Features

Labels

Tudo é númerO

(ou "Tensors")

Rank Shape
1 0 ()
[1] 1 (1)
[[1], [2]] 2 (2,1)
[[[1], [2]],
[[3], [4]],
[[5], [6]]]
3 (3, 2, 1)

Machine learning é estatística computacional aplicada

Qual é o preço 🏠

Área (feature) Preço (label)

50m²

R$ 150 000

75m²

R$ 210 000

120m²

R$ 300 000

100m²

?

Qual o preço?

Área (m²)

Preço (R$)

Código serve para:

(70%) Formatando dados

  • Converter em tensors
  • Normalizar/Escalonar
  • Misturar, remover, separar features
  • Embaralhar, segmentar

(20%) Configurar modelo

(10%) Outros

🧠 Porquê?

COlunas numéricas

um Número entre 0 e 1

CLASSIFICAção binária

imagem

um Número entre 0 e 1

CLASSIFICAção binária de imagem

TEXTO

um Número entre 0 e 1

EMBEDDINGS

TEXTO

um Número entre 0 e 1

Análise de sentimento

(detectar spam)

IMAGEM

números entre 0 e 1

DETECÇÃO E LOCALIZAçÃO de OBJETOS

imagem

um Número

REGRESSÃo de imagem

TEXTO

TEXTO

TRADUTORES E CHAT BOTS

SEU PERFIL DO FACEBOOK

um PERFIL PSICOLÓGICO completo, capaz de prever o seu comportamento melhor que sua mãe, incluindo quantas, onde e que tipo de fake news você precisa ver para ser manipulado a mudar seu voto para o candidato que pagar melhor e assim quebrar a democracia?

CAMBRIDGE ANALYTICA

🕵️‍♀️ IMAGEM  ⇒  FALSo/VERDADEIRO

GENERATIVE ADVERSARIAL NETWORKS

👨‍🎨 NÚMEROS ALEATÓRIOS  ⇒  IMAGEM

🎲 COMO?

👹 DEMO

JAVASCRIPT

JAVASCRIPT

O gremlin das linguagens de programação

Tensorflow.js

  • Gravações

  • MÚSICAS

  • ESC-50

🎲 Dados

🎲 Dados

toolbox.google.com/datasetsearch

🎲 Dados

MEYDA

🤖 MODELO

  const layers: tf.layers.Layer[] = [
    tf.layers.conv1d({
      activation: "relu",
      filters: 32,
      inputShape: [xSize, mfccSize],
      kernelSize: [2]
    }),
    tf.layers.conv1d({ activation: "relu", filters: 48, kernelSize: [2] }),
    tf.layers.conv1d({ activation: "relu", filters: 120, kernelSize: [2] }),
    tf.layers.maxPooling1d({ poolSize: 2 }),
    tf.layers.dropout({ rate: 0.25 }),
    tf.layers.flatten(),
    tf.layers.dense({ units: 128, activation: "relu" }),
    tf.layers.dropout({ rate: 0.25 }),
    tf.layers.dense({ units: 64, activation: "relu" }),
    tf.layers.dropout({ rate: 0.4 }),
    tf.layers.dense({ units: 1, activation: "sigmoid" })
  ];

  const model = tf.sequential({ layers });

Obrigado!

Tensorflow.js

By Thadeu Luz

Tensorflow.js

  • 377