Download scripts/embedding.py from OneScience-Group/NABP-LSTM-Att: direct link, hf CLI and curl.
- Browser
- Download file 3.31 kB
-
https://huggingface.co/OneScience-Group/NABP-LSTM-Att/resolve/main/scripts/embedding.py
- Command line
-
hf download hf://OneScience-Group/NABP-LSTM-Att/scripts/embedding.py
-
curl -L -o embedding.py https://huggingface.co/OneScience-Group/NABP-LSTM-Att/resolve/main/scripts/embedding.py
3.31 kB
| import pickle | |
| import os | |
| import random | |
| from _bootstrap import use_project_root | |
| from model import tokenization | |
| from model.features import CDR_Ag_Processor, convert_examples_to_features | |
| use_project_root() | |
| def get_Feature(tsv_file_path, kmer, max_seq_length): | |
| vocab_file = "conf/vocab/vocab_" + str(kmer) + "kmer.txt" | |
| processor = CDR_Ag_Processor() | |
| label_list = processor.get_labels() | |
| cdr_number_list = ["1", "2", "3"] | |
| tokenizer = tokenization.FullTokenizer(vocab_file=vocab_file, do_lower_case=True) | |
| examples = processor.get_examples(tsv_file_path) | |
| features = convert_examples_to_features(examples, label_list, cdr_number_list, max_seq_length, tokenizer) | |
| return features | |
| # the max len of the CDRs is 24, so when k = 1 the max tokens is 24 | |
| # the max len of the AGs is 2373 , so when k = 3 the max tokens is (2373 - (3-1)) = 2371 | |
| cdr_kmer = 3 | |
| ag_kmer = 3 | |
| if not os.path.exists('./conf/data/features'): | |
| os.makedirs('./conf/data/features') | |
| tsv_path = "conf/data/asTSV/cdr_kmer" + str(cdr_kmer) + "_ag_kmer" + str(ag_kmer) + "/" | |
| ag_max_seq_length = 2371 | |
| cdr_max_seq_length = 24 | |
| cdr_tsv_file_name = "CDR_te.tsv" | |
| ag_tsv_file_name = "Ag_te.tsv" | |
| cdr_tsv_file_path = tsv_path + cdr_tsv_file_name | |
| ag_tsv_file_path = tsv_path + ag_tsv_file_name | |
| cdr_features = get_Feature(cdr_tsv_file_path, cdr_kmer, cdr_max_seq_length) | |
| ag_features = get_Feature(ag_tsv_file_path, ag_kmer, ag_max_seq_length) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/cdr_features_te.pickle', 'wb') as binary_writer: | |
| pickle.dump(cdr_features, binary_writer) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/ag_features_te.pickle', 'wb') as binary_writer: | |
| pickle.dump(ag_features, binary_writer) | |
| ################################################## | |
| cdr_tsv_file_name = "CDR_tr.tsv" | |
| ag_tsv_file_name = "Ag_tr.tsv" | |
| cdr_tsv_file_path = tsv_path + cdr_tsv_file_name | |
| ag_tsv_file_path = tsv_path + ag_tsv_file_name | |
| cdr_features = get_Feature(cdr_tsv_file_path, cdr_kmer, cdr_max_seq_length) | |
| ag_features = get_Feature(ag_tsv_file_path, ag_kmer, ag_max_seq_length) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/cdr_features_tr.pickle', 'wb') as binary_writer: | |
| pickle.dump(cdr_features, binary_writer) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/ag_features_tr.pickle', 'wb') as binary_writer: | |
| pickle.dump(ag_features, binary_writer) | |
| ################################################## | |
| cdr_tsv_file_name = "CDR_val.tsv" | |
| ag_tsv_file_name = "Ag_val.tsv" | |
| cdr_tsv_file_path = tsv_path + cdr_tsv_file_name | |
| ag_tsv_file_path = tsv_path + ag_tsv_file_name | |
| cdr_features = get_Feature(cdr_tsv_file_path, cdr_kmer, cdr_max_seq_length) | |
| ag_features = get_Feature(ag_tsv_file_path, ag_kmer, ag_max_seq_length) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/cdr_features_val.pickle', 'wb') as binary_writer: | |
| pickle.dump(cdr_features, binary_writer) | |
| with open('conf/data/features/cdr_kmer' + str(cdr_kmer) + '_ag_kmer' + str(ag_kmer) + '/ag_features_val.pickle', 'wb') as binary_writer: | |
| pickle.dump(ag_features, binary_writer) | |
| print("done") | |