2019 年 6 月专题
我在这里汇总朋友们的一些观点, 自作主张的草拟青少年人工智能课程内容.
设计思路
以强化学员运用计算机编程技术对世界的认知和抽象化能力为基础.
以引导学生用智能化思维方法发现问题, 解决问题, 改造现实世界为目标.
以游戏化开发激活兴趣, 从软件工程开发入手, 然后进入智能硬件产品开发和专用 AI 算法开发领域.
遵循项目为导向, 以项目驱动教学, 摒弃传统的系统知识授课模式.
仅设定项目类型而不设定内容, 教授科学的创新方法, 使其自主发现问题, 建立项目, 解决问题.
以产业标准规范进行教学, 力求可上线, 可应用的产品和有质量的论文.
兼顾各类具有权威性的创新创意大赛和算法大赛, 使有能力参与并获奖.
以下分四个阶段介绍课程内容概要.
以下内容设定为学员已经具有初步编程语言基础, 学习过入门级的 C,C++ 或 Python 编程课程, 能够独立完成数十行规模的程序编写.
第一阶段: 游戏化编程
适合阶段
小学四到六年级.
授课时长
36 小时.
课程目标
激发学员对程序编写的兴趣.
从可视化的游戏中理解编程语言对现实元素的抽象能力.
掌握和应用变量, 函数, 类等基本抽象方法, 能够用此对现实世界对象及其运行规律进行程序化重建.
能够自主创意和开发出简易小游戏.
课程内容
基于 Pygame 框架, 从零开始带领学员完成《Flappy bird》小游戏的设计和实现流程, 包含玩法创意, 草图原型设计到图片制作, 编程开发全流程.
此部分预计授课 24 课时.
基于 Pygame 框架, 简要分析《Pac man》小游戏的玩法, 原型和编程思路.
此部分预计授课 12 课时.
随堂作业
对《疯狂的伐木工》小游戏进行玩法分析, 纸面原型重建和编程思路讲解.
对《1024》小游戏进行玩法分析, 纸面原型重建和编程思路讲解.
项目实战
自主创意一款小游戏. 需要包含完整的创意思路, 玩法策略, 纸面原型, 项目构建和代码编写.
设计说明
《Flappy bird》和《Pac man》代表了滚动横版游戏和固定地图游戏两种不同类型, 同时也是人工智能领域强化学习训练智能体 (AI 玩家) 最常用的两款简单游戏.
在教学中必须强调现实世界到地图, 角色, 动画的抽象过程, 必须强调利用逻辑代码和用户交互为虚拟角色添加智能行为的实现思路.
第二阶段: web 型应用开发
适合阶段
小学六年级到初中.
授课时长
48 小时
课程目标
激发学员用创新化思维发现问题, 掌握项目创新创意方法.
掌握用抽象化编程技能解决现实问题的能力.
掌握较为复杂的现实逻辑到项目构建, 代码抽象的能力.
理解和认识数据, 掌握对数据的理解能力和控制能力.
课程内容
基于 Web 技术和爬虫技术, 从零开始带领学员完成《动画大电影》网站的设计和实现流程, 包含玩功能分析, 草图原型设计到数据抓取, 前后端开发, 部署上线全流程.
这是一个简单的静态页面网站, 里面展示抓取自豆瓣网中动画相关的部分内容, 最终页面部署在 GitHub pages 上. 使用 Requests 模块进行数据抓取, Bootstrap 模板进行展示, 预计授课 16 课时.
基于 Flask 框架和 MySQL 初步技术, 构建精简 Web 版的个人成长与健康跟踪管理系统.
这是一个具有后台服务功能的 Web 应用站点, 用来记录自身的身高, 体重, 饮食(卡路里), 运动量等数据(依赖于手工输入), 并能够进行可视化图表展示. 限于课程时间, 仅在最后对用户系统设计思路和方法进行讲解而不包含用户系统的编码实现. 预计授课 32 课时.
随堂作业
创意一款展示型网站, 包含设计思路, 功能内容, 目标群体, 纸面原型, 项目结构, 数据来源和编程思路.
创意一款应用型网站, 包含设计思路, 功能内容, 目标群体, 纸面原型, 项目结构, 数据来源和编程思路.
项目实战
根据每个人自己随堂作业的应用型网站创意项目, 开发一款具有前后端程序, 数据库操作, 数据分析功能的个人网站, 并申请个人域名, 最终完成云端部署(阿里云或腾讯云).
设计说明
Web 站点是最典型的计算机应用软件类型, 为用户提供内容和功能是其主要功能形式, 基于 Web 的创新也是目前最活跃和最易实现的产品形态.
数据是所有应用产品的核心, 数据收集, 数据管理, 数据应用, 数据分析, 这些既是应用型软件业务流程的本质, 也是大数据和人工智能技术的前提.
快速构建具有智能化的应用产品, 为用户提供有价值的产品功能, 这是本阶段学习重点.
强化数据能力和数据思维, 使学员对现实世界环境和问题的抽象能力进一步增强, 启发学员从数据可视化中探寻其内部规律.
务必强调规范化产品创新设计流程, 项目管理流程和项目部署发布流程.
第三阶段: 智能硬件产品创意开发
适合阶段
初中, 高中.
授课时长
48 课时.
课程目标
掌握数字世界和现实世界衔接的技巧, 利用数字世界的算法和功能改变现实世界.
掌握智能硬件产品的开发流程, 熟悉硬件开发板 (树莓派) 及其相关感应器, 控制器的原理和特性.
能够独立或团队协作完成小型智能产品的设计和开发.
课程内容
基于树莓派硬件框架, 前端基于 Tkinter 框架, 后端基于 Flask 框架和 MySQL 技术, 从零开始带领学员完成智能班牌产品的设计和实现流程, 包含产品策划案, 草图原型设计到界面设计制作和编程开发全流程.
智能班牌系统是悬挂在班级入口处的一款多媒体系统, 系统能够根据红外动态检测实现屏幕的自动激活和休眠. 学员可以刷脸实现考勤打卡(基于智能 API 服务调用实现), 可以通过在电脑 Web 站点观看班级动态和提交作业文件; 老师可以在电脑 Web 端观看全班考勤数据, 作业提交情况和实现班级新闻的发布. 此部分预计授课 40 课时.
内容扩展.
包含温度感应器, 压力感应器, 语音感应器等功能介绍. 包含语音识别, 文字识别, 牌卡识别等智能化等接口功能介绍. 此部分预计授课 8 课时.
随堂作业
创意一套智能冰箱软硬件系统解决方案, 包含设计思路, 功能内容, 纸面原型, 项目结构, 硬件要求, 项目结构, 数据结构和编程思路.
创意一套智能门锁或其他软硬件系统解决方案, 包含设计思路, 功能内容, 纸面原型, 项目结构, 硬件要求, 项目结构, 数据结构和编程思路.
项目实战
分组结合, 从随堂作业的创意中选定项目, 开发一套具有智能化功能的软硬件结合的系统解决方案.
设计说明
专注于产品设计好工程实现, 重点培养跨软硬件的系统化解决能力.
人工智能的目的并非算法或代码公式, 而是创造服务于现实的有效产品.
同样, 编程代码并不是最终目的, 而仅仅是诸多工具中的一种, 必须以培养学员改变世界的能力为目的, 而不是以编程代码为目的.
第四阶段: 智能算法开发
适合阶段
初中, 高中.
授课时长
64 课时.
课程目标
使学员掌握深入抽象世界, 探寻更深层规律的工具和手段, 能够应对更加复杂, 更加未知的现实问题.
掌握基于 scikit-learn 的机器学习算法应用和基于 TensorFlow 的深度学习算法应用, 能够对较大数据进行分析和挖掘, 能够开发较为简单的视觉算法模型和问答系统.
课程内容
以若干具体的案例为基础, 介绍基于 scikit-learn 的机器学习算法应用.
这些案例可能包括房价预测, 个人健康数据预测, 用户群体分类画像等. 无需完整介绍所有机器学习算法, 仍然以项目导向. 此部分预计授课 32 课时.
以若干具体的案例为基础, 介绍基于 TensorFlow 的机器学习算法应用.
这些案例可能包括摄像头厂区行人安防检测, 基于视觉的工业产品良品率合格率检测, 基于声音的汽车健康检测, 基于 NLP 的舆情倾向检测等. 无需完整介绍所有机器学习算法, 仍然以项目导向. 此部分预计授课 32 课时.
随堂作业
在现实世界中发现至少三个尚待解决的问题, 分析场景特征, 数据特征和解决思路.
项目实战
分组结合, 从随堂作业中发现的问题入手, 收集数据, 整理数据, 实验算法, 构建模型, 评估效果, 最终形成可用的软件 (或软硬件) 产品.
或: 分组结合, 参与 Kaggle 竞赛或天池算法赛, 并力求获得较好成绩.
设计说明
鼓励学员面向现实问题进行算法研发, 提出完整的解决方案.
对于算法能力较强, 比赛欲望较强的同学, 鼓励和支持其参加有影响力的算法竞赛.
鼓励学员以系统化的软硬件结合的方式进行思考, 构建较为完备的系统化解决方案, 而不仅仅是算法本身.
关于后续进阶
完成以上内容学习之后, 学员应该已经具有较强的问题解决能力和对应的学习探索能力, 原则上已经不再需要额外的培训, 而更多依赖于社群交流和自我学习推动. 但以下情况为例外:
高级人工智能算法研发. 以科研专利和论文为目标, 此时学员需要有更高级别的专家导师进行指导.
大赛冲刺. 如果希望在各类创新大赛或正式的人工智能算法赛中取得名次, 此时学员需要有更加富有赛事经验的专家导师进行指导.
来源: http://www.jianshu.com/p/a9bee473a2ac