O que é extração de funcionalidades?

Autores

Vanna Winland

AI Advocate & Technology Writer

O que é extração de funcionalidades?

A extração de funcionalidades é uma técnica que reduz a dimensionalidade ou a complexidade dos dados para melhorar o desempenho e a eficiência dos algoritmos de aprendizado de máquina (ML). Esse processo facilita as tarefas de ML e melhora a análise de dados, simplificando o conjunto de dados para incluir apenas suas variáveis ou atributos significativos. 

O desempenho de um modelo de inteligência artificial (IA) depende da qualidade de seus dados de treinamento. Os modelos de aprendizado de máquina passam por pré-processamento para ajudar a garantir que os dados estejam em um formato adequado para um treinamento e desempenho eficientes do modelo. A extração de funcionalidades é uma parte essencial do fluxo de trabalho de pré-processamento.

Durante o processo de extração, dados não estruturados são convertidos em um formato mais estruturado e utilizável para aprimorar a qualidade de dados e a interpretabilidade do modelo. A extração de funcionalidades é um subconjunto da engenharia de funcionalidades, o processo mais amplo de criação, modificação e seleção de funcionalidades dentro de dados brutos para otimizar o desempenho do modelo.  

Desde o início das pesquisas sobre reconhecimento de padrões, novos métodos e técnicas têm sido estudados para empregar um método heurístico para extrair as funcionalidades mais relevantes de um conjunto de dados usando IA.1 Conforme as pesquisas avançaram, autoencodificadores passaram a ser tradicionalmente usados para redução de dimensionalidade para aprendizado de funcionalidades.2

É difícil trabalhar com os dados quando o número de funcionalidades ou covariáveis excede o número de pontos de dados independentes. Esse tipo de dados é considerado dados de alta dimensão.3 A extração de funcionalidades pode ser considerada uma técnica de redução de dimensionalidade.4

Isso é crucial ao trabalhar com grandes conjuntos de dados ou conjuntos de dados de múltiplas modalidades. Quanto mais funcionalidades extraídas o modelo precisar gerenciar, menos proficiente e eficiente ele será.5 As tarefas comuns que dependem da extração eficiente de funcionalidades incluem o processamento de imagens, o processamento de linguagem natural (NLP) e o processamento de sinais. 

As mais recentes tendências em IA, trazidas a você por especialistas

Receba insights selecionados sobre as notícias mais importantes (e intrigantes) sobre IA. Inscreva-se no nosso boletim informativo semanal Think. Consulte a Declaração de privacidade da IBM.

Agradecemos a você! Você se inscreveu.

Sua assinatura será entregue em inglês. Você encontrará um link para cancelar a assinatura em cada boletim informativo. Você pode gerenciar suas assinaturas ou cancelar a assinatura aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

Como funciona a extração de funcionalidades?

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. 

Mixture of Experts | 12 de dezembro, episódio 85

Decodificando a IA: resumo semanal das notícias

Participe do nosso renomado painel de engenheiros, pesquisadores, líderes de produtos e outros enquanto filtram as informações sobre IA para trazerem a você as mais recentes notícias e insights sobre IA.

Casos de uso

Processamento de imagens e computer vision: o processo de extração de funcionalidades identifica e extrai as funcionalidades principais de imagens e vídeos. Os dados de imagem brutas (pixels) são transformados em funcionalidades que a máquina pode aplicar algoritmos para extrair e classificar um novo conjunto de funcionalidades. Por exemplo, o histograma de gradientes orientados (HOG) é um algoritmo de extração de funcionalidades usado para detecção de objetos.

Processamento de linguagem natural: a extração de funcionalidades converte dados de texto bruto em uma estrutura de formato que o modelo de aprendizado de máquina pode processar. Isso é útil para tarefas como classificação, análise de sentimento ou named entity recognition (NER). Essa técnica pode ser aplicada em diversos setores, usada em interfaces de chat e até na saúde comportamental. Essa pesquisa sugere que a extração de funcionalidades auxilia no reconhecimento de emoções multimodais para monitorar a saúde comportamental do paciente.10

Processamento de sinais: essa técnica é usada para analisar e extrair informações significativas de dados de sinais brutos (áudio, imagens ou até mesmo dados de séries temporais) para facilitar tarefas como classificação, detecção ou previsão. Embora o processamento de sinais seja tradicionalmente associado a áreas como reconhecimento de fala, processamento de áudio e análise de imagens, ele também pode ser aplicado em muitos outros domínios. Por exemplo, no contexto médico, são usados sinais psicológicos, como leituras de ECG, para detectar tendências.11

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Consultoria e serviços em IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

1 Minsky, Marvin. "Steps toward artificial intelligence." Proceedings of the IRE 49, no. 1 (1961): 8-30. https://rodsmith.nz/wp-content/uploads/Minsky-steps-towards-artificial-intelligence-1.pdf.

2 Ian Goodfellow, Yoshua Bengio e Aaron Courville. Deep Learning (Cambridge, MA: MIT Press, 2016).  https://www.deeplearningbook.org/contents/autoencoders.html.

3 Narisetty, Naveen Naidu. "Bayesian model selection for high-dimensional data." In Handbook of statistics, vol. 43, pp. 207-248. Elsevier, 2020. https://www.sciencedirect.com/science/article/abs/pii/S0169716119300380.  

4 de-la-Bandera, Isabel, David Palacios, Jessica Mendoza, and Raquel Barco. "Feature extraction for dimensionality reduction in cellular networks performance analysis." Sensors 20, no. 23 (2020): 6944. https://pmc.ncbi.nlm.nih.gov/articles/PMC7730729.

5 https://www.sciencedirect.com/topics/computer-science/feature-extraction.

6 Khalid, Samina, Tehmina Khalil e Shamila Nasreen. "A survey of feature selection and feature extraction techniques in machine learning." In 2014 science and information conference, pp. 372-378. IEEE, 2014. https://ieeexplore.ieee.org/abstract/document/6918213.  

7 Kuhn, Max e Kjell Johnson. Applied predictive modeling. Vol. 26. New York: Springer, 2013.  

8 Zhou, Yuansheng e Tatyana O. Sharpee. "Using global t-SNE to preserve intercluster data structure." Neural computation 34, no. 8 (2022): 1637-1651. https://pmc.ncbi.nlm.nih.gov/articles/PMC10010455/.  

9 Sammut, Claude, and Geoffrey I. Webb, eds. Encyclopedia of machine learning. Springer Science & Business Media, 2011.  

10 Minsky, Marvin. "Steps toward artificial intelligence." Proceedings of the IRE 49, no. 1 (1961): 8 30. https://www.sciencedirect.com/science/article/abs/pii/S1566253523005341.  

11 Geetha, A. V., T. Mala, D. Priyanka e E. Uma. "Multimodal emotion recognition with deep learning: advancements, challenges, and future directions." Information Fusion 105 (2024): 102218. https://www.sciencedirect.com/science/article/abs/pii/S1566253523005341.