CN107025615B - 一种基于学习跟踪模型的学习情况统计方法 - Google Patents

一种基于学习跟踪模型的学习情况统计方法 Download PDF

Info

Publication number
CN107025615B
CN107025615B CN201710281301.XA CN201710281301A CN107025615B CN 107025615 B CN107025615 B CN 107025615B CN 201710281301 A CN201710281301 A CN 201710281301A CN 107025615 B CN107025615 B CN 107025615B
Authority
CN
China
Prior art keywords
class
attribute
range
tmp
learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710281301.XA
Other languages
English (en)
Other versions
CN107025615A (zh
Inventor
祝敏
李学斌
周明明
桑杉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zhengbao Yucai Education Technology Co ltd
Original Assignee
Beijing Zhengbao Yucai Education Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zhengbao Yucai Education Technology Co ltd filed Critical Beijing Zhengbao Yucai Education Technology Co ltd
Priority to CN201710281301.XA priority Critical patent/CN107025615B/zh
Publication of CN107025615A publication Critical patent/CN107025615A/zh
Application granted granted Critical
Publication of CN107025615B publication Critical patent/CN107025615B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于学习跟踪模型进行学习情况统计的方法。学习跟踪模型具体包括跟踪信息类,Range类,Repeated类,LastResult类;其中,Range类聚合到跟踪信息类,Range类还聚合到Repeated类和LastResult类。跟踪信息类,用于表示跟踪信息,包括跟踪片段信息、标识信息;Range类,表示一个通用封闭区间,用于记录范围,记录一个区间开始值和一个区间结束值;Repeated类,用于表示重复作用的范围,包括标识信息、重复作用范围;LastResult类,用于表示最新的作用范围情况统计,包括作用范围统计信息。本发明能简化系统的开发,从存储空间和运算时间上双向节约成本,能灵活的控制跟踪和计算的粒度,而不会对模型的结构造成影响。

Description

一种基于学习跟踪模型的学习情况统计方法
技术领域
本发明涉及在线网络教育技术领域,尤其涉及一种基于学习跟踪模型的学习情况统计方法。
背景技术
在线网络教育的技术领域中,现有技术中对于用户学习情况的统计,一般是这对具体领域进行具体统计,例如看视频看了多少时间,用几倍速看的,有效看课时间是多少以及阅读、做题的完成情况等等,这些统计都是采用独立且不同的模型进行的。经长时间对在线教育系统运营的观察和思考,发现这些独立模型占用大量的运行时间和空间,学习跟踪统计的粒度不能灵活的控制,且统计计算量大。因此,有必要提供一种统一模型及统计方法,解决系统复杂度高、系统开发和运营的成本高的问题。
发明内容
鉴于上述的分析,本发明旨在提供一种基于学习跟踪模型进行学习情况统计的方法,用以解决现有学习系统,统计过程复杂,学习系统开发和运营成本高的问题。
本发明的目的主要是通过以下技术方案实现的:
提供了一种基于学习跟踪模型进行学习情况统计的方法,所述学习跟踪模型包括跟踪信息类,Range类,Repeated类,LastResult类;其中Range类聚合到跟踪信息类,Range类还聚合到Repeated类和LastResult类。
跟踪信息类,用于表示跟踪信息,包括跟踪片段信息、标识信息;
Range类,表示一个通用封闭区间,用于记录范围,记录了一个区间开始值和一个区间结束值;
Repeated类,用于表示重复作用的范围,包括标识信息、重复作用范围;
LastResult类,用于表示最新的作用范围情况统计;
学习情况统计的方法,包括以下步骤:
步骤S1.根据接收的跟踪信息创建跟踪信息类的对象;
步骤S2.对跟踪信息类的对象进行预处理;
步骤S3.通过迭代循环处理跟踪信息类的对象,以进行学习情况统计;
步骤S4.获取并存储重复数据信息;
步骤S5.更新统计结果并存储。
所述学习跟踪模型的跟踪信息类进一步包括Trace类和Tracepiece类,Tracepiece类聚合到Trace类,Range类聚合到Trace类;
Trace类包含TracePiece类集合,每一个TracePiece类的对象对应一条跟踪信息;
Trace类用于进行跟踪信息的标识,包括Pieces属性和标识属性,Pieces属性通过Tracepiece类集合表示,标识属性用于标识用户和/或业务类型;
Tracepiece类用于表示作用范围和用时范围,包括pieceRange和timeRange属性,pieceRange属性用于表示作用范围,通过一个Range类的对象进行记录;timeRange属性用于表示用时范围,通过一个Range类的对象进行记录。
进一步的,上述学习跟踪模型的Repeated类包括标识属性、重复作用范围属性和重复作用时间属性;其中,重复作用范围属性通过Range类对象的集合表示;
LastResult类包括coveredRanges属性、timeRanges属性、统计值属性和标识属性;其中,coveredRanges属性用于表示作用范围集合,通过Range类对象的集合表示;timeRanges属性用于表示用时分布情况,通过Range类对象的集合表示;统计值属性用于表示作用总点数和/或用时总长度;标识属性用于标识用户和/或业务类型。
优选的,LastResult类中的coveredRanges属性和timeRanges属性的值作了排序处理。
进一步的,步骤S2中所述的预处理包括去重、存储和获取最后结果集;
其中,去重是依据Trace类对象中标识信息和TracePiece中的timeRange进行数据去重处理;
去重处理之后将Trace类的对象进行存储;
获取最后结果集是依据Trace类对象中的标识信息来获取对应用户上次学习统计结果数据,上次学习统计结果数据存储在LastResult类的对象中;
如果新用户,则创建一个空的LastResult类的对象并初始化。
进一步的,步骤S3中的每一次迭代循环处理包括学习区间计算和用时区间计算,通过计算得到已作用信息和重复作用信息。
具体的,调用区间计算功能模块进行所述学习区间计算和用时区间计算,包括以下步骤:
区间计算功能模块接收输入参数A和B,分别存储到Range类的对象new和对象集合old中;
针对学习区间计算,输入参数A为TracePiece类对象的pieceRange属性,输入参数B为LastResult类对象的coveredRanges属性;
针对用时区间计算,输入参数A为TracePiece类对象的timeRange属性,输入参数B为LastResult类对象的timeRanges属性;
检测old中是否有数据;
如果没有数据,则直接将new添加到Range类的对象集合merged中去,并结束流程;
如果有数据,则将new复制到Range类的对象newCpy中,然后通过迭代运算将old中的每个区间与newCpy进行运算,获取新的已作用信息和重复作用信息,分别用Range类的对象集合merged和Range类的对象集合repeated表示。
进一步的,所述通过迭代运算将old中的每个区间与newCpy进行运算,进一步包括:
将old中的第n个区间赋值给一个Range类对象tmp,使tmp等于old[n],其中n从1开始并在每次迭代后递增;
判断tmp与newCpy是否有交集;
当tmp和newCpy无交集,则进一步判断newCpy是否等于new;
如果相等,则进一步判断tmp与newCpy的start值,如果tmp.start小于newCpy.start,则直接将tmp放入到merged中并结束本次迭代;如果tmp.start大于newCpy.start,则先将newCpy添加到merged中,然后设置合并结束标志为true,然后再将tmp放入到merged中并结束本次迭代;
如果newCpy和new不相等,则将newCpy放入merged中,并设置合并结束标志为true,然后再将tmp放入到merged中并结束本次迭代;
当tmp和newCpy有交集,则将交集添加到repeated中去,并更新newCpy使其等于tmp与newCpy合并;
每次迭代后,判断合并结束标志;
如果合并结束标志没有设置为true,则进一步判断迭代是否完成;如果old中不是每一个区间均进行了运算,则重新执行上述迭代过程;如果old中每一个区间均进行了运算,则将new添加到merged中,再结束区间计算功能模块的计算过程;
如果合并结束标志设置为true了,则将未执行运算的old中的区间添加到merged中。
优选的,所述判断tmp与newCpy是否有交集,包括对tmp的边界进行调整:判断newCpy.start位于区间tmp.start和tmp.end+1之间;或者判断newCpy.end位于区间tmp.start-1和tmp.end之间,则表示有交集。
上述经过区间计算功能模块处理后得到的merged集合和repeated集合,在针对学习区间计算时,merged集合和repeated集合分别表示已作用区间和重复作用区间;针对用时区间计算,merged集合表示用时分布,repeated集合为空。
本发明有益效果如下:
本发明基于一个统一的学习跟踪模块,能简化系统的开发,降低系统运营成本;学习跟踪模块中进一步通过记录作用区间的起始和结束这两点、以及采用区间计算的方式来代替逐点记录和传统汇总统计的方式,能实现更大跨度的运算,并简化统计过程,得以从存储空间和运算时间上双向节约成本。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为学习跟踪模型的示意图;
图2为学习情况统计方法的流程图;
图3为区间计算功能模块进行计算的流程图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。
本发明将用户的看课时间、阅读、做题等所对应的内容抽象成一个由有序且连续的点集合构成的区间,而看了什么内容,读了那几页书,做了什么题都是在这个区间上的子区间分布。
针对视频教程可以将视频长度的每一秒看作是一个连续且有序的点的集合,用户不管是连续播放还是跳跃观看,都能够计算出该用户的有效观看范围,以及重复观看范围,几次重复等。
针对用于做题的情况,将所有题目中的每个题(不区分大题和小题,以最小题目为计算单元)当作一个连续且有序的点的集合,用户不管做了哪道题都会被记录,重复做题的次数,用时情况等。
本发明是基于一学习跟踪模型,如图1所示,具体包括Trace类,Tracepiece类,Range类,Repeated类,LastResult类。
其中,Tracepiece类和Range类聚合到Trace类;
Range类还聚合到Repeated类和LastResult类。
Trace类和Tracepiece类共同用于表示跟踪信息,内容包括跟踪片段信息和标识信息。本实施例中采用Trace类和Tracepiece类分别表示标识信息和跟踪片段信息,本发明也可以采用一个合并的跟踪信息类来表示跟踪信息。
本实施例中的类和聚合关系是采用UnifiedModeling Language(UML),即统一建模语言建立的。
上述类之间的聚合关系是一种实体对象之间的关系,表示整体由部分构成的语义。整体和部分在聚合关系中并不是强依赖的,即使整体不存在了,部分仍然存在。
Trace类,用于进行跟踪信息的标识,标识由外部输入的、通过采集得到的跟踪信息。Trace类中包括Pieces、tarID、tarType三个属性。其中,Pieces属性指代Tracepiece类集合,TracePiece类用于表示跟踪片段信息。TracePiece可以是一个集合,含有多个Tracepiece类。tarID包含用户自身信息,用于标识用户,以区分不同的用户;tarType表示所跟踪的业务类型,如视频、图书、试题等。tarID与tarType属于标识信息,联合起来用于区别不同跟踪事物的区间计算及用于统计结果的查询。
TracePiece类,用于表示跟踪片段信息,TracePiece类包括两个属性:pieceRange采用Range类的形式,用于表示作用区间;timeRange采用Range类的形式,表示完成pieceRange的用时区间。pieceRange和timeRange分别通过Range类对象进行记录区间范围。
Range类,表示一个通用封闭区间,用于记录区间范围,记录一个区间开始值和一个区间结束值。Range类可以用于记录视频范围、用时范围、题目范围等信息,分别对应不同的类型分别称为pieceRange类、timeRange类、questionRange类。Range类包括两个参量,分别是start和end,start用于表示起始,end用于表示结束。
Repeated类,用于表示重复作用的范围,包括4个参量,分别是tarID、tarType、reps和time。其中tarID与tarType的描述与Trace类中的属性一致,作为标识;reps为具体的重复作用区间,可以是多个Range类的集合,可以包含多个区间,采用Range类集合的形式进行记录,例如重复观看的视频记录为[30,50],[70,100];time为重复作用发生的时间。
LastResult类,用于表示最新的作用范围情况统计,包括6个参量,分别是coveredRanges、timeRanges、pointCount、timeCount、tarID、tarType。其中,coveredRanges用于表示作用范围集合,由多个有序片段组成,成员彼此之间无交集,以视频为例来说,它表示了已经观看的所有视频片段的合集;timeRanges为用时分布情况,是与coveredRanges对应的集合,记录每一个片段的使用时长,由多个有序片段组成,成员彼此之间无交集;pointCount为作用的总点数;timeCount为用时总长度;tarID与tarType与Trace中的属性一致。
可替换的是:
本实施例中,记录跟踪信息时,可以将Trace类和Tracepiece类这两个结构可以合并为一个结构,用一个合并的跟踪信息类结构来表示跟踪片段信息。该合并的Trace类可以是一个JSON格式(JavaScript Object Notation)。
本实施例中的,Range类可以采用两个独立的字段来完成相同的功能。
本实施例中,可以将tarType融合到tarID中也可以实现区分业务类型和用户的同等效果。
上述学习跟踪模型可以用于视频学习的跟踪记录、做题情况的跟踪记录、读书情况的跟踪记录等需要记录范围、区间的情况,相应类的对象中存储有对应数据。
本发明的一个具体实施例,公开了一种采用上述学习跟踪模型进行学习情况统计的方法,如图2所示,具体包括以下步骤:
步骤S1.接收跟踪信息,根据跟踪信息创建Trace类的对象,Trace类包含tarID、tarType和pieces属性。pieces属性通过TracePiece类的对象表示,可以包含多个TracePiece类的对象,每一个TracePiece类的对象对应一条跟踪信息,tarID、tarType作为标识信息,分别存储使用者信息和片段类型。
具体的,数据采集端将批量跟踪数据或单个跟踪数据发送给学习情况统计处理系统,每一个跟踪数据对应一个片段,包括片段的使用范围信息、使用时间信息、使用者信息、以及片段类型。片段的使用范围信息、使用时间信息存储在TracePiece类的对象中,使用者信息和片段类型分别存储在Trace类的对象tarID、tarType中,Trace类的对象包含了TracePiece类的对象,Trace类的对象中可以聚合多个TracePiece类的对象,表明Trace类中包含了多个片段的信息。
步骤S2.对Trace类的对象进行预处理,所述预处理包括去重、存储和获取最后结果集。
具体的,针对Trace类对象的去重,是依据Trace类对象中的tarID、tarType和TracePiece中的timeRange进行数据去重处理,在同时满足三者(tarID、tarType和TracePiece中的timeRange)值相同,则认为已经处理过,不进行处理,如此设计能节省计算资源,同时简化统计计算的复杂性。
在对Trace类的对象进行去重处理之后,将Trace类的对象进行存储,具体将包含Trace类及TracePiece类的对象持久化到数据库,用于形成用户的学习轨迹,同时用于后续过程执行失败后的重做。
获取最后结果集,具体是依据Trace类对象中的tarID和tarType来获取对应用户上次学习统计结果数据,上次学习统计结果数据存储在LastResult类的对象中;如果tarID和tarType没有对应到一个已有LastResult类的对象(新用户),则创建一个空的LastResult类的对象并初始化。
步骤S3.通过迭代循环处理Trace类对象包含的TracePiece类对象,以进行学习情况统计。每一次迭代循环处理包括学习点区间计算和用时区间计算,通过计算获得已作用信息和重复作用信息。学习点区间计算的已作用信息代表已经学习过的区间范围,重复作用信息代表重复学习的区间范围;用时区间计算的已作用信息代表用时区间分布范围,用时区间计算的重复作用信息应该为空。
步骤S3中的每一次迭代循环处理包括学习区间计算和用时区间计算,通过计算得到已作用信息和重复作用信息。
学习点区间计算和用时区间计算均调用区间计算功能模块执行计算。
区间计算功能模块中设有一个Range类的对象,记为new,new中存储输入到区间计算功能模块中的pieceRange属性值或timeRange属性值,代表跟踪的新区间。
区间计算功能模块中还设有一个Range类的对象,记为newCpy,newCpy用于存储new对象中的数据。
区间计算功能模块中设有一个Range类的对象集合,记为old,old中存储输入到区间计算功能模块中的coveredRanges属性值或timeRanges属性值,即存储了作用范围集合和作用时间,代表已经作用的区间和时间。old可以包含多个Range类的对象,每一个Range类的对象作为old中的一个元素,表示一个已经作用过的区间;old中包含多个元素,代表多个区间,这些区间可以是经过排序,记为old[n]。
区间计算功能模块中设有一个Range类的对象,记为tmp,tmp用于存储old[n]中的数据。
区间计算功能模块中设有一个Range类的对象集合,记为merged,表示学习过的区间列表。
区间计算功能模块中还设有一个Range类的对象集合,记为repeated,表示重复学习的区间列表。
merged和repeated作为区间计算功能模块的计算产出物。
区间计算功能模块的执行步骤如图3,具体包括:
区间计算功能模块接收输入参数,所述输入参数包括A和B;
·针对学习区间计算,输入参数A存储到new中,输入参数A来自TracePiece类对象的pieceRange属性,输入参数B存储到old中,输入参数B来自LastResult类对象的coveredRanges属性;
·针对用时区间计算,输入参数A存储到new中,输入参数A来自TracePiece类对象的timeRange属性,输入参数B存储到old中,输入参数B来自LastResult类对象的timeRanges属性;
检测old中是否有数据,如果没有数据,则认为该用户是第一次学习,直接将new添加到merged中去,并结束流程。
在old中有数据的情况下,将new复制到newCpy中,newCpy用于学习区间的逻辑运算,以减少后续的存储和运算成本,然后通过迭代运算,将old中的每个区间与newCpy进行判断和逻辑运算。old中的每个区间与newCpy进行的计算过程如下:
取tmp=old[n](n从1到old的上限),其中n从1开始并在每次迭代后递增。判断tmp与newCpy是否有交集。进一步的,在判断tmp与newCpy的交集的时候,需要对tmp的边界进行调整,以省去对毗连关系的检测。具体调整方法为:判断newCpy.start位于区间tmp.start和tmp.end+1之间;或者判断newCpy.end位于区间tmp.start-1和tmp.end之间,则表示有交集,并求取该交集。
当tmp和newCpy无交集,则进一步判断newCpy是否等于new。
·如果相等,则说明new还没有被合并,此时为了保证merged的有序性,进一步判断tmp与newCpy的start值。
Figure GDA0002592340710000091
如果tmp.start小于newCpy.start,则直接将tmp放入到merged中并结束本次迭代计算;
Figure GDA0002592340710000092
如果tmp.start大于newCpy.start,则需要先将newCpy添加到merged中,然后设置合并结束标志为true,然后再将tmp放入到merged中并结束本次迭代计算。
·如果newCpy和new不相等,则说明new已经被合并过,则将newCpy放入merged中,并设置合并结束标志为true,然后再将tmp放入到merged中并结束本次迭代。
当tmp和newCpy有交集,则将交集添加到repeated(交集结果)中去(所述交集需去掉毗连检测元素,即tmp.start-1或tmp.end+1),并更新newCpy使其等于tmp与newCpy的合并结果。进一步的,newCpy等于tmp与newCpy合并具体是:newCpy.start取tmp和newCpy中start的最小值;newCpy.end取tmp和newCpy中end的最大值。
每次迭代计算后都需要判断合并结束标志。
如果合并结束标志没有设置为true,则进一步判断迭代是否完成;
·如果old中不是每一个区间均进行了上述迭代计算,则重新执行上述迭代计算过程;
·如果old中每一个区间均进行了迭代计算,则将new添加到merged中,再结束区间计算功能模块的计算过程;
如果合并结束标志设置为true了,则后续的old元素无需再合并了,直接将未执行迭代的old中的区间添加到merged中去即可。
在执行上述区间计算功能模块的计算后,得到新的merged和repeated,merged代表已作用信息,repeated代表重复作用信息。
经过区间计算功能模块处理后得到的merged集合和repeated集合,在针对学习区间计算时,merged集合和repeated集合分别表示已作用区间和重复作用区间;针对用时区间计算,merged集合表示用时分布,repeated集合为空。上述作用具体在实施例中指学习,已作用表示已学习,重复作用表示重复学习。
步骤S4.获取并存储重复数据信息,具体将步骤S3中学习点区间计算的迭代计算结果中,如果有重复作用信息,即repeated不为空,则将重复作用信息转换为重复数据,并储存。
步骤S5.更新统计结果并存储:分别将merged和reperated中的信息更新到LastResult对象中并进行保存。
上述实施例,仅以示例性的方式展示了本发明的一种具体实现方式,但本发明的保护范围并不局限于此。
本实施例中,为了提高区间合并的计算效率,本方案对LastResult中的coveredRanges属性和timeRanges属性的值进行了排序处理,也可以采用不排序的方式实现。合并计算时也可引入高效的查找算法(如折半查找)。
上述实施例提供的基于作用区间的学习跟踪模型和学习情况统计的方法,还可以有更广阔的应用领域,比如各种有序连续任务的完成情况、视频学习情况、做题情况、书籍阅读情况等。
综上所述,本发明实施例提供了一种基于学习跟踪模块进行学习情况统计的方法,能简化系统的开发,降低系统运营成本;学习跟踪模块中进一步通过记录作用区间的起始和结束这两点、以及采用区间计算的方式来代替逐点记录和传统汇总统计的方式,能实现更大跨度的运算,并简化统计过程,得以从存储空间和运算时间上双向节约成本。基于学习跟踪模块的学习情况统计的方法,相对于传统的统计方法,能更灵活的控制跟踪和计算的粒度,而不会对模型的结构造成影响。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (5)

1.一种基于学习跟踪模型进行学习情况统计的方法,其特征在于,所述学习跟踪模型包括跟踪信息类,Range类,Repeated类,LastResult类;其中Range类聚合到跟踪信息类,Range类还聚合到Repeated类和LastResult类;
跟踪信息类,用于表示跟踪信息,包括跟踪片段信息、标识信息;
Range类,表示一个通用封闭区间,用于记录范围,记录了一个区间开始值和一个区间结束值;
Repeated类,用于表示重复作用的范围,包括标识信息、重复作用范围;
LastResult类,用于表示最新的作用范围情况统计;
学习情况统计的方法,包括以下步骤:
步骤S1.根据接收的跟踪信息创建跟踪信息类的对象;
步骤S2.对跟踪信息类的对象进行预处理;
步骤S3.通过迭代循环处理跟踪信息类的对象,以进行学习情况统计;
步骤S4.获取并存储重复数据信息;
步骤S5.更新统计结果并存储;
所述跟踪信息类包括Trace类和Tracepiece类;Tracepiece类包括pieceRange和timeRange属性,pieceRange属性用于表示作用区间,通过Range类的对象进行记录;timeRange属性用于表示用时区间,通过Range类的对象进行记录;TracePiece类对象聚合到Trace类对象,每一个TrancePiece类的对象对应一条跟踪信息;
步骤S3中通过迭代循环处理跟踪信息类的对象,以进行学习情况统计,包括:
接收输入参数A和B,分别存储到Range类的对象new和对象集合old中;其中:针对学习区间计算,输入参数A为TracePiece类对象的pieceRange属性,输入参数B为LastResult类对象的coveredRanges属性;针对用时区间计算,输入参数A为TracePiece类对象的timeRange属性,输入参数B为LastResult类对象的timeRanges属性;
在old中有数据的情况下,将对象new复制到newcpy中,并将old中的每个区间与newCpy进行运算,包括:
将old中的第n个区间赋值给Range类的对象tmp,使tmp等于old[n],其中n从1开始并在每次迭代后递增;
判断tmp与newCpy是否有交集,包括:对tmp的边界进行调整:判断newCpy.start位于区间tmp.start和tmp.end+1之间;或者判断newCpy.end位于区间tmp.start-1和tmp.end之间,则表示有交集;
如果tmp和newCpy无交集,则进一步判断newCpy是否等于new;如果相等,则进一步判断tmp与newCpy的start值,如果tmp.start小于newCpy.start,则直接将tmp放入到merged中并结束本次迭代;如果tmp.start大于newCpy.start,则先将newCpy添加到merged对象中,然后设置合并结束标志为true,然后再将tmp放入到merged对象中并结束本次迭代;如果newCpy和new不相等,则将newCpy放入merged对象中,并设置合并结束标志为true,然后再将tmp放入到merged对象中并结束本次迭代;
如果tmp和newCpy有交集,则将交集添加到repeated对象中去,并更新newCpy使其等于tmp与newCpy合并;其中:merged对象和repeated对象均为Range类的对象;
每次迭代后,判断合并结束标志;
如果合并结束标志没有设置为true,则进一步判断迭代是否完成;如果old中不是每一个区间均进行了运算,则重新执行上述迭代过程;如果old中每一个区间均进行了运算,则将new添加到merged对象中,再结束区间计算功能模块的计算过程;
如果合并结束标志设置为true了,则将未执行运算的old中的其他区间添加到merged对象中;
步骤S5中,更新统计结果并存储,包括:将merged对象和repeated对象中的信息更新至LastResult对象中并进行保存。
2.根据权利要求1所述的学习情况统计的方法,其特征在于,所述学习跟踪模型的Repeated类包括标识属性、重复作用范围属性和重复作用时间属性;其中,重复作用范围属性通过Range类对象的集合表示;
LastResult类包括coveredRanges属性、timeRanges属性、统计值属性和标识属性;其中,coveredRanges属性用于表示作用区间情况,通过Range类对象的集合表示;timeRanges属性用于表示用时分布情况,通过Range类对象的集合表示;统计值属性用于表示作用总点数和/或用时总长度;标识属性用于标识用户和/或业务类型。
3.根据权利要求2所述的学习情况统计的方法,其特征在于,所述LastResult类中的coveredRanges属性和timeRanges属性的值作了排序处理。
4.根据权利要求3所述的学习情况统计的方法,其特征在于,步骤S2中所述的预处理包括去重、存储和获取最后结果集;
其中,去重是依据Trace类对象中标识信息和TracePiece中的timeRange进行数据去重处理;
去重处理之后将Trace类的对象进行存储;
获取最后结果集是依据Trace类对象中的标识信息来获取对应用户上次学习统计结果数据,上次学习统计结果数据存储在LastResult类的对象中;
如果新用户,则创建一个空的LastResult类的对象并初始化。
5.根据权利要求1所述的学习情况统计的方法,其特征在于,调用区间计算功能模块进行所述学习区间计算和用时区间计算,包括以下步骤:
如果old对象没有数据,则直接将new添加到Range类的对象集合merged中去,并结束运算。
CN201710281301.XA 2017-04-26 2017-04-26 一种基于学习跟踪模型的学习情况统计方法 Active CN107025615B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710281301.XA CN107025615B (zh) 2017-04-26 2017-04-26 一种基于学习跟踪模型的学习情况统计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710281301.XA CN107025615B (zh) 2017-04-26 2017-04-26 一种基于学习跟踪模型的学习情况统计方法

Publications (2)

Publication Number Publication Date
CN107025615A CN107025615A (zh) 2017-08-08
CN107025615B true CN107025615B (zh) 2020-09-11

Family

ID=59526747

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710281301.XA Active CN107025615B (zh) 2017-04-26 2017-04-26 一种基于学习跟踪模型的学习情况统计方法

Country Status (1)

Country Link
CN (1) CN107025615B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542912B (zh) * 2018-12-04 2020-10-30 北京锐安科技有限公司 区间数据存储方法、装置、服务器及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226797A (zh) * 2013-04-02 2013-07-31 浙江大学 基于在线学习全过程的绩效考核的方法
CN104504517A (zh) * 2014-12-17 2015-04-08 天脉聚源(北京)教育科技有限公司 一种用于智慧教学系统的教学数据管理装置及其管理方法
CN105023208A (zh) * 2014-09-10 2015-11-04 中国人民解放军第二军医大学 学习过程获取装置
CN105225179A (zh) * 2015-08-28 2016-01-06 广东小天才科技有限公司 一种学习过程监控方法和学习过程监控装置
CN105574630A (zh) * 2014-10-14 2016-05-11 北大方正集团有限公司 在线课程的管理方法及管理系统
CN105976281A (zh) * 2016-05-05 2016-09-28 北京爱提分博乐教育科技有限公司 一种导航式教学系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226797A (zh) * 2013-04-02 2013-07-31 浙江大学 基于在线学习全过程的绩效考核的方法
CN105023208A (zh) * 2014-09-10 2015-11-04 中国人民解放军第二军医大学 学习过程获取装置
CN105574630A (zh) * 2014-10-14 2016-05-11 北大方正集团有限公司 在线课程的管理方法及管理系统
CN104504517A (zh) * 2014-12-17 2015-04-08 天脉聚源(北京)教育科技有限公司 一种用于智慧教学系统的教学数据管理装置及其管理方法
CN105225179A (zh) * 2015-08-28 2016-01-06 广东小天才科技有限公司 一种学习过程监控方法和学习过程监控装置
CN105976281A (zh) * 2016-05-05 2016-09-28 北京爱提分博乐教育科技有限公司 一种导航式教学系统

Also Published As

Publication number Publication date
CN107025615A (zh) 2017-08-08

Similar Documents

Publication Publication Date Title
AU2017202873B2 (en) Efficient query processing using histograms in a columnar database
Xin et al. Production machine learning pipelines: Empirical analysis and optimization opportunities
Zhu et al. Error detection and impact-sensitive instance ranking in noisy datasets
CN112464105B (zh) 基于大数据定位的互联网平台信息推送方法及云计算中心
CN103608765A (zh) 虚拟机快照和分析
CN111126495B (zh) 模型训练方法、信息预测方法、装置、存储介质及设备
US8019765B2 (en) Identifying files associated with a workflow
US20040002983A1 (en) Method and system for detecting tables to be modified
CN110706015A (zh) 一种面向广告点击率预测的特征选取方法
CN114398473A (zh) 企业画像生成方法、装置、服务器及存储介质
Slavkov et al. HMC-ReliefF: feature ranking for hierarchical multi-label classification
CN107025615B (zh) 一种基于学习跟踪模型的学习情况统计方法
Lichtenstein et al. Attribute-driven case notion discovery for unlabeled event logs
US11308130B1 (en) Constructing ground truth when classifying data
CN116860583A (zh) 数据库的性能优化方法、装置、存储介质及电子设备
US20200242121A1 (en) Method and apparatus for analyzing data
CN115576834A (zh) 支撑故障还原的软件测试复用方法、系统、终端及介质
CN113419964B (zh) 一种测试案例生成方法、装置、计算机设备及存储介质
CN115630070A (zh) 一种信息推送方法、计算机可读的存储介质及电子装置
CN110929207B (zh) 数据处理方法、装置和计算机可读存储介质
CN113742116A (zh) 一种异常定位方法及装置、设备、存储介质
CN110851517A (zh) 一种源数据抽取方法、装置、设备及计算机存储介质
KR100585176B1 (ko) 입출력 서브시스템에서 입출력 명령의 부하 판단 방법 및장치
WO2020101478A1 (en) System and method for managing duplicate entities based on a relationship cardinality in production knowledge base repository
CN117609175B (zh) 一种可配置的工控文件采集解析方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant