PSI3472 (2023): Concepção e Implementação de Sistemas Eletrônicos Inteligentes

Materiais:

Informações sobre o curso (parte 1 do prof. Hae):

Este ano (2023), vou dar aulas presenciais baseadas em apostilas para aulas "ead" que preparei durante a pandemia. Elas procuram ser auto-explicativas. Essas apostilas podem ser alteradas até o dia/hora da aula.

Teremos alternadamente aulas teóricas e práticas. Usarei o início da aula prática (algo como 50 minutos iniciais) para terminar a aula teórica.

    Aulas teóricas: segundas-feiras, 09:20-11:00, sala B2-09.
    Aulas práticas: terças-feiras, 7:30-9:10, GD-06 (sala de computadores).

A avaliação será baseada em "lições de casa" (LC) e em "exercício programa" (EP). Na minha parte da disciplina, não haverá prova.

1) "Lições de casa":

Cada conjunto de duas aulas (aula teórica 2ª-feira + início da aula prática 3ª-feira) pode ter "lição de casa" que consiste em exercícios computacionais. Além disso, pode ter um exercício extra, mais desafiador e opcional, que vale pontos extras na nota.

Essas lições deverão ser resolvidas em grupos de dois alunos (ou, excepcionalmente, sozinho). Os alunos podem mudar de grupo ao longo do semestre. Não se esqueçam de escrever/falar os nomes da dupla (ou do único aluno) em três lugares diferentes: no campo "comentários sobre o envio", no início do vídeo e no início dos programas-fontes. Caso contrário, um dos alunos da dupla pode ficar sem a nota. Cada dupla deve fazer uma única entrega (não façam a mesma entrega duas vezes).

Essas "lições de casa" podem ser resolvidas durante a aula prática e mostradas ao professor/pesquisador. Neste caso, o professor/pesquisador atribuirá a nota durante a aula e só precisa postar o código-fonte em edisciplinas (isto é, não precisa postar o vídeo). Escreva no campo "comentários sobre o envio" a frase "lição entregue durante a aula".

Se não conseguir terminar essas "lições de casa" durante a aula prática, o grupo poderá terminar em casa até o próximo domingo. Neste caso, tem que postar o vídeo (além de colocar o código-fonte). Escreva no campo "comentários sobre o envio" a frase "lição feita após a aula".

Para entregar o código-fonte em edisciplinas, envie .py ou um link para Google Colab.

O vídeo deve ter no máximo 30s (por aula). Não pode enviar vídeo com mais de 30s, pois a quantidade de alunos do curso não nos permite corrigi-los - pode haver desconto na nota. É necessário que o vídeo contenha áudio com explicações. Vocês devem convencer o espectador do vídeo (o professor/especialista vai corrigi-lo) que fizeram a lição solicitada e que ela está funcionando corretamente. Não precisam explicar teorias. A dupla deve se alternar na gravação do vídeo. Isto é, se Fulano gravou vídeo 1, Ciclano deve gravar vídeo 2, etc. É necessário que o vídeo contenha áudio, pois é muito difícil entender um vídeo sem a explicação falada. O vídeo não pode ter sido acelerado para diminuir a duração, pois dificulta entender a fala. Podem gravar a tela do computador usando celular ou usando algum programa de captura de tela (por exemplo Zoom, Google Meet, ou OBS Studio). Em algum momento, deve aparecer no vídeo o rosto e algum documento do aluno que gravou o vídeo (como a carteira USP, RG, CNH, etc). Vocês podem enviar o vídeo em si (.mkv, .mp4, .avi, etc.) ou um link para o vídeo (YouTube, Google Drive, etc).

Se vocês vão entregar código-fonte/vídeo através de um link, deve assegurar que todos os professores (Hae e Maurício - hae.kim@usp.br, mlisboa@usp.br) tenham acesso ao seu conteúdo.

Exercícios entregues com atraso terão desconto de 0,5 ponto por dia de atraso. As lições não podem ser entregues após 08/outubro, para não invadir as aulas do prof. Márcio.

2) "Exercício programa":

Além das lições de casa, haverá um exercício-programa para fazer. As instruções deste exercício programa estarão no seu enunciado.

3) Cálculo da média final:

MHae = (ML + EP) / 2

onde MHae é média final da minha parte da disciplina, ML é a média das lições de casa e EP é a nota do exercício-programa.


Planejamento das aulas (este cronograma pode mudar ao longo do semestre):

1 - (07/08) Introdução. Rede neural densa. Rede neural convolucional. Automatic differentiation.
2 - (08/08) Aula prática. (Entrega de lição: 13/08)
3 - (14/08) Modelos pré-treinados para ImageNet. Cifar10; data augmentation.
4 - (15/08) Aula prática. (Entrega de lição: 20/08)
5 - (21/08) Redes avançadas: VGG, Inception, ResNet, EfficientNet.
6 - (22/08) Aula prática. (Entrega de lição: 27/08)
7 - (28/08) Transfer learning. Classificação de séries temporais por CNN.
8 - (29/08) Aula prática. (Entrega de lição: 03/09)
9 - (11/09) Segmentação semântica. Fully convolutional net, U-Net, PSPNet.
10 - (12/09) Aula prática. (Entrega de lição: 17/09)
11 - (18/09) Auto-encoder/GAN. One-shot learning, reconhecimento facial.
12 - (19/09) Aula prática. (Entrega de lição: 24/09)
13 - (25/09) Class Activation Map e Grad-CAM. Detecção de objetos. Introdução à processamento de linguagem natural.
14 - (26/09) Aula prática. (Entrega de lição: 01/10)
As lições não podem ser entregues após 08/10.

A maior parte das duas primeiras aulas serão recordações (rápidas) de PSI3471, pois há alunos que não cursaram PSI3471.

Transparências auxiliares:


Exercícios programas: