5 pontos por GN⁺ 2024-01-08 | 1 comentários | Compartilhar no WhatsApp
  • Teachable Machine é uma ferramenta criada para permitir a criação de modelos de machine learning diretamente na web, e a primeira versão de 2017 também continua disponível em uma página separada
  • O usuário pode inserir dados de treinamento por upload de arquivos ou captura em tempo real, e também pode optar por um modo em que os dados de webcam e microfone não saem do computador
  • Os modelos compatíveis se dividem em imagem, áudio com base em amostras curtas de som, e classificação de poses corporais via webcam ou arquivos
  • Também são apresentados casos de experimentação como integração com Arduino, acionamento de sons por gestos faciais e controle de jogos usando papel e webcam
  • Os materiais didáticos incluem AI + Ethics e Ready AI Lesson, abordando juntos o conceito de classificação em machine learning e seus impactos sociais

Modelos do Teachable Machine criados na web

  • Teachable Machine é uma ferramenta baseada na web projetada para tornar a criação de modelos de machine learning rápida e fácil
  • A primeira versão lançada em 2017 pode ser aberta em uma página separada
  • Os exemplos de treinamento podem ser inseridos de duas formas
    • Usando arquivos
    • Captura em tempo real
  • Também é possível usar apenas o modo on-device, para que os dados da webcam ou do microfone não saiam do computador
  • Os modelos que podem ser criados são divididos em três tipos
    • Images: treinar um modelo de classificação de imagens com arquivos ou webcam
    • Sounds: gravar amostras curtas de som para treinar um modelo de classificação de áudio
    • Poses: treinar um modelo de classificação de posição corporal com arquivos ou poses em frente à webcam
  • Um modelo que reconhece a direção da inclinação da cabeça pode ser seguido no tutorial Pose: Head Tilt

Casos de experimentação e materiais de aula

  • Os experimentos criados com Teachable Machine variam de hardware e acessibilidade até dispositivos de entrada para jogos
    • Tiny Sorter: experimento DIY que conecta Arduino e Teachable Machine
    • vídeo de Steve Saling: uso do Teachable Machine em novas formas de comunicação, como acionar sons com gestos faciais
    • Teachable Snake: experimento em que Vince MingPu Shao transformou webcam e papel em um controle de jogo
  • Mais exemplos de criações podem ser vistos na página de Experiments com a tag Teachable Machine
  • Se houver alguma criação para compartilhar, é possível enviar um e-mail para teachablemachine-support@google.com
  • Os materiais educacionais também abordam o viés em sistemas algorítmicos e os impactos sociais do machine learning
    • AI + Ethics: aula de tecnologia alinhada ao Common Core para K-8, criada por Blakeley H. Payne, do Personal Robots Group do MIT Media Lab, pensada para ajudar estudantes a começar a entender o viés em sistemas algorítmicos
    • Ready AI Lesson: aula para K-12 sobre explorar o Teachable Machine e aprender machine learning, classificação e impactos sociais
  • Perguntas adicionais podem ser consultadas no FAQ

1 comentários

 
GN⁺ 2024-01-08
Comentários no Hacker News
  • O momento é bom porque há um caso de uso perfeito para projetos de hobby
    Eu já tinha olhado a versão antiga, mas ela era bem limitada: “o Teachable Machine original só conseguia treinar 3 classes, mas agora você pode adicionar quantas classes quiser”
    Fico curioso para saber até onde isso escala. Por exemplo, será que centenas de milhares de classes também são possíveis? Se sim, queria entender quais seriam os impactos
    • A v1 era muito limitada, mas extremamente fácil de usar e já utilizava uma forma bastante impressionante de aprendizado por transferência
      Por exemplo, ela pegava a saída vetorial de 1000 dimensões que uma rede pré-treinada produzia para imagens pertencentes a três conjuntos e, como o modelo original tinha sido treinado com Imagenet, depois usava K-vizinhos mais próximos para prever a qual conjunto uma imagem “nova” pertencia
      A v2 de fato faz o ajuste fino dos pesos da rede pré-treinada. Na época, isso foi um bom exemplo de quão rapidamente as bibliotecas de machine learning em JavaScript estavam evoluindo
  • Encontrei um vídeo antigo sobre o Teachable Machine, de 6 anos atrás
    https://www.youtube.com/watch?v=3BhkeY974Rg&ab_channel=Googl...
    E em 2019 o Google lançou a v2: https://blog.google/technology/ai/teachable-machine/
    As tarefas possíveis são limitadas, então é um bom ponto de partida para iniciantes, mas não sei dizer se a plataforma está sendo desenvolvida rapidamente
  • Legal. É uma atividade perfeita para fazer com as crianças em um dia de neve
  • Eu já pesquisei bastante sobre o MediaPipe[1], mas nunca tinha ouvido falar do Teachable Machine
    Os dois produtos parecem ter sido feitos para serem usados em conjunto, então fiquei curioso se há alguma relação
    É bom ver o Google investindo em mais casos de uso de machine learning na borda, especialmente no navegador. Se você não conhece o MediaPipe mas isso chamou sua atenção, vale muito a pena dar uma olhada. Ele é bastante usado na comunidade de VTubing, e a implementação de rastreamento de pose corporal, rosto e mãos baseada no BlazePose tem bom desempenho
    1: https://developers.google.com/mediapipe
  • Só para constar, isso não é um projeto novo. Há uma discussão no HN de 6 anos atrás: https://news.ycombinator.com/item?id=15399132
    • No novo link diz “primeira versão em 2017”, então parece que o Google considera este lançamento como versão 2
  • Isso já tinha sido discutido na época
    Teachable Machine: ensine uma máquina usando sua câmera em tempo real no navegador - https://news.ycombinator.com/item?id=15399132 - outubro de 2017, 90 comentários
  • Foi uma tentativa interessante de redesign feita alguns anos atrás
    https://fairpixels.pro/work1/index.html
  • Parece que isso é basicamente semelhante ao que um LLM multimodal faz. Como ele consegue entender, pode fazer qualquer coisa na hora
    Qual seria a diferença aqui?
    • Isto é um modelo menor que pode ser exportado e executado em qualquer lugar
      Mesmo o menor LLM multimodal provavelmente seria muito maior que os modelos exportados daqui
    • O ponto principal é a parte de “ensinar”. Não se trata de usar um modelo já treinado para inferência, mas de treinar o modelo, aqui no caso, ajustá-lo
      Você fornece novos dados, e esses dados são usados para atualizar o modelo. Se você apenas fizer inferência com um modelo multimodal existente, o próprio esquema de classificação não muda em nada
    • Isso parece mais próximo de ajustar finamente um modelo existente para que ele reconheça as características que eu quero, e deixá-lo leve o bastante para rodar localmente no navegador
  • Existe alguma alternativa open source com possibilidade de self-hosting parecida com isso?
    • Isto pode ser hospedado por conta própria
      Ele roda localmente no navegador sem enviar os dados de treinamento para nenhum servidor
      Isso vale a menos que você escolha salvar no Google Drive; e se decidir hospedar o modelo no Google, o Google recebe uma cópia dos pesos, mas mesmo assim não vê os dados de treinamento
      Ou você também pode hospedar por conta própria com tensorflow.js
      Dá para baixar tudo, inclusive os dados de treinamento e os pesos, em um arquivo zip; nesse caso, o Google não vê absolutamente nada
      Se precisar do código-fonte, está aqui -> https://github.com/googlecreativelab/teachablemachine-commun...