一种基于熟悉环境协助用户学习编程的方法技术

技术编号:22000326 阅读:19 留言:0更新日期:2019-08-31 05:25
本发明专利技术公开了一种基于熟悉环境协助用户学习编程的方法,所述方法包括:获取用户生活相关实体降序列表;获取代码任务集合;获取所述实体降序列表中实体名称相对应的图片;推送推荐代码任务给用户进行编程练习;本发明专利技术方法结合了用户熟悉环境,获取用户熟悉程度较高的实体、实体图片及代码任务作为编程学习依据,最终得到了更优的编程学习的体验。

A Method Based on Familiarity with Environment to Assist Users in Learning Programming

【技术实现步骤摘要】
一种基于熟悉环境协助用户学习编程的方法
本专利技术属于编程教育
,尤其是一种基于熟悉环境协助用户学习编程的方法。
技术介绍
随着素质教育的不断推进和生活水平的提高,越来越多的儿童已经接触到了一些计算机设备,学习编程不仅对儿童的数学和科学知识方面有帮助,而且对于语言、创造力和社会交流等方面都能有积极和重要的作用。此外,从培养儿童计算思维的角度来讲,学习编程也具有其重要价值。而现有技术中,传统的编程需要学习大量的指令、函数名等内容,是一个复杂并且艰难的过程;而儿童以及青少年在初学时就进行大量指令的学习,不易很快的上手,容易失去进一步学习编程的兴趣。Scratch是由麻省理工学院推出的编程工具,是适合于全世界儿童学习编程和交流的工具和平台,该平台采用Java构建,作品可以随意发布到互联网和光盘U盘上,Scratch利用图形化界面,把编程需要的基本技巧囊括其中,包括建模,控制,动画,事件,逻辑,运算等,这个软件的特点是:使用者可以不认识英文单词,也可以不会使用键盘,构成程序的命令和参数通过积木形状的模块来实现。通过这种图形化编程,可以大大增加儿童学习编程的门槛与难度。但是儿童理解能力毕竟不如成年人,在图形化编程学习中,如果涉及过多陌生的编程任务及图片,容易对儿童的编程学习造成困扰,使其失去学习兴趣。如何更进一步吸引儿童学习编程,提供儿童更加熟悉的编程任务及图片,是一个值得解决的问题。
技术实现思路
本专利技术的目的是为了解决上述现有技术的缺陷,提供一种基于熟悉环境协助用户学习编程的方法。本专利技术的目的可以通过采取如下技术方案达到:一种基于熟悉环境协助用户学习编程的方法,其特征在于,包括:获取实体降序列表;获取代码任务集合;获取所述实体降序列表中实体名称相对应的图片;推送推荐代码任务给用户进行编程练习;优选的,所述获取实体降序列表,包括:获取所述用户熟悉的实体名称,得到实体集合,并根据所述熟悉的实体名称的出现频率,对所述实体集合做降序排序,得到实体降序列表。优选的,所述获取所述用户熟悉的实体名称,包括:通过图像识别技术,获取用户平时接触过物品的实体名称,或/和通过物联网技术,获取所述用户平时接触过实体的实体名称,或/和通过语音识别技术,获取所述用户平时提及的实体名称。优选的,所述获取代码任务集合,包括:通过语音识别技术,获取所述用户生活语音信息文本中包含的命令文本;判断所述命令文本是否满足转化为代码任务的条件;将所述命令文本转化为代码任务,得到所述代码任务集合;优选的,所述获取所述用户生活语音信息文本中包含的命令文本,包括:判断所述生活语音信息文本是否属于祈使句,如果属于,将所述生活语音信息文本归类为命令文本。优选的,所述判断所述命令文本是否满足转化为代码任务的条件,包括:结合语义理解技术,识别所述命令文本的实体及意图结果。所述实体及意图结果包括:至少一个动作执行者,至少一个用户意图,至少一个目标实体。所述用户意图,是可通过图形化界面进行可视化呈现的。优选的,所述代码任务:是一段描述性的文本和/或是在Scratch图形化编程平台的可执行代码。优选的,所述获取所述实体降序列表中实体名称相对应的图片,包括:遍历所述实体降序列表;判断图形化编程平台客户端中是否存在与所述实体降序列表中每个实体名称相对应的图片;接受所述用户上传的实体名称对应的图片;向服务器拉取实体名称对应的图片。优选的,所述编程练习是基于所述实体降序列表中实体名称相对应的图片及所述推荐代码任务的描述性文本进行的编程练习。附图说明图1是根据本专利技术实施方式的一种基于熟悉环境协助用户学习编程的方法的流程示意图。具体实施方式S1:通过图像识别技术,获取用户平时接触过物品的实体名称。例如,通过家庭监控设备获取用户生活图像,结合图像识别技术,得到所述用户生活图像中包含着“茶杯”,“小背包”,“三角椅子”等实体,得到这些实体的实体名称。S2:通过物联网技术,获取所述用户平时接触过实体的实体名称。例如,通过连接物联网的空调遥控器,可以得到“遥控器”,“空调”等实体名称。S3:通过语音识别技术,获取所述用户平时提及的实体名称和命令文本。例如,通过录音设备获取所述用户的生活语音信息,结合语音识别技术,得到所述用户的生活语音信息文本“妈妈,帮我拿一杯水”,对该句子进行实体抽取,得到“妈妈”,“一杯水”等实体名称,并判断该句子是否属于命令文本,判断方法是:判断该句子是否属于祈使句,如果属于,将其归类为命令文本。所述录音设备,是具有录音功能的设备,例如手机,家庭管家机器人等。S4:根据步骤S3获取的命令文本,判断所述命令文本是否满足转化为代码任务的条件,如果满足,将所述命令文本转化为代码任务。具体包括:(a)采用Rasa自然语言理解框架,对所述命令文本进行语义解析,得到所述用户的意图,例如:所述命令文本为“妈妈,帮忙把桌子往左边移动30厘米,我觉得他太碍事了。”。经过rasa自然语言理解框架语义解析后,可以得到用户意图的目标实体为“桌子”,用户意图为“向左边移动”,移动距离为“30厘米”,动作执行者为“妈妈”。Rasa是一个自然语言理解框架,可以对输入文本进行语义理解,包括意图识别,实体识别,它会把输入文本转换为结构化的数据,并且支持多轮对话。(b)检测所述命令文本通过Rasa自然语言理解框架识别到的实体及意图结果是否满足转化为代码任务的条件,如果满足,将所述命令文本转化为代码任务。所述转化为代码任务的条件是根据系统需要预设的条件。具体包括:所述实体及意图结果,包括:至少一个动作执行者,至少一个用户意图,至少一个目标实体。所述用户意图,是可通过图形化界面进行可视化呈现的,例如“移动”,“旋转”等。所述代码任务:是一段描述性的文本和/或是在Scratch等图形化编程平台可执行的可执行代码。S5:根据步骤S1-S3获取的所有实体名称,取并集,得到实体集合,对所述实体集合中每个实体名称的出现频率做降序排序,得到实体降序列表。S6:根据步骤S3-S4获取的所有代码任务,取并集,得到代码任务集合。S7:遍历所述实体降序列表,判断图形化编程平台客户端中是否存在与所述实体降序列表中每个实体名称相对应的图片,接受所述用户上传的该实体名称对应的图片,或向服务器拉取该实体名称对应的图片。例如:所述实体降序列表中有一个实体名称为“妈妈”,判断到图形化编程平台客户端中并没有实体“妈妈”对应的图片,接受所述用户上传的“妈妈”对应的图片,或向服务器抓取“妈妈”对应的图片。所述服务器储存了大量图片以及实体名称--图片的对应关系,方便在获取不到所述用户上传的图片时,提供适合的图片。S8:根据所述实体降序列表及所述代码任务集合,结合预设算法,对所述代码任务集合进行排序,得到代码任务排序集合。所述预设算法可以是:将所述实体降序列表中每一个实体名称的出现频率作为权重,根据所述代码任务集合中每个代码任务包含的实体名称及其对应的权重计算出所述代码任务集合中每个代码任务的权重,对所述代码任务集合中每个代码任务的权重做降序排序,得到代码任务排序集合。实体名称的出现频率越高,意味着所述用户对该实体名称的熟悉程度越高。代码任务中包含的实体名称的出现频率越高,意味着所述用户对该代码任务的熟悉程度越高,所述用户对该代码任务也本文档来自技高网...

【技术保护点】
1.一种基于熟悉环境协助用户学习编程的方法,其特征在于,包括:获取实体降序列表;获取代码任务集合;获取所述实体降序列表中实体名称相对应的图片;推送推荐代码任务给用户进行编程练习。

【技术特征摘要】
1.一种基于熟悉环境协助用户学习编程的方法,其特征在于,包括:获取实体降序列表;获取代码任务集合;获取所述实体降序列表中实体名称相对应的图片;推送推荐代码任务给用户进行编程练习。2.根据权利要求1所述的一种基于熟悉环境协助用户学习编程的方法,其特征在于:所述获取实体降序列表,包括:获取所述用户熟悉的实体名称,得到实体集合,并根据所述熟悉的实体名称的出现频率,对所述实体集合做降序排序,得到实体降序列表。3.根据权利要求2所述的一种基于熟悉环境协助用户学习编程的方法,其特征在于:所述获取所述用户熟悉的实体名称,包括:通过图像识别技术,获取用户平时接触过物品的实体名称或/和通过物联网技术,获取所述用户平时接触过实体的实体名称或/和通过语音识别技术,获取所述用户平时提及的实体名称。4.根据权利要求1所述的一种基于熟悉环境协助用户学习编程的方法,其特征在于:所述获取代码任务集合,包括:通过语音识别技术,获取所述用户生活语音信息文本中包含的命令文本;判断所述命令文本是否满足转化为代码任务的条件;将所述命令文本转化为代码任务,得到所述代码任务集合。5.根据权利要求4所述的一种基于熟悉环境协助用户学习编程的方法,其特征在于:所述获取所述用户生活语音信息文本中包...

【专利技术属性】
技术研发人员:沈泳龙
申请(专利权)人:韶关市启之信息技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1