第一阶段(准备工作)
7.5~7.11
查阅参考文献
参考文献
7.12~7.18
请各位寻找国内外相关系统资料:
①大体功能相同有关其他学科的系统;
②有关数学(小学初高中)的学习或纯管理系统。
在此基础上请思考:
①已有功能如何应用到高等教育数学方面;
②现有的系统可以如何应用和改进;
③现有的系统还缺少哪些必要功能。
另:明确我们的系统用户为学校,教师,学生,不过大家可以把重点先放在学生方面。
📌选定资料请群文件上传以避免研读相同资料,下周一之前完成上述任意点即可,届时选合适时间开小会~
个人理解
该网址内提到了大量的优质 LMS 系统,我选择对 Canvas LMS 进行研究,因为 Canvas LMS 是全球最大的以学校为重点
的云LMS提供商之一,目前已被全球 3000 多个学区、大学和教育机构使用。它旨在使学生、教师和员工能够开发、提供和管理面对面的在线学习环境,以期实现学术和企业学习目标,而这与我们面向湖南大学这一教育机构实现数学方面的智能学习管理
的目标不谋而合。
与此同时,众多国内顶尖高校都在使用本系统,这使得这个系统更具普适性与学习价值。
最重要的一点在于,其为开源系统,其在 Github 上有大量的开源代码,它在 AGPLv3 许可下发布,供任何有兴趣了解或使用学习管理系统的人使用。并且其代码仓库获得了四千 Star ,说明其得到了很多人的认可。如果我们在后期需要进行代码的具体编写,将大大减轻我们的工作量。
初探Canvas LMS
基本功能
学生端
教师端
强大的整合功能
支持大量教育工具嵌入式用,集成了许多第三方教育应用、社交网络和即时聊天工具,并正在持续发展更新中。
举个例子,Qualtrics 是一个非常强大的调查问卷设计及数据分析的软件,在研究型大学中的应用极其广泛,通过进入 Canvas 找到 Qualtrics 的访问通道就可以不用跳转到其他浏览器中进行访问和其他操作了。我们的 LMS 也可以设计一个内嵌腾讯文档等高效办公软件的接口。
学生与教师端的对接功能
学生可以通过这个平台了解关于这一学科课程的绝大部分信息:查看所有课程资料、提交作业、考试、得到评分与评语、获知成绩、与讨论小组合作交流等等;教授可以通过这个平台发布课程资料、布置作业和明确要求、设置考试内容和评分机制、撰写评语和公布成绩、将学生分组、获悉学生整体的学习情况等(见另一篇详细谈Canvas(二)“老师篇”)。
总结
Canvas LMS 是一个优质的在线学习管理系统,其界面干爽简洁,功能一应俱全,与此同时,其开源的源码可以帮助我们在后期完善代码的编写与系统的架构,能够为我们带来巨大的帮助。
①已有功能如何应用到高等教育数学方面;
在我看来,Canvas 内置的功能已经非常全面,可以全盘引入到高等数学教学模块中来;
②现有的系统可以如何应用和改进;
我们可以针对性地专攻
数学教育
模块(如果什么都想做那就与教务系统定位重合了),如果将该系统与伐树、志愿者辅导等有机结合起来并制作成一个APP,那又是一个很大的创新(据不可靠消息,一位信科院19级的同学自制了一个“离散数学”APP,其内含大量的功能,正处于内测开发期,我们可以去观摩学习)下面是我的一个构想:
作业情况及测验成绩查看
在APP内能够查询到自己每次作业的批改情况并给出正确解析,同时也能看到自己历次机考的失分位置,找到自己掌握薄弱的部分。
基于大数据的知识点掌握度查看
APP能够根据历次的作业与测验情况自动给出知识点掌握程度的推断,让学生知道自己不掌握的知识点是哪些、在哪里、需要如何巩固。
基于未掌握知识点的网课推荐服务
众所周知,在很多大学课程中,课前自学+课下巩固的效果往往比仅仅上课听讲的效果好。
在课前学生能通过听网课了解知识点的分布与结构层次,在课后学生能通过听网课巩固自己对知识点的理解,APP可以基于前面分析出的薄弱知识点给予学生个性化的、精确到某一单元某一节的网课推荐,让学生能够在百忙的学习生涯中更高效地巩固知识点。
基于匹配算法的伐树志愿者对接功能
数学院有定期举办“伐树”志愿者活动,该活动旨在帮助在高数学习中遇到困难的其他专业同学,数学院志愿者将在APP内与外院学生对接,给予一对一学习辅导帮助。
在APP中,上述活动会数字化、常态化,通过在线预约,外院学生可以自行决定辅导时间、辅导地点,数院志愿者也可以在线上自由选择自己想要志愿服务的对象,大大提高了志愿活动的自由度,节省了大家的时间。
与此同时,APP将与数院“伐树”微信公众号进行对接,定期更新高数知识点视频库,确保其他院的学生能及时收到最新的高数讲解视频。
③现有的系统还缺少哪些必要功能。
其缺少一个
基于往期成绩的知识点预测与成绩分析模型
,而这也是我们数学系学生擅长的部分,我们可以迎难而上,用自己的专业优势将其解决,这一小步也许就是 LMS 系统领域的一大步。
参考网址
Canvas LMS 开发商 Instructure Inc 官网
会议记录
经过小组讨论交流,我们得到以下信息
项目流程
李墨涵:
- 明确系统功能,包括:
①现有系统平台、APP已有的可用功能;
②针对数学的创新功能。 - 选取具有创新性质的项目难点,考察可行性,着手研究
- 研究阶段:
①收集数据,建立数据库;
②尝试解决问题,设计算法程序。 - 重复第2、3条,时间允许可尝试进行网页设计,实现系统的搭建
基础功能的补充完善
王弘烨:
- 错题分析 相关知识点 相关习题
- 作业情况,期末学情分析,成绩可视化
- 建立社交网络,加强用户交互,资源共享
- 开发论坛等形式,用户讨论
- 录入教材的习题,作为数据基础
高雨溦:
6. 教师可以创建班级,管理考试
7. 学生可以加入班级,查看同学学习情况
李拙诚:
8. 增加学生分组功能
9. 关联网课推荐
项目实现可行的工具方法
李拙诚:
- 参考Canvas
- 考虑内嵌办公软件等程序
需要解决的难点
王路博:
- 证明题 数据的处理
- 内置习题以便于分析
许佳敏:
3. 升学就业的预测,目标方向的解决方案
7.19~7.25
①请仔细阅读PDF《Moodle Course Design Best Practices》《CANVAS LMS Course Design-Create and Deliver Interactive Online Courses on the Canvas》
②编写系统普遍功能的Word文档(格式如下图),针对用户分组:王弘烨、王路博、李拙诚负责学校、教师两个方面,李墨涵、许佳敏、高雨薇负责学生方面
请各位尽快完成上述内容,文档写好在群里上传即可~辛苦啦
再探Canvas LMS
总结
针对学校与教师:
- 基本设置:能够设置自己的个人信息、创建自己的课程以及相关内容(作业、讨论、小测等)
- 成绩分析:能够录入学生的每次测试成绩帮助成绩预测模型正确分析出学生对知识点的掌握情况,且能够通过系统反馈的信息发现学生普遍的薄弱点,在课程中加以重点讲解
会议记录
李墨涵:
- 教师上传教学进度
- 教师直播课程
- 教师可以创建班级,设管理员,发起投票、公告
- ==课程mooc 社交 答疑分析(学伴) 注册登录学业管理==
- ==教学日历等功能性的小程序==
- 注册登录:学校班级认证
- 通讯录:用户可添加其他用户、教师成为好友,信息交流
- 电子教材:提供数学教材和教辅的PDF,关联网课推荐
- 课程信息推送:开课时间、任课老师等基础信息;加入班级或小组;以及==知识点预习,重难点提示==
- 随堂互动:签到,同步PPT到个人,随堂问答,错题记录
- 作业记录:线上批改作业,收录错题,==知识点分析和同类习题推荐==,查看在整体中的比例情况
- 小测和考试记录:提供往年题库,帮助复习;根据作业和小测数据分析薄弱知识点,==提供复习重点==;成绩趋势分析
- 学业就业趋势:推送保研夏令营、考研政策、出国留学、企业招聘信息;分析用户数据,判断其适合的方向,提供有相关需求的学校、企业信息
- 问题检索:【参考作业帮】
- 交流平台:系统内置课程同名论坛、学习资源分享论坛等,用户发帖、上传资源
- 教学日历:跟进课表和教学进度,考试安排
- 自习打卡:记录自习时间;完成自习任务【内置一个番茄钟】
王弘烨:
课程管理
课程管理:管理平台全部课程,课程章节设置,课件设置,考核设置等
课程制作:管理平台自定义课件,将文档、多媒体资料组合成学习课件资源管理
资源类型:管理平台资源类型,包括文档、资料、音频、视频等
资源分类:管理资源分类,分类可根据实际情况自定义
资源管理:管理平台资源,可设置开放状态考核作业
作业布置:管理课程作业,布置新作业
作业统计:统计作业批改情况,成绩分布人员管理
员工管理:管理企业、机构工作人员信息,给予一定权限协助管理
学员管理:管理平台所有学员,状态设置、资料编辑等,可批量导入
班级管理:管理平台所有班级,分配班级成员,分配课程,分配管理人员社区交流
课程评价:查询与回复学员对课程的评价
提问互动:解答学员在学习过程中提出的疑问系统管理
账户管理:实时查看账户剩余空间、流量、有效期等信息
公告管理:管理平台公告,接收平台系统的功能更新消息
王路博:
教师学校端:
自己建立自己的账户,其中包括个人信息,所授专业等。同时生成课程讨论大群,由老师担任管理员,大群下内设小群,由助教担任管理员。大群负责通知考试,平时作业等内容,助教则在小群中进行答疑,达到学习平台与交流平台的互通。
资源库允许所有人向其中添加资料,并定期进行审核。以期达到属于自己平台的电子图书馆,有需要的同学均可在其中找到自己需要的pdf
在教授完成对应章节后,发布小测试。抽取其中部分同学设立成绩折线图,并进行统计,待学期即将结束时将各个章节进行归纳整理,即可看出学生对于不同章节的掌握情况,在复习时可以更加具有针对性。
学校方面管理者在查看学生成绩后进行学生间小范围分组,增强学生之间的互相讨论。
在需要进行直播授课时,若该门课程选择人数较多,则在允许的情况下分不同直播间进行管理,并在每个直播间中安排助教,避免产生因人数过多导致的网络波动以及在上课时由于提问人数过多导致遗漏的发生。
与现有超星、MOOC等进行数据互通,在其中一个平台上即可查阅其余平台上的学习资料、学习课程等。
经过小组讨论,我们向大家发出在线问卷,调查同学们在数学专业学习中常用的数学学习软件,并收集他们认为学习软件中一个加入的功能,最终得到以下结果:
序号 | 提交答卷时间 | 所用时间 | 来源 | 来源详情 | 来自IP | 1、您的年级 | 您的专业 | 您较常用的数学学习软件 | 您觉得目前的数学学习系统里欠缺哪些功能 |
1 | 2021/7/26 15:51:36 | 25秒 | 微信 | N/A | 120.200.54.253(辽宁-抚顺) | 大二 | 计算机 | 中国大学mooc | 能听明白的学生 |
2 | 2021/7/26 15:53:46 | 19秒 | 微信 | N/A | 42.57.113.66(辽宁-鞍山) | 大二 | 会计 | 中国大学mooc┋b站 | 不详细 |
3 | 2021/7/26 15:56:09 | 88秒 | 微信 | N/A | 182.200.24.178(辽宁-沈阳) | 大三 | 信息与计算科学 | b站 | 学术论文的撰写的相关教学 |
4 | 2021/7/26 15:58:11 | 37秒 | 微信 | N/A | 110.87.31.173(福建-厦门) | 大二 | 计算机科学 | b站 | 拍题解答 |
5 | 2021/7/26 15:59:35 | 36秒 | 微信 | N/A | 211.97.129.191(福建-厦门) | 大二 | 食品科学与工程 | 中国大学mooc┋学校课程中心 | 知识点总结 |
6 | 2021/7/26 16:05:50 | 20秒 | 微信 | N/A | 175.169.126.162(辽宁-沈阳) | 大二 | 自动化 | b站 | 无 |
7 | 2021/7/26 16:05:59 | 60秒 | 微信 | N/A | 175.167.146.96(辽宁-沈阳) | 大二 | 交通运输 | b站 | 答案详细解析 |
8 | 2021/7/26 16:08:12 | 72秒 | 微信 | N/A | 113.224.103.163(辽宁-沈阳) | 大二 | 生物科学 | 中国大学mooc┋b站 | 没有举一反三功能 |
9 | 2021/7/26 16:16:30 | 22秒 | 微信 | N/A | 140.243.174.92(福建-福州) | 大二 | 工程管理 | b站┋学校课程中心 | 没有系统 |
10 | 2021/7/26 16:17:41 | 16秒 | 微信 | N/A | 223.101.27.176(辽宁-沈阳) | 大二 | 金融 | 中国大学mooc | 无 |
11 | 2021/7/26 16:18:14 | 98秒 | 微信 | N/A | 120.36.254.128(福建-厦门) | 大三 | 母猪的产后护理专业 | 学校课程中心 | 无系统 |
12 | 2021/7/26 16:21:02 | 19秒 | 微信 | N/A | 223.104.175.106(辽宁-沈阳) | 大二 | 英语 | 中国大学mooc┋b站┋智慧树/知到 | 缺乏练习环节 |
13 | 2021/7/26 16:22:38 | 63秒 | 微信 | N/A | 119.233.180.42(福建-厦门) | 大二 | 食品 | 学校课程中心┋其他〖课堂派〗 | 没用过 |
14 | 2021/7/26 16:27:56 | 36秒 | 微信 | N/A | 223.104.175.104(辽宁-沈阳) | 大二 | 土木工程 | 中国大学mooc┋b站┋智慧树/知到┋学校课程中心 | 解答问题模块 |
15 | 2021/7/26 16:30:14 | 38秒 | 微信 | N/A | 36.130.34.67(辽宁-未知) | 大二 | 金融 | 中国大学mooc┋b站┋智慧树/知到┋学校课程中心 | 实时讲解 |
16 | 2021/7/26 16:36:42 | 56秒 | 微信 | N/A | 36.251.188.150(福建-泉州) | 大三 | 信息工程 | b站 | 缺小猿搜题 |
17 | 2021/7/26 16:44:17 | 30秒 | 微信 | N/A | 117.30.177.75(福建-厦门) | 大二 | 能源 | 中国大学mooc┋b站 | 做习题加对答案 |
18 | 2021/7/26 16:54:34 | 15秒 | 微信 | N/A | 219.217.158.137(辽宁-大连) | 大二 | 人工智能 | 中国大学mooc┋b站 | 无 |
19 | 2021/7/26 17:11:19 | 152秒 | 微信 | N/A | 175.161.89.161(辽宁-沈阳) | 大二 | 机械工程 | 中国大学mooc┋b站 | 课后讨论不够 |
20 | 2021/7/26 17:42:00 | 130秒 | 微信 | N/A | 116.2.123.100(辽宁-沈阳) | 大二 | 经济学,心理学 | b站┋学校课程中心 | 例题较少 |
21 | 2021/7/26 19:49:50 | 24秒 | 微信 | N/A | 39.144.177.58(河南-商丘) | 大三 | 化生 | 中国大学mooc┋智慧树/知到 | 没感觉 |
22 | 2021/7/26 20:12:05 | 21秒 | 微信 | N/A | 182.200.181.36(辽宁-沈阳) | 大二 | ACC | b站 | 练习 |
23 | 2021/7/26 20:25:53 | 74秒 | 微信 | N/A | 223.104.36.155(安徽-未知) | 大三 | 数学系 概率统计专业 | 其他〖R,MATLAB,mathsmatica,latex〗 | 编程语句学习起来比较复杂 |
24 | 2021/7/27 7:27:28 | 32秒 | 微信 | N/A | 114.254.0.99(北京-北京) | 大二 | 自动化 | 中国大学mooc┋b站 | 例题 |
25 | 2021/7/29 19:44:03 | 20秒 | 手机提交 | 直接访问 | 111.208.112.249(江苏-未知) | 大一 | 统计学 | 中国大学mooc┋b站 | 好的课程 |
26 | 2021/7/29 20:04:20 | 93秒 | 手机提交 | 直接访问 | 111.22.248.144(湖南-长沙) | 大二 | 电子科学与技术 | 中国大学mooc┋学校课程中心┋其他〖知乎,腾讯QQ〗 | 缺少详细的科学计算过程 |
27 | 2021/7/29 20:05:22 | 58秒 | 手机提交 | 直接访问 | 223.157.233.145(湖南-娄底) | 大二 | 计算机科学与技术 | b站 | 实际应用 |
28 | 2021/7/29 20:52:47 | 65秒 | 手机提交 | 直接访问 | 223.104.35.252(安徽-合肥) | 大二 | 城乡规划 | 中国大学mooc┋b站┋智慧树/知到 | 红包奖励机制 |
29 | 2021/7/29 21:11:14 | 32秒 | 手机提交 | 直接访问 | 218.2.107.252(江苏-南京) | 大四 | 计算机科学与技术(人工智能) | b站 | 不知道QAQ |
30 | 2021/7/29 21:49:25 | 59秒 | 手机提交 | 直接访问 | 101.105.109.201(安徽-合肥) | 大一 | 环境工程 | 学校课程中心 | 呃 |
31 | 2021/7/29 22:10:11 | 54秒 | 手机提交 | 直接访问 | 36.142.163.3(甘肃-未知) | 大三 | 电气工程及其自动化 | 中国大学mooc┋b站┋学校课程中心 | 教学使用WolframAlpha |
32 | 2021/7/29 23:34:35 | 49秒 | 手机提交 | 直接访问 | 106.112.12.159(河北-邯郸) | 大二 | 计算机科学与技术 | 中国大学mooc┋b站 | 找资料似乎有点麻烦 |
33 | 2021/7/30 8:00:18 | 47秒 | 手机提交 | 直接访问 | 117.136.24.63(湖南-长沙) | 大二 | 数学系 | 中国大学mooc┋b站 | 知识点梳理&网课对接 |
34 | 2021/7/30 15:12:53 | 34秒 | 手机提交 | 直接访问 | 112.32.41.142(安徽-合肥) | 大二 | 工业工程 | 中国大学mooc┋智慧树/知到┋学校课程中心 | 杂乱且没有权威系统 |
计算机,电气工程自动化,土木、机械、环境工程,数学、金融、统计等理工专业 | 中国大学mooc,b站 | 缺乏习题及详细解答过程,缺少知识点总结、举一反三和课后讨论,没有系统和实际应用渠道 |
我们总结得到如下结果:
学生端
- 注册登录:学校班级认证
- 通讯录:用户可添加其他用户、教师成为好友,信息交流
- 电子教材:提供数学教材和教辅的PDF,关联网课推荐
- 课程信息推送:开课时间、任课老师等基础信息;加入班级或小组;以及知识点预习,重难点提示
- 随堂互动:签到,同步PPT到个人,随堂问答,错题记录
- 作业记录:线上批改作业,收录错题,知识点分析和同类习题推荐,查看在整体中的比例情况
- 小测和考试记录:提供往年题库,帮助复习;根据作业和小测数据分析薄弱知识点,提供复习重点;成绩趋势分析
- 学业就业趋势:推送保研夏令营、考研政策、出国留学、企业招聘信息;分析用户数据,判断其适合的方向,提供有相关需求的学校、企业信息
- 问题检索:【参考作业帮】
- 交流平台:系统内置课程同名论坛、学习资源分享论坛等,用户发帖、上传资源
- 教学日历:跟进课表和教学进度,考试安排
- 自习打卡:记录自习时间;完成自习任务【内置一个番茄钟】
教师端
- 注册登录:学校学院认证,其中包括个人信息,所授专业等
- 通讯录:可添加学生、教师成为好友,信息交流
- 电子教材:可上传课程PPT、PDF等建立个人资源库,加入所授课程的学生可以查看下载
- 课程信息推送:开课时间等基础信息;创建班级或小组,设管理员,发起投票、公告
- 随堂互动:发起签到,发布习题,提问及答疑;直播授课时,允许多个直播间同时进行,避免因人数过多导致的网络波动、遗漏提问等问题
- 作业记录:布置新作业并线上批改,系统统计错题情况,成绩分布
- 小测和考试记录:完成对应章节后,发布测试。抽取其中部分同学统计成绩折线图,期末归纳整理各章节情况,了解学生不同章节的掌握情况,便于进行针对性复习。
- 交流平台:系统内置课程同名论坛、学习资源分享论坛等,教师发帖、上传资源、答疑,查询与回复学生对课程的评价
- 教学日历:可发布课表,上传或更新教学进度,考试安排等信息
- 自习打卡:发布班级自习任务,掌握学生自习情况
学校平台端
- 注册登录:学校认证
- 课程管理:管理平台或本校全部课程,课程章节设置,课件设置,考核设置等
- 课程制作:管理平台或本校自定义课件,将文档、多媒体资料组合成学习课件
- 资源类型:管理平台或本校资源类型,包括文档、资料、音频、视频等
- 资源分类:管理资源分类,分类可根据实际情况自定义
- 资源管理:管理平台资源,可设置开放状态【与现有超星、MOOC等进行数据互通,在其中一个平台上即可查阅其余平台上的学习资料、学习课程等】
- 员工管理:管理平台工作人员和学校教职工信息,给予一定权限协助管理
- 学员管理:管理学生,状态设置、资料编辑等,可批量导入;管理班级成员,小组分配,分配课程及管理人员
- 系统账户管理:实时查看账户剩余空间、流量、有效期等信息
- 公告管理:管理平台公告,接收系统的功能更新消息
参考网址
No-Cruft Excel to HTML Table Converter
7.26~8.1
①请仔细阅读PDF《Moodle Course Design Best Practices》《CANVAS LMS Course Design-Create and Deliver Interactive Online Courses on the Canvas》
②补充系统功能清单,考虑感兴趣的研究方向
鉴于自己对基于错题的知识点分析模型比较感兴趣,我选择对学生端的第7点:根据作业和小测数据分析薄弱知识点,提供复习重点;成绩趋势分析
进行研究
8.2~8.8
鉴于小组成员私人学习工作安排较多,自行学习一周
第二阶段(平台搭建)
8.9~8.17
整理前期收集的数据资料,预约答疑跟进,着手第二阶段研究
分组推进:
①在社交平台发布投票,收集更多的数据,由李墨涵进行前期资料成文
②李拙诚,高雨薇进行其他系统体验,记录使用过程,研读其实现方法
③王弘烨,王路博,许佳敏整理数学分析主要定理,着重找到典型题,研究其中的解题思路,提出系统实现分析的可能
我的思路
将知识点作为学习特征,用机器学习的方法,通过训练集进行训练,再通过测试集进行测试;
使得在拿到一个习题时,机器学习模型即可判断其涉及哪些知识点以及各知识点对本题的权重;
学生一旦做错,这些知识点的“薄弱度”便会增大,一旦“薄弱度”超过阈值,便判断该知识点为“薄弱”,系统会向学生推荐相关习题;
采用艾宾浩斯学习法,当学生在一个周期内的正确率超过阈值,该知识点判定为“掌握”,从“薄弱”知识点库中移除。
遇到的问题
- 没有训练集与测试集
- 知识点对习题的权重如何确定(投票打分?)
- 机器学习零基础
机器学习
步骤 1:收集和准备数据
一旦确定了数据源,就可以编译可用的数据。可根据拥有的数据类型确定可使用的机器学习算法。数据的检查过程可以识别出异常,开发出结构,并解决数据完整性问题。
步骤 2:定型模型
准备好的数据分为两组:训练集和测试集。训练集是用于将机器学习模型调整到最高精度的量较大的那部分数据。
步骤 3:验证模型
当准备好选择最终的数据模型后,使用测试集评估性能和准确性。
步骤 4:解释结果
查看结果以获取见解,得出结论并预测结果。
会议记录
- 李墨涵进行阶段性的汇报,主要内容是针对数学学习问题的问卷调查结果和学习系统功能的预想。
- 林铮翔学长就系统性和功能提供一些解决方法和思路,提出内置习题分析知识点的思路,明确下一阶段需要研究的内容。
- 徐军老师指导课题,考虑从系统层面和研究层面两个方向解决问题,提出尝试已有系统的功能以补充课题,和其他小组合作、选取具体课程进行实践获得数据。关于知识点分析这一难点,提出按步骤或流程图,从时间或空间角度拆解分析的思路。
- 李秋齐老师从教师用户的角度予以补充,着重强调学习的系统性,提出针对不同层次的学生提供相关帮助的内容不同,提出批改作业时不同学科不同时期教师的主要关注内容,给出实现系统批改作业的思路,给予本组数学分析相关内容的数据帮助。
参考链接
学习部署moddle
这里是中南大学计算机专业同学的moodle部署笔记
xampp安装及配置
安装部分
找到压缩包内的 xampp 安装程序,无脑下一步即可。
默认安装路径为 C:\xampp 一定不要改,本人之前安装在 D:\xampp ,虽然应该不是这个原因导致安装失败,但是还是不要改为好,因为文件配置内有默认C盘的,改起来费事,并且C盘在 moodle 安装时明显快于D盘。
配置部分
打开 xampp ,初始效果应该如下(其中 apache 和 mysql 是我们需要的)
开启 apache 前检查端口占用情况:点击界面右上角的 netstat 查看80端口和443端口占用情况(这两个是apache的默认端口),点击 port 即可按端口号大小排序易于查找
选择一:找到占用该两个端口的进程,在任务管理器内找到对应名称进程结束进程即可。
选择二:占用端口进程仍需使用(如IIS服务、vmware,一般也 就这两个),修改占用进程端口号或apache端口号即可(强烈建议修改前者,后者还需在配置文件里修改,多到几乎不可能完成)。
我这里因为没有安装过 IIS 服务,所以我只是把 vmware 关闭了,下面是不想关闭IIS服务并修改其端口号的方法:
端口问题处理完成即可打开 apache ,点击 start ,如下
开启 MySQL 前:
1.检查端口占用情况
具体操作如 apache 端口操作,需要查看的端口号为 3306 。一般情况下3306端口要是被占用,也是 sql 本身,所以结束进程即可。
2.检查 sql 路径(该问题一般在电脑本身安装有 sql 情况下出现)
打开注册表在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL路径下找到ImagePath,将其值修改为 C:\XAMPP\mysql\bin\mysqld MySQL
如下:
打开 mysql ,点击 start ,如下:
两个组件都开启后,将压缩包内的 moodle 压缩包解压到C:\xampp\htdocs
并将 index.php 文件中的 header 值改为 moodle ,如下
Moodle安装
- 在浏览器中输入http://localhost,进入 Moddle 安装页面
语言选择简体中文,需要在该网址提前下载语言包 zh_cn.zip 并解压到C:\xampp\moodledata\lang
下,方便阅读并利于课堂进行
- 确认路径默认即可,会开辟一个数据目录文件
- 数据库驱动选择默认
数据库设置如图设置
条款同意继续
检查服务器,一开始大概会是这样的:
对应问题及解决:
database问题:将C:\xampp\htdocs\moodle\config.php
中的 mysqli 替换为 mariadb
php问题:(修改完成的 ini 文件已放置在压缩包,替换即可)
在C:\xampp\php\php.ini
中
①将intl
,xmlrpc
,soap
前面的分号去掉(可使用查找Ctrl+F
)
②查找到[opcache]
所在的位置添加以下代码
[opcache]
opcache.enable = 1
opcache.memory_consumption = 128
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 60
; Required for Moodle
opcache.use_cwd = 1
opcache.validate_timestamps = 1
opcache.save_comments = 1
opcache.enable_file_override = 0
zend_extension=opcache.so
; If something does not work in Moodle
;opcache.revalidate_path = 1 ; May fix problems with include paths
;opcache.mmap_base = 0x20000000 ; (Windows only) fix OPcache crashes with event id 487
; Experimental for Moodle 2.6 and later
;opcache.fast_shutdown = 1
;opcache.enable_cli = 1 ; Speeds up CLI cron
;opcache.load_comments = 0 ; May lower memory use, might not be compatible with add-ons and other apps.
③在文档的最末尾添加
[ExtensionList]
zend_extension=php_opcache.dll
编码问题:(修改完成的ini文件已放置在压缩包,替换即可)
在C:\xampp\mysql\bin\my.ini
中
①查找到[client]
所在的位置添加以下代码
[client]
default-character-set = utf8mb4
②查找到[mysql]
所在的位置添加以下代码
[mysql]
default-character-set = utf8mb4
完成上述问题对应操作后在 xampp 重启 Apache 和 MySQL 服务,然后点击浏览器页面最下面的重新载入按钮,之后提示系统已满足最低配置要求。
- 等待系统安装组件(需耐心),全部安装完成后会出现确认按钮
- 填写登陆用户名、密码、邮箱等信息(注意该账户即网站权限最高的管理员账户)
页面设置(尽可能详细点,自助注册选择基于email,不要回复的地址填自己邮箱就可以了)
保存信息后,moodle 就安装完成了,以下是登录后的界面
至此本地 moodle 已搭建完成,下面的任务是实现外网访问
第一次打开界面时可能会出现 localhost 重定向次数过多问题,可以参考此链接解决XAMPP下安装Moodle时,解决MYSQL升级以及页面重定向问题
尝试对
C:\xampp\htdocs\moodle\admin\index.php
页面的条件跳转指令进行修改,能够解决上述问题。但是Moodle的条件跳转指令里包含着许多检测方式,修改后可能会对平台产生影响。所以,推荐一种较为实用的方式,admin 目录下 index.php 文件里有如下代码段:if ( (isset($_GET['cache']) and $_GET['cache'] === '0') ...... } else {$cache = 1;}
这段代码为检测 Moodle 是否有缓存信息和关键数据保护检测。会根据不同的情况给 cache 字段赋值。
(1)将这段代码注释或删除掉,使得 moodle 平台在第一次安装后进入该页面不去考虑cache值的设置,而直接进入平台的主页面。
(2)在目录栏内输入http://localhost/moodle/index.php?cache=1
,然后对平台进行操作时,还是会显示localhost重定向次数过多,此时数据库和缓存中会有新生成数据的写入(我这里直接输入http://localhost
根地址,因为按照它的也是重定向页面)。
(3)此时再在index.php
文件中恢复上述注释或删除的代码段。再次打开 Moodle 平台时,检测机制会顺利的通过,而不会出现因检测语句冗余而产生的页面重定向循环问题。
实现Moodle外网访问:内网穿透
下载花生壳,获取免费公网域名
购买内网穿透服务,该服务我的理解就是解决内网动态ip问题用的
添加映射,使用提供的免费公网域名,端口80(前面按我说的没改apache端口的情况下),http格式以及主机ip
修改
C:\xampp\htdocs\moodle\config.php
文件 wwwroot 后面的值改为http://公共域名/moodle
至此可以实现外网访问moodle了
我遇到过一次手机热点分配给我的电脑的 ip 改变,需要在花生壳映射里把 ip 编辑为分给我的 ip 。考虑到出现次数就那一次不常见,就算出现了修改也不大,并且曾经一次试着设置固定ip把自己搞没网了,索性就不管这个问题了。要是真的用于实践,相信服务器也不会轻易关闭吧。
以上是中南同学的 moodle 部署笔记,在本人搭建时,针对内网穿透环节学习了此教程,我采用钉钉穿透的方法,此方法简单快捷,便于上手
在 cmd 中依次输入如下语句
cd /d H:\钉钉内网穿透\pierced\windows_64
ding -config=ding.cfg -subdomain=sit666 80
即可实现内网穿透(端口为80,域名为http://sit666.vaiwan.com)
这里的网址需要在本地开启钉钉穿透功能才能被访问
内网 $IP$ 查询方法键盘同时摁
Win
和R
运行cmd
,输入ipconfig
,其中的 $IPV4$ 地址即为内网 $IP$
邮件发送问题
在实践中又遇到了新的问题:新注册的用户会被告知其邮箱已经被注册,于是我参考了本篇教程
下载
sendmail
,直接解压到C:\xampp
目录下配置
php.ini
在
C:\xampp\php\php.ini
里新增一行sendmail_path = C:\xampp\Sendmail_v33_TLS1_2\sendmail.exe -t
(这里的路径要视具体情况决定)配置
sendmail.ini
修改
C:\xampp\Sendmail_v33_TLS1_2\sendmail.ini
文件,将其改为
; configuration for fake sendmail
; if this file doesn't exist, sendmail.exe will look for the settings in
; the registry, under HKLM\Software\Sendmail
[sendmail]
; you must change mail.mydomain.com to your smtp server,
; or to IIS's "pickup" directory. (generally C:\Inetpub\mailroot\Pickup)
; emails delivered via IIS's pickup directory cause sendmail to
; run quicker, but you won't get error messages back to the calling
; application.
; 邮箱的smtp
smtp_server=smtp.exmail.qq.com
; smtp port (normally 25)
; 巨坑之一,默认是25,查明smtp使用ssl的默认端口填写(smtp.qq.com,使用SSL,端口号465或587)
smtp_port=25
; SMTPS (SSL) support
; auto = use SSL for port 465, otherwise try to use TLS
; ssl = alway use SSL
; tls = always use TLS
; none = never try to use SSL
; 开启ssl
auto = use SSL for port 465, otherwise try to use TLS
; smtp_ssl=auto
; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify
;default_domain=mydomain.com
; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging
error_logfile=error.log
; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging
;debug_logfile=debug.log
; if your smtp server requires authentication, modify the following two lines
; 巨坑之二,填写邮箱名称,密码是stmp授权密码
auth_username=1055302133@qq.com
auth_password=aujqkfmbrjkebcbh
; if your smtp server uses pop3 before smtp authentication, modify the
; following three lines. do not enable unless it is required.
pop3_server=
pop3_username=
pop3_password=
; force the sender to always be the following email address
; this will only affect the "MAIL FROM" command, it won't modify
; the "From: " header of the message content
; 发件人邮箱
force_sender=1055302133@qq.com
; force the sender to always be the following email address
; this will only affect the "RCTP TO" command, it won't modify
; the "To: " header of the message content
force_recipient=
; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting. you can manually set the ehlo/helo name if required
hostname=
之后重启 Apache ,如有必要,重启电脑!!!
配置
Moodle
在网站管理—服务器—发送邮件设置中进行如下设置
SMTP用户名 填写邮箱(我这里是QQ邮箱), SMTP密码 填写之前QQ邮箱给的STMP授权密码
调试
Moodle
下载
mailtest
插件,解压到位置C:\xampp\htdocs\moodle\local
在网站管理—服务器—测试邮件发送的配置中测试邮件是否能发送出,能够发送出代表成功
参考链接
XAMPP下安装Moodle时,解决MYSQL升级以及页面重定向问题
会议记录
- 李墨涵汇报研究初期的数据整理情况,总结上周进度。
- 许佳敏、王路博整理数学分析上半册的知识点和习题。王泓烨提出建立数据库比对分析用户上传题目所含的知识点的思路。
- 李拙诚、高雨溦利用已有技术搭建系统,小组成员注册体验,就关键词搜索、上传PDF是否可以识别关键词等后续问题进行探讨。
- 小组明确研究思路:首先尝试利用已有平台实现智能分析,如果不能完全实现,再考虑编写程序、修改系统功能,若以上均不能实现则考虑放弃已有平台,更改方案。
- 组员关于知识点处理,课程搜索等问题进行研究探索。
8.18~8.24
李墨涵进行资料、研究过程整理,准备小学期结题论文
李拙诚简述系统搭建过程以及应用技术,为结题论文提供材料
王弘烨,王路博,许佳敏完善数学分析知识点以及习题
全体组员体验、应用系统,探究实现智能分析的可行方法
会议记录
- 李墨涵总结上周项目进程。
- 针对智能分析的实现,李墨涵提出将课程、习题分类贴标签,同时建立标签的内在逻辑关联,李拙诚提出内置题目分类,通过收录题目的知识点数量计算错误率。
- 李拙诚提出教师用户上传习题、小测、考试时可以标记知识点权重,以反应学生的知识点掌握情况。
- 全组讨论通过上述方案,探讨实行的步骤:以数学分析为例,梳理细化知识点;尝试学习图像识别、自然语言相似性等涉及的计算机知识;探寻在Moodle上安装插件的方法。
- 组员关于答辩材料进行分工准备。
参考链接
8.25~9.1
会议记录
- 李墨涵进行阶段性的汇报,展示上一阶段的推进进程以及整理的材料。高雨溦进行Moodle环境以及本项目系统搭建的简介。李拙诚介绍系统搭建过程中遇到的问题以及解决手段。
- 林铮翔学长建议与其他组交互资源,进行环境搭建和数据搭建的讨论,联系老师指导标签内容,借鉴中小学搜题软件相关功能。
- 徐军老师指导课题,提出明确系统实现的目标。体验系统操作的基础上,明确系统的用户需求、不同角色的交互关系和应用场景,整理流程。
- 组员与老师、学长讨论,接收思路:明确需求;现有系统的功能欠缺;做出补充;线路评估;具体实现。
9.1~9.8
图像识别 OCR 调用
难点
未成年,未能通过百度云认证,无法创建应用获取 API Key 与 Secret Key
解决方案:暂时先使用 体验版OCR方法 ,后续用父母的身份证进行注册
制作自动化程序,在用户发送请求后执行上述调用步骤,目前的想法是 Python 爬虫,参考 noionion 的自动打卡博客
如何识别用户的点击请求?可以参考Moodle 插件 elastic (难度最大)
HTML网址实现
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
#header {
background-color:black;
color:white;
text-align:center;
padding:5px;
}
#nav {
line-height:50px;
background-color:#eeeeee;
height:540px;
width:220px;
float:left;
padding:5px;
}
#section {
width:350px;
float:left;
padding:7px;
}
#footer {
background-color:black;
color:white;
clear:both;
text-align:center;
padding:1px;
}
</style>
<script language="javascript">
function exec1(command)
{
var ws = new ActiveXObject("WScript.Shell");
ws.run(command); //exec 和 run
ws = null;
//alert("ok"); 弹出一个小框显示“ok”
}
</script>
</head>
<body>
<div id="header">
<h1>文字识别</h1>
</div>
<div id="nav">
文字识别
<a href="facerecognize.py" target="show"> 源代码 </a>
<input type="button" value="运行 python" onclick="exec1('python facerecognize.py')" />
<br/>
<p><b>点击 <U>源代码</U> 将显示代码,
<br/> 点击 <U>button</U> 将执行代码</b></p>
<!-- 待识别图像插入位置 -->
<img src="demo.gif" width="220" height="200" />
<div id="footer">
版权 © 李拙诚
</div>
</div>
<div id="section">
<h2>代码框 </h2>
<iframe name="show" id="show" width="1100" height="466"/>
</div>
</body>
</html>
网址工具
### base64 转码
import base64
f=open("填写你的图片完整名称 例如:1.png","rb")
img = base64.b64encode(f.read())
参考网址
文字识别
百度AI图像处理—文字识别OCR(通用文字识别)调用教程(基于Python3-附Demo)_APPID AK SK使用方式
最新调用百度OCR文字识别API–一看就会(python实现)_图片转码
百度AI图像处理—图像主体识别调用教程(基于Python3-附Demo)_返回值字符串切割
【方法】HTML网页调用本地Python程序_内含网站内置人脸识别&代码
企鹅物流最新Github技术仓库_利用wasm技术,利用浏览器引擎执行转换后的js代码
公式识别
教你轻松调用API获得每个月500次免费识别!_有代码,相比上面那篇更详细
Moodle插件开发
企鹅物流截图识别插件
其他OCR方式
接下来有可能要学习PHP,学习资料整理如下
9.8~9.16
与张嘉健老师交流
详细构想应用场景,具体步骤用流程图表示
- 扫描试卷或作业 $pdf$
- 切割 $pdf$ 以提取单个题目
- 对提取出的题目图样进行文字识别,并提取标签(提取关键词 或 与给定题目的模糊匹配)
- 老师判断对错
我接下来要做的事
- 检验 $OCR$ 对真实应用场景的识别能力
- 整理总结 $Moodle$ 平台的功能,与 深度创新培育平台 的功能进行对比
可以考虑使用 docker
装一些软件,避免环境冲突
尝试将 $Moodle$ 部署在云服务器
在文件夹内按住 $Shift$ 与鼠标右键,选择在此处打开 $Powershell$ 窗口,依次输入以下命令
ssh
ssh root@121.37.249.141 # root 为用户名,121.37.249.141为服务器的IP地址
yes
hnu@12#$ # 服务器密码
PS C:\xampp\htdocs\moodle> ssh root@121.37.249.141
The authenticity of host '121.37.249.141 (121.37.249.141)' can't be established.
ECDSA key fingerprint is SHA256:Y+2d/v4zvFzEqvPGWi+llri5vnYhDHNJOmAZlWs4sSM.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '121.37.249.141' (ECDSA) to the list of known hosts.
root@121.37.249.141's password:
Welcome to Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-136-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Wed Sep 15 15:56:48 CST 2021
System load: 0.25 Processes: 514
Usage of /: 77.9% of 39.12GB Users logged in: 1
Memory usage: 54% IP address for eth0: 192.168.0.192
Swap usage: 0% IP address for docker0: 172.17.0.1
=> There are 3 zombie processes.
* Super-optimized for small spaces - read how we shrank the memory
footprint of MicroK8s to make it the smallest full K8s around.
https://ubuntu.com/blog/microk8s-memory-optimisation
* Canonical Livepatch is available for installation.
- Reduce system reboots and improve kernel security. Activate at:
https://ubuntu.com/livepatch
18 updates can be applied immediately.
14 of these updates are standard security updates.
To see these additional updates run: apt list --upgradable
New release '20.04.3 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
*** System restart required ***
Welcome to Huawei Cloud Service
Warning
HSS has detected that you are using a weak password for your server.
Choose Security > Host Security Service > Baseline Inspection > Common Weak Password Detection to view details.
To prevent your account from being cracked, please change the password immediately.
Warning
Last login: Wed Sep 15 11:11:44 2021 from 222.244.139.159
root@ecs-ff44:~#
遇到的问题
我们按照 华为云官网说明 安装 $MySQL$ ,依次输入如下命令
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
却出现软件包无法安装问题
在查询后,暂时认为是MySQL依赖的问题,参考 文章 操作后,仍然发生如上报错。
后续发现官网说明中注明是 $CentOS\ 7.2$ 操作系统 ,而我们使用的是 $Ubuntu$ 操作系统,不同系统命令不能直接套用
参考链接
阿里云服务器Centos7安装PHP、MySQL、apache
CentOS7下解决yum install mysql-server 异常:No package mysql-server available.问题
yum install mysql-community-server错误解决方案
9.17~9.24
本地搭建 $Ubuntu$ 虚拟机
上周尝试将 $Moodle$ 部署至云服务器过程中,遇到了无法安装 $MySQL$ 等一系列问题。张老师推荐我们先在本地搭建一个 $Ubuntu$ 的虚拟机,在那里熟悉 $Ubuntu$ 的命令,同时将 $Moodle$ 部署上去,之后再去服务器安装。
为什么使用虚拟机?
演示环境,可以安装各种演示环境,便于做各种例子;
保证主机的快速运行,减少不必要的垃圾安装程序,偶尔使用的程序,或者测试用的程序在虚拟机上运行;
避免每次重新安装,银行等常用工具,不经常使用,而且要求保密比较好的,单独在一个环境下面运行;
想测试一下不熟悉的应用,在虚拟机中随便安装和彻底删除;
体验不同版本的操作系统,如 $Linux$ 、$Mac$ 等;
在虚拟机中可以测试软件,因为在其中产生的病毒不会传到主机上去,系统崩溃也没有问题,最多就是把这个虚拟机删掉,重新建一个虚拟机就行;
处理系统不兼容问题,虚拟机里的系统不用和主机一样,就比如我的电脑是 $Win8$ 版本,我要安装 $EDA$ 相关软件,但系统不兼容怎么办,我可以在虚拟机上安装一个 $Win7$ 系统,然后再虚拟机安装软件就可以运行了。
参考链接
如何在win10上安装ubuntu虚拟机-图文详细教程_VirtualBox方法
小白如何在window电脑上安装Linux系统(虚拟机)超详细_VMware方法
10.15
难点
- 如何用 $OCR$ 识别手写体(夸克有付费使用接口)
- 如何将平台部署至服务器
- 如何设计切割试卷的算法
11.7
会议记录
$SIT$ 项目创新点:
- 作业自动批改系统,涉及:试卷题目分割,手写文字及公式的识别(图像识别与处理、深度学习)
- 基于以往作业、试卷情况的知识点掌握度分析,涉及:大数据存储与处理、特征提取(机器学习)
11.13
与张嘉健老师交流
在大三上学期,是选择考研或是选择就业让我十分纠结,于是我咨询了张老师
一个程序员的发展路线
- 搬砖式开发:最初的开发主要是基于目前市面上已有的技术框架进行构建,程序员更多的是进行“搬砖”式的工作(例如基于 $MySQL$ 进行数据库的开发、基于 $Moodle$ 进行教育系统 $LMS(Learning\ management\ system)$ 的开发)
- 针对更具体的应用场景、更抽象的应用模式开发:随着开发经验的不断加深,程序员的开发目标也会发生很大转变,从最初的被动接受问题并解决变为主动提出问题/需求并解决(之前是项目主管告诉你要开发什么,现在是你自己在实际应用场景中发现问题/需求并解决,例如徐博在与烟草局的合作中发现了他们针对客服留言信息搭建实时 $Q&A$ 库的需求,再针对此需求进行开发)
- 团队领导:随着年龄的不断增长,程序员接受新事物的速度与能力会弱于年轻一辈,到 $35$ 岁左右,程序员就会面临中年危机,此时就要适当转型为 $Team\ Leader$ ,用自己丰富的开发经验与项目整体架构能力为团队里的成员出谋划策,划分清楚每个成员的具体职务(前端–$Html$ 开发、按键设计,后端–数据库搭建、……)
$SWOT$ 分析法
我们可以采用 $SWOT$ 分析法对自己的优势($Strengths$)、劣势($Weaknesses$)、机会($Opportunities$)以及威胁($Threats$)进行具体分析
$SWOT$ 法是一种基于内外部竞争环境和竞争条件下的态势分析,就是将与研究对象密切相关的各种主要内部优势、劣势和外部的机会和威胁等,通过调查列举出来,并依照矩阵形式排列,然后用系统分析的思想,把各种因素相互匹配起来加以分析,从中得出一系列相应的结论,而结论通常带有一定的决策性。
运用这种方法,可以对研究对象所处的情景进行全面、系统、准确的研究,从而根据研究结果制定相应的发展战略、计划以及对策等。
我需要掌握哪些能力?
快速获取其他专业知识的能力
本专业的扎实知识基础
大一大二期间没有获得什么拿得出手的成绩与奖项,我该怎么办?
你需要深入研究一个项目,或做一篇 $paper$ ,以证明你在本方面的能力,现在的孕穗计划就是一个很好的机会
$P.S.$ 如果对“对象存储”感兴趣,在研究过程中你会阅读很多相关的资料与书籍,《软件定义存储》是一本值得推荐的好书
编程 & 产品设计能力
编程能力可以通过平时的课程以及在 $LeetCode$ 上训练
我现在应该做什么?
拒绝泛化的方向:“我喜欢计算机”,计算机行业内部也有很多细化的方向,我们需要找到具体的职业方向
该怎么找到具体的职业方向?
先找一个不反感的方向认真去做,在做的过程中发现自己具体的兴趣所在
把所有的事情看作是一件事去做
把现在所有的文化课学习、孕穗计划项目都看作是一件事,文化课学习是扎实专业课基础的必要举措,而孕穗计划则是深化发展专业能力的措施
12.4
与徐军老师、林铮翔学长交流
五大核心竞争力
- 快速获取交叉学科知识的能力
- 扎实的数学基础与理性的逻辑思维
- 能快速将知识赋予实践的工程化能力
- 团队合作、沟通表达能力
- 团队领导力
现阶段的学习不仅仅是学习知识,更是习得获取知识的能力
我现在应该做什么?
找到目标方向所需要的能力,在今后的学习过程中不断掌握这些能力
基本要求:
- 深入了解深度神经网络算法原理,能够基于基础算法快速完成复现和算法调优;
- 熟悉弱监督/无监督网络学习算法;
- 熟悉$caffe$、$tensorflow$、$mxnet$、$pytorch$等算法训练框架的一种或多种;
- 熟悉$Python$、$C/C++$、$Java$、$Go$等中的一种,并能快速适应其他编程语言。
以华为AI工程师(实习生)为例
基本要求:
- 获得计算机科学、机器学习、统计学、应用数学等领域的优秀硕士;
- 掌握计算机视觉和图像处理基本算法,并在如下一个或多个相关方向有较深入研究:检测、识别、$OCR$、分类、语义分割、图像处理;
- 有良好的研究背景和成果,对算法研究兴趣浓厚,业务抽象能力强;具备创造性思维,能够将全新想法转化为工程应用;对研究工作充满热情,具备良好的团队合作精神和沟通能力;
- 具备较强的编程能力,精通主流编程语言,如$C++$/$Java$/$Python$等;
- 在高水平国际会议和学术期刊发表过相关论文(包括但不限$CVPR$, $ICCV$, $ECCV$, $NIPS$, $ICML$, $AAAI$, $TPAMI$, $IJCV$等),或有高水平竞赛获奖经历。
注意这是基本要求,也就是门槛,在此门槛上还需要有更多资历
如何看待这个流量为王、娱乐至上的时代?
顺势者昌,逆势者亡,我们暂时无法改变这个时代,我们只能适应这一潮流,在时代大潮中寻找自己的位置