专栏名称: 机器学习研究会
机器学习研究会是北京大学大数据与机器学习创新中心旗下的学生组织,旨在构建一个机器学习从事者交流的平台。除了及时分享领域资讯外,协会还会举办各种业界巨头/学术神牛讲座、学术大牛沙龙分享会、real data 创新竞赛等活动。
目录
相关文章推荐
爱可可-爱生活  ·  [CV] Vision ... ·  昨天  
爱可可-爱生活  ·  【[55星]runtimed:为Rust开发 ... ·  2 天前  
爱可可-爱生活  ·  【[242星]Markdown ... ·  2 天前  
爱可可-爱生活  ·  【[198星]DeskHog:一款开源的3D ... ·  2 天前  
Web3天空之城  ·  OpenAI首席产品官凯文·威尔最新深度解读 ... ·  2 天前  
Web3天空之城  ·  OpenAI首席产品官凯文·威尔最新深度解读 ... ·  2 天前  
51好读  ›  专栏  ›  机器学习研究会

【学习】流利说基于 TensorFlow 的自适应系统实践

机器学习研究会  · 公众号  · AI  · 2017-03-25 19:10

正文

请到「今天看啥」查看全文


。为什么需要自适应学习?在传统的教学过程中,每个学生的学习路径是一致的,由于学生个人基础和学习能力的差异性,这种千人一面的做法对大部分学生来说其实比较低效。由此我们可以很自然地想到:如果我们能够 根据学生的能力,去匹配合适的教学内容 ,就应该可以提高他们的学习效率。而这正是自适应系统希望达成的目标。


学生模型

那么自适应学习是如何达成这个目标的呢?这包含了两个核心问题,首先是 学生的能力评估 ,正 确的评 估学生的能力是后续一切工作的基础,这是学生模型关心的问题。 其次是在评估好学生能力后, 如何推送合适的内容 ,这是教学模型所关心的问题。本篇文章我们来讲讲如何利用 TensorFlow 来构建学生模型。

为了选择一个合适的学生模型,首先需要了解学生学习的过程。一个典型的学习过程是一个时间序列,用户在这个时间序列的各个时刻进行了一些学习行为,从而提高了自身的 能力。我们可以假设学生的能力是可以通过学生在各个时刻回答问题的对错来反映的。要 注意的是,由于学生学习时间的跨度可能很大,不能认为学生的水平保持不变,所以直接使用一些评测的方法(做了学生能力不变的假设)是不合适的。


Deep Knowledge Tracing

为了对学习序列建模,并评估学生各个时刻的能力,我们采用了 Deep Knowledge Tracing(DKT)模型,这个模型是由 Stanford 大学的 Piech Chris 等人在 NIPS 2015发表的,其本质是一个 Seq2Seq 的 RNN 模型,我们来看下模型的结构图:

上图是 DKT 模型按照时间展开的示意图,其输入序列x1, x2, x3 ...对应了t1, t2, t3 ... 时刻学生答题信息的编码,隐层状态对应了各个时刻学生的知识点掌握情况,模型的输出序列对应了各时刻学生回答题库中的所有习题回答正确的概率。

现在以上图为例来看看模型的各层结构。简单起见,假设题库总共有4道习题,那么首先可以确定的输出层节点数量为4,对应了各题回答正确的概率。接着,如果我们对输出采用 one-hot 编码,输入层的节点数就是题目数量 * 答题结果 = 4 * 2 = 8个。首先将输入层全连接到 RNN 的隐层,接着建立隐层到输出层的全连接,最后使用 Sigmoid 函数作为激活函数,一个基础的 DKT 模型就构建完毕了。接着为了训练模型,定义如下的损失函数:







请到「今天看啥」查看全文