A engenharia de recursos é a base de sistemas sólidos de aprendizado de máquina, mas o processo tradicional costuma ser guide, demorado e dependente do conhecimento do domínio. Embora eficaz, pode perder sinais mais profundos ocultos em dados não estruturados, como texto, registros e interações do usuário.
Os modelos de linguagem grande mudam isso, ajudando as máquinas a compreender a linguagem, extrair significado e gerar recursos mais ricos automaticamente. Essa mudança abre novas maneiras de construir pipelines de ML mais inteligentes. Este artigo oferece um guia prático para engenharia de recursos usando LLMs.
O que é engenharia de recursos com LLMs?

O processo de engenharia de recursos com LLMs usa grandes modelos de linguagem para desenvolver e modificar recursos de entrada exigidos pelos sistemas de aprendizado de máquina. Seu sistema extrai significado semântico e sinais estruturados de dados brutos por meio da aplicação de LLMs, em vez de usar apenas transformações manuais.
A nova abordagem à engenharia de recursos permite que os engenheiros desenvolvam modelos de aprendizado de máquina por meio de diferentes métodos que incluem transformações numéricas e representações baseadas em contexto.
A engenharia de recursos com LLMs usa modelos de linguagem pré-treinados para transformar entradas brutas em representações estruturadas de alta dimensão que ajudam os modelos a obter melhor desempenho. Os modelos usam o contexto para determinar relacionamentos entre elementos enquanto criam recursos que expressam significado além dos padrões estatísticos.
Como isso difere da engenharia de recursos tradicional
A engenharia de recursos tradicional cria regras e usa métodos de agregação e transformação para construir recursos. A engenharia de recursos baseada em LLM extrai significado, intenções do usuário e dados de relacionamento que a codificação guide não consegue capturar.
A mudança: de recursos manuais para recursos semânticos
O aprendizado de máquina desenvolve modelos por meio do uso de recursos artesanais que incluem vetores one-hot e TF-IDF e valores numéricos padronizados. Os recursos manuais apresentam restrições porque não consideram o contexto e exigem conhecimento especializado e não lidam com diferenças sutis. O método TF-IDF trata as palavras como entidades separadas, o que leva à perda das relações entre as palavras e do significado emocional.
- Limitações dos métodos tradicionais: A criação guide de recursos requer conexões permanentes do sistema e conhecimentos específicos de domínio. O sistema não inclui conhecimento geral e conexões intrincadas. Um modelo de saco de palavras requer mais conhecimento do que “comida fria” para reconhecer sentimentos negativos. Os recursos humanos precisam despender muito tempo para identificar todas as situações excepcionais.
- Papel dos LLMs no contexto: Os LLMs funcionam em seus respectivos contextos por meio de LLMs que empregam seu treinamento em extensos bancos de dados de texto para adquirir conhecimento e reconhecer padrões. O sistema entende o contexto do idioma através da presença de conhecimento de mundo e capacidade de compreender mensagens ocultas. O sistema extrai recursos semânticos dos dados por meio de LLMs que criam recursos automáticos que identificam elementos de dados como sentimento e categorias de tópicos e riscos.
- Por que essa mudança é importante: A importância desta transição vem da sua capacidade de mostrar que os recursos semânticos oferecem melhores resultados do que os recursos criados por humanos ao lidar com tarefas complicadas. O sistema precisa de menos heurísticas de recursos para suas operações, o que resulta em processos de teste mais rápidos.
Técnicas Básicas em Engenharia de Recursos com LLMs
Esta seção ilustrará os principais métodos com exemplos de código. Geramos pequenos dados de amostra e mostramos como os recursos são derivados.
Incorporações como recursos
LLMs produzem vetores semânticos densos a partir de texto. Os embeddings extraídos funcionam como recursos numéricos que permitem ao modelo compreender o significado que excede as frequências básicas das palavras. Podemos usar um modelo de transformador para criar embeddings de frases de 384 dimensões por meio da codificação de frases.
from sentence_transformers import SentenceTransformer
mannequin = SentenceTransformer('all-MiniLM-L6-v2')
sentences = ("I really like machine studying", "The film was unbelievable")
embeddings = mannequin.encode(sentences)
print("Embeddings form:", embeddings.form)Saída:
Embeddings form: (2, 384)
A forma de saída (2, 384) mostra duas sentenças mapeadas em vetores densos de 384 dimensões (uma por sentença). Os vetores representam propriedades semânticas do texto que incluem significados relacionados e expressões emocionais.
Quando usar embeddings versus recursos tradicionais:
from sklearn.feature_extraction.textual content import TfidfVectorizer
docs = (
"The cat sat on the mat",
"The canine ate the cat",
)
# Conventional TF-IDF: sparse bag-of-words
tfidf = TfidfVectorizer()
X_tfidf = tfidf.fit_transform(docs)
# LLM embeddings: dense semantic options
X_emb = mannequin.encode(docs)
print("TF-IDF characteristic form:", X_tfidf.form)
print("LLM embedding characteristic form:", X_emb.form)Saída:
TF-IDF characteristic form: (2, 6)LLM embedding characteristic form: (2, 384)
O TF-IDF os recursos criam uma matriz esparsa (2 × 6) que contém seis termos exclusivos, enquanto os embeddings LLM existem como vetores densos (2 × 384). Os embeddings apresentam significado das palavras em seu contexto porque mostram como os sinônimos se relacionam entre si com o exemplo de “gato” e “cachorro”. Use recursos semânticos de incorporações, enquanto os recursos tradicionais funcionam para dados numéricos simples e dados categóricos de alta frequência que requerem codificação esparsa.
Podemos solicitar ao LLM que extraia informações estruturadas específicas do texto. As saídas do modelo podem ser analisadas em recursos.
from transformers import pipeline
opinions = (
"The telephone battery lasts all day and efficiency is easy",
"The laptop computer overheats and may be very sluggish",
)
extractor = pipeline("text2text-generation", mannequin="google/flan-t5-base")
immediate = """
Extract options: sentiment, product_issue, efficiency
Textual content: The laptop computer overheats and may be very sluggish
"""
outcome = extractor(immediate, max_length=50)
print(outcome(0)("generated_text"))Saída:
sentiment: unfavorable, product_issue: overheating, efficiency: sluggish
Usamos o immediate LLM que afirma “Extraia sentimento (positivo/negativo), assunto e urgência (baixa/média/alta) desta revisão.” O modelo retorna recursos estruturados como um dicionário semelhante a JSON. As características de sentimento, assunto e urgência agora existem como colunas separadas que podemos inserir em nosso sistema classificador
Um esquema JSON pode ser aplicado em uma chamada para garantir saídas consistentes. Por exemplo:
immediate = """
Extract in JSON format:
{
"sentiment": "",
"subject": "",
"efficiency": ""
}
Textual content: The telephone battery lasts all day and efficiency is easy
"""
outcome = extractor(immediate, max_length=100)
print(outcome(0)("generated_text"))Saída:
{
"sentiment": "optimistic",
"subject": "none",
"efficiency": "easy"
}Geração de recursos semânticos
LLMs geram novos atributos descritivos que podem ser aplicados tanto a linhas únicas quanto a valores de dados individuais.
information = (
{"overview": "Nice digital camera high quality however battery drains quick"},
{"overview": "Reasonably priced and sturdy, good for every day use"},
)
immediate = """
Generate a brand new characteristic known as 'user_intent' from this overview:
Assessment: Nice digital camera high quality however battery drains quick
"""
outcome = extractor(immediate, max_length=50)
print(outcome(0)("generated_text"))Saída:
user_intent: photography-focused however involved about battery
O LLM extrai a intenção do usuário da revisão por meio da análise do texto. O sistema transforma texto não processado em recursos estruturados que mostram a preferência do usuário por câmeras e sua preocupação com a duração da bateria. O sistema permite que os usuários adicionem novas colunas que melhoram a compreensão do modelo dos padrões de atividade do usuário.
Criação de recursos sensíveis ao contexto
Os LLMs podem gerar recursos de texto quando usam seu conhecimento para analisar o valor de um recurso em situações específicas. O LLM usa informações de código postal para explicar a área geográfica correspondente.
immediate = """
Infer buyer kind:
Assessment: Reasonably priced and sturdy, good for every day use
"""
outcome = extractor(immediate, max_length=50)
print(outcome(0)('generated_text'))Saída:
customer_type: budget-conscious sensible consumer
O LLM usa informações de avaliação do cliente para determinar a qual grupo de clientes o revisor pertence. O sistema transforma o texto inserido em uma etiqueta padronizada que exibe as duas principais preferências do usuário em termos de produtos acessíveis e duráveis. O sistema permite que os usuários implementem um novo recurso que permite aos modelos categorizar os usuários de acordo com seus padrões comportamentais e preferências específicas.
Espaços de recursos híbridos (pipelines multimodais)
Combinando Tabular, Texto e Incorporações
Começamos com recursos numéricos e semânticos que combinamos em um vetor híbrido.
import pandas as pd
import numpy as np
df = pd.DataFrame({
"worth": (1000, 500),
"ranking": (4.5, 3.0),
"overview": (
"Wonderful efficiency and battery life",
"Gradual and heats up shortly",
),
})
embeddings = mannequin.encode(df("overview").tolist())
final_features = np.hstack((
df(("worth", "ranking")).values,
embeddings,
))
print("Closing characteristic form:", final_features.form)Saída:
Closing characteristic form: (2, 386)
O conjunto de dados completo agora contém 2 linhas que contêm 386 recursos. Os dados tabulares originais (preço e avaliação) é combinado com incorporações de texto das resenhas. O sistema desenvolve recursos avançados por meio da combinação de dados estruturados e informações de texto semântico que resultam em melhor desempenho do modelo.
Pipelines de recursos multimodais
Começamos com recursos numéricos e semânticos que combinamos em um vetor híbrido.
def feature_pipeline(row):
embedding = mannequin.encode((row('overview')))(0)
return listing(row(('worth', 'ranking'))) + listing(embedding)
options = df.apply(feature_pipeline, axis=1)
print(options.iloc(0)(:5))Saída:
(1000, 4.5, 0.023, -0.045, 0.067)
O conjunto de dados completo agora contém 2 linhas que contêm 386 recursos. Os dados tabulares originais (preço e classificação) são combinados com incorporações de texto das avaliações. O sistema desenvolve recursos avançados por meio da combinação de dados estruturados e informações de texto semântico que resultam em melhor desempenho do modelo.
Fluxo ponta a ponta (Dados → LLM → Recursos → Modelo)
Nesta seção, veremos a demonstração do fluxo de trabalho que usa Transformers para extrair recursos para uso com um classificador básico. Por exemplo, considere uma tarefa de classificação de sentimento. Para isso, primeiro pegaremos um conjunto de dados de amostra.
import pandas as pd
df = pd.DataFrame({
"overview": (
"Wonderful product, supply was tremendous quick and packaging was good",
"Horrible high quality, broke after one use and assist was unhelpful",
"Good worth for cash, does what it guarantees",
"The product is okay, not nice however not dangerous both",
"Wonderful efficiency, exceeded my expectations utterly",
"Very sluggish supply and the product high quality is disappointing",
"I really like the design and construct high quality, extremely advisable",
"Waste of cash, stopped working inside two days",
"First rate product for the value, however could possibly be improved",
"Customer support was useful however the product is common",
"Unbelievable expertise, will certainly purchase once more",
"The merchandise arrived late and was broken",
"Fairly good general, glad with the acquisition",
"Not well worth the worth, high quality feels low cost",
"Completely शानदार product, very pleased with it",
"Works superb however nothing distinctive",
"Horrible expertise, I need a refund",
"The options are helpful and efficiency is easy",
"Mediocre high quality, anticipated higher at this worth",
"Excellent construct high quality and quick efficiency",
"Product is ok, supply took too lengthy",
"Cherished it, precisely what I wanted",
"It’s okay, does the job however has some points",
"Worst buy ever, utterly ineffective",
"Superb high quality and fast supply",
"Common product, nothing particular",
"Extremely sturdy and dependable, nice purchase",
"Poor packaging and broken merchandise acquired",
"Happy with the acquisition, respectable efficiency",
"Not pleased with the product, high quality is subpar",
),
"label": (
1, 0, 1, 1, 1,
0, 1, 0, 1, 1,
1, 0, 1, 0, 1,
1, 0, 1, 0, 1,
0, 1, 1, 0, 1,
1, 1, 0, 1, 0,
),
})Agora, avançaremos para criar um pipeline de agente que ajudará na engenharia de recursos para uma tarefa específica. Como neste caso realizará a análise de sentimento.
from transformers import pipeline
from sentence_transformers import SentenceTransformer
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
import numpy as np
# Step 1: Initialize fashions
llm = pipeline("text2text-generation", mannequin="google/flan-t5-base")
embedder = SentenceTransformer("all-MiniLM-L6-v2")
# Step 2: Function Extraction Agent
def extract_features(textual content):
immediate = f"Extract sentiment (optimistic/unfavorable): {textual content}"
outcome = llm(immediate, max_length=20)(0)("generated_text")
return 1 if "optimistic" in outcome.decrease() else 0
# Step 3: Construct Function Set
df("sentiment_feature") = df("overview").apply(extract_features)
embeddings = embedder.encode(df("overview").tolist())
X = np.hstack((
df(("sentiment_feature")).values,
embeddings
))
y = df("label")
# Step 4: Practice Mannequin
X_train, X_test, y_train, y_test = train_test_split(
X,
y,
test_size=0.2
)
mannequin = LogisticRegression()
mannequin.match(X_train, y_train)
# Step 5: Consider
accuracy = mannequin.rating(X_test, y_test)
print("Mannequin Accuracy:", accuracy)Saída:
Mannequin Accuracy: 0.95
Isso mostra a operação completa do sistema que funciona do início ao fim. O LLM extrai um recurso de sentimento de cada avaliação, que é combinado com incorporações para criar entradas mais ricas. O processo de engenharia de recursos de agência deste sistema permite que o modelo compreenda melhor o texto, o que resulta em maior precisão para previsão de sentimento.
Aplicações do mundo actual
A aplicação de LLMs na engenharia de recursos cria mudanças que impactam diversos setores. A solução demonstra capacidade de realizar tarefas em diferentes áreas operacionais.
- Classificação e Sistemas de PNL: LLMs fornecem elementos textuais avançados que suportam análise de sentimento, desenvolvimento de chatbot e tarefas de classificação de documentos em sistemas de classificação e PNL.
- Aprendizado de máquina tabular: Os LLMs permitem que todos os tipos de tarefas obtenham vantagens de suas capacidades. A tecnologia LLM converte dados não estruturados de fontes secundárias em recursos utilizáveis que um modelo tabular pode compreender.
- Casos de uso específicos de domínio: Os recursos do LLM encontraram aplicações inovadoras em vários domínios que incluem finanças, saúde, seguros e setores adicionais. O sistema LLM em precificação de seguros permite que os atuários criem recursos automáticos que antes exigiam especialistas humanos. O sistema LLM usa descrições de modelos de carros para determinar classificações de risco que identificam os veículos como modelos de “boy racer”.
Limitações e Desafios
A engenharia de recursos com LLMs oferece benefícios aos usuários, mas cria vários obstáculos que precisam ser resolvidos. O processo de implementação exige que todos os membros da equipe compreendam as restrições existentes. Estes incluem:
- Confiabilidade e reprodutibilidade: As saídas dos sistemas LLM demonstram comportamento inconsistente porque mudanças no modelo e pequenas alterações imediatas exigem nova avaliação do modelo. O sistema precisa de registro imediato e configurações de temperatura zero para obter desempenho consistente. As organizações enfrentam desafios na implantação do LLM porque devem lidar com dois aspectos que incluem acessibilidade da API e controle de versão.
- Viés e interpretabilidade: Os sistemas LLM tornam seus recursos difíceis de entender porque seus densos embeddings funcionam como componentes principais do LLM. O sistema pode criar distorções baseadas em dados de treinamento através de seus procedimentos operacionais. Um LLM gera um recurso que conecta a palavra “médico” a um gênero específico de maneira implícita. O processo de auditoria deve examinar as características para determinar sua imparcialidade.
- Excesso de confiança nos recursos do LLM: Os LLMs oferecem automação completa que leva a resultados perigosos através de sua fachada de confiabilidade. LLMs geram recursos irrelevantes quando os usuários fornecem instruções incorretas. Os recursos do LLM devem funcionar como ferramentas complementares que os usuários devem aplicar juntamente com os principais recursos do domínio.
Conclusão
O campo de desenvolvimento de aprendizado de máquina passa por uma grande transformação por meio do uso de engenharia de recursos com LLMs. O processo agora muda sua ênfase do trabalho guide de transformação de dados para a criação de recursos automatizados por meio da compreensão semântica. Este método permite que os pesquisadores desenvolvam novos métodos para analisar conjuntos de dados intrincados e desorganizados.
O processo requer implementação precisa e procedimentos completos de avaliação e validação para alcançar o sucesso. As capacidades de LLM combinadas com a experiência humana permitem aos profissionais desenvolver sistemas de IA que operam com maior força, escalabilidade e eficácia.
Perguntas frequentes
R. Ele usa LLMs para transformar dados brutos em recursos semânticos e estruturados para modelos de aprendizado de máquina.
R. Eles convertem texto em vetores densos que capturam significado, contexto e relacionamentos além da simples frequência das palavras.
R. Os recursos baseados em LLM podem ser inconsistentes, tendenciosos, difíceis de interpretar e arriscados quando usados sem validação.
Faça login para continuar lendo e desfrutar de conteúdo com curadoria de especialistas.