Terceira Etapa: Dados e Engenharia de Atributos
Uma lista selecionada de recursos de engenharia de recursos de aprendizado de máquina, cobrindo métodos e ferramentas de engenharia de recursos para vários tipos de dados, como numéricos, texto, imagem, categóricos, séries temporais, etc.
Introdução ao Projeto Awesome Feature Engineering
Visão Geral do Projeto
Awesome Feature Engineering é uma lista selecionada de recursos técnicos de engenharia de características (feature engineering) para aprendizado de máquina. O projeto é mantido por Andrei Khobnia e segue a licença Creative Commons Attribution-Noncommercial-ShareAlike 3.0 Unported License.
Este projeto oferece aos profissionais de aprendizado de máquina um repositório abrangente de recursos técnicos de engenharia de características, cobrindo métodos e ferramentas para diferentes tipos de dados.
Principais Categorias de Conteúdo
1. Dados Numéricos (Numeric Data)
Transformação de Dados:
- Transformação Box-Cox:
scipy.stats.boxcox
- Transformação Logarítmica:
np.log (x + const)
- Transformação Box-Cox:
Engenharia de Características Automatizada:
Featuretools
: para engenharia de características automatizada
Interação de Características:
sklearn.preprocessing.PolynomialFeatures
: geração de características polinomiais- Operações de divisão
- Outras características interativas
2. Dados Textuais (Textual Data)
Modelo Bag-of-words:
- Bag-of-words model
- A Gentle Introduction to the Bag-of-Words Model
sklearn.feature_extraction.text.CountVectorizer
sklearn.feature_extraction.DictVectorizer
sklearn.feature_extraction.FeatureHasher
Técnicas de Word Embedding:
Técnicas de Extração de Características:
3. Dados de Imagem (Image Data)
Extração de Características Tradicional:
Extração de Características com Deep Learning:
4. Dados Categóricos (Categorical Data)
One-Hot Encoding:
- Why One-Hot Encode Data in Machine Learning?
- How to One Hot Encode Sequence Data in Python
sklearn.preprocessing.OneHotEncoder
Keras - to_categorical
Target Encoding:
Feature Hashing:
5. Dados de Séries Temporais (Time Series Data)
- Extração Automática de Características:
6. Dados Geoespaciais (Geospatial Data)
- Inclui técnicas de engenharia de características relacionadas a dados geográficos.
Características do Projeto
- Abrangência: Cobre os principais tipos de dados e as respectivas técnicas de engenharia de características em aprendizado de máquina.
- Praticidade: Fornece bibliotecas de ferramentas e implementações de código específicas.
- Natureza Open Source: Adota uma licença open source e acolhe contribuições da comunidade.
- Autoridade: Links para documentação, tutoriais e recursos acadêmicos de autoridade.
- Operacionalidade: Fornece bibliotecas Python e métodos de chamada de função específicos.
Valor de Uso
Este projeto é particularmente valioso para as seguintes pessoas:
- Engenheiros de Machine Learning
- Cientistas de Dados
- Pesquisadores de Engenharia de Características
- Iniciantes em Machine Learning
- Profissionais que buscam melhorar o desempenho de modelos
Formas de Contribuição
O projeto incentiva a contribuição da comunidade, que pode ser feita criando pull requests para adicionar novos recursos ou melhorar o conteúdo existente.
Conclusão
O projeto Awesome Feature Engineering oferece um repositório de recursos abrangente e prático para a engenharia de características em aprendizado de máquina, sendo uma referência importante para aprender e aplicar essas técnicas. Através de uma classificação sistemática e links ricos para recursos, ele ajuda os profissionais a encontrar rapidamente métodos de engenharia de características adequados para tipos de dados específicos.