Algoritmo de Análise de componente principal (PCA)
O PCA é um algoritmo de machine learning não supervisionado que tenta reduzir a dimensionalidade (número de recursos) em um conjunto de dados enquanto mantém o maior número possível de informações. Para isso, ele encontra um novo conjunto de recursos chamados componentes, que são composições de recursos originais não correlacionados entre si. Eles também são limitados para que o primeiro componente represente a maior variabilidade possível nos dados, o segundo componente, a segunda maior variabilidade, e assim por diante.
No Amazon SageMaker, o PCA opera em dois modos, dependendo do cenário:
-
regular: para conjuntos com dados esparsos e um número moderado de observações e recursos.
-
randomized: para conjuntos de dados com um grande número de observações e recursos. Esse modo usa um algoritmo de aproximação.
O PCA usa dados tabulares.
As linhas representam as observações que você deseja incorporar em um menor espaço dimensional. As colunas representam os recursos para os quais você deseja encontrar uma aproximação reduzida. O algoritmo calcula a matriz de covariância (ou uma aproximação, de maneira distribuída) e, em seguida, executa a decomposição de valor singular no resumo em questão para produzir os principais componentes.
Tópicos
Interface de entrada/saída para o algoritmo PCA
Para treinamento, o PCA espera que os dados sejam fornecidos no canal de treinamento. Opcionalmente, é compatível com um conjunto de dados passado para o canal de teste, que é pontuado pelo algoritmo final. Ambos os formatos recordIO-wrapped-protobuf
e CSV
têm suporte para treinamento. É possível usar o modo de Arquivo ou de Pipe para treinar modelos em dados formatados como recordIO-wrapped-protobuf
ou CSV
.
Para inferência, text/csv
, application/json
e application/x-recordio-protobuf
são compatíveis no PCA. Os resultados são retornados no formato application/json
ou application/x-recordio-protobuf
com um vetor de "projeções".
Para obter mais informações sobre formatos de arquivo de entrada e saída, consulte Formatos de resposta do PCA para inferência e os Blocos de anotações de amostra do PCA.
Recomendação de instâncias do EC2 para o algoritmo PCA
O PCA oferece suporte para instâncias de CPU e GPU para treinamento e inferência. O tipo de instância mais eficiente dependerá muito das especificidades dos dados de entrada. Para instâncias de GPU, o PCA oferece suporte para P2, P3, G4dn e G5.
Blocos de anotações de amostra do PCA
Para um caderno de exemplo que mostra como usar o algoritmo de Análise de componente principal do SageMaker para analisar as imagens de dígitos manuscritos de zero a nove no conjunto de dados MNIST, consulte Uma introdução ao PCA com o MNIST