代码内容分析-笔记
(嗯?刚开始还有个0点几分,然后改了一下直接变负分了嘛?但是还是该写写该改改)
经过我的观察和分析,发现其代码内容包括以下三个方面
1.数据处理与特征提取
2.RNN模型的定义与训练
3.模型的评估与预测
下面尝试进行这三个方面的分析:
一、数据处理与特征提取
主要代码:
class Smiles_tokenizer():
def __init__(self, pad_token, regex, vocab_file, max_length):
self.pad_token = pad_token
self.regex = regex
self.vocab_file = vocab_file
self.max_length = max_length
with open(self.vocab_file, "r") as f:
lines = f.readlines()
lines = [line.strip("\n") for line in lines]
vocab_dic = {}
for index, token in enumerate(lines):
vocab_dic[token] = index
self.vocab_dic = vocab_dic
def _regex_match(self, smiles):
regex_string = r"(" + self.regex + r"|"
...
其中主要包括两点:
1.Tokenization
使用正则表达式将SMILES字符串分割成单独的字符或子字符串,并将这些字符映射到词汇表中的索引。