---
language: en
license: cc-by-sa-4.0
tags:
- span-marker
- token-classification
- ner
- named-entity-recognition
- generated_from_span_marker_trainer
- climate-change
- earth-science
widget:
- text: While a significant positive impact of solid-state cultivation using white
rot fungi on enzymatic digestibility was reported in some studies [68, 69], a
negative effect of fungal pretreatment on enzymatic hydrolysis was noted by investigators
like Shi et al . (2009) [33], who reported a glucose yield of 55 . 6 mg g − 1
of cotton stalks pretreated with P . chrysosporium, which was approximately 17%
lower than the yield of untreated cotton stalks after enzymatic hydrolysis in
spite of significant lignin degradation.
- text: We quantify changes in the properties and amount of bottom water entering
the basin by combining repeat hydrographic observations, direct velocity measurements
and flow structure derived from a 0 . 1 ° global ocean sea-ice model that realistically
simulates AABW formation sites and export pathways.
- text: The impact of these differences on cloud forcing can be signi or more . cant
and as high as 30 W m In recent years, observations from satellite data have been
revised considerably after significant development efforts, especially after utilizing
new high-quality reference measurements from active sensors in space, and some
datasets have also improved polar cloud detection.
- text: If the response is significant, how does the solar forcing impact the EASM
rainfall variability? In this study, we will address these questions based on
the simulation results derived from one AD 850 control experiment (CTRL) and four
solar-only forcing experiments [spectral solar irradiance (SSI) experiments],
which were conducted by the Community Earth System (CESM-LME) Model – Last Millennium
Ensemble modeling project (Otto-Bliesner et al . 2016).
- text: Measurements from single moorings at each gateway reveal that the speed of
bottom water flow into the Australian Antarctic Basin varies with location, season
and density (Fig . 3a, c, e).
pipeline_tag: token-classification
library_name: span-marker
metrics:
- precision
- recall
- f1
datasets:
- P0L3/CliReNER_v_1_1_28_SILVER
- P0L3/CliReNER_v_1_1_28_GOLD
base_model: google-bert/bert-base-uncased
model-index:
- name: SpanMarker with google-bert/bert-base-uncased
results:
- task:
type: token-classification
name: Named Entity Recognition
dataset:
name: CliReNER_silver
type: P0L3/CliReNER_v_1_1_28_SILVER
split: eval
metrics:
- type: f1
value: 0.6275911365260901
name: F1
- type: precision
value: 0.6253561253561254
name: Precision
- type: recall
value: 0.629842180774749
name: Recall
---
# SpanMarker-BERT-base-uncased for Climate Research NER
This model is a [SpanMarker](https://github.com/tomaarsen/SpanMarkerNER) model fine-tuned for fine-grained Named Entity Recognition (NER) in the climate change research domain, extracting 28 distinct entity types. It uses [google-bert/bert-base-uncased](https://huggingface.co/google-bert/bert-base-uncased) as the underlying encoder.
## 📌 Model Details
- **Model Type:** SpanMarker
- **Encoder:** [google-bert/bert-base-uncased](https://huggingface.co/google-bert/bert-base-uncased)
- **Maximum Sequence Length:** 512 tokens
- **Maximum Entity Length:** 14 words
- **Language:** English
- **License:** cc-by-sa-4.0
### Model Labels
| Label | Examples |
|:--------------------------|:--------------------------------------------------------------------------------------------|
| Asset | "raw material", "water resources", "mental health" |
| Body Part | "leaves", "deep tissue compartment", "plant leaves" |
| Body of Water | "rivers", "peripheral rivers", "Dhaleshwari river" |
| Chemical | "domoic acid", "cathode materials", "marine algal toxin" |
| Disease | "chronic epileptic syndrome", "acute neurologic signs", "seizures" |
| Ecosystem | "polluted environment", "Tropical montane cloud forest", "cloud forests" |
| Energy Source | "12-cell series battery-pack prototype", "fossil fuels", "battery cells" |
| Field of Study | "reference laboratory", "veterinary medicine", "study" |
| Geographical Feature | "heterogenous topography", "low point", "mountainous regions" |
| Intellectual Artefact | "Daily husbandry records", "Veterinary medical records", "data" |
| Location | "Westbrook", "beaches", "wild" |
| Mathematical Expression | "difference", "gradient", "Stepwise machine hour constraints" |
| Measuring Device | "MRI scan", "EEG", "station" |
| Meteorological Phenomenon | "rainfall", "climate change", "climatic variability" |
| Method | "dosing", "serum monitoring", "clinical efficacy" |
| Natural Disaster | "environmental pollution", "seasonal air pollution", "heavy metal contamination" |
| Natural Phenomenon | "biochemical changes", "changing ocean conditions", "algal blooms" |
| Organism | "species", "California sea lions", "Zalophus californianus" |
| Organization | "long-term care facility", "reference laboratory", "NOAA National Marine Fisheries Service" |
| Other | "normal eating", "reports", "marine mammal health" |
| Person | "clinicians", "Clinicians", "staff" |
| Physical Artefact | "paved east – west road", "electric vehicle", "EVs" |
| Physical Phenomenon | "normal food intake", "seasonal changes", "structural abnormalities" |
| Policy | "energy security", "pollution", "safety" |
| Quantity | "200 mAhg − 1", ">", "energy density" |
| Satellite | "satellites", "TRMM", "Tropical Rainfall Measuring Mission" |
| System | "global overturning circulation", "climate", "system structure" |
| Time Period | "several decades", "101 days", "periods of prolonged anorexia" |
---
## 🚀 Main Results (Selected Checkpoint)
This repository provides the **best-performing checkpoint** selected from 5 runs with different random seeds. While the internal training logs tracked performance on the validation split of **CliReNERsilver**, the final model selection and the metrics below are evaluated on the independent, expert-annotated **CliReNERgold** dataset.
| Metric | Score |
|------------|-------|
| Precision | XX.XX |
| Recall | XX.XX |
| F1 | XX.XX |
> This checkpoint corresponds to the **seed with the highest strict F1 on the gold evaluation set**.
---
## 📊 Results Across Seeds
We fine-tuned the model using 5 different random seeds to assess the stability and robustness of the architecture on the domain-specific text.
| Seed | Precision | Recall | Strict F1 |
|------|-----------|--------|-----------|
| 1 | XX.XX | XX.XX | XX.XX |
| 2 | XX.XX | XX.XX | XX.XX |
| 3 | XX.XX | XX.XX | XX.XX |
| 4 | XX.XX | XX.XX | XX.XX |
| 5 | XX.XX | XX.XX | XX.XX |
**Summary:**
- **F1:** mean = XX.XX, std = XX.XX
- **Precision:** mean = XX.XX, std = XX.XX
- **Recall:** mean = XX.XX, std = XX.XX
**Model Selection Strategy:**
The uploaded checkpoint is the **single best seed** (highest strict F1 on the gold dataset), ensuring strong real-world performance and high-fidelity alignment with domain-expert consensus.
---
## 📂 Dataset & Evaluation
- **Training Dataset:** [CliReNERsilver](https://huggingface.co/datasets/P0L3/CliReNER_v_1_1_28_SILVER)
- **Splits used:** Stratified 80:10:10 ratio (Train/Validation/Test). The 80% split was used for training.
- **Evaluation Dataset:** [CliReNERgold](https://huggingface.co/datasets/P0L3/CliReNER_v_1_1_28_GOLD)
- **Splits used:** Evaluated on the combined 192 sentences (expert-annotated via Weighted Expert Voting).
- **Preprocessing:**
- Texts were tokenized using the standard BERT WordPiece tokenizer.
- The dataset utilizes a flat NER schema (nested entities are excluded, and overlapping entities are resolved to the most relevant span).
- **Metric Details:**
- **F1 type:** Strict F1 (Entity-level exact match).
- Evaluation was performed ensuring entities match both the **exact boundary span and the exact semantic label** to be considered correct.
---
## ⚖️ Precision vs Recall Behavior
*(Note to author: Describe the model’s tendency here based on your results. Example: "The model slightly favors recall over precision" or "Balanced precision and recall")*
---
## ⚙️ Usage
### Direct Use for Inference
Because this model was trained using the SpanMarker framework, it requires the `span_marker` library for inference.
```bash
pip install span_marker
```
```python
from span_marker import SpanMarkerModel
# Download from the 🤗 Hub
model = SpanMarkerModel.from_pretrained("P0L3/CliReNER-bert-base-uncased")
# Run inference
text = "In the atmosphere, the frequency of extreme events is projected to rise sharply; for example, Chapman et al. (2023) show that in regions such as East Africa, without significant emission reductions, a historical 1-in-100-year rainfall event could become a 1-in-23-year occurrence by the end of the century. "
entities = model.predict(text)
for entity in entities:
print(f"Entity: {entity['span']} | Label: {entity['label']} | Score: {entity['score']:.4f}")
# Entity: atmosphere | Label: Location | Score: 0.3388
# Entity: frequency | Label: Quantity | Score: 0.7958
# Entity: extreme events | Label: Meteorological Phenomenon | Score: 0.5825
# Entity: Chapman et al. | Label: Person | Score: 0.9214
# Entity: 2023 | Label: Time Period | Score: 0.9920
# Entity: regions | Label: Location | Score: 0.9397
# Entity: emission reductions | Label: Physical Phenomenon | Score: 0.5641
# Entity: 1-in-100-year | Label: Time Period | Score: 0.8089
# Entity: rainfall event | Label: Meteorological Phenomenon | Score: 0.6794
# Entity: 1-in-23-year | Label: Time Period | Score: 0.6802
# Entity: end of the century | Label: Time Period | Score: 0.9589
```
### Downstream Use
You can easily continue fine-tuning this model on your own dataset.
Click to expand
```python
from span_marker import SpanMarkerModel, Trainer
from datasets import load_dataset
# Download from the 🤗 Hub
model = SpanMarkerModel.from_pretrained("your-huggingface-username/your-model-name")
# Specify a Dataset with "tokens" and "ner_tags" columns
dataset = load_dataset("your_custom_dataset")
# Initialize a Trainer using the pretrained model & dataset
trainer = Trainer(
model=model,
train_dataset=dataset["train"],
eval_dataset=dataset["validation"],
)
trainer.train()
trainer.save_model("span_marker_model_id-finetuned")
```
---
## 📉 Training Details
### Training Set Metrics
| Training set | Min | Median | Max |
|:----------------------|:----|:--------|:----|
| Sentence length | 3 | 31.4819 | 97 |
| Entities per sentence | 1 | 7.0100 | 22 |
### Training Hyperparameters
- **learning_rate:** 5e-05
- **train_batch_size:** 8
- **eval_batch_size:** 8
- **seed:** 42
- **gradient_accumulation_steps:** 2
- **total_train_batch_size:** 16
- **optimizer:** adamw_torch with betas=(0.9,0.999) and epsilon=1e-08
- **lr_scheduler_type:** linear
- **lr_scheduler_warmup_ratio:** 0.1
- **num_epochs:** 20
### Training Results (CliReNERsilver Validation Split)
| Epoch | Step | Validation Loss | Validation Precision | Validation Recall | Validation F1 | Validation Accuracy |
|:-----:|:----:|:---------------:|:--------------------:|:-----------------:|:-------------:|:-------------------:|
| 1.0 | 62 | 0.1452 | 0.0 | 0.0 | 0.0 | 0.6075 |
| 2.0 | 124 | 0.0814 | 0.2957 | 0.1277 | 0.1784 | 0.6472 |
| 3.0 | 186 | 0.0533 | 0.5517 | 0.3673 | 0.4410 | 0.7577 |
| 4.0 | 248 | 0.0454 | 0.6020 | 0.5165 | 0.5560 | 0.8104 |
| 5.0 | 310 | 0.0466 | 0.5820 | 0.5753 | 0.5786 | 0.8159 |
| 6.0 | 372 | 0.0449 | 0.6346 | 0.5581 | 0.5939 | 0.8228 |
| 7.0 | 434 | 0.0497 | 0.6259 | 0.5954 | 0.6103 | 0.8243 |
| 8.0 | 496 | 0.0483 | 0.6398 | 0.6040 | 0.6214 | 0.8349 |
| 9.0 | 558 | 0.0562 | 0.6254 | 0.6298 | 0.6276 | 0.8346 |
### Framework Versions
- **Python:** 3.10.19
- **SpanMarker:** 1.7.0
- **Transformers:** 4.50.0
- **PyTorch:** 2.9.1
- **Datasets:** 3.0.0
- **Tokenizers:** 0.21.4
---
## 📚 Citation
If you use this model or the CliReNER datasets in your research, please cite the project:
```latex
@misc{poleksic2026named,
author = {Poleksić, Andrija and Martinčić-Ipšić, Sanda},
title = {Named Entity Recognition for Climate Change Research},
year = {2026},
howpublished = {Research Square},
note = {Preprint}
}
```
Please also acknowledge the SpanMarker framework:
```latex
@software{Aarsen_SpanMarker,
author = {Aarsen, Tom},
license = {Apache-2.0},
title = {{SpanMarker for Named Entity Recognition}},
url = {https://github.com/tomaarsen/SpanMarkerNER}
}
```