深度学习在线教育平台实践---内容推荐系统1

深度学习技术

众所周知,深度学习和人工智能技术在教育领域的应用,一直是在线教育界的王冠,是众多在线教育企业正在做的事情。但是直到目前为止,虽然有很多深度学习和人工智能解决方案,但是真正能够在实践中应用和落地的项目却并不多,大多数解决方案还停留在概念阶段或收集数据阶段,离实际应用还有一段距离。本系列文章,将以我们在高三地理教学中实际使用的个性题库系统为例,向大家详细介绍基于深度学习技术的题库推荐系统的技术原理,以及在实际应用中的信息架构设计技术。

基于内容的推荐系统

随着机器学习和深度学习的流行,基于机器学习和深度学习的推荐算法,在最近一段时间,逐渐成为了主流应用技术。我们的个性化题库系统,其核心就是一个根据学生实际情况,向学生推荐相关题目的推荐系统。
在这一部分,我们将以个性化题库系统为例,讲述一个典型的基于深度学习的推荐系统。我们所假想的场景如下:假设我们的客户是K12学校或K12在线教育公司,有大量题目供学生付费练习,并评估学生对题目的掌握程度用(0~5星的评分来表示),客户希望利用学生对题目的评分信息,向学生推荐学生薄弱的知识点的题目。
目前客户已经收集到的信息如下所示:

题目 张一 李二 王三 赵四
题目1 5 5 0 0
题目2 5 0
题目3 4 0
题目4 0 0 5 4
题目5 0 0 5

表中第1列为题目,其中前三个题目为知识点1,后两个题目为知识点2。第2~5列为不同的学生,表中每个单元格为某个学生对某个题目的需要程度。如果学生没有做过该题目,我们用?来表示。其中0表示学生做过该题目,结果完全正确,不需要再做练习。而5则表示学生做该题目完全错误,急需补充该题相关知识点。
为了便于问题的讨论,我们引入如下符号:
n_u:学生总数
n_m:题目总数
r(i, j):第j个学生是否做过第i个题目,1代表已经做过,0代表未做过(表格中?表示的单元格)
y^{(i, j)}:第j个学生对第i个题目的需要程度,此时必有r(i,j)=1,即学生j做过题目i
有了上述定义之后,我们的任务就变成了在已经知道r(i,j)y^{(i,j)}的情况下,形式如上表所示,预测学生对没有做过的题目需要程度,也就是要预测表中?的单元格中最有可能的数字。例如预测学生1对题目3这个题目的需要程度。因为我们的数据集很小,我们通过直觉可以很容易预测出来,因为学生1对知识点1的题目需度程度都很高,题目3是一个知识点1的题目,所以学生1对题目3的需要程度也会很高,所以我们可以预测张三对题目3的需要程度可能会是5分。但是如果上面的表格变为数以亿计的数据,我们就很难通过直觉做出判断了,我们就需要借助于推荐系统来完成这一任务了。
基于内容的推荐算法,首先要对待推荐题目的内容进行描述。在这里,我们用两个特征来描述各个题目,分别是:知识点1、知识点2。接下来我们对每个题目,给出在这两个特征上的得分,如下表所示:

题目 张一 李二 王三 赵四 知识点1 知识点2
x^{(1)} 题目1 5 5 0 0 0.9 0.0
x^{(2)} 题目2 5 0 1.0 0.01
x^{(3)} 题目3 4 0 0.99 0.0
x^{(4)} 题目4 0 0 5 4 0.1 1.0
x^{(5)} 题目5 0 0 5 0.0 0.9

我们对每个题目的关于特征知识点1、知识点2的描述,组成一个样本,这里共有5个样本:{x^{(1)}, x^{(2)}, x^{(3)}, x^{(4)}, x^{(5)}},对于每个样本是一个二维向量,如下所示:
\boldsymbol{x}^{(1)}=\begin{bmatrix} x^{(1)}_1\\ x^{(1)}_2 \end{bmatrix}=\begin{bmatrix} 0.9\\ 0.0 \end{bmatrix}
\boldsymbol{x}^{(2)}=\begin{bmatrix} x^{(2)}_1\\ x^{(2)}_2 \end{bmatrix}=\begin{bmatrix} 1.0\\ 0.01 \end{bmatrix}
\boldsymbol{x}^{(3)}=\begin{bmatrix} x^{(3)}_1\\ x^{(3)}_2 \end{bmatrix}=\begin{bmatrix} 0.99\\ 0.0 \end{bmatrix}
\boldsymbol{x}^{(4)}=\begin{bmatrix} x^{(4)}_1\\ x^{(4)}_2 \end{bmatrix}=\begin{bmatrix} 0.1\\ 1.0 \end{bmatrix}
\boldsymbol{x}^{(5)}=\begin{bmatrix} x^{(5)}_1\\ x^{(5)}_2 \end{bmatrix}=\begin{bmatrix} 0.0\\ 0.9 \end{bmatrix}
但是为了简化之后计算过程,我们通常希望将仿射变换转化为线性变换,然后利用矩阵乘法运算来求解,因为现有科学计算库均对矩阵运算做了优化,可以提高运算效率,减少数值计算中由于数值表示精度所引发的问题。
对于一个仿射变换:
y=\boldsymbol{w}^T\boldsymbol{x}+b=\begin{bmatrix} w_1\\ w_2 \end{bmatrix}^T \begin{bmatrix} x_1\\ x_2 \end{bmatrix} + b=w_1 \cdot x_1+w_2 \cdot x_2+b
其中\boldsymbol{w} \in R^n, \boldsymbol{x} \in R^n均为n维向量,而b为一个标量。为了处理问题方便,我们令w_0=bx_0=1,并将其分别加到w和x前面,如下所示:
y=\boldsymbol{w}^T\boldsymbol{x}=\begin{bmatrix} w_0\\ w_1\\ w_2 \end{bmatrix}^T \begin{bmatrix} x_0\\ x_1\\ x_2 \end{bmatrix}=w_0 \cdot x_0+w_1 \cdot x_1+w_2 \cdot x_2=w_1 \cdot x_1+w_2 \cdot x_2+b
由此可见,这两种表示方式是等价的。基于这种表示法,我们就可以写出基于内容的推荐系统了,我们将在下一节中讨论这个问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,204评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,091评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,548评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,657评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,689评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,554评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,302评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,216评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,661评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,851评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,977评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,697评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,306评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,898评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,019评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,138评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,927评论 2 355

推荐阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,343评论 0 2
  • 支持向量机 0.引言 本文主要参考了李航的《统计学习方法》。是本人学习支持向量机的学习笔记。首先对支持向量机做简单...
    吴金君阅读 1,116评论 2 5
  • 二维平移矩阵: P^{'}=T(t_{x},t_{y}){\cdot}P \begin{bmatrix} x^{'...
    杨sy阅读 336评论 0 0
  • 我所在的小城申请全国文明城市有几年了,今年估计市里下了很大的决心,势在必得啊 ! 我们市还在早几年就开...
    漂泊laoxiao阅读 208评论 0 2
  • 一个人要出轨的话,哪怕第三者再丑,他也照样会出轨。因为第三者带给人的,不止是美色或者帅气,或许还有新鲜感,或许是征...
    黎夏之云阅读 841评论 2 6