--- license: apache-2.0 tags: - token-classification - ner - affiliation-parsing - organization-extraction - geoparsing pipeline_tag: token-classification base_model: xlm-roberta-base widget: - text: "MDPI, Grosspeteranlage 5, 4052 Basel, Switzerland." - text: "Department of Chemistry, MIT, Cambridge, MA, USA." --- # NER for affiliation parsing `org-geo-ner` is a token-classification (NER) model that extracts organizations and geographic context from affiliation strings. It was fine-tuned in-house by [MDPI AG](https://www.mdpi.com/) to power [mdpi-ror-search](https://github.com/MDPI-AG/ror-search), an open-source tool that matches affiliation strings against the [Research Organization Registry (ROR)](https://ror.org). ## Model description - **Architecture:** XLM-RoBERTa base (12 layers, 768 hidden size), fine-tuned for token classification - **Task:** Named Entity Recognition (NER) over affiliation / address strings - **Labeling scheme:** BIO (`B-`/`I-`/`O`) - **Entity types:** - `ORG`: parent organization (e.g. university, company, ministry) - `SUB`: sub-organization / department, faculty, institute, lab - `CITY`: city - `COUNTRY`: country - **Language:** primarily English, but trained on multilingual affiliation strings drawn from real scholarly manuscripts, so the model generalizes to non-English organization and place names to some extent - **License:** Apache 2.0 ## Intended use This model is designed to extract structured entities from free-text author affiliation strings as found in scholarly manuscripts and metadata (e.g. `"Dept. of Physics, ETH, Zürich, Switzerland"`). It is the first stage in a pipeline whose downstream goal is to resolve affiliations to [ROR](https://ror.org) IDs. For further details about the pipeline, visit [mdpi-ror-search](https://github.com/MDPI-AG/ror-search). It is **not** intended for general-purpose NER on arbitrary text (news, social media, etc.) as it is specialized for the affiliation/address domain. ## How to use The model works out of the box with the `transformers` `token-classification` pipeline using `aggregation_strategy="simple"`, which merges wordpiece tokens into full entity spans. ```python from transformers import pipeline ner_pipeline = pipeline( "token-classification", model="mdpi-ai/org-geo-ner", aggregation_strategy="simple", ) text = "MDPI, Grosspeteranlage 5, 4052 Basel, Switzerland." output = ner_pipeline(text) for entity in output: print(f"{entity['entity_group']:<10} {entity['word']:<40} score={entity['score']:.3f}") ``` Output: ``` ORG MDPI score=0.855 CITY Basel score=0.994 COUNTRY Swtizerland score=1.000 ``` Batch inference works the same way by passing a list of strings: ```python texts = [ "MDPI, Grosspeteranlage 5, 4052 Basel, Switzerland.", "Department of Chemistry, MIT, Cambridge, MA, USA.", ] outputs = ner_pipeline(texts) ``` For production use, filter low-confidence predictions with a score threshold (e.g. `score >= 0.65`) before downstream processing. ## Training data The model was fine-tuned on an **internal, proprietary dataset** of affiliation strings annotated for `ORG`, `SUB`, `CITY`, and `COUNTRY` spans. This dataset is not publicly released. ## Evaluation Evaluated on a held-out internal test split, per-entity metrics (strict span matching): | Entity | Precision | Recall | F1 | |----------|-----------|--------|-------| | ORG | 94.7 | 95.4 | 95.4 | | SUB | 94.2 | 95.9 | 95.0 | | CITY | 97.2 | 97.4 | 97.3 | | COUNTRY | 98.2 | 99.1 | 98.7 | | **Overall** | **95.9** | **96.8** | **96.4** | ## Limitations and bias - Trained on affiliation strings sourced from scholarly manuscripts; performance may degrade on out-of-domain text. - The training data, while multilingual in the organization and place names it contains, is predominantly structured around English-language affiliation conventions; performance on affiliations written entirely in non-Latin scripts is not guaranteed. - The training dataset is internal and not publicly available, so independent reproduction of the reported metrics is not possible. - As with any NER model, ambiguous or heavily abbreviated affiliation strings (e.g. bare acronyms) may be mislabeled or missed; downstream consumers should apply a confidence threshold and treat predictions as candidates rather than ground truth. - With `aggregation_strategy="simple"`, hyphenated compound organization names (e.g. `CREAF-CSIC-UAB`) can be split into multiple adjacent `ORG` spans rather than merged into one, since the underlying XLM-RoBERTa tokenizer treats `-` as a token boundary. Downstream consumers may want to re-merge adjacent same-label spans separated only by punctuation. ## Additional information - **Repository (pipeline code, docs):** [MDPI-ROR-Search](https://github.com/MDPI-AG/ror-search). - **Contact:** For questions, issues, or collaboration inquiries, please open an issue on the [GitHub repository](https://github.com/MDPI-AG/ror-search). - **Funding:** This project was fully funded and supported by [MDPI AG](https://www.mdpi.com/). - **License:** [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) - **Citation:** No associated publication is available at this time. If you use this model, please cite it as: ```bibtex @misc{orggeoner, title = {org-geo-ner: A Named Entity Recognition Model for Affiliation Parsing}, author = {MDPI AG}, year = {2026}, howpublished = {\url{https://huggingface.co/mdpi-ai/org-geo-ner}} } ``` ## Disclaimer This model is provided as-is, without warranty of any kind. Predictions should be reviewed before being used in contexts requiring high accuracy, such as automated compliance or reporting workflows.