madlag/bert-base-uncased-squadv1-x2.44-f87.7-d26-hybrid-filled-v1

madlag
Pregunta y respuesta

Modelo BERT-base uncased afinado en SQuAD v1. Este modelo fue creado utilizando la biblioteca de Python nn_pruning: las capas lineales contienen el 26.0% de los pesos originales. El modelo en su totalidad contiene el 42.0% de los pesos originales. Con un simple redimensionamiento de las matrices lineales, corrió 2.44 veces más rápido que el modelo original en la evaluación. En términos de precisión, su F1 es 87.71, en comparación con 88.5 del modelo original, una caída de F1 de 0.79.

Como usar

Instalar nn_pruning: contiene el script de optimización, que solo empaqueta las capas lineales en unas más pequeñas eliminando filas/columnas vacías.

pip install nn_pruning

Luego puede utilizar la biblioteca transformers casi como de costumbre: solo tiene que llamar a optimize_model cuando el pipeline se haya cargado.

from transformers import pipeline
from nn_pruning.inference_model_patcher import optimize_model

qa_pipeline = pipeline(
  "question-answering",
  model="madlag/bert-base-uncased-squadv1-x2.44-f87.7-d26-hybrid-filled-v1",
  tokenizer="madlag/bert-base-uncased-squadv1-x2.44-f87.7-d26-hybrid-filled-v1")

print("/home/lagunas/devel/hf/nn_pruning/nn_pruning/analysis/tmp_finetune parameters: 189.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': "¿Quién es Frédéric Chopin?",
})
print("Predictions", predictions)

Funcionalidades

Modelo BERT-base uncased afinado en SQuAD v1
Las capas lineales contienen solo el 26.0% de los pesos originales
El modelo en su totalidad contiene el 42.0% de los pesos originales
Redimensionamiento de matrices lineales que permite una ejecución 2.44 veces más rápida
Método de poda estructurado
F1 de 87.71 con una caída de 0.79 en comparación con el modelo original

Casos de uso

Respuesta a preguntas automáticas