|
Download data/Data_availability/README.md from Mulah/ProtTale: direct link, hf CLI and curl.
- Browser
- Download file 5.47 kB
-
https://huggingface.co/Mulah/ProtTale/resolve/main/data/Data_availability/README.md
- Command line
-
hf download hf://Mulah/ProtTale/data/Data_availability/README.md
-
curl -L -o README.md https://huggingface.co/Mulah/ProtTale/resolve/main/data/Data_availability/README.md
5.47 kB
| # Data availability — ProtTale | |
| Training data, dataset splits and the clusterings that define them. Together | |
| with the code, these files reproduce ProtTale from scratch: Stage 1 alignment, | |
| Stage 2 generation, the reliability head, and the held-out benchmark. | |
| Figure and table source data are in the sibling `Supplementary_Data` folder. | |
| ``` | |
| Data_availability/ | |
| stage1_pairs/ Stage 1, functionally similar protein pairs | |
| stage2_swissprot/ Stage 2, proteins paired with curated function text | |
| clustering/ the clustering that defines every split | |
| ``` | |
| All `.json` files are **JSON Lines**: one JSON record per line, not a single | |
| JSON array. Read them line by line. | |
| --- | |
| ## stage1_pairs/ — pairwise functional alignment | |
| Protein pairs labelled by MIPS clustering, used to train the Q-Former and shift | |
| the sequence pathway into the text-derived functional space. | |
| | File | Records | | |
| |---|---| | |
| | `train_set.json` | 119,546 | | |
| | `valid_set.json` | 388 | | |
| | `test_set.json` | 534 | | |
| Each record is a 5-element list: | |
| | Position | Content | | |
| |---|---| | |
| | 0 | Amino acid sequence of protein A | | |
| | 1 | Amino acid sequence of protein B | | |
| | 2 | Curated Swiss-Prot `FUNCTION` description of protein A | | |
| | 3 | Curated Swiss-Prot `FUNCTION` description of protein B | | |
| | 4 | MIPS label as a string, `"1"` if both proteins fall in the same MIPS cluster (functionally similar), `"0"` otherwise | | |
| Positives and negatives are balanced by construction in every split: 267 / 267 | |
| in the test set, 194 / 194 in the validation set, and equal counts in training. | |
| Pairs were drawn independently within each split, so no pair crosses a split | |
| boundary. The pairing is derived without curation; the two descriptions | |
| attached to each pair are curated Swiss-Prot text. | |
| The 534 test pairs are also the pairs used to validate the LLM-as-judge. That | |
| analysis, with UniProt identifiers and judge labels attached, is | |
| `Supplementary_Data_3_stage1_test_pairs.csv`. | |
| --- | |
| ## stage2_swissprot/ — sequence to function text | |
| Swiss-Prot proteins paired with their curated `FUNCTION` descriptions. The source | |
| was the full Swiss-Prot database, 574,627 entries, of which 473,996 carry a | |
| curated `FUNCTION` description. | |
| | File | Records | Role | | |
| |---|---|---| | |
| | `train_set.json` | 207,197 | Trains the generator | | |
| | `valid_set.json` | 1,000 | Tunes the generator; its judge labels train the reliability head | | |
| | `test_set.json` | 1,000 | Tunes the reliability head | | |
| | `unseen_set.json` | 1,031 | Held-out benchmark, all final reporting | | |
| Each record is a 6-element list: | |
| | Position | Content | | |
| |---|---| | |
| | 0 | Amino acid sequence | | |
| | 1 | Curated Swiss-Prot `FUNCTION` description, the generation target | | |
| | 2 | LLM-as-judge label for ProtTale's own prediction, scored `1` = Yes, `0` = No, `0.5` = Maybe, `-1` = Vague. This is the reliability head's training target. Set to `-1` throughout `unseen_set.json`, where it is a placeholder rather than a label | | |
| | 3 | Experimentally validated Molecular Function GO terms | | |
| | 4 | Enzyme Commission numbers | | |
| | 5 | Placeholder, not used | | |
| In `valid_set.json` the judge labels split 328 Yes, 510 No, 90 Maybe and 72 | |
| Vague, which is the class balance the reliability head is fitted against. | |
| Validation and test proteins are the CD-HIT representatives of their 40% | |
| identity clusters, one per cluster. | |
| Every protein in `unseen_set.json` is a post-2022 Swiss-Prot deposition and | |
| comes from a different 40% identity cluster, one protein per cluster, none of | |
| whose members appears in training, validation or testing. Because the protein | |
| was chosen by deposition date and annotation rather than by length, it is not | |
| always the cluster's CD-HIT representative (683 of the 1,031 are). Each carries | |
| at least one experimentally validated MF GO term and at least one EC number, and | |
| does not appear in the released training data of any baseline method compared | |
| in the paper. The EC requirement means the benchmark consists entirely of | |
| enzymes. | |
| --- | |
| ## clustering/ — how the splits were defined | |
| | File | Content | | |
| |---|---| | |
| | `swissprot_cdhit_40.clstr` | CD-HIT output at 40% sequence identity over Swiss-Prot, 93,610 clusters covering 573,398 sequences | | |
| **CD-HIT clusters define the splits.** Train, validation, test and unseen are | |
| partitioned at the level of these clusters, so no protein in one split shares a | |
| 40% identity cluster with a protein in another, and each unseen protein comes | |
| from a cluster none of whose members the model saw. | |
| The split files themselves carry sequences rather than cluster assignments, so | |
| this file is what makes that separation checkable: map the sequences of any two | |
| splits back to their clusters and confirm the clusters do not intersect. | |
| **MIPS clusters define the Stage 1 labels.** They were built by Louvain | |
| community detection over a 5.5 billion edge similarity network spanning 5.2 | |
| million UniRef90 representatives, yielding about 1.2 million communities. A | |
| Swiss-Prot protein inherits the MIPS cluster of its UniRef90 representative; | |
| proteins longer than 1,200 residues, and those whose UniRef90 cluster has fewer | |
| than 10 members, have no MIPS cluster and contribute no Stage 1 pairs. The | |
| resulting same-cluster / different-cluster label is recorded per pair in | |
| `stage1_pairs/`, position 4 of each record. | |
| --- | |
| ## Reproducing the paper's counts | |
| The record counts above are the dataset sizes reported in the main text: | |
| 119,546 / 388 / 534 Stage 1 pairs and 207,197 / 1,000 / 1,000 / 1,031 Stage 2 | |
| proteins. | |