PeytonT commited on
Commit
65ee0a7
·
verified ·
1 Parent(s): 95da37d

Update full Metadata Category Classifier v2 model card

Browse files
Files changed (1) hide show
  1. README.md +100 -17
README.md CHANGED
@@ -3,40 +3,123 @@ library_name: transformers
3
  base_model: allenai/scibert_scivocab_uncased
4
  tags:
5
  - research-library
6
- - v2
 
7
  - m2
 
 
 
8
  ---
9
 
10
- # Metadata Category Classifier v2
11
 
12
- Research Library model `M2` uploaded from `/data/repository_library`.
13
 
14
- ## Version
15
 
16
- `v2`
 
 
 
 
 
 
17
 
18
- ## Experiment
19
 
20
- - Model ID: `M2`
21
- - Experiment: `m2_metadata_category_classifier_draft`
22
- - Base model: `allenai/scibert_scivocab_uncased`
23
- - Training objective: `cross_entropy`
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
 
25
  ## Evaluation
26
 
 
 
 
 
27
  - `eval_loss`: `0.003253802889958024`
28
  - `eval_accuracy`: `1.0`
29
  - `eval_macro_f1`: `1.0`
30
  - `eval_balanced_accuracy`: `1.0`
31
  - `eval_label_count`: `31`
32
 
33
- ## Notes
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
 
35
- Hardened metadata classifier v2 with known-label eval filtering and a denser 32-label target. Metrics are high and should receive a leakage audit before use as a final benchmark.
 
 
 
 
36
 
37
- ## Included Files
38
 
39
- - Trained model/tokenizer artifacts
40
- - `experiment_config.json`
41
- - `trainer_state.json` when available
42
- - `research_library_v2_metadata.json`
 
3
  base_model: allenai/scibert_scivocab_uncased
4
  tags:
5
  - research-library
6
+ - repository-library
7
+ - metadata-category-classifier
8
  - m2
9
+ - t1_metadata
10
+ - text-classification
11
+ - v2
12
  ---
13
 
14
+ # Metadata Category Classifier
15
 
16
+ Classifies paper metadata from title and abstract text into arXiv-style category labels.
17
 
18
+ ## Model Details
19
 
20
+ - Artifact type: full fine-tuned Transformers model
21
+ - Base model: `allenai/scibert_scivocab_uncased`
22
+ - Backbone type: encoder
23
+ - Model ID: `M2`
24
+ - Tier: `T1_metadata`
25
+ - Role in stack: metadata and global science-graph component
26
+ - Version: `v2`
27
 
28
+ This model is part of the Repository Library stack, a research system for indexing, retrieving, aligning, and reasoning over scientific papers, structured paper content, repositories, and cross-domain links between them.
29
 
30
+ ## Model Sources
31
+
32
+ - Hugging Face repo: https://huggingface.co/PeytonT/metadata-category-classifier
33
+ - Hugging Face collection: https://huggingface.co/collections/PeytonT/research-library-6a49c589ef4d763f7539b50d
34
+ - GitHub repository: https://github.com/peytontolbert/research_library
35
+ - Experiment config: https://github.com/peytontolbert/research_library/blob/main/models/experiments/m2_metadata_category_classifier.json
36
+ - Models directory: https://github.com/peytontolbert/research_library/tree/main/models
37
+
38
+ ## Intended Use
39
+
40
+ - Primary use: Classifies paper title and abstract metadata into category labels for metadata indexing and filtering.
41
+ - Downstream use: retrieval, ranking, routing, clustering, paper understanding, and global science-graph construction inside the broader Repository Library system.
42
+ - Out of scope: production safety claims, benchmark claims beyond the tracked experiment config, or deployment without task-specific validation.
43
+
44
+ ## Training Data
45
+
46
+ The training inputs for this package were assembled from the following Repository Library data sources:
47
+
48
+ - Source `arxiv_metadata`: arXiv metadata records containing titles, abstracts, authors, categories, and update metadata.
49
+
50
+ The v2 hardening pass restricts the classifier target space to a denser category set:
51
+
52
+ - `max_labels`: 32
53
+ - `min_per_label`: 16
54
+ - `max_per_label`: 128
55
+
56
+ ## Training Procedure
57
+
58
+ - Sources: `arxiv_metadata`
59
+ - Input fields: `title`, `abstract`
60
+ - Target fields: `categories`
61
+ - Filters: years `[2000, 2025]`
62
+ - Train/val/test split: `[0.9, 0.1, 0.0]`
63
+ - Max samples: 4000
64
+ - Batch size: 8
65
+ - Precision: `bf16`
66
+ - Objective: `cross_entropy`
67
+ - Learning rate: `5e-05`
68
+ - Max source tokens: 512
69
+ - Max target tokens: 128
70
+ - Fine-tune strategy: `full_finetune`
71
+ - Number of labels: 32
72
+ - Max steps: 1000
73
+
74
+ ## Compute
75
+
76
+ - Hardware: 2x RTX_3090 (24 GB)
77
+ - Distributed strategy: `ddp`
78
+ - Estimated GPU hours in config: 0
79
 
80
  ## Evaluation
81
 
82
+ Declared metrics: `accuracy`, `macro_f1`
83
+
84
+ Tracked v2 eval metrics on the current held-out split:
85
+
86
  - `eval_loss`: `0.003253802889958024`
87
  - `eval_accuracy`: `1.0`
88
  - `eval_macro_f1`: `1.0`
89
  - `eval_balanced_accuracy`: `1.0`
90
  - `eval_label_count`: `31`
91
 
92
+ Status: this card reflects the current tracked experiment configuration and packaged weights in the Repository Library model stack. The v2 scores are very high and should receive a leakage audit before being treated as a final benchmark.
93
+
94
+ ## Usage
95
+
96
+ ```python
97
+ from transformers import AutoModelForSequenceClassification, AutoTokenizer
98
+
99
+ repo_id = "PeytonT/metadata-category-classifier"
100
+
101
+ tokenizer = AutoTokenizer.from_pretrained(repo_id)
102
+ model = AutoModelForSequenceClassification.from_pretrained(repo_id)
103
+
104
+ text = "TITLE: Example paper title
105
+ ABSTRACT: This paper studies representation learning for scientific documents."
106
+ inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=512)
107
+ outputs = model(**inputs)
108
+ predicted_id = outputs.logits.argmax(dim=-1).item()
109
+ label = model.config.id2label.get(predicted_id, str(predicted_id))
110
+ print(label)
111
+ ```
112
+
113
+ ## Limitations
114
 
115
+ - These cards are generated from tracked experiment metadata and packaged artifacts, not from a separate benchmark report or external audit.
116
+ - Several training sources are pipeline outputs from the Repository Library codebase rather than standalone public datasets.
117
+ - The v2 classifier uses a hardened 32-label target space rather than the full arXiv category universe.
118
+ - The current v2 eval result is perfect on the tracked split, which is useful as a pipeline check but should be audited for label leakage, split leakage, and class-distribution artifacts.
119
+ - These models are components of a larger research system and should be validated in their target workflow before deployment.
120
 
121
+ ## Project Context
122
 
123
+ - GitHub repository: https://github.com/peytontolbert/research_library
124
+ - Model collection: https://huggingface.co/collections/PeytonT/research-library-6a49c589ef4d763f7539b50d
125
+ - Publisher: PeytonT