PatentSBERTa
AI-Growth-Lab
Similitud de oraciones
PatentSBERTa: Un modelo híbrido de NLP profundo para la distancia y clasificación de patentes utilizando SBERT aumentado. Este modelo de sentence-transformers mapea oraciones y párrafos a un espacio vectorial denso de 768 dimensiones y puede ser utilizado para tareas como clustering o búsqueda semántica.
Como usar
Uso (Transformadores de Oraciones)
Instalar sentence-transformers
:
pip install -U sentence-transformers
Luego puede usar el modelo de esta manera:
from sentence_transformers import SentenceTransformer
sentences = ["Esta es una oración de ejemplo", "Cada oración se convierte"]
model = SentenceTransformer('AI-Growth-Lab/PatentSBERTa')
embeddings = model.encode(sentences)
print(embeddings)
Uso (Transformadores de HuggingFace)
Sin sentence-transformers
, puede usar el modelo así: Primero, pase su entrada a través del modelo transformer, luego debe aplicar la operación de pooling correcta en la parte superior de las incrustaciones de palabras contextualizadas.
from transformers import AutoTokenizer, AutoModel
import torch
def cls_pooling(model_output, attention_mask):
return model_output[0][:,0]
# Oraciones para las cuales queremos incrustaciones
sentences = ['Esta es una oración de ejemplo', 'Cada oración se convierte']
# Cargar modelo desde HuggingFace Hub
tokenizer = AutoTokenizer.from_pretrained('AI-Growth-Lab/PatentSBERTa')
model = AutoModel.from_pretrained('AI-Growth-Lab/PatentSBERTa')
# Tokenizar las oraciones
encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt')
# Calcular incrustaciones de tokens
with torch.no_grad():
model_output = model(**encoded_input)
# Realizar pooling. En este caso, cls pooling.
sentence_embeddings = cls_pooling(model_output, encoded_input['attention_mask'])
print("Incrustaciones de oraciones:")
print(sentence_embeddings)
Funcionalidades
- Transformadores de oraciones (sentence-transformers)
- Compatibilidad con PyTorch
- Compatibilidad con Transformers
- Modelo MPNet
- Extracción de características
- Compatibilidad con AutoTrain
- Compatibilidad con Endpoints de inferencia
- Arxiv:2103.11933
Casos de uso
- Clustering
- Búsqueda semántica