网络机器学习
这是纽约大学ITP"网络机器学习"课程的代码仓库
TensorFlow.js、Teachable Machine、ml5.js和RunwayML等工具为浏览器中的交互式机器学习项目创造了新的机会。本课程的目标是学习和理解常见的高级机器学习技术,并将其应用于在浏览器中生成创意输出。
本课程将从运行预训练模型开始,使用ml5.js和p5.js的高级API在浏览器中重新训练模型,并探索TensorFlow.js的层级API,使用自定义数据从头开始创建模型。本课程还将涵盖为训练模型准备数据集。课程将更多地关注ML模型的创意应用,而不是模型架构的数学和理论。
完成本课程后,学生将更好地理解常见和流行的机器学习模型,它们如何工作,如何训练这些模型,以及它们在创意项目中的应用。课程的成果将是交互式ML网络应用。
课程将涵盖的主题包括图像/声音/涂鸦分类、人脸/姿势/手势识别、图像、视频和文本生成。我们将使用和构建的技术和神经网络包括迁移学习、卷积神经网络、生成对抗网络和潜在扩散。
预期学生应该已经参加过ICM(计算媒体导论)课程,或具有同等的JavaScript(p5.js)、HTML、CSS编程经验。
信息
- Yining Shi,周五,晚上6:00 - 8:30,370 Jay Street,409教室 地点:布鲁克林校区,面授,2023/1/26 - 2023/5/3
- 办公时间
帮助
开始使用
要运行每个示例,请打开终端,输入以下命令:
$ git clone https://github.com/yining1023/machine-learning-for-the-web.git
$ cd machine-learning-for-the-web
$ python3 -m http.server
在浏览器中访问localhost:8000
,你会看到类似这样的目录列表:
- week1-intro/
- week2-...
- week3-...
- week4-...
- week5-...
- week6-...
点击进入每周文件夹,你将看到每周的示例。
课程大纲
第1周 机器学习介绍,MobileNet
第2周 图像分类(迁移学习,KNN分类器)
第3周 姿势(PoseNet,BodyPix,U-Net)
第4周 人脸和手势
第5周 声音分类器
-
编程课程:
- 使用Teachable Machine的声音分类器
- 使用Teachable Machine的姿势分类器
- 使用Teachable Machine的图像分类器
- 使用Arduino的分类器
第6周 图像生成
第7周 RunwayML
第8周 文本生成
第9周 使用ml5.js自制神经网络
第10周 自制CNN模型:涂鸦分类器
-
编程课程:
- 用ml5js构建CNN
- 用tf.js构建涂鸦分类器
第11周 期末项目提案
第12周 期末项目开发
第13周 期末项目测试
第14周 期末项目展示
资源
- ml5js
- Coding Train ML5初学者指南课程
- TensorFlow.js
- 机器学习速成课程
- Google AI冒险
- 3 Blue 1 Brown - 神经网络
- fast.ai
- Spell.run
- RunwayML
- @AndreasRef的机器学习工作坊
- Two Minute Papers
- Udemy - 使用Javascript的机器学习
- 使用Scikit-Learn和TensorFlow进行机器学习的实践:构建智能系统的概念、工具和技术
- 附代码论文
- 深度学习
设备
你需要一台现代笔记本电脑(4年内的型号为宜)。大多数所需软件都是免费提供的。
政策
评估
你必须参加所有的课堂会议,提交所有每周作业和一个期末项目。
评分(通过/不通过)将基于以下因素的组合:
- 出勤率、课堂讨论参与度以及对其他学生项目的参与度(40%)
- 作业(40%)
- 期末项目(20%)
请参阅ITP关于通过/不通过的声明,其中指出"通过"相当于"A"或"B",而任何低于这个标准的都将被视为"不通过"。 出勤是必须的。如果您将缺席某堂课,请通过电子邮件通知您的老师。两次无故缺席将导致不及格。(迟到10分钟或以上相当于半次缺席。)
本课程将采取参与式教学,您需要参与课堂讨论,并在课堂上和课外项目中为其他学生提供反馈。这(连同出勤)占您总成绩的40%。
课程将以最终项目结束。您需要发挥自己的能力,创造出运用课程所学知识,对自己或世界有用的作品。这将占您总成绩的20%。
学术诚信声明
剽窃是将他人的作品呈现为自己的。具体来说,剽窃包括:未加引号引用他人的文字序列、对他人作品的段落进行改写、或使用他人创作的事实、想法或图像。
使用免费和开源代码示例
(以下内容改编自卡内基梅隆大学戈兰·莱文的交互性与计算课程(2018年秋季)。)
您必须引用所使用的任何代码的来源
除了教授在课程视频中特别提供的示例外。请注意以下额外的期望和指导原则:
检查许可证。
使用他人的代码时,请注意其发布的许可证,并确保满足这些许可证的条款和要求。常见许可证及其要求的描述可在choosealicense.com找到。某些许可证可能需要获得许可。如果您感到困惑或不确定如何引用代码,请询问课程讲师之一,并尽最大努力。不正确引用代码来源将导致作业得零分。
使用库。
强烈鼓励使用通用、可重复使用的库。开发和贡献这些组件给社区的人付出了努力,往往没有报酬;通过引用他们的名字并链接到他们的仓库来表示认可。
谨慎使用。
有时艺术家会将其作品的全部源代码放在网上,作为他人学习的资源。新媒体艺术课程中教授给出的作业通常相似(例如"时钟");您可能还会发现其他班级或学校的学生为类似作业发布的代码。您可能应该避免使用这些代码。至少,您应该谨慎考虑是否重复使用此类代码。如果必须这样做,最好提取解决特定技术问题的组件,而不是那些用于创造诗意体验的部分。当您使用他人的代码时,您的挑战是使其成为您自己的。显然,从某人的GitHub下载一件艺术作品并简单地改变颜色是极其懒惰的行为。而且如果不正确引用,这将构成彻底的剽窃。
原则声明
蒂施艺术学院教育经验的核心是学生创作原创学术和艺术作品,供教师进行批评性审查。因此,学生始终向教师准确表达自己当前的能力和知识,以便获得适当的建设性批评和建议,这一点至关重要。任何试图通过剽窃或作弊来逃避教师和学生之间这种基本的、透明的交流的行为,从教育角度来看都是自我挫败的,也是对蒂施艺术学院社区标准的严重违反。有关剽窃的所有细节,请参阅蒂施艺术学院政策和程序手册第10页,可在以下网址找到:http://students.tisch.nyu.edu/page/home.html
无障碍声明
请随时向您的讲师提出建议,说明如何使本课程对您更加无障碍。学术调整适用于有证明文件的残障学生。请联系Moses残障学生中心,电话212 998-4980,了解更多信息。
咨询和健康声明
您的健康和安全是纽约大学的优先事项。如果您在本课程期间遇到任何健康或心理健康问题,我们鼓励您使用全天候NYU健康交流服务,电话212-443-9999。此外,所有可能需要学术调整的学生,无论是身体还是心理上的合格残障,请在Moses中心注册,电话212-998-4980。如果您需要帮助联系这些资源,请告知您的讲师。
电子设备使用声明
笔记本电脑将是本课程的重要组成部分,可在课堂讨论和讲座时用于记笔记。在课堂讨论和学生演示期间,必须关闭笔记本电脑。除非与您自己作品的演示直接相关或作为课程的一部分被要求这样做,否则课堂上严禁使用手机。