madlag/bert-base-uncased-squadv1-x1.84-f88.7-d36-hybrid-filled-v1

madlag
Pregunta y respuesta

Este modelo se creó utilizando la biblioteca de Python nn_pruning: las capas lineales contienen el 36.0% de los pesos originales. El modelo contiene el 50.0% de los pesos originales en general (las incrustaciones representan una parte significativa del modelo y no se podan con este método). Con un simple redimensionamiento de las matrices lineales, funcionó 1.84 veces más rápido que el modelo denso en la evaluación. Esto es posible porque el método de poda lleva a matrices estructuradas.

Como usar

from transformers import pipeline
from nn_pruning.inference_model_patcher import optimize_model

qa_pipeline = pipeline(
"question-answering",
model="madlag/bert-base-uncased-squadv1-x1.84-f88.7-d36-hybrid-filled-v1",
tokenizer="madlag/bert-base-uncased-squadv1-x1.84-f88.7-d36-hybrid-filled-v1")

print("/home/lagunas/devel/hf/nn_pruning/nn_pruning/analysis/tmp_finetune parameters: 218.0M")
print(f"Parameters count (includes only head pruning, not feed forward pruning)={int(qa_pipeline.model.num_parameters() / 1E6)}M")
qa_pipeline.model = optimize_model(qa_pipeline.model, "dense")

print(f"Parameters count after complete optimization={int(qa_pipeline.model.num_parameters() / 1E6)}M")
predictions = qa_pipeline({
'context': "Frédéric François Chopin, born Fryderyk Franciszek Chopin (1 March 1810 – 17 October 1849), was a Polish composer and virtuoso pianist of the Romantic era who wrote primarily for solo piano.",
'question': "Who is Frederic Chopin?",
})
print("Predictions", predictions)

Funcionalidades

Modelo BERT-base uncased afinado en SQuAD v1
Creado con nn_pruning
36% de los pesos originales en capas lineales
50% de los pesos originales en total
Matrices estructuradas para mejorar la velocidad
F1 de 88.72, comparado con 88.5 en la versión densa
Cabezas de atención reducidas, 48 de 144 (33.3%)

Casos de uso

Responder preguntas basadas en un contexto dado
Aplicaciones en chatbots inteligentes
Búsqueda de información en documentos largos
Asistentes virtuales
Análisis de texto en procesamiento de lenguaje natural