首页 / 生成定制的学习路径

生成定制的学习路径实质审查 发明

技术领域

[0003] 本公开内容涉及在线资源消费,并且更具体而言,涉及基于对那些在线资源的过往消费的分析来生成在线资源的定制的学习路径。

相关背景技术

[0004] 现代经济是“知识经济”,其需要受过良好教育的劳动力。学习是用于使学生和非学生都在所选择的研究领域中胜任的重要活动。传统的学习方法包括由教师或教授领导的课堂,所述教师或教授规定课程的内容将是什么。通常,需要亲身出席,但是有些课堂是“开放的”,这是因为有些学习者可以在远程时参与课堂环境。
[0005] 然而,在许多情况下,传统的课堂模型已经证明在几乎人类研究的每个领域中适应不断的技术进步是缓慢的。因此,许多学习资源正转移为“在线的”,以使得具有因特网连接和支持因特网的设备的任何用户都可以访问学习资源。一些学习资源仅限于学生或是付费的,而其他学习资源是所有人可访问的。
[0006] 既然存在许多(例如,数千或数万)在线学习资源,对于最终用户的一个挑战是选择对于他们最适当的学习资源。浏览庞大的在线资源库以找到正确的内容可能是耗时的。此外,用户可能没有注意到与朝向用户的事业目标的进步高度相关的多个在线资源。
[0007] 存在两种用于改善学习资源的发现并促进参与的方法。一种方法是通过推荐,所述推荐侧重于向用户推荐单个学习资源。但是,这种方法主要用于随意的学习者。由于不存在与推荐的资源相关的结构或顺序,因此用户将仅从发现一个学习资源中受益。这种方法不提供长期学习策略。
[0008] 另一种方法是手动策划的学习路径。然而,这样的学习路径仅适用于刚刚开始对应主题领域(例如,成为Java开发者)的用户。这种学习路径是通用的,而不是针对个人定制的。向最终用户呈现这样的学习路径可能导致低参与度。此外,组成手动策划的学习路径需要花费大量时间。
[0009] 本部分中描述的方法是可以实行的方法,但不一定是先前已经构思或实行的方法。因此,除非另有指示,否则不应假设本部分中描述的任何方法仅仅因为它们被包括在本部分中而取得现有技术的资格。

具体实施方式

[0016] 在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本发明的透彻理解。然而,将显而易见的是,可以在没有这些具体细节的情况下实践本发明。在其他实例中,以框图形式示出了公知的结构和设备,以便避免不必要地模糊本发明。
[0017] 总体概述
[0018] 提供了一种用于生成定制的学习路径的系统和方法。定制的学习路径是针对每个用户个性化的(并因此高度相关)。在一种技术中,生成了包括多个学习路径的定制的学习地图。定制的学习地图允许用户选择他/她自己的学习路径,这为用户的偏好提供了更大的灵活性。此外,定制的学习地图不仅可以提供单个起始学习资源作为推荐,而且可以提供关于从哪些学习资源开始好的整体地图。该信息使学习体验能够是终身学习体验,而不是一次性的方法。
[0019] 定制的学习路径为用户提供有意义的信息,以使得用户不需要研读整个学习资源库以找到适用的学习资源。相反,假设其他(例如,类似的)用户已经探索了最佳学习路径,利用由那些其他用户对学习资源的在线消费来生成用户的适当学习路径。
[0020] 示例性系统
[0021] 图1是描绘在实施例中的用于生成定制的学习路径的示例性系统100的框图。系统100包括客户端110-114、网络120和服务器系统130。虽然仅描绘了三个客户端,但是系统
100可能是能够支持通过网络120与服务器系统130交互的许多客户端的。
[0022] 客户端110-114中的每一者是被配置为通过网络120与服务器系统130通信的应用或计算设备。计算设备的示例包括膝上型计算机、平板计算机、智能手机、桌上型计算机和个人数字助理(PDA)。应用的示例包括在本地计算设备上安装和执行的以及被配置为通过网络120与服务器系统130通信的专用应用。应用的另一示例是从服务器系统130下载的以及在计算设备上执行的网络浏览器内执行的网络应用。客户端110可以用硬件、软件或者硬件和软件的组合来实现。
[0023] 网络120可以在提供客户端110与服务器系统130之间的数据交换的任何介质或机构上实现。网络120的示例包括但不限于诸如局域网(LAN)、广域网(WAN)、以太网或因特网之类的网络或者一个或多个地面、卫星或无线链路。
[0024] 服务器系统
[0025] 如图1所示,服务器系统130包括学习资源数据库132、资源消费跟踪器134、学习路径生成器136和简档数据库138。资源消费跟踪器134和学习路径生成器136中的每一者可以用硬件、软件或者硬件和软件的组合来实现。
[0026] 学习资源数据库132包括客户端110-114可以通过网络120从服务器系统130请求的多个学习资源。学习资源类型的示例包括视频文件(或简称为“视频”)、音频文件和包括文本、图像和/或图形的文档。因此,用户“消费”学习资源可以涉及:用户在用户的计算设备的屏幕上观看视频的播放,用户通过用户的计算设备上的扬声器收听音频文件的音频播放,或者阅读是文档(例如,文本文件、Word文档文件、网页等)的部分的文本或图像。即使人们不能保证用户实际观看了视频、收听了音频文件或阅读了文档,但如果学习资源被递送给用户的计算设备,则假设用户消费了学习资源,其递送可以通过在将学习资源的内容发送到学习设备之后来自计算设备的一个或多个消息来确认。
[0027] 学习资源数据库132可以存储在一个或多个持续性存储设备上。学习资源可以响应于针对学习资源的客户端请求而被读入到易失性存储器中,并且通过网络120被发送(例如,流式传输)到请求客户端。替代地,可以将一些学习资源(例如,相对流行的学习资源)读入到易失性存储器中(或保留在其中),以预期将来针对学习资源的客户端请求。
[0028] 资源消费跟踪器134跟踪多个用户中的每个用户消费哪些学习资源。资源消费跟踪器134可以将跟踪信息存储在存储学习资源数据库132的相同的一个或多个存储设备集上。
[0029] 可以以多种方式执行跟踪。例如,每个用户与资源消费记录(或仅“消费记录”)相关联,所述资源消费记录指示对应用户消费了哪些学习资源以及消费学习资源的顺序。当用户消费学习资源时,资源消费跟踪器134在与用户或用户的账户相关联的消费记录中存储学习资源的标识符。消费记录还可以包括指示每个学习资源被消费的日期和/或时间的时间戳。作为另一示例,每个学习资源与消费记录相关联,所述消费记录指示:哪些用户消费了对应的学习资源,以及对于每个用户的指示该用户消费该学习资源的日期和/或时间的时间戳。
[0030] 在相关实施例中,根据一个或多个标准来对消费记录进行分组。例如,可以基于由一用户集共同共享的一个或多个属性来对消费记录进行分组(其中,每个消费记录与单个用户相关联),例如居住在CA的以及具有在一定义的职位名称集(其可以包括许多相关的职位名称)中的职位名称(例如,“软件工程师”)的用户的消费记录。作为另一示例,可以基于由一学习资源集共同共享的一个或多个属性来对消费记录进行分组(其中,每个消费记录与单个学习资源相关联),例如与软件编程有关的学习资源或与营销有关的学习资源。以这种方式对消费记录进行分组允许更快(例如,按需)生成一个或多个定制的学习路径。
[0031] 在实施例中,简档数据库138包括多个用户简档,每个所述用户简档由不同的用户提供。在该实施例中,服务器系统130维护多个用户的帐户。服务器系统130可以提供网络服务,例如社交网络服务。社交网络服务的示例包括Facebook、LinkedIn和Google+。虽然被描绘为单个元素,但是服务器系统130可以包括多个计算元素和设备,它们在本地网络中连接或者跨诸如因特网之类的许多网络而区域或全局地分布。因此,服务器系统130可以包括除资源消费跟踪器134和学习路径生成器136之外的多个计算元素。
[0032] 简档
[0033] 在实施例中,用户的简档包括以下类型的数据中的一者或多者:名字,姓氏,电子邮件地址,住所信息,邮寄地址,电话号码,一个或多个参加的教育机构的列表,一个或多个当前和/或先前雇主的列表,一个或多个当前和/或先前职位名称的列表,技能列表,认可列表(list of endorsements),和/或用户的关系人、联系人、朋友的姓名或身份,以及基于对应用户已采取的在线动作的派生数据。这样的动作的示例包括用户已申请的职位、职位发布的视图、公司页面的视图、其他用户的在线简档的视图、用户与用户的社交网络中的其他用户之间的私人消息、以及用户发布了的以及对用户的社交网络外部的用户可见的公共消息。
[0034] 用户的简档(例如,工作历史)内的一些数据可以由用户提供,而用户简档内的其他数据(例如,认可)可以由第三方提供,而用户的简档内的其他数据(例如,技能)可以由用户和第三方提供,所述第三方例如“朋友”或用户的关系人或用户的同事。
[0035] 服务器系统130可以提示用户以多种方式之一提供简档信息。例如,服务器系统130可以已经提供了具有用于上述类型中的一个或多个类型的信息的文本字段的网页。响应于从用户的设备接收简档信息,服务器系统130将信息存储在与用户相关联的以及与当用户稍后尝试登录到服务器系统130中时用于向服务器系统130认证用户的凭证数据相关联的帐户中。由用户提供的每个文本字符串可以与文本字符串被录入其中的字段相关联地存储。例如,如果用户在职位名称字段中录入“销售经理”,则“销售经理”与指示“销售经理”是职位名称的类型数据相关联地存储。作为另一示例,如果用户在技能字段中录入“Java编程”,则“Java编程”与指示“Java编程”是技能的类型数据相关联地存储。
[0036] 在实施例中,服务器系统130将访问数据与用户的帐户相关联地存储。访问数据指示哪些用户、组或设备可以访问或查看用户的简档中或其部分。例如,用户简档的第一访问数据指示只有用户关系人可以查看用户的个人兴趣,第二访问数据指示确认的招聘人员可以查看用户的工作历史,第三访问数据指示任何人都可以查看用户的认可和技能。
[0037] 在实施例中,用户简档中的一些信息由服务器系统130(或另一自动过程)自动确定。例如,用户在他/她的简档中指定用户雇主的名称。服务器系统130基于名称确定雇主和/或用户所在之处。如果雇主具有多个办公室,则可以基于当用户向社交网络服务(例如,由服务器系统130提供的)注册时和/或当用户上次登录到社交网络服务上时与用户相关联的IP地址来推断用户的位置。
[0038] 生成学习路径
[0039] 图2是描绘在实施例中的用于生成学习路径的示例性过程200的流程图。过程200可以至少部分地由资源消费跟踪器134和学习路径生成器136实现。
[0040] 在框210处,存储了多个资源消费记录,其中,每个资源消费记录将用户与用户已消费的多个学习资源相关联。
[0041] 在框220处,针对每个消费记录,创建了一个或多个元组。元组是有序对,例如{资源A,资源B},其中,资源A在资源B之前被消费。元组中指示的第一资源(即,该示例中的资源A)被称为“开始资源”,并且元组中指示的第二资源(即,该示例中的资源B)被称为“结束资源”。
[0042] 可以基于单个消费记录来创建多个元组。例如,如果资源消费记录指示三个学习资源(R1,R2,R3),则可以创建两个元组:{R1,R2}和{R2,R3}。不同的用户可以与不同的消费记录相关联。因此,在框220之后,创建了多个元组,一些元组来自一些用户并且其他元组来自其他用户。
[0043] 如下面更详细地解释的,框220可以涉及根据所有消费记录的子集来创建元组。子集可以被定义为:与某个学习资源集相关的消费记录,某个用户集的消费活动(例如,被认为与学习图形正在针对其被生成的特定用户(或在线社交关系人)类似的用户),或者特定用户已经消费的、已由其他用户消费的学习资源,以及在特定用户已经消费的学习资源之后(由其他用户)消费的任何学习资源。因此,在框220期间,并非所有消费记录都一定针对元组被检查。
[0044] 在框230处,聚合每个唯一元组以针对该元组计算总数量。例如,在唯一元组上聚合之后,确定了总共94个{R1,R2}元组,确定了总共63个{R2,R3}元组,并且确定了总共27个{R1,R4}元组。
[0045] 在框240处,对于元组当中的每个唯一开始资源,针对与元组中的开始资源相关联的每个可能的结束资源计算概率或似然性。例如,如果存在总共94个{R1,R2}元组和27个{R1,R4}元组(并且不存在指示R1为开始资源的其他元组),则结束资源为R2的概率为94/(94+27)(或~78%),并且结束资源为R4的概率为27/(94+27)(或~22%)。这表明自然顺序是在消费R1之后消费R2(而不是R4)。
[0046] 框240还将涉及针对与R2相关联的每个可能的结束资源计算概率或似然性,所述R2可以是多个元组中的开始资源。例如,如果存在63个{R2,R3}元组、38个{R2,R5}元组和12个{R2,R6}元组,则结束资源为R3的概率为63/(63+38+12)(或~56%),结束资源为R5的概率为38/(63+38+12)(或~34%),并且结束资源为R6的概率为12/(63+38+12)(或~11%)。
[0047] 在框250处,对于已经消费特定学习资源的一个或多个用户,生成建议要消费的有序资源集的学习路径。例如,如果用户已经消费R1,则用于用户的建议的学习路径可以指示R2作为要消费的下一资源,然后是R3。
[0048] 在相关实施例中,生成了包括多个学习路径的学习“树”,所述多个学习路径包括不同的子路径(或部分),但是可以共享公共子路径(或部分)。学习树(和学习路径)是有向图。学习树可以包括许多不同的开始资源(“根”)和许多不同的结束资源(“叶”)。如果第一节点指向学习树中的第二节点,则第一节点被称为第二节点的“父”,以指示至少一些用户在与第二节点相对应的学习资源之前消费了与第一节点相对应的学习资源。相反,该示例中的第二节点是第一节点的“子”。
[0049] 学习树可以具有“循环”,其中,第一资源指向在相同学习路径中的第一资源之前的第二资源(或与之链接)。这被称为“回复”,并且在下面更详细地描述。
[0050] 可以基于根据所有消费活动或仅关于消费活动的子集生成的元组来生成学习树,所述子集例如与某个用户/消费者集有关的消费活动或与某个学习资源集有关的消费活动。例如,学习资源可以被分类为属于多个预定义组之一,例如信息技术、财务、营销、构造、图形设计。学习资源的分类可以基于标识特定组/类的学习资源的元数据,例如由学习资源的作者或创建者指定的元数据或由诸如服务器系统130的管理员之类的非作者指定的元数据。替代地,可以通过分析元数据(例如,标题、描述)和/或学习资源的内容以识别关键字来自动完成分类(或对特定组/类的指派)。机器学习或基于规则的模型可以基于关键字来执行分类。通过以这种方式对学习资源进行分组,当准队用户生成定制的学习路径时,可能与用户无关的学习资源被忽略。
[0051] 如果作为过程200的结果生成了具有多个根节点的学习树,则可以基于一个或多个选择标准来针对特定用户选择根节点之一。选择标准可以基于已经消费与根节点之一相对应的每个学习资源的多个用户。例如,如果相对于与其他根节点相对应的其他学习资源中的任何学习资源,更多用户消费了与根节点之一相对应的特定学习资源,则选择该特定学习资源作为学习路径中的开始节点。选择标准可以基于特定用户已经消费哪些学习资源。例如,如果特定用户已经消费了连接到根节点的严格子集的非根学习资源,则仅该严格子集中的根节点将被考虑用于特定用户的学习路径中的起始节点。替代地,已经消费的学习资源规定(学习树中消费的学习资源“指向”的)学习资源中的哪个将被视为特定用户的学习路径中的起始节点。
[0052] 在一些场景中,学习树可以具有单个根节点,但是单个根节点不被选择以被包括在特定用户的学习路径中。例如,如果特定用户已经消费在学习树中指示的特定学习资源,则学习树中特定学习资源“指向”的学习资源之一将被选择作为特定用户的学习路径中的起始节点。作为另一示例,在特定用户尚未消费学习树中指示的任何学习资源的情况下,选择非根而非根节点,这是因为相对较少的用户已经消费根节点。例如,少于十个用户消费与根节点相对应的学习资源,而超过一百个用户已经消费与根节点的“子节点”相对应的学习资源。
[0053] 类似用户
[0054] 在实施例中,基于被认为与特定用户类似的多个用户的学习资源消费来针对特定用户生成建议的学习路径。因此,如果第一用户消费学习资源A、然后消费学习资源B,但第一用户不被认为与第二用户类似,则当针对第二用户生成建议的学习路径时,第一用户消费了学习资源A和B的事实被忽略。
[0055] 在实施例中,在确定特定用户与共同共享一个或多个属性的用户组类似之后,聚合根据该用户组的消费活动而生成的元组。例如,特定组可以具有某个共同的职位名称(或者在特定职位名称组中的职位名称),具有某种职位功能,在某个职位行业中,具有某个经验水平(例如,在某个行业中至少4年),在某个地理区域(例如,美国或南美洲)中生活或工作,并且/或者在社交网络中具有某个数量的关系人。如果特定用户与组的一个或多个属性相关联,则基于根据该组中的用户的消费活动而生成的元组来针对特定用户生成定制的学习路径。
[0056] 在相关实施例中,在确定特定用户与用户组类似之前,聚合根据该用户组的消费活动而生成的元组。因此,在预期将检测到与该用户组类似的一个或多个用户的情况下执行聚合。因此,在针对定制的学习路径的任何请求之前,资源消费分析器126可以基于一个或多个标准来对用户进行分组并且相应地聚合元组。
[0057] 在两个实施例中(在特定用户与用户组相关联之前或之后发生的元组的聚合),特定用户最近可能已经向服务器系统130注册并且可能尚未消费通过服务器系统可用的任何学习资源。因此,特定用户可能不与任何开始资源相关联。然而,类似的用户将与开始资源相关联,可以针对特定用户从所述开始资源生成学习路径。在特定用户已经消费学习资源的场景中,该消费的学习资源的身份可以用于识别包括许多不同学习路径的学习树中的起点。
[0058] 可以基于存储在简档数据库138中的一个或多个简档来执行关于两个用户是类似的(或用户与用户组类似)的确定。例如,来自存储在简档数据库138中的用户简档的一个或多个属性值被确定。将一个或多个属性值与用户组的一个或多个目标属性值(或组简档)进行比较。这样的组简档可以与简档数据库138中的任何简档分开存储。作为另一示例,如果用户具有高于某个门限的关于组简档的匹配分数,则用户被认为与用户组类似,所述门限例如公共属性值的数量或者加权的匹配,其中,一些匹配属性值(例如,职位功能和经验水平)被加权得高于其他匹配属性值(例如,地理区域)。
[0059] 学习路径结束标准
[0060] 在实施例中,使用一个或多个结束标准来确定学习路径的长度,其中,学习路径的“长度”是学习路径中的学习资源的数量。一个示例性结束标准是包含至少三个学习资源的学习路径。因此,一旦学习路径生成器136从学习树中的起始点跟随学习树的两个边,则学习路径生成器136停止并使三个学习资源被显示为用于对应用户的建议的学习路径。
[0061] 替代地,在识别了候选学习路径的门限数量(例如,三个)的学习资源之后,学习路径生成器136然后可以在将另一个学习资源添加到候选学习路径之前确定是否满足一个或多个其他结束标准。如果不满足一个或多个其他结束标准,则识别另一学习资源并将其添加到候选学习路径。该过程可以重复,直到满足一个或多个其他结束标准。在相关实施例中,可以在将一个或多个学习资源添加到学习路径之后考虑不同的结束标准。例如,在针对候选学习路径识别了三个学习资源之后,考虑第一结束标准集。在识别了第四学习资源并将其添加到候选学习路径之后,考虑第二结束标准集。在识别了第五和第六学习资源并将其添加到候选学习路径之后,考虑第三结束标准集。
[0062] 聚合频率
[0063] 在实施例中,可以多次分析相同消费记录集。例如,可以定期(例如,每日、每周、每月)生成学习路径(或根据其学习路径被生成的元组)。作为另一示例,学习路径是按需生成的,例如响应于用户请求学习路径或响应于系统做出关于用户的某种确定,例如:用户是新的,用户最近消费特定资源,用户执行某个其他在线动作,或者自用户上次接收学习路径或关于学习路径被通知以来经过了一定量的时间。两种方法都允许(a)任何新创建的消费记录和/或(b)对现有消费记录的任何更新在生成学习路径时要被考虑。
[0064] 例如,响应于确定特定用户刚刚消费了R1,检索与R1相关联的任何或所有消费记录以确定哪些用户消费R1,忽略这些用户中的零个或更多个(例如,因为它们未被确定为与特定用户类似),并且分析剩余用户的后续消费活动(反映在与剩余用户相关联的消费记录中)以生成第一元组(其中,R1是开始资源)、第二元组(其中,第一元组中的结束资源是第二元组中的起始元组)等等。可以相对于这些新生成的元组来实现上述用于生成学习路径的过程200的一部分。
[0065] 消费水平
[0066] 在实施例中,记录用户消费了学习资源的事实不要求用户消费学习资源的全部。例如,一些用户可能在视频剩余10秒时停止观看视频。尽管如此,但保留表明那些用户消费(或观看)了视频的记录。
[0067] 在相关实施例中,为了将学习资源视为用于创建元组目的的消费的学习资源,用户必须消费门限量的学习资源,例如至少80%。门限量可以跨所有学习资源相同,仅跨一些学习资源,而其他学习资源与不同门限量相关联,或者用于某些用户,而其他用户可以与不同门限量相关联。例如,学习资源A可以与60%门限相关联,并且学习资源B可以与85%门限相关联。作为另一示例,一个用户类或组与55%门限相关联,而另一用户类或组与75%门限相关联。
[0068] 在相关实施例中,为了将学习资源视为用于创建元组目的的消费的学习资源,用户必须消费学习资源的特定片段。例如,视频可以十分钟长,并且第二和第三分钟包含最重要的信息。这样的确定可以反映在视频的书面抄本中(该抄本可以由视频的作者、创建者或提供者提供),或者可以反映在伴随视频的元数据中。不同的学习资源可以具有不同的“必需片段”。
[0069] 而且,学习资源可以具有用户必须消费以便将学习资源与用户相关联(反之亦然)的多个必需片段。例如,用户必须观看视频的片段2:19至3:45以及片段18:51至23:44,视频才能被视为已被该用户消费。
[0070] 在相关实施例中,一个或多个学习资源与量门限(例如,百分比)和片段要求二者相关联。同样,不同的学习资源可以与不同的量门限和不同的片段要求相关联。
[0071] 记录用户消费多少学习资源可以因资源类型和实施方式而异。例如,如果学习资源是多页的文档并且用户必须至少在页面3上呈现超过两分钟,则显示该文档的网络浏览器或网络应用向服务器系统130(或者,例如,资源消费跟踪器134)报告用户已请求文档的哪个页面以及与文档有关的每个请求的时间戳。例如,网络浏览器报告用户在时间X处请求了页面3并且用户在时间Y处请求了页面4。服务器系统130确定时间Y和时间X之间的差是否是至少两分钟。如果是,则资源消费跟踪器134记录用户消费了该文档。
[0072] 作为另一示例,学习资源是音频文件,并且用户必须收听至少90%的音频文件,以便被视为该用户对该音频文件的消费。在网络浏览器或网络应用中执行的音频播放器向服务器系统130报告:用户在何处开始音频文件的播放,用户在何处暂停音频文件的播放,并且可选地,用户在何处跳过或快进。在一些实施方式中,音频播放器将跳过和快进视为(a)暂停(在播放开始跳过或快进之处),以及(b)后续恢复(在跳过或快进结束之处)。播放开始和播放暂停之间的时间被(例如,资源消费跟踪器134)认为是由用户消费的音频文件的部分,而播放暂停和播放开始之间的时间不被认为是由用户消费的音频文件的部分。
[0073] 作为另一示例,学习资源是视频,并且用户必须观看至少75%的视频并观看至少前四分钟才被视为该用户对该音频文件的消费。在网络浏览器或网络应用中执行的视频播放器向服务器系统130报告:用户在何处开始播放视频,用户在何处暂停视频的播放,并且可选地,用户在视频中何处跳过或快进。视频播放开始与播放暂停之间的时间被认为是由用户消费的视频的部分,而播放暂停与播放开始之间的时间不被视为由用户消费的视频的部分。
[0074] 基于消费水平对元组加权
[0075] 在实施例中,基于消费水平,相对于其他元组(或元组内的项目),一些元组(或元组内的项目)被加权得更多。例如,用户观看了80%的R1,然后观看了27%的R2。用户的第一资源消费记录可以指示两个百分比以及两个资源。当基于第一资源消费记录来创建元组时,R1可以用80%加权,并且R2可以用27%加权,例如{0.8R1,0.27R2}。如果第二资源消费记录针对R1和R2二者都指示100%(并且在R1之后观看R2),则将上述元组与来自第二资源消费记录的元组组合(例如,聚合)可以指示{1.8R1,1.27R2}。
[0076] 在相关实施例中,如果学习资源被消费少于特定量(例如,小于五分钟或小于某个百分比(例如,30%)),则针对学习资源将负加权应用于元组。因此,当组合元组时,不是添加两个正值(例如,1和1或者1和0.8),而是添加负值(例如,0.8和-0.1)。
[0077] 反向路径
[0078] 在一些场景中,学习树中的路径可以岔开(或“分叉”)成多个可能的子路径,并且子路径之一(“回复子路径”)可以回复到另一子路径。这样的回复可以指示回复子路径对于多个用户而言是次优的并且另一子路径是应当被推荐的学习路径的一部分,即使更多用户(或者甚至是遵循两个子路径中的至少一者的大多数用户)最初遵循回复子路径也是如此。
[0079] 因此,即使消费了特定学习资源的最大多个用户遵循第一子路径(来自特定学习资源)而不是一个或多个其他子路径(来自特定学习资源),在针对用户生成定制的学习路径时也考虑遵循第一子路径的用户的事实。例如,在推荐第二子路径而不是第一子路径时,考虑了遵循第一子路径并回复到第二子路径的用户的数量。例如,如果(a)选择了第二子路径而不是第一子路径的用户数量和(b)选择了第一子路径然后回复到第二子路径的用户数量之和大于(c)选择了第一子路径但未回复到第二子路径(或从特定学习资源到任何其他可能的子路径)的用户数量,则包括第二子路径的学习路径被生成作为对用户的推荐。
[0080] 图3是描绘在实施例中的具有回复路径的示例性学习树300的框图。在该示例中,学习树300包括单个根节点:R1 305。这可以基于由正在针对其生成定制的学习树的特定用户对R1的消费来确定。然而,其他示例性学习树可能具有多个根节点。而且,虽然该框图描绘了百分比,但是在其他实施例中,学习树可以与表示被生成的元组的实际数量的总数量相关联。此外,关于在定制的学习路径中使用的学习树的哪些部分的动作可以直接基于元组的数量而不是基于百分比(其基于元组的数量)。
[0081] R1 305连接到三个学习资源:R2 310、R3 315和R4 320。消费了R1的25%的用户之后消费了R2(例如,立即或在不消费任何其他学习资源的情况下),消费了R1的60%的用户之后消费了R3,消费了R1的10%的用户之后消费了R4,并且消费了R1的5%的用户在消费R1之后不消费任何学习资源或者在消费R1之后消费了另一学习资源(未示出)。
[0082] R2 310还连接到三个学习资源:R5 325、R6 330和R7 335。未描绘或描述消费了R5-R7中的每一者的用户的百分比。
[0083] R3 315连接到一个学习资源:R8 340。消费了R3的90%的用户之后消费了R8。虽然未描绘,但是消费了R3的某个百分比的用户可以在消费了R3之后已消费一个或多个其他学习资源。此外,消费R3的某个百分比的用户可以在消费R3之后尚未消费任何资源。
[0084] R4 320连接到两个学习资源:R9 345和R10 350。未描绘或描述了消费R9-R10中的每一者的用户的百分比。
[0085] R8 340连接到两个学习资源:R11 355和R12 360。消费了R8的80%的用户之后消费了R11,消费了R8的13%的用户之后消费了R12,并且消费了R8的某个百分比的用户(例如,7%)在消费R8后未消费任何学习资源。
[0086] 在该示例性学习树中,如果使用贪婪算法来针对用户生成学习路径,其中,学习路径在R1处开始,则可以呈现的学习路径是R1→R3→R8→R11。然而,在消费R11之后,显著百分比的用户回复到R2。具体而言,在消费R1之后消费R3的用户中的大约65%最终消费R2。当选择学习树内的哪个学习路径被选择以被呈现作为推荐时,考虑这种回复。在该示例中,65%的60%(即,消费R1之后消费了R3的百分比)从60%中减去,以针对连接R1和R3的边得出~21%。此外,65%的60%被添加至25%(即,消费R1后消费了R2的百分比),以针对连接R1和R2的边得出~64%。因为在考虑回复之后R1和R2之间的边与最高百分比相关联,所以选择具有(部分)路径R1→R2的学习路径以推荐给特定用户。在进一步分析学习树300之后,学习路径可能包括R5-R7之一(假设它们与在消费R2之后的最高百分比相关联)作为最终学习路径中的下一学习资源。
[0087] 修剪学习树
[0088] 不是指示回复子路径对于多个用户而言是次优的,而是回复可以指示存在其他用户消费了学习树“中间”的学习资源然后消费了沿学习树“向上”或更接近学习树的根节点的学习资源。事实上,即使在多对学习资源当中,学习树也可能最初充满循环。在这种场景中,不清楚哪些节点是根节点并且哪些节点是叶节点。
[0089] 在实施例中,在针对用户识别学习路径之前,移除满足一个或多个边移除标准的有向边(在节点之间)。示例性边移除标准基于在消费另一学习资源之后消费了一个学习资源的用户数量。例如,如果在消费第一学习资源之后少于门限数量的用户消费了第二学习资源,则从与第一学习资源相对应的节点到与第二学习资源相对应的节点的有向边被移除或删除。
[0090] 另一示例性边移除标准基于何时发生对元组中的两个学习资源之一的消费。例如,如果学习资源的大部分消费发生在距现在的六个月之前,则那些消费被忽略或低于最近六个月内发生的学习资源消费地被加权。作为另一个示例,
[0091] 另一示例性边移除标准基于消费两个学习资源之间经过了多少时间。例如,如果消费两个学习资源之间的平均或中间时间量大于特定门限(例如,十天),则移除连接两个学习资源的有向边。
[0092] 在实施例中,仅在满足一个或多个触发标准之后应用一个或多个边移除标准。例如,在生成学习树之后,可能难以选择学习树中指示的哪个学习资源应当是学习路径中的起始资源,尤其是如果正在针对其生成学习路径的用户尚未消费学习树中指示的任何学习资源。
[0093] 对相同的学习资源的重复消费
[0094] 用户可以多次消费相同的学习资源(或其一部分)。例如,多个用户可以具有以下观看历史:R1→R2→R3→R1→R4。因此,R1中的某些东西是如此重要以至于第二次观看R1对于那些用户是有用的。
[0095] 在实施例中,当针对用户(例如,与其他用户类似)生成定制的学习路径时,学习资源被多次消费给其他用户的事实可以反映在定制的学习路径中。例如,学习路径可以指代上面的相同序列(即,R1→R2→R3→R1→R4)。在相关示例中,推荐可以指示R1的某个部分以供用户考虑,以消费两次,或者在第一次消费该某个部分时要特别注意。该某个部分可以是门限数量(或百分比)的用户观看了两次的部分(例如,至少20(或40%)的用户第二次消费了R1),例如视频的时间4:59和7:10之间,或者文档的第3页、第11页和第18页,[0096] 示例性可视化
[0097] 可以以多种方式显示定制的学习路径。例如,描绘了单个定制的学习路径。替代地,可以同时显示多个定制的学习路径。
[0098] 图4A-4D是实施例中的示例性用户界面的屏幕截图,所述示例性用户界面描绘了具有单个根节点和源于根节点处的多个重叠学习路径的学习树400。用户界面允许用户将从一个学习资源到下一学习资源的推荐的流概念化。在该示例中,每个边具有与匹配概率相互关联的唯一不透明度或亮度。这种效果表明了学习路径。
[0099] 图4A是描绘学习树400和学习树400内的突出显示的学习路径410的屏幕截图。学习路径生成器136可以已经生成学习树400。学习路径410包括三个学习资源:412-416。与学习路径410中的每个节点相邻,用户界面包括对应学习资源的标题。与学习路径410中的每个非根节点相邻,用户界面包括百分比,其反映在消费学习路径中的先前学习资源之前消费了对应学习资源的用户百分比。例如,“24%”与学习资源414相邻,该百分比指示消费了学习资源412、然后消费了学习资源414的24%的用户。类似地,“19%”与学习资源416相邻,该百分比指示消费了学习资源414、然后消费学习资源416的19%的用户。
[0100] 可以最初突出显示学习路径410,以指示学习路径生成器136自动选择该路径而不是学习树400中的其他可能路径。这样的自动选择可以指示,与学习树400中的其他对应的替代资源对相比,学习路径410中的每对学习资源已被更多地遍历。
[0101] 图4B是描绘学习树400和突出显示的学习路径420的屏幕截图。学习路径420包括三个学习资源:412、422和424。因此,学习路径410和420共享相同的根节点(412)。同样,与学习路径420中的每个节点相邻,用户界面包括对应学习资源的标题。与学习路径420中的每个非根节点相邻,用户界面包括百分比,其反映在消费学习路径中的先前学习资源之前消费了对应学习资源的用户百分比。例如,“16%”与学习资源422相邻,该百分比指示消费了学习资源412、随后消费了学习资源422的16%的用户。类似地,“46%”与学习资源424相邻,该百分比指示消费了学习资源422、然后消费了学习资源424的46%的用户。
[0102] 除了光标悬停在学习资源414上之外,图4C与图4A类似。在实施例中,用户选择(例如,在触摸屏上使用手指,选择光标设备上的按钮,或者只是将光标悬停在其上)学习树中的节点(与特定学习资源相对应)使关于学习资源的附加信息被显示,例如学习资源的标题、描述、图像。在该示例中,响应于用户输入或光标悬停,显示了来自学习资源414的图像432。图像432包括对应视频的一部分以及与视频的该部分相关联的文本。在相关实施例中,通过视频播放器来显示图像432,并且对图像432的选择使对应视频的一部分通过视频播放被播放。替代地,选择图像432使视频播放器启动。通过视频播放器播放的任何内容可以是视频的互补部分,以便诱使观众接受对应的学习路径。
[0103] 图4D是描绘在学习路径410已被用户选择之后的学习树400的屏幕截图。在该示例中,当用户在学习路径本突出显示的同时选择“选择计划”按钮442时,学习路径被选择。此外,对学习路径的用户选择使图标(在该示例中,心型图标)被显示在表示学习路径中的学习资源的每个图像上。此外,所选择的学习路径中的学习资源的标题被添加到“课程清单”列表444。在该示例中,因为在学习路径410中存在三个学习资源并且用户选择了学习路径410,三个学习路径中的每一者的标题被添加到列表444中。列表444中的标题的顺序与学习路径410中的学习资源的顺序相同。该列表可以跨与服务器系统130的多个用户会话而持久。因此,如果用户登出服务器系统130(例如,使用客户端112)并且稍后重新登录,用户将仍然能够查看列表444。
[0104] 在实施例中,如果用户消费在用户的资源列表(例如,列表444)中列出的学习资源,则资源列表被更新以指示学习资源已被消费。例如,可以从资源列表中完全移除所消费的学习资源的标题。作为另一示例,标题可以具有删除线,可以变暗,或者可以具有应用于其的其他字体或图形相关效果,以区别于用户尚未消费的其他学习资源。
[0105] 以次资源级(sub-resource level)跟踪消费
[0106] 本文描述的实施例将两个学习资源关联在一起,如果在其他学习资源之后消费了一个学习资源的话。然而,一些学习资源可能未被完全消费。实际上,许多用户可能在消费另一个学习资源的特定部分之后消费特定的学习资源。例如,在观看十分钟视频的第五分钟后,30%的用户消费R2。如果使用80%的消费门限来确定用户是否消费了资源,则将永远不会发现十分钟视频与R2之间的链接(或关联)。
[0107] 在实施例中,资源消费记录将(a)学习资源的片段与另一学习资源相关联或(b)将一个学习资源的片段与另一学习资源的片段相关联。取决于学习资源的类型,学习资源的片段可以与学习资源的多种类型的部分之一相对应。例如,视频、音频文件和书籍可以被划分成章节。文本文档可以被划分成页面或标题,并且可选地,划分成子标题。学习资源内的片段可以基于伴随学习资源(例如,章节)的元数据来定义,或者可以基于对学习资源的分析来确定,例如文本文档或视频的抄本中的标题,或在音频文件或视频中检测到显著的暂停(或相对静音的时段)。
[0108] 在实施例中,学习路径可以指示在消费学习路径中的后续学习资源之前推荐了学习资源的某个部分或片段。
[0109] 在实施例中,可以如本文所述地生成学习路径,并且之后执行任何片段级分析。例如,可以在不考虑(例如,相对高的)完成水平的情况下生成学习路径。然后,可以对学习路径中的每个学习资源执行片段级分析。例如,为了对被消费的学习资源进行计数,可能仅需要对学习资源的5%消费。因此,如果许多用户仅消费学习资源的5%到10%之间,则可以基于那些用户对该学习资源的消费来生成多个元组。然后,可以执行对该学习资源的片段级统计资料的分析,以检测大多数(或最大多个)用户在何处开始消费学习资源,在何处结束消费学习资源,或二者,包括被跳过的片段或部分。如果消费了学习资源的45%的用户在第5章处结束并且消费了学习资源的37%的用户在第7章处结束,则可以在建议的用于用户的学习路径中推荐第5章作为该学习资源的结束点。
[0110] 硬件概述
[0111] 根据一个实施例,本文描述的技术由一个或多个专用计算设备实现。专用计算设备可以是硬连线的以执行这些技术,或者可以包括被持久性地编程以执行这些技术的诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)之类的数字电子设备,或者可以包括一个或多个通用硬件处理器,其被编程为根据固件、存储器、其他存储装置或组合中的程序指令来执行技术。这种专用计算设备还可以将定制的硬连线逻辑、ASIC或FPGA与定制的编程相组合以实现这些技术。专用计算设备可以是桌上型计算机系统、便携式计算机系统、手持设备、网络设备或包括硬连线和/或程序逻辑以实现这些技术的任何其他设备。
[0112] 例如,图5是示出可以在其上实现本发明的实施例的计算机系统500的框图。计算机系统500包括总线502或用于传送信息的其他通信机制,以及与总线502耦合以用于处理信息的硬件处理器504。硬件处理器504可以是例如通用微处理器。
[0113] 计算机系统500还包括主存储器506,例如随机存取存储器(RAM)或其他动态存储设备,其耦合到总线502以用于存储要由处理器504执行的信息和指令。主存储器506还可以用于存储要由处理器504在执行指令期间执行的临时变量或其他中间信息。这样的指令当被存储在处理器504可访问的非暂时性存储介质中时,使计算机系统500成为被定制以执行指令中指定的操作的专用机器。
[0114] 计算机系统500还包括只读存储器(ROM)508或耦合到总线502的其他静态存储设备,以用于存储用于处理器504的静态信息和指令。提供了存储设备510(例如,磁盘、光盘或固态驱动器),并且将其耦合到总线502以用于存储信息和指令。
[0115] 计算机系统500可以经由总线502耦合到显示器512,例如阴极射线管(CRT),以用于向计算机用户显示信息。包括字母数字键和其他键的输入设备514耦合到总线502,以用于将信息和命令选择传送到处理器504。另一类型的用户输入设备是光标控件516(例如,鼠标、轨迹球或光标方向键),其用于将方向信息和命令选择传送到处理器504并且用于控制显示器512上的光标移动。该输入设备通常在两个轴上具有两个自由度,所述两个轴为第一轴(例如,x)和第二轴(例如,y),所述输入设备允许设备指定平面中的位置。
[0116] 计算机系统500可使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑(其与计算机系统组合使计算机系统500成为专用机器或者将计算机系统500编程为专用机器)来实现本文所述的技术。根据一个实施例,响应于处理器504执行被包含在主存储器506中的一个或多个指令的一个或多个序列,本文的技术由计算机系统500执行。这样的指令可以从诸如存储设备510之类的另一存储介质读入到主存储器506中。包含在主存储器506中的指令序列的执行使处理器504执行本文描述的处理步骤。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合使用。
[0117] 本文使用的术语“存储介质”指的是存储使机器以特定方式操作的数据和/或指令的任何非暂时性介质。这样的存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘、磁盘或固态驱动器,例如存储设备510。易失性介质包括动态存储器,例如主存储器506。常见形式的存储介质包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁数据存储介质、CD-ROM、任何其他光学数据存储介质、任何具有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒式磁带。
[0118] 存储介质不同于传输介质但可以与传输介质结合使用。传输介质参与在存储介质之间传递信息。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线502的导线。传输介质还可以采用声波或光波的形式,例如在无线电波和红外数据通信期间生成的声波或光波。
[0119] 在将一个或多个指令的一个或多个序列携带到处理器504以供执行时可以涉及各种形式的介质。例如,指令最初可以在远程计算机的磁盘或固态驱动器上被携带。远程计算机可以将指令加载到其动态存储器中,并且使用调制解调器通过电话线发送指令。计算机系统500本地的调制解调器可以在电话线上接收数据并且使用红外发射器将数据转换为红外信号。红外检测器可以接收红外信号中携带的数据,并且适当的电路可以将数据放置在总线502上。总线502将数据携带到主存储器506,处理器504从所述主存储器506检索并执行指令。由主存储器506接收的指令可以可选地在由处理器504执行之前或之后被存储在存储设备510上。
[0120] 计算机系统500还包括耦合到总线502的通信接口518。通信接口518提供耦合到连接到本地网络522的网络链路520的双向数据通信。例如,通信接口518可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或用于提供到对应类型电话线的数据通信连接的调制解调器。作为另一示例,通信接口518可以是局域网(LAN)卡,其用于提供到兼容LAN的数据通信连接。还可以实现无线链路。在任何这样的实施方式中,通信接口518发送并接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
[0121] 网络链路520通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路520可以提供通过本地网络522到主计算机524或到由因特网服务提供商(ISP)526操作的数据装备的连接。ISP 526转而通过现在通常称为“因特网”528的全球分组数据通信网络来提供数据通信服务。本地网络522和因特网528二者都使用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号和网络链路520上并且通过通信接口518的信号(其携带数字数据往返于计算机系统500)是传输介质的示例性形式。
[0122] 计算机系统500可以通过网络、网络链路520和通信接口518来发送消息和接收数据,包括程序代码。在因特网示例中,服务器530可能通过因特网528、ISP 526、本地网络522和通信接口518来发送用于应用程序的请求的代码。
[0123] 所接收的代码可以在其被接收和/或存储在存储设备510或其他非易失性存储器中以供稍后执行时由处理器504执行。
[0124] 在前面的说明书中,已经参考许多具体细节描述了本发明的实施例,所述细节可以因实施方式而异。因此,说明书和附图应被视为说明性的而非限制性的。本发明范围的唯一和排他性指示器以及申请人旨在作为本发明范围的内容是根据本申请发布的权利要求集(以这些权利要求发布的具体形式)的字面和等同范围,包括任何后续更正。

当前第1页 第1页 第2页 第3页