Um projeto fácil para personalizar usando o micro:bit CreateAI. Crie um timer inteligente que consiga detectar quanto tempo você tem ficado em diferentes atividades.
Passo 1: Entendendo
Como isso funciona?
Neste projeto, você treinará um modelo de aprendizado de máquina (ML) para reconhecer quando você está realizando movimentos específicos enquanto usa um BBC micro:bit.
Você combinará esse modelo com um programa MakeCode para criar um cronômetro de atividades e colocará tanto o modelo quanto o código no seu micro:bit. Basta usar o micro:bit para medir quanto tempo você tem ficado em diferentes atividades.
Pressione os botões A ou B para ver quantos segundos você tem ficado em cada atividade.
O que é aprendizado de máquina?
Aprendizado de máquina (ML ou Machine Learning) é um tipo de inteligência artificial (IA) onde os computadores podem aprender e tomar decisões com base em dados.
Os modelos de ML são treinados por humanos para ajudá-los a tomar essas decisões, por exemplo, reconhecer diferentes 'ações' quando você move seu micro:bit de maneiras diferentes.
O que eu precisarei fazer?
Os sistemas de IA precisam de humanos para projetá-los, construí-los, testá-los e usá-los. Você coletará dados para treinar um modelo de ML, testá-lo, melhorá-lo e combiná-lo com código de computador para criar um dispositivo inteligente que utiliza IA. Você usará um micro:bit e o site micro:bit CreateAI para fazer isso.
Passo 2: Criação
Itens necessários:
- Um micro:bit V2, um cabo de dados USB, conjunto de baterias com 2 pilhas AAA
- Um computador (por exemplo, computador de mesa, notebook ou Chromebook) com acesso ao site do micro:bit CreateAI, usando um navegador Chrome ou Edge
- Caso o seu computador não tenha Bluetooth ativado, você precisará de mais um micro:bit V2
- Uma alça e suporte, ou outra forma de prender o micro:bit ao seu pulso (por exemplo, hastes flexíveis de artesanato ou faixas elásticas)
- Você também pode achar nossas dicas de ensino do micro:bit CreateAI úteis
Colete amostras de dados
Ao abrir o projeto no micro:bit CreateAI, você verá que já fornecemos alguns exemplos de dados para 'caminhar', 'pular' e 'ficar parado':
walking
jumping
being still
Você irá adicionar suas próprias amostras de movimento usando o sensor de movimento ou acelerômetro do micro:bit.
No micro:bit CreateAI, clique no botão 'Conectar' para conectar seu micro:bit de coleta de dados e siga as instruções.
Prenda o micro:bit de coleta de dados no lado interno do seu tornozelo direito com o botão B voltado para cima; é importante que todas as amostras em um projeto utilizem a mesma posição do micro:bit no corpo. Caso queira mudar a forma como o veste, basta substituir todas as amostras de dados.
Adicione sua própria amostra de dados de movimento para caminhar, pular e ficar em repouso. Clique em cada ação, depois clique em 'Gravar' para gravar uma amostra curta de cada. Caso cometa um erro, você pode excluir as amostras que não desejar. Também é possível pressionar o botão B no micro:bit para começar a gravar.
Analise as amostras de dados: todas as amostras de 'caminhada' parecem semelhantes? Os exemplos de "saltando" parecem diferentes de "andando" e "ficando parado"?
Treine e teste o modelo
Clique no botão "Treinar modelo" para treinar o modelo e, em seguida, teste-o. Tente caminhar e veja se 'caminhada' é exibida como ação estimada. Experimente pular e também ficar em repouso. Dê seu micro:bit para outra pessoa usar e veja se funciona bem para ela.
Aprimore seu modelo
Esta é a etapa em que você trabalhará de forma iterativa. A maioria dos modelos pode ser aprimorada com mais dados. Caso o modelo precise ser melhorado para reconhecer suas ações, clique em "← Editar amostras de dados".
É possível limpar seu conjunto de dados excluindo quaisquer amostras de dados que você acha que não se encaixam (porque parecem completamente diferentes de outras amostras para a mesma ação). Também é possível melhorar o modelo adicionando mais amostras suas e de outras pessoas.
Pode ser necessário incluir movimentos muito sutis como parte de suas amostras de dados ‘em repouso’ para ajudar o modelo a diferenciar entre ações distintas. Coletar amostras estáticas com o micro:bit em diferentes orientações também ajuda o modelo.
Treine o modelo novamente e teste-o de novo.
Coloque o modelo e o código no seu micro:bit
No micro:bit CreateAI, clique em "Editar no MakeCode" para ver o código do projeto no editor MakeCode.
É possível modificar o código da mesma forma que faria em qualquer projeto MakeCode do micro:bit, ou simplesmente testá-lo como está. Conecte um micro:bit usando um cabo de dados USB, clique no botão "Download" na tela do MakeCode e siga as instruções para transferir seu modelo de IA e os blocos de código para um micro:bit. Desconecte o micro:bit, conecte um conjunto de baterias, use-o e teste-o.
- Pressione o botão A para ver durante quantos segundos você caminhou.
- Pressione o botão B para ver durante quantos segundos você pulou.
- Pressione A e B juntos para ver durante quantos segundos você ficou em repouso.
- Redefina o cronômetro pressionando o botão de redefinir na parte de trás do micro:bit ou desconectando e reconectando o conjunto de baterias.
Como funcionam os blocos de código
O código usa três variáveis para acompanhar por quanto tempo você realizou uma atividade específica. Quando o programa é executado pela primeira vez, ele define essas variáveis de temporizador para 0.
Os blocos 'on ML... start' são acionados quando o modelo ML decide que você começou uma atividade que ele reconhece. Eles mostram diferentes ícones no visor LED do micro:bit dependendo da ação que ele estimou que você está fazendo.
Os blocos 'on ML... stop' são acionados quando o modelo de ML decide que você terminou uma ação, por exemplo, andar, pular ou ficar em repouso. O código dentro de cada bloco limpa a tela e adiciona a duração da ação que acabou de terminar à variável que armazena o tempo total para andar, pular ou ficar em repouso.
Os blocos 'no botão... pressionado' contêm o código para exibir as variáveis que mostram o tempo total que você passou realizando cada ação. O temporizador conta em milissegundos (milésimos de segundo), então o número mostrado é dividido por 1000 para exibir a duração total em segundos.
Avaliação
Quão precisa é a medição do tempo em que você passou realizando uma atividade específica? Funciona igualmente bem para diferentes pessoas?
Teste se o código do temporizador está funcionando bem com o modelo em três passos simples:
- Pressione o botão de redefinir.
- Pule por 30 segundos.
- Pressione o botão B. Você deve ver um número próximo de 30 na sua tela.
- Caso queira melhorar o modelo, clique na < seta no canto superior esquerdo do editor MakeCode para adicionar mais amostras de dados e treinar o modelo novamente.
Compare o temporizador de atividades de IA com o contador de passos ou contador de passos sensível em projetos que não usam ML (machine learning):
- Como o uso de ML torna um projeto mais útil?
- É sempre necessário usar IA/ML para criar projetos úteis?
Passo 3: Melhorias
- Adicione dados para uma ação diferente e use o botão de toque no logotipo para visualizar a variável do temporizador para a nova ação.
- Adicione blocos de som para fornecer avisos sonoros quando diferentes atividades forem detectadas.
- Você consegue usar seu novo conhecimento sobre aprendizado de máquina para 'quebrar o modelo'? Você consegue se movimentar de certas maneiras para enganar o modelo e fazer com que ele tome decisões incorretas sobre a atividade que você está realizando? Você também poderia experimentar adicionar amostras de dados 'confusas' e avaliar o impacto no modelo de ML. Comparar o que você sabe sobre motivo de algumas amostras de dados funcionam bem, enquanto outras não, é uma boa maneira de explorar seu entendimento dessa tecnologia.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.