Model Card for Model ID

This model is a binary classifier that determines whether a sentence is a statement of ignorance or not.

Model Details

Model Description

  • This model consists of a linear classification head on top of BioMedBERT, which is a BERT-based encoder (110 million parameters, 12 layers, 768 hidden).

  • All layers besides 10, 11, the pooler, and classificaton head were frozen to reduce overfitting on the small training set.

  • Developed by: Nathan Gelfand, Darya Shlyk

  • Funded by: Larry Hunter

  • Model type: Supervised fine-tune of a transformer-encoder for text classification

  • Language(s) (NLP): English

  • License: MIT

  • Finetuned from model: microsoft/BiomedNLP-BiomedBERT-base-uncased-abstract

Model Sources [optional]

  • Repository: [More Information Needed]

Uses

Direct Use

A statement of ignorance, or knowledge gap statement, is a piece of text indicating a lack of knoweldge on some subject. In the field of biomedical research, knowledge gap statements often indicate unanswered questions, which can be useful for researchers looking for new topics of study. We built this sentence-level binary classifier so that researchers could parse through biomedical papers to identify research directives.

Downstream Use [optional]

[More Information Needed]

Out-of-Scope Use

[More Information Needed]

Bias, Risks, and Limitations

This model was trained on a dataset of 937 annotated statements from articles about monogenic epilepsies. Due to the small dataset size, it is possible that the classifier will perform better on statements related to monogenic epilepsies.

The annotated statements were based on the guidelines below. Therefore, the model's classifications will also be restricted to these guidelines. annotation_guidelines.html

Recommendations

Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.

How to Get Started with the Model

Use the code below to get started with the model.

!pip install transformers 
from transformers import pipeline

classifier = pipeline("text-classification",model="hunter-lab/sentence-level-ignorance-classifier")

sentence = "Consequently, there is a pressing need to enhance basic mechanistic and clinical studies, with a focus on individual differences, to advance the exploration of BCAAs in treating neurological disorders and to provide more robust evidence supporting their clinical applications."

result = classifier(sentence)

print(result)

Training Details

Training Data

Our training data consists of 937 statements from articles extracted from PubMed that are related to monogenic epilepsies (fill out later). Each statement was annotated as "ignorance" or "not ignorance" based on the guidelines in annotation_guidelines.html.
There are 745 training statements, 104 validation statements, and 88 testing statements.

Training Procedure

We split the data roughly 80-10-10 into train, test, and validation sets, grouping statements by article PMID using StratifiedGroupKFold to avoid leakage.

Due to the dominance of negative statements in the dataset we made a wrapper of the Trainer class called WeightedTrainer. This wrapper includes a custom compute_loss function that performs cross-entropy loss while taking into account the modified weight of each class, which is calculated as (total labels) / (number of classes x count of this class label).

Otherwise, the procedure is fairly standard: tokenize the datasets, feed them into the trainer, train, and evaluate.

Preprocessing [optional]

[More Information Needed]

Training Hyperparameters

training_args = TrainingArguments(
    output_dir=str(MODEL_DIR / "checkpoints"),
    num_train_epochs=20,
    per_device_train_batch_size=8,
    per_device_eval_batch_size=8,
    learning_rate=2e-5,
    weight_decay=0.01,
    warmup_ratio=0.1,
    fp16=True,
    seed=42,
    eval_strategy="epoch",
    save_strategy="epoch",
    save_total_limit=2,
    load_best_model_at_end=True,
    metric_for_best_model="f1",
)

Speeds, Sizes, Times [optional]

[More Information Needed]

Evaluation

Testing Data, Factors & Metrics

Testing Data

[More Information Needed]

Factors

[More Information Needed]

Metrics

Precision, recall, and macro f1 were used in evaluation, as they are standard for testing the performance of a binary classifier.

[More Information Needed]

Results

[More Information Needed]

Summary

Model Examination [optional]

[More Information Needed]

Environmental Impact

Carbon emissions can be estimated using the Machine Learning Impact calculator presented in Lacoste et al. (2019).

  • Hardware Type: [More Information Needed]
  • Hours used: [More Information Needed]
  • Cloud Provider: [More Information Needed]
  • Compute Region: [More Information Needed]
  • Carbon Emitted: [More Information Needed]

Technical Specifications [optional]

Model Architecture and Objective

[More Information Needed]

Compute Infrastructure

[More Information Needed]

Hardware

[More Information Needed]

Software

[More Information Needed]

Citation [optional]

BibTeX:

[More Information Needed]

APA:

[More Information Needed]

Glossary [optional]

[More Information Needed]

More Information [optional]

[More Information Needed]

Model Card Authors [optional]

[More Information Needed]

Model Card Contact

[More Information Needed]

Downloads last month
148
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for hunter-lab/sentence-level-ignorance-classifier

Finetuned
(52)
this model

Paper for hunter-lab/sentence-level-ignorance-classifier