Algebra Linear Numerica 2012
Esta é a página oficial do curso de Álgebra Linear Numérica (graduação) e do curso de Analise Matricial (pós) do IPRJ, contendo material potencialmente útil ao publico geral.
[Time 1 vence o desafio de reconhecimento de faces do Facebook]
Link para o curso atual (2013 em diante)
Informacao Comum a Ambos os Cursos
- Instrutor: prof. Ricardo Fabbri (graduação e pós) e prof. Francisco Duarte Moura Neto (pós) (fmoura at iprj)
- Recomenda-se aos alunos a assistirem as aulas de ambos os cursos sempre que possivel, dado o estilo diferente e complementar a assuntos similares.
Software
- Usaremos o Scilab primariamente.
- Python e Octave sao alternativas aceitaveis.
Tarefas
As tarefas devem ser formatadas com notacao matematica adequada, preferencialmente em Latex.
Somente serao aceitos arquivos eletronicos no formato PDF ou outro formato aberto como .odt
Quando a tarefa involver qualquer programacao, o aluno devera enviar o codigo fonte. O codigo junto com a documentacao devera estar dentro de um unico diretorio comprimido com .zip ou tar, com o nome do aluno, disciplina e data.
Tarefa 0
- Revisar algebra linear
- Assistir aos videos do Gilbert Strang, em especial:
- The four fundamental subspaces - lecture 10 (garanta a compreensao deste video, assita aos anteriores se necessario)
- Eigenvalues and Eigenvectors - lecture 21
- SVD - lecture 29
- Assistir aos videos do Gilbert Strang, em especial:
Tarefa 1
- SVD + Scilab
- Plotar circulo unitario
- Escolha uma matriz A
- Transformar cada ponto por A
- SVD visual: visualizar os eixos e esticamento da transformacao efetuada por A
- Realizar SVD usando a funcao SVD propriamente dita
- Repetir com outras matrizes A, aleatorias e nao-aleatorias. Qual o poder de modelagem de matrizes na pratica que voce pode observar assim?
- Digitar o resultado, preferencialmente em Latex, e entregar por email ou impresso.
Tarefa 2
- Repetir Tarefa 1 para matriz 3x3 em coordenadas homogeneas - modelam rotacoes, translacoes e homografias em 2D de maneira linear em 3D
- O circulo unitario se transforma para qual objeto?
Tarefa 3: Projeto de Reconhecimento de Faces
Exemplo de Album com Algumas Faces (Facebook upload)
Exemplo de Faces detectadas, a serem reconhecidas no projeto (logo apos Facebook upload)
Times do Trabalho - Graduacao
Time 1:
- Felyppe Rodrigues
- Lucas Vieira
- Marco André
- Marcio V. Dias
- Renato Rodrigues Dutra
- Samuel Galdino Drilard
Time 2:
- Diego Pablo
- Diogo B.
- Dayany Rosa
- Felipe Pimenta
- Ranna Silveira
Entrega do Trabalho
O trabalho devera ser entrege nas seguintes partes:
- Relatorio
- Data de entrega: ate ultimo dia de aula - sexta, 13 de julho até a meia-noite
- Secoes Obrigatorias:
- Introducao
- Descricao clara do problema
- Descricao da implementacao
- Mais importante: Descricao do processo de desenvolvimento
- Experimentos, discussao, analise dos resultados
- Conclusao e ideias para trabalho futuro
- Cada membro do grupo deverá também escrever uma seção de, no mínimo, 2 páginas relatando sua contribuição e experiencia com o trabalho
- Codigo
- Data de entrega: segunda, 9 de julho até a meia-noite
- Dividir a entrega do codigo em 2 partes:
- Codigo-fonte
- README devera incluir instrucoes detalhadas de como rodar o codigo
- Base de dados:
- README deve descrever como a base esta organizada
- Codigo-fonte
- Sugestao p/upload: Ubuntu One > 5GB de espaço
Aviso p/turma de Graduação:
- Criterio de avaliacao: A nota de trabalho sera dada com base na qualidade do relatorio
- Bonus #1: O grupo que tiver melhor performance podera pular a P2, ou seja, obtera nota 10 na prova P2. A performance sera medida em taxa de reconhecimento numa serie de bases de dificuldade facil a dificil, elaboradas pelo professor durante a correcao, sem o conhecimento previo do aluno.
- Bonus #2: O aluno que apresentar um codigo ao professor que apresente melhor performance que o programa dos alunos da pos, e for capaz de explicar o codigo, tera uma gratificacao especial de media final 10.0, o que sera importante para o curriculo do aluno empenhado.
- Observacao: Sem ter ao menos feito a P2 minimamente nao sera possivel obter qualquer bonus de nota 10.
- Àqueles que fizerem P2: a prova P2 sera em grande parte baseada neste trabalho.
Algebra Linear Numerica (graduacao)
- Quartas 7am-9:40am Sala 205
- Quintas 9:40am-11:30am Sala 216
Conteudo aproximado
- Foco: SVD/Singular Value decomposition, auto-valores/auto-vetores, PCA/Principal Component Analysis, demais decomposicoes matriciais.
Recursos principais
- Livro-texto: nao ha. mas veja a bibliografia do curso da pos.
- Notas sobre sistemas de coordenadas, matriz relativa a dadas bases, rotacoes (pdf)
Aulas
Listagem parcial
- Primeiras aulas: overview, SVD, PCA, aplicacoes, notacao, bases vs sistemas de coordenadas
- Rotacoes e Sistemas de Coordenadas mar 22
- Rotacoes e Sistemas de Coordenadas apr 4
- SVD parte 2
- Aula Informal projeto e relatorio eigenfaces/PCA jun 27
- Aula Informal PCA jul 4
Provas
- P1: [1]
- P2: Quinta-feira dia 12/Jul horario de aula
- Final-Sub: Sexta-feira 13/Jul 14h
Criterio de Avaliacao
- Trabalhos: 20% da media - o ultimo trabalho (reconhecimento) valera a metade disto, ou seja, 10% da media
- O criterio final ficou (favor avisar se precisar adicionar detalhes ou corrigir no caso de erro/discrepancia):
Pessoal, conversei com o professor sobre o erro no critério de avaliação, e, como pedido por ele, estou alterando o valor da média para se passar direto.
M_p = (P1 + P2)/2 M = 0.8*M_p + 0.2*T (atualizado de 10% para 20% com acordo dos alunos), onde T é a nota dos trabalhos Se M >= 5, passou --> M (facilitando: considere T=10,0 no M `a esquerda desta desigualdade aqui) prova final - faz quem quiser, mas combinamos que teria de seria feita por quem obtiver M < 5 - facilitando: considere T=10,0 e calcule uma media M otimista, para ver se precisa fazer a final. ou seja:
- Se M_p < 6.25, precisa fazer final! *************************
M_f = 0.5*(M + P_f) = 0.5*(0.8M_p + 0.2*T + P_f) = 0.2*P1 + 0.2*P2 + 0.5*P_f + 0.1*T Se M_f >= 5, passa --> M_f Sub: repoe menor de P1, P2, P_f (apenas se alguem faltou alguma prova ou quiser melhorar nota - mas quem entregar ira substituir) M_sub = media com sub Se M_sub >= 5, passou --> M_sub
Adendo (em acordo com os alunos): a M_sub = M_f pois sera considerada a mesma prova. Quem for usar a prova como Sub ira substituir a nota independentemente do resultado.
Analise Matricial (pós)
- Quartas 5pm-6:30pm Sala 210
- Quintas 5pm-6:30pm Sala 210 (confirmar)
Recursos principais
- Livro-texto: "Numerical Matrix Analysis", Ilse Ipsen (ver uerj.tk)
- livro classico: "Matrix Computations", Gene Golub et. al. (inventor do algoritimo mais usado de SVD).
Aulas
Listagem parcial
- Matrizes, Notacao e Conceitos Elementares (~cap 1 livro)
- Sensitividade, Erros e Normas - parte 1 (cobre cap 2 livro ate normas de matrizes)