![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
项目实训
问鼎的博客
博主很懒
展开
-
在torch编写过程中的几个技巧
初学pytorch,往往是有点难度,在几次的练习后,逐渐熟练起来,这里介绍几个使用编程的技巧,也使后人少走弯路。 1、数据集的划分 通常情况下,机器学习的过程必然少不了数据集的清洗和划分,在划分的过程是存在技巧的。 以1万条数据的数据集为例,我们选取8000条数据进行训练,2000条数据进行测试,那么在这8000条的数据中,我们每一个训练的epoch都会完整的使用到这8000条数据,在不同的epoch中,对这8000条数据进行shuffle操作,即打乱训练顺序,可以有更好的训练效果。 2、torch中的.原创 2021-06-11 09:20:10 · 175 阅读 · 0 评论 -
智能评卷系统的第三种实现方式具体实现
本文通过具体实现智能评卷系统的第三种实现方式,来展示网络的搭建和训练过程。 首先,构建一个完整的网络,它不仅包含了前面已有的网络编码部分,同时进行了网络的后半部分的解码输出。 参考到编码的向量其句向量维度的大小为768,因此在最后的MLP全连接网络中,采用了多层的网络,逐步进行降维,最后输出结果。 具体代码如下: import torch import torch.nn as nn import torch.nn.functional as F from utils import get_max_hid.原创 2021-06-11 09:06:10 · 166 阅读 · 0 评论 -
智能评卷系统的第三种实现方式
本文介绍最后一种的实现方式,该方式结合了BiLSTM双向的解码器进行解码操作,将解码后的向量进行了拼接,再输入几层全连接网络进行训练,最后通过softmax进行分类输出。 对考生答案进行正确评阅需要获取考生答案中每一句话的完整语义信息,即句子中各词汇的关联信息,仅仅获取句子中各个词汇的语义向量是远远不的,因此需要在词向量序列基础上对句子进行语义抽取。 本文使用 BiLSTM 对考生答案Xe和参考答案Ae中的每一句话进行编码,获取答案文本中每句话的语义向量。BiLSTM 由前向 LSTM 和后向 LST.原创 2021-06-11 08:52:23 · 177 阅读 · 0 评论 -
智能评卷系统的第二种实现方式具体实现
文本在上文的基础上,对智能评卷系统的第二种实现方式进行代码级别的实现,以展示训练和实现的具体过程。 首先,本次的实现改进了互注意力机制的实现方式,在原来的numpy的实现方式改为了torch的实现,利用torch的softmax函数进行归一化操作,该方式的归一化提高了数据的准确性。 class ShuoFaObj(object): def __init__(self): self.ref_vector = load_data('./ref.csv') def get_.原创 2021-06-11 08:42:30 · 113 阅读 · 0 评论 -
智能评卷系统的第二种实现方式
本文将介绍智能评阅系统的第二种实现方式,它相比于第一种,引入了知识点的概念,将考生答案在知识点级别上进行了评阅。 由于专业考试的严肃性和公平性,对评阅模型的可解释性有较高的要求,模型不仅要正确地给出考生答案的总得分,同时也需要给出打分的依据。在业主观题评阅场景中,一道题目的参考答案通常包含多个知识点,每个知识有相应的分值,专家根据考生答案对知识点的命中情况进行打分。为了给模打分结果以合理的解释,本模型模仿专家评阅过程,在知识点级别对考生答和参考答案进行匹配,以获取考生答案对各知识点的命中情况,最终结合知.原创 2021-06-11 08:36:45 · 115 阅读 · 0 评论 -
第一种实现的结果展示
经过了上文的互注意力机制,本文进行完整的第一种实现方法的展示 首先展示互注意力机制的实现。 def create_vector_k(index): saved_vector = load_data('./vec.csv') ref_vector = load_data('./ref.csv') vectorA_list = ref_vector[0] vectorX_list = saved_vector[index] A = np.array(vectorA_l.原创 2021-06-11 08:31:48 · 179 阅读 · 0 评论 -
互注意力机制的过程和实现二
本文继续进行互注意力机制的研究和展示 上文中介绍了互注意力机制的第一个部分,本文继续进行第二部分的介绍。 第二部分是考生答案和参考答案的互注意力。在普通注意力机制中,单向注意力矩阵a中的每一行被简单地相加或者求均值作为最终的注意力权重向量在主观题阅卷任务中,对于考生答案的第p句话xp,即使这句话的内容与参考案完全不相干,在对匹配系数矩阵M进行列归一化之后,xp在参考答案中的句话上的匹配程度之和仍为 1。本文引入考生答案和参考答案的互注意力机来解决这个问题。 首先对匹配系数矩阵M进行行归一化,对于给定的参.原创 2021-06-11 08:24:53 · 1059 阅读 · 0 评论 -
互注意力机制的过程和实现一
本文将介绍互注意力机制的具体实现过程和代码展示 在有参考答案的主观题评阅任务中,最终的评分并非仅根据考生答案文本自身的特征,而是需要考虑考生答案和参考答案的匹配程度。专家评阅过中,专家根据考生答案对参考答案中每个知识点的匹配情况进行打分,这就要模型具备捕获考生答案和参考答案中对应知识点的文本并进行匹配的能力。经网络中注意力机制的引入使得模型具有捕捉数据之间的关注重点的能力,文通过注意力机制来计算考生答案和参考答案知识点之间的匹配程度。不同相关工作中所使用的普通注意力机制,为了有效地区分出考生答案中与知.原创 2021-06-11 08:18:45 · 2625 阅读 · 1 评论 -
智能评卷系统的第一种实现方式
本文将介绍智能评卷系统的三种实现方式的第一种实现方式。 针对有参考答案的论证类专业主观题评阅任务,本文提出基于 BiLSTM 和互注意力机制的主观题评阅模型,自动给出考生答案得分,同时给出打分依据,即考生答案在各知识点上的命中情况,模型结构如图 3-1 所示。模型主要包括三个部分:第一部分是基于 BiLSTM 的答案文本语义特征抽取,采用 BiLSTM 和最大池化策略,分别基于词汇序列和句子序列建模答案句向量和段落向量;第二部分是基于互注意力机制的句子级别的匹配信息计算,通过互注意力机制,在句子层面计.原创 2021-06-11 08:12:09 · 362 阅读 · 0 评论 -
智能评卷系统的三种实现方式
本文将讲述和介绍智能评卷系统的三种具体实现方式,并在后续的文章种介绍实现的具体细节。 上图所示得到模型便是实现方式的完整展示,其中我将在三个层面上进行实现。 第一个步骤的实现包含从考生和参考答案的文本,进行一个答案的分词操作,然后进行Bert的嵌入编码。经过编码的考生答案和参考答案都是一共句向量的集合。下一步便引入互注意力机制的核心思想,将考生答案转化为标准的参考答案的展示形式。在第一个思想中,将转化后的答案连接到全连接网络中进行线下变换然后经过softmax层进行输出,输出的结果便是考生答案的评分。.原创 2021-06-11 08:07:40 · 492 阅读 · 0 评论 -
互注意力机制下的评阅模型实现
经过前几个周的调试和编写,基于互注意力机制的模型逐渐成型了。因此在此进行总结。 首先,项目和传统的机器学习神经网络方法一样,即编码-计算-解码过程。 在编码阶段,采用了Bert预训练模型,输入的内容是考生答案和参考答案,通过Bert进行编码以后,就生成了编码的考生答案向量和参考答案向量。 第二步的工作是把这些拿到的考生答案的句向量和参考答案的句向量集合进行一次“混合”,得到互注意力机制下的向量。具体来说是,我们假设考生答案的句向量个数是M,参考答案是N,我们队这两个句向量集合做内积,得到一个M*N的矩阵原创 2021-05-10 16:19:51 · 642 阅读 · 0 评论 -
关于正确与错误答案区分和评价函数的可解释性思考
通过对问题智能评分的思路进行解析,我们进一步思考一个问题,作为其中关键性的评价函数,它是解释的吗?本文将做出一些思考。原创 2021-04-07 09:38:08 · 183 阅读 · 0 评论