除了空间设计、体验设计和程序设计之外,我还喜欢课程设计 | shadow的实验室

周六在同济讲授的是「动手实现聊天机器人」,主要包括2部分技术:爬虫技术和聊天机器人。
一图胜千言,聊天机器人是什么?
爬虫和聊天机器人,是通用技术,适用于各种应用场景,具备交叉学科的特点。通用意味着交叉的可能性更大,所以课程培养的能力是通用能力,即培养学生的动手能力。
动手能力包括哪些呢?主要是编程能力、解决问题的能力、创新思考的能力。
关于编程能力,我挑选了最为核心的关键知识作为课程的教学内容讲解,我们需要知道变量的种类,比如什么叫字符串,在python里如何声明。
字符串="hello"
a="这是一个''字符串"b='这是第二个""'
m='''这是第3个字符串,可以换行的那种,哈哈哈哈哈'''
比如什么是字典,包括什么是注释以及如何注释( 通过键盘快捷键cmd+/ ):
#{}#字典
k={ "key":"value", "设计":"behance.com", "建筑":"biying",}
print(k)
还要了解什么是方法(函数):
def 方法名(参数): print(参数) return
当然以上这些举例只是非常基础的编程知识,编程通用的能力,无非就是掌握变量、条件语句、循环语句、函数之类的。
那么,什么是解决问题的能力?如果是设计师,等同于设计能力,比如你是如何处理一个街旁绿地的出入口问题的,你需要发现问题所在的关键点,然后进行一些分析,再然后提出解决方案。
再如,本次mixlab的年度聚会,我们需要传达mixlab社区的黑客、设计师交叉融合的理念,海报的设计就体现了设计师的解决问题的能力(本次是由共建者Zero²完成的)
回到编程上,解决问题的能力体现在哪里?首先体现在安装开发环境上,比如这次课程涉及到了conda、jupyter notebook、pyppeteer、rasa、spacy等的安装。过程中会面临如果是mac电脑,会面临与系统中存在的python2.7版本的冲突问题,conda里的多环境切换是怎么回事、pyppeteer是什么?无头浏览器是什么概念、spacy又是什么等等问题。
解决问题能力的高低就体现如何自行处理这些问题上(我在课程之前只提供了一个安装清单)。
创新思考能力,如果你能通过这一课的学习,把聊天机器人学习到的相关技术应用到自己的研究之中,那我觉得这一项就达到了基本要求。
这门课有2个核心的技术思维我觉得值得再次强调下:索引、分类。
技术思维之索引
索引是什么?就像图书馆的目录,可以根据目录中的页码快速找到所需的内容。举一个直观的例子:
单词ID 单词 文档ID1 设计 1,2,3,42 建筑 2,33 项目 1,2,34 社交 1,2,35 创始人 2,3,4
索引可以帮我们把时间问题转化为空间问题。
技术思维之分类
分类是什么?指按照种类、等级或性质分别归类。当我们面临问题的时候,总能通过分类的方法,把问题拆解得更小,然后针对小问题进行处理。
分类同时也是一种机器学习的常见任务。
以上是我设计课程主要关注的两个维度:
能力和思维
黑箱理论指对特定的系统开展研究时,把系统作为一个看不透的黑色箱子,研究中不涉及系统内部的结构和相互关系,仅从其输入输出的特点了解该系统规律。用黑箱方法可以得到对一个系统规律的认识。
用黑箱方法,总结下本门课:它的输入是清单、指南,输出是动手能力。黑箱系统里最主要的思维是索引和分类。
⬆️
欢迎扫码与我交流
(0)

相关推荐