Datawhale AI夏令营Task2的第二部分深入讲解了如何从基础代码开始入门深度学习,特别是关于数据预处理和词汇表构建的步骤。首先,文章介绍了所需的库,如英文分词器spacy库(使用en_core_web_trf模型)和中文分词库jieba。定义了一个名为read_data的函数,它接收文件路径作为输入,通过打开文件并去除首尾的空格,读取内容。该函数还包含一个预处理步骤,对英文和中文数据进行分词,确保分词长度不超过MAX_LENGTH,并将处理后的数据以元组形式存储,每个元组包含英文和对应的中文字符串列表。接着,构建词汇表是关键环节。通过build_vocab函数处理返回的data,对英文和中文部分分别进行迭代,定义特殊标记。在处理过程中,未在词汇表中找到的词会被赋予默认索引。举例来说,如果数据为[(["cs", "BISTU", "EE"], ["反恐精英", "北京信息科技大学", "电子工程"])],对应的英文索引会是[2, 4, 5, 6, 3],其中0-3是特殊标记。随后的代码部分涉及输入数据和两个词汇表的处理。函数通过len获取总词汇量,并使用getitem方法,允许通过索引访问数据。值得注意的是,数据的索引从4开始,因为前四个值被预留给了特殊标记。