Estou implementando PCA, LDA e Naive Bayes, para compactação e classificação, respectivamente (implementando um LDA para compactação e classificação).
Eu tenho o código escrito e tudo funciona. O que eu preciso saber, para o relatório, é qual é a definição geral de erro de reconstrução .
Posso encontrar muita matemática e utilizá-la na literatura ... mas o que realmente preciso é de uma visão geral / definição de palavras simples, para que eu possa adaptá-la ao relatório.
general definition of reconstruction error
é elusivamente ampla.Respostas:
Para o PCA, o que você faz é projetar seus dados em um subconjunto do seu espaço de entrada. Basicamente, tudo se mantém nessa imagem acima: você projeta dados no subespaço com variação máxima. Quando você reconstrói seus dados a partir da projeção, obtém os pontos vermelhos e o erro de reconstrução é a soma das distâncias dos pontos azuis aos vermelhos: na verdade, corresponde ao erro que você fez ao projetar seus dados no verde linha. Pode ser generalizado em qualquer dimensão, é claro!
Como apontado nos comentários, não parece tão simples para o LDA e não consigo encontrar uma definição adequada na internet. Desculpa.
fonte
A definição geral do erro de reconstrução seria a distância entre o ponto de dados original e sua projeção em um subespaço de menor dimensão (sua 'estimativa').
Fonte: Matemática da Especialização em Aprendizado de Máquina pelo Imperial College London
fonte
O que costumo usar como medida do erro de reconstrução (no contexto da PCA, mas também em outros métodos) é o coeficiente de determinação e o erro médio quadrático da raiz (ou RMSE normalizado). Esses dois são fáceis de calcular e dão uma idéia rápida do que a reconstrução fez.R2
Cálculo
Vamos assumir que são seus dados originais são os dados compactados.X f
O da variável pode ser calculado como:R2 ith
Como para um ajuste perfeito, você pode julgar a reconstrução pela proximidade do a 1,0.R2=1.0 R2
O RMSE da variável pode ser calculado como:ith
que você também pode normalizar por uma quantidade que combina com você (norma ), eu normalmente normalizo pelo valor médio, o NRMSE é assim:N
Computação
Caso você esteja usando Python, você pode calculá-los como:
Onde
X
estão os dados originais ef
os dados compactados.Visualização
Caso seja útil fazer alguma análise de sensibilidade, você poderá julgar visualmente como o ou o RMSE mudam quando você altera os parâmetros de sua compactação. Por exemplo, isso pode ser útil no contexto do PCA quando você deseja comparar reconstruções com um número crescente de Componentes Principais retidos. Abaixo, você vê que aumentar o número de modos está se aproximando do modelo:R2
fonte