王彬彬 李强 李若宇
摘要:针对传统单词记忆软件因缺乏语境与单词关联造成的学习效率低下问题,文章采用Pytorch深度学习框架,基于神经网络构建词嵌入模型进行单词联想记忆系统设计。在待学习的英语语料上训练模型并生成词嵌入向量,计算英文单词之间的相似度,通过相似度进行单词关联分析。使用SpringBoot构建后端系统,使用VUE技术构建前端页面,设计并实现单词联想记忆系统。系统依据学习进度,将关联单词及其相应语境图片进行可视化展示,达到单词联想记忆的效果,从而提升单词的记忆效率。
关键词:词嵌入模型;神经网络;联想记忆;单词学习;SpringBoot;VUE
中图分类号:TP391.41 文献标志码:A
0 引言
随着互联网的发展,产生了诸多单词记忆类软件[1-3],如默默背单词,百词斩、扇贝单词等。这些软件的产生使学生记忆单词的工具和方式更为灵活,并且可以充分利用碎片化时间来进行单词记忆。但这些软件提供的单词背诵方式,仍然是按字母表顺序背诵、随机背诵或者基于单词在语料中出现的频次进行背诵。这些背诵方式虽然相对于传统的基于书本的背诵方式更为灵活,但仍然缺乏语境的支持,导致记忆效率低下。
联想记忆是一种高效的记忆方法,可以提升记忆深度和时长[4]。需要一种方法能针对语料和学习语境,构建单词之间的关联关系,并根据关联关系给学生提供一套单词联想记忆系统。
基于神经网络的词嵌入模型成为近年来自然语言研究的热点[5-6] (ChatGPT、BERT等大模型中均使用的词嵌入技术),与传统的One-Hot单词编码不同,词嵌入技术将词语转化高维特征向量,并可以依据特征向量计算单词的相似度,以此解决诸如文本推理、情感分析、對话支持等问题。
本文借鉴词嵌入技术的思想,设计了一款基于神经网络词嵌入模型的单词联想记忆系统。该系统可以基于学习语料(比如四六级考试资料),使用基于神经网络的词嵌入模型构建词嵌入向量,并基于词嵌入向量对待学习的单词进行关联分析。同时,系统还运用SpringBoot、VUE等技术将分析的结果在WEB界面上进行可视化。学生在学习某一单词时,会展示相关的单词以及对应的语境图片,从而达到通过联想记忆,加深单词记忆的效果,提升单词背诵的效率。
1 词嵌入向量构建
1.1 词嵌入技术
词语是自然语言的基本单元,在计算机处理文本信息时,词语的表示至关重要。传统的One-Hot编码虽然可以表示文本中的词语,但无法表示出词语之间的关系。针对这一问题,谷歌在2013年提出了Word2Vec框架。该框架基于神经网络技术,运用skip-grams思想,构建了词嵌入模型,并基于谷歌自身语料库,训练生成了300维的词向量。之后,词嵌入技术受到学者们的深入研究,成为自然语言处理问题中词语的通用表示方法。
1.2 语料库生成
单词联想记忆系统的目的是提升学生在特定学习目标上的单词记忆效率,因此在生成词嵌入向量前,需要首先针对学习目标,采集对应学习场景的语料。比如,针对四六级单词背诵,应先采集历年的四六级真题。以四六级真题数据,作为语料,来训练词嵌入向量,更加有助于学生四六级单词背诵。
采集完语料后,还需对语料数据进行预处理,使之满足神经网络的输入结构。语料预处理步骤如图1所示。
在数据预处理时,首先将采集到的语料数据归并到一个文件中,去除文件中的无用符号,比如逗号、句号、数字等。之后去除英文中的停止词,比如a、the、of等。基于剩下的语料信息构建词汇表,依据N-gram思想,构建三单词元组(即将连续出现的三个单词当做一个元组,用前两个单词预测后一个单词),最后依据神经网络的输入格式要求,构建输入特征和输出标签。
经过数据预处理后,构建出了可用于训练的语料库。之后将该语料库数据输入到基于神经网络的词嵌入模型中,便可以训练得出基于特定学习场景的词嵌入向量。
1.3 神经网络词嵌入模型
高维稠密的词嵌入向量通常是通过神经网络训练生成的。为了获得基于特定学习场景的词嵌入向量。本文使用Pytorch框架,基于神经网络技术,构建了词嵌入向量模型。模型的结构如图2所示。
系统使用N-gram思想,将连续出现的三个单词作为一个样本,用前两个单词来预测第三个单词。因此,输入时需要输入两个单词,嵌入层将这两个单词转化成对应的词嵌入向量,然后通过输出层输出成转化成输出向量(输出向量维度与词表表长度相同),最后通过softmax函数,输出预测单词是词汇表中各个单词的概率。
神经网络在训练时使用的损失函数为交叉熵损失函数,使用的优化函数为随机梯度下降方法,学习率为0.01。
2 单词联想记忆系统设计
2.1 总体设计
得出词嵌入向量后,便可以计算单词之间的关联关系,进而依据关联关系进行单词学习了。为了便于用户使用,本文基于SpringBoot和VUE技术,设计并实现了一款单词联想记忆系统。系统包括单词管理模块、关联度计算模块、用户管理模块。系统组织架构如图3所示。
2.2 单词管理模块
单词管理模块负责管理学习场景以及学习场景下的单词信息管理。单词信息包括单词的释义和单词的嵌入向量。注意其中同一个单词在不同学习场景下的词向量可能存在差异。比如在中考英语、高考英语、考研英语三个场景下,因为语料不同,同一个单词关联的单词可能会发生变化,从而造成词嵌入向量存在差异。
2.3 关联度计算模块
关联度计算模块用于计算单词之间的相关性,找到与当前记忆单词相关性最高的TOP-N单词。同时为了防止对用户已学单词重复推荐,系统会对已学单词的相关性进行降权处理,从而达到优先推荐未学关联单词的目的。
2.4 用戶管理模块
用户管理模块用于用户的登录、注册及管理操作,并记录用户在各个场景下已学的单词,以及单词的学习时间。
3 结语
单词的学习是英语学习的基础,然而缺乏英文语境情况下,学生学习单词的方法主要是通过重复背诵来进行。这样的背诵过程单调又乏味,容易使学生产生厌学情绪,导致单词背诵效率低下。针对这一问题,本文设计了一款单词联想记忆系统。该系统受到自然语言处理中广泛使用的词嵌入向量启发,在待学习的语料上训练词嵌入模型,运用词向量衡量单词的相似性,并依据单词相似性找出单词之间的关联关系。系统模型部分运用Pytorch深度学习框架构建,系统后台逻辑通过Springboot进行实现,系统前台交互和可视化采用VUE技术。通过本系统,用户可以依据单词的相关性进行单词背诵,并提供语境图片展示,从而达到联想记忆的效果,进而提升单词背诵的效率。
参考文献
[1]黄博.英语学习背词类软件的调查分析[J].计算机时代,2021(12):128-130.
[2]李文慧,王俊丽,冯小玲.单词记忆软件中自主学习策略应用的探究[J].海外英语,2022(7):86-87,104.
[3]陈礼腾.英语背单词工具对比[J].计算机与网络,2021(23):28-29.
[4]李毓秋,张二虎.“形象化联想记忆训练”的初步实验研究[J].山西大学师范学院学报,1999(1):67-68.
[5]顾迎捷,桂小林,李德福,等.基于神经网络的机器阅读理解综述[J].软件学报,2020(7):2095-2126.
[6]赵亚欧,张家重,李贻斌,等.融合基于语言模型的词嵌入和多尺度卷积神经网络的情感分析[J].计算机应用,2020(3):651-657.
(编辑 李春燕)
Design of word association memory system based on neural network word embedding model
Wang Binbin, Li Qiang*, Li Ruoyu
(School of Computer Science, Huainan Normal University, Huainan 232038, China)
Abstract: To address the inefficiency of traditional word learning software due to the lack of context and word association, the Pytorch deep learning framework is used to build a word embedding model based on neural networks, train the model on the English corpus to be learned and generate a word embedding vector, use the word embedding vector to calculate the similarity between English words, and perform word association analysis through the similarity. The back-end system is built using SpringBoot and the front-end page is built using VUE technology to design and implement the word association memory system. The system visualizes the associated words and their corresponding contextual pictures according to the learning progress, so as to achieve the effect of word association memory and thus improve the efficiency of word memory.
Key words: word embedding model; neural network; association memory; word learning; SpringBoot; VUE