A redução de dimensionalidade é uma técnica de ciência de dados usada na etapa de pré-processamento no aprendizado de máquina.6 Durante esse processo, os dados irrelevantes e redundantes são removidos, mantendo as informações relevantes do conjunto de dados original.
As funcionalidades podem ser consideradas como os atributos de um objeto de dados. Por exemplo, em um conjunto de dados de animais, você esperaria algumas funcionalidades numéricas (idade, altura, peso) e funcionalidades categóricas (cor, espécie, raça). A extração de funcionalidades é parte da arquitetura de rede neural do modelo, como uma rede neural convolucional (CNN).
Primeiro, o modelo recebe dados de entrada; em seguida, o extrator de funcionalidades transforma os dados em uma representação numérica que pode ser usada para calcular os métodos de redução de dimensionalidade para extração de funcionalidades. Essas representações são armazenadas em vetores de funcionalidades, para que o modelo execute algoritmos para redução de dados.
Após a extração, às vezes é necessário padronizar os dados usando a normalização de funcionalidades, especialmente ao usar determinados algoritmos sensíveis à magnitude e escala de variáveis (algoritmos descendentes baseados em gradiente, agrupamento k-means).
Diferentes métodos podem ser seguidos para alcançar determinados resultados, dependendo das tarefas. Todos os métodos buscam simplificar os dados enquanto preservam as informações mais valiosas.
A maioria dos modelos de IA modernos realiza a extração automática de funcionalidades, mas ainda é útil entender as diversas maneiras de lidar com isso. Aqui estão alguns métodos comuns de extração de funcionalidade usados para dimensão:
Análise de componentes principais (PCA): essa técnica reduz o número de funcionalidades em grandes conjuntos de dados para componentes principais ou novas funcionalidades a serem usadas pelo classificador do modelo para suas tarefas específicas.
A PCA é popular devido à sua capacidade de criar dados originais não correlacionados, o que significa que as novas dimensões que a PCA cria são independentes umas das outras.7 Isso torna a PCA uma solução eficiente para overfitting devido à falta de redundância de dados, pois cada funcionalidade é única.
Análise discriminante linear (LDA): essa técnica é comumente usada no aprendizado de máquina para separar várias classes e funcionalidades para resolver problemas de classificação.
Essa técnica é comumente usada para otimizar modelos de aprendizado de máquina. Os novos pontos de dados são classificados usando estatística bayesiana para modelar a distribuição de dados de cada classe.
Embedding de vizinho estocástico distribuído em T (t-SNE): essa técnica de aprendizado de máquina é comumente aplicada a tarefas como a visualização de funcionalidades em deep learning.8 Isso é especialmente útil quando a tarefa é renderizar visualizações de dados de alta dimensão em 2D ou 3D.
Isso é comumente usado para analisar padrões e relacionamentos na ciência de dados. Devido à sua natureza não linear, a t-SNE é computacionalmente cara e é comumente usada apenas para tarefas de visualização.
Frequência de termos - Frequência inversa de documentos (TF-IDF): esse método estatístico avalia a importância das palavras com base na frequência com que elas aparecem. O termo frequência em um documento específico é ponderado em relação à frequência com que ele aparece em todos os documentos dentro de uma coleção ou corpus.9
Essa técnica é comumente usada em NLP para classificação, agrupamento e recuperação de informações. Bag of words (BoW) é uma técnica semelhante, mas em vez de considerar a relevância do termo, ele efetivamente trata todas as palavras igualmente.