华盛顿大学(University of Washington),是一所位于美国华盛顿州西雅图的公立研究型大学。创建于1861年,是美国西岸最古老的大学,也是美国西北部最好的大学,被誉为“公立常春藤”。华盛顿大学在2019年US News世界大学排名第10位,2019年世界大学学术排名第14位,医学与计算机科学常年位居全美前十。华盛顿大学共有20位校友及教职工获得诺贝尔奖、1位菲尔茨奖、2位图灵奖、252位美国院士。
四大核心课程模块,24课时:
1. 人工智能 Artificial Intelligence
本课程向学生介绍经典的人工智能算法和人工智能世界的当前趋势。课程内容涉及人工神经网络、多层人工神经网络、A*寻路算法、马尔可夫决策过程等。
2. 图像处理 Image Processing
本模块向学生介绍图像形成的理论和常用的图像处理方法,还将探讨使用深度学习算法在图像处理方面取得的最新进展。课程内容涉及图像处理与计算机视觉、计算机视觉/图像处理的机器学习理念、卷积神经网络、成像与图像坐标、图像点处理、图像卷积、边缘检测、卷积神经网络等。
3. 大数据 Big Data
大数据模块将为学生呈现多种基本的数据分析方法。课程内容涉及采样、样本分析、假设与检验、线性回归、曲线拟合等。
4. 手机操作系统 Mobile Operating Systems
本模块向学生介绍移动应用程序设计的关键挑战、体系结构模式和当前技术。此外还将探讨移动操作系统如何为增强现实和人工智能服务提供令人兴奋的新功能。课程内容涉及手机应用程序开发模式、手机应用程序常用语言基础入门、用户界面设计、架构、增强现实等。
<学生感言>
楚雪莹-国际学院-电子商务及法律专业本科生
今年寒假,受疫情的影响,与华盛顿大学的交流活动只能遗憾的转为线上进行。但即使是线上学习,也没有消磨同学们的热情。在紧张的学习氛围中,不知不觉便度过了31天的时间。两个多月以来,每每回忆这段经历,都有许多想法想与大家分享;对于之后可能参加本项目的同学,我也有许多建议。
一:学习方面
虽然是寒假项目,但学习的过程一点都不“水”。本项目包括四个模块,Artificial Intelligence,Image Processing,Big Data 和 Mobile Operating Systems。参加项目前,我们已经获得了课程时间安排,具体课程大纲则是在第一堂绪论课上发布的。
这四个模块对我来说都是第一次接触,特别是图像处理。在短短的五周中,我记录了数十页的ipad自学笔记,完成了四次章节小测及一次期末考。为什么需要自学呢?因为每个模块的内容都很多,大多数同学对于这四个模块的基础都是较为薄弱的,每天正式课程又只有60分钟左右,老师只能用来讲基础和拎重点,课余还需要大量自主学习。老师也会在课件中给我们提供更多学习资源网址和书籍清单,帮助我们更深入地理解和学习。
每个模块都有5节课的录播学习及一节课的office hour。在office hour中,学生们可以和老师通过zoom平台进行无障碍沟通,即使相距千里,依旧能感受到老师给我们解决问题时的无限热情。
每两个模块,我们都被随机分为7人小组,在每个模块的学习过程中,我们都要完成一个小组作业,从而通过实际上手操作来加深对学习内容的理解。考虑到小组内的同学也有非计算机专业的学生,我们一般会分别分配代码和非代码任务。但即使我是计算机相关专业的学生,我也是第一次接触python,所以在学习模块内容的同时,还需要从网上找大量书籍及视频,对python进行更加系统的学习。我们基于Python语言完成了与项目相关的四个课题的研究,包括通过A* Search 算法求出含有障碍物的最短路径;通过对图像进行降噪来求强度梯度、非极大值抑制、应用双阈值确定潜在的边缘以及磁滞跟踪边缘,这5个步骤实现了Canny边缘检测算法;通过计算授权戴口罩前后的rt值来确定戴口罩是否减慢了COVID-19的传播速度;通过检测睡眠期间脑电波和呼吸声的状态设计出了一款比现有app功能更多,操作更简单的睡眠监控app,其中使用了混合/跨平台技术以便同时支持Android和iOS操作系统。
完成小组任务的过程中,同学之间也加深了对彼此的了解。为了完成小组作业,我们基本上每天开一个小会,即使之前素未谋面,在完成项目学习之后,同学们之间也相熟起来。即使现在距离项目结束已过去了一个多月,同学之间依旧保持着联系。
二:学习建议:
1. 尽量参加每次office hour,因为是线上学习,有的同学会受到条件限制而错过office hour。这是非常遗憾的,因为office hour是一个非常珍贵的机会,可以和老师进行面对面的交流,这是相较于自主学习来说更为高效的学习方式。有什么不懂的问题,老师会进行现场讲解,省去很多自己查找解决方法的时间。
2. 不要害怕问问题,老师们都非常热情且很鼓励同学提问。
3. 光看课件和老师的讲解视频是非常不够的,老师会在课件中给同学们一些更深入学习的链接和书籍的推荐,建议同学们一定点进去学一下。会对小组作业及未来的深入学习有很大帮助。
4. 充分利用网络资源,UW有非常成熟的学术网站资源,我们是有权限进入的,我们可以在上面查到许多网站上查不到的学习资料,你一定会非常享受这种自己PUSH自己学习的过程。
5. 做好熬小夜的准备。虽然这不是一个对健康有利的心态,但是,我在这里提出还是想说明这次线上的交流项目真的不“水”,而且小组作业是难的。
6. 与小组好好交流,结成学习伙伴。完成小组作业,同学之间的交流是必不可少的。结交学习伙伴还同时有利于抓紧学习进度。
因为是线上学习,学习时间较为宽松,但万不可拖延到最后一天学习,因为每个模块都有小测,最后一天学是肯定来不及的,而且会听不懂office hour上老师和同学们交流的内容。
三、学习小结
这次的华盛顿大学线上计算机项目对我来说是有挑战性而难忘的,经过1个多月的沉淀,现在细细想来,我的成长是很大的:在TOP 10名校的短暂线上学习过程中,我从一个有出国留学想法的大三学生,到逐步确立自己的兴趣方向,到确立自己的发展目标。非常感谢华盛顿大学的老师及助教在学习方面对我的陪伴和帮助,与他们的交流与交谈也让我加速成长、更加明确自己未来的方向、了解自己的无限可能。同时,这次项目也锻炼了我的自主学习能力、英文听说能力及课题研究能力。短短的总结道不尽交流中的点点滴滴,这些建议是我个人的一些心得感悟,仅供同学们参考。
最后还要谈及本次交流项目对我触动最大的地方,就是让我对人工智能产生了极大的兴趣,也让我有了未来在该领域深入研究的决心。项目结束后,我立马选修了认知科学与人工智能选修课,打算进行更加系统的学习。兴许这将成为我今后的学习方向。
李文琪-网络空间安全学院-网络空间安全专业
2021年的寒假,对我而言是一个与众不同的寒假。因为在这个假期中,我有幸参加了为期一个月的美国华盛顿大学线上计算机项目,并且从这个项目中收获了许多。下面,我将对我这一个月的交流学习做出详细的总结。
Part 1 学科素养提升
回想当初自己报名这个项目时的想法,就是希望通过这门课程加深自己对于计算机这门学科的认识,拓宽自己在这个领域的知识面。现在看来,这门课程可以说是很好地实现了我对它的期待。
一方面,这门课程帮助我更深入地学习了计算机的基础知识。比如,在学习Module1的人工智能模块时,老师向我们详细介绍了A*算法,并且给我们发了待完善的python代码,要求我们将其补充完整以实现该算法。当时,我对于python的学习仅限于自学,只能达到勉强看懂简单代码的程度。但是,在老师以及任务的引导下,我开始在网上寻找A*算法相关的技术博客和更有针对性的python学习教程,最终在与小组同学的合作下,按时保质保量地完成了此次的任务。类似的,在学习Module2的图像处理时,我被分配到了小组作业中用python代码调整图像这一任务。有了在上一模块中学习使用python的经历,在这一次的任务中,我明显感受到自己比之前编写代码更为熟练了。而且,在查阅所需的函数库时,也让我认识到了python这门编程语言包含了许多功能强大的模块,这也是与我在学校学习的更偏向底层的C语言的不同之处,可以说是对课内学习的一个很好的补充。
另一方面,这门课程明显拓宽了我在计算机科学这一领域的知识面。在校内的学习中,由于自己尚处于低年级,因此所学的课程大多是如数据结构,操作系统这类比较基础的科目,而这些课程往往相对枯燥,很容易让人失掉学习的兴趣与动力。而这次的线上课程,则给我提供了一个很好的机会去接触计算机应用方面的学科,如人工智能,图像处理以及大数据分析。而在每一个模块的课程中,老师总能考虑到我们的基础,深入浅出地为我们讲解这一领域的相关知识,激发我们探索的兴趣,带领我们感受学科的魅力。这样的课程安排,可以说是给我一个重新审视计算机学科的机会,它也为我在校内继续学习基础知识提供了重要的动力。
Part 2 团队合作能力培养
在我看来,这期课程留给我印象最深的部分,就是每周的小组作业。因为这项任务不同于每节课后的quiz,它的任务量更大,复杂度也更高,因此必须要小组团队协作才能取得最好的效果。但是,在参加这个项目之前,校内的课程很少需要我参与团队合作,这也就造成了我在第一模块完成小组作业时感到很不习惯。更具体一点,就是我在完成第一个小组作业时,和小组内其他同学的沟通太少了,因此就造成了在最后提交作业时,好几个人完成了同一项任务的尴尬局面。而这一次不太成功的小组合作,也让我意识到了在团队协作中,能力高低倒不是决定性因素,最重要的还是需要及时、良好的沟通,这样团队合作的高效率才能体现出来。因此,在后面的团队合作中,我有意识地加强和别人沟通,尤其是在开始做任务之前,明确好每个人的分工。经过3周的不断训练,在最后一周的小组任务中,我们组很高效地完成了任务的分配,并且确保了每个人的任务量都比较合适,最终相对轻松地完成了一个总任务量很大的作业。这一次成功的小组合作经历,对于我来说是一笔宝贵的财富。而在这一学期的校内学习中,学校也开始增加小组合作任务的数量。有了线上课程参与小组合作的经验,现在,我就可以更加从容地面对团队协作,可以说得上是现学现用了。
PART 3 英语能力提升
其实,在报名这项课程时,我仅仅考过四级而且分数并不算高,所以我也曾担忧过自己的英语水平不足以支撑我完成整个项目的学习。线上课一开始,就印证了我的担忧。第一模块的学习是由一位来自俄罗斯的老师授课,因此她的英语发音带有一些口音,这就让本不熟悉英语的我感到听课十分困难。因此,在那一段时间,我在上课之余,也增加了自己学习英语的时间,并将重心放在了练习听力与阅读上。同时,对于每节课的视频,我都尽力认真去听,遇到听不懂但又感觉很重要的地方,我会反复去听,并结合课件,尽己所能去理解课程内容。就这样,经过一段时间的学习,我发现自己渐渐能适应全英文授课了。比如,当面对全英文的课外资料时,我从一开始一遇到生词就查的低效阅读方法,逐渐转变成先泛读,再对重点部分精读的学习方法,这样一来,很大程度上降低了我阅读全英文资料的抵触心理,学习效率也有了较大的提升。再比如,我一开始在接触全英文授课时,有时会不知不觉就走神了,但后来,我要求自己尽量保持专注,一时听不懂的地方不纠结,继续往下听,便也慢慢发现,自己能大致听出老师讲课的思路来了。回想自己之前对于英语听力的训练,基本都是听几分钟的一段听力材料然后做题,很少有机会去练习长时间的听力能力。因此,这期项目的课程,可以说得上是为我提供了一个很好的提升自己英语水平的平台,让我在家足不出户,就能体验到在国外课堂学习的氛围。
Part 4 其他方面反思
刚刚讲了许多,都是围绕着自己的收获来讲的,但其实在整个课程中,自己也有很多做得还不够好的地方,也是值得自己加以反思的。最突出的一点,就是学习录播课的自律性较低。具体一点,就是自己在假期里,有时候比较贪玩,因此就会把几天的课放在一天去完成,从而造成这些课的学习效果不够好的情况。这也提醒了我,自律在学习中的重要作用,对我今后的学习有很大的指导意义。
Part 5 总结
经过一个月的认真学习,我拿到了3.4分这样一个还不错的成绩,更重要的是,我的各方面能力都有了一定的提升,这对我今后的学习生活是至关重要的。最后,再次感谢学校给了我这次参加线上学习的机会,让我度过了一个充实且有意义的寒假。
图:小组作业
图:图像处理中用python实现调整图像的部分代码
图:团队合作完成的软件说明书部分内容
何鑫-信息与通信工程学院-人工智能大类本科生
在本项目中,我感受到与国内完全不同的教学模式。课前我们需要阅读大量文献,这与国内有很大不同,开始会觉得很不习惯,但是高强度的阅读确实给我带来很多的收获,这些文献涉及不同领域、不同方向的话题,让我受益匪浅。英文文献的阅读,对我的总结能力、口语、表达能力都带来了很大的提高。每周都有老师在ZOOM平台上进行答疑,让我收获良多。每周团队合作的小组任务,让我提高了团队协作能力,时间规划能力等。每次每个单元测试时,都是我最忙碌的时候,我会复习全部所学内容,并且再重新做每一个小测试,再把自己之前没弄懂的知识点查资料,弄明白,最后进行考试。总之,在这个假期,过得特别充实。以下是这四周的学习总结和感悟:
第一周 人工智能学习
(1)人工智能(AI),指数字计算机或计算机控制的机器人执行通常与智能相关的任务的能力。并且通过猫狗问题,知道了机器学习和深度学习的区别
如猫狗问题示例。最大似然法:专家们将发现狗和猫的不同特征,如耳朵、腿、尾巴、身高等,并根据定义的特征训练模型。
(2)机器学习VS深度学习
机器学习与深度学习与ML相比数据量较低,性能不佳。高度依赖于高性能硬件,如GPU。需要有专家预先定义的特性,而DL需要自己学习高级特性。DL培训时间长,可能持续数周!在DL中解释结果比在ML中困难得多。
通过了解相关历史,人工神经网络是一个计算机系统灵感来自生物神经网络大脑的一部分。
(3)短路径问题的算法
学习了以下6种算法,重点学习了A*搜索算法。
A*搜索算法、贝尔曼-福特算法、Dijkstra算法(可视为A*搜索的特例)、Floyd Warshall算法、约翰逊算法、Viterbi算法(随机路径概率法)这6种方法各有优缺点。我重点梳理A*搜索算法
A*搜索算法定义:A*搜索算法是主要使用的计算机算法,用于最佳寻路和图形遍历。A*搜索算法使用启发式概念获得教育。最初,它是为移动机器人(SRI)设计的,可以在1968年计划自己的行动。算法的缺点:复杂性等
在第一周的学习中,我了解了什么是AI,AI在某些行业的应用,我应该怎么学习AI。算法之类的很少涉及,在华盛顿大学的课程中,我们应该更注重自我学习,老师只是一个引导者,更多的知识,需要自己来发掘。
第二周 图像处理的学习
重点学习了图像处理的各种方法
(1)线性滤波(矩阵\卷积)
线性滤波可以说是图像处理最基本的方法,它可以允许我们对图像进行处理,产生很多不同的效果。做法简单,首先,我们有一个二维的滤波器矩阵(卷积核)和一个要处理的二维图像。然后,对于图像的每一个像素点,计算它的邻域像素和滤波器矩阵的对应元素的乘积,然后加起来,作为该像素位置的值。这样就完成了滤波过程。
特别规则:
如果滤波器矩阵所有元素之和大于1,那么滤波后的图像就会比原图像更亮,反之,如果小于1,那么得到的图像就会变暗。如果和为0,图像不会变黑,但也会非常暗。
对于滤波后的结构,可能会出现负数或者大于255的数值。对这种情况,我们将他们直接截断到0和255之间即可。对于负数,取绝对值。
(2)边缘检测
Canny边缘检测算法的处理流程:
[1]使用高斯滤波器,以平滑图像,滤除噪声。
[2]计算图像中每个像素点的梯度强度和方向。
[3]应用非极大值抑制,以消除边缘检测带来的杂散响应。
[4]应用双阈值检测来确定真实的和潜在的边缘。
[5]通过抑制孤立的弱边缘最终完成边缘检测。
让我印象深刻的是高斯滤波器、各种算子和双阈值。
高斯滤波器是,任何边缘检测算法都不可能在未经处理的原始数据上很好地处理,所以第一步是对原始数据与高斯核作卷积,得到轻微模糊的去噪图像。
对于高斯函数,相比与正态分布是一维的,图像都是二维的,所以我们需要二维的正态分布。正态分布的密度函数叫做"高斯函数"(Gaussian function)。它的一维形式是:其中,μ是x的均值,σ是x的标准差。因为计算平均值的时候,中心点就是原点,所以μ等于0。即:根据一维高斯函数,可以推导得到二维高斯函数
在第二周的学习中,我知道了图像处理的相关算子如Sobel算子、Prewitt算子和一些相关方法如卷积、双阈值、单阈值等等。各种算子的表达式,用处都需要准确掌握,图像的高亮和虚化真的很有用。掌握好了,对PS很有帮助。
第三周 大数据的学习
(1) P值
有“统计学意义"和"差异显著"是两个不同的概念,"差异显著"易给人一种导向,原来两概念在统计学中经常有点通用,现在明确地只能用“有统计学意义”。
P<0.05是指假设H0(即两总体没区别)成立的可能性概率在5%以下,
a就是允许犯Ⅰ类错误(拒绝了正确的无效假设H0)的概率,
一般在做假设检验之前先定好,
如果a=0.05,表示允许犯Ⅰ类错误的概率为0.05,所以当P<0.05时,说明
在a=0.05允许的范围内,认为两总体是有差异的,我们通常只接受p值小于等于0.05的结果。
(2)重采样
样本的均值服从正态分布,如果分布是正态分布,可以直接计算置信区间和p值如果分布不正态,我们应该使用重采样。因此,重采样可以得到更广泛的应用。任何数据重采样后,会满足正态分布。
在第三周的学习中,我主要学习了数据处理的方法,掌握了零假设、P值、置信区间、重采样等等,收获满满!正态分布是初高中就学会的,但在这基础上的重采样是全新的,我当初理解了好久。还有几个学习监督模型的区别,真的很难弄懂,看了好久的资料才勉强懂。在第三周的学习中,大数据让我感受到要先学好基础,才能提高,有些东西就是触类旁通。
第四周 移动操作系统的学习
(1)什么是移动操作系统?
移动操作系统是为移动设备(手机和平板电脑)设计的,主要的移动操作系统是iOS(苹果)和Android(谷歌)其设计是为了降低功耗和移动特定硬件功能(例如位置、触摸、方向、摄像头、等等)每个移动操作系统都有一个官方软件开发工具包(SDK),允许使用操作系统功能的应用程序
每个移动操作系统都有一个官方发行路径(Apple Store-v-Google Play)
(2)移动操作系统与机器学习
移动操作系统平台最近启用了机器学习模型。可在设备或云服务上运行的现模型
支持自定义模型,与第二周学习的知识有非常大的关联。
(3)Android应用程序使用布局将应用程序逻辑与表示分离。
[1]布局定义了所有或部分活动的用户界面。
[2]Android布局以XML形式定义
[3]布局XML可直接编辑或通过Android UI设计器编辑
[4]布局由视图和视图组对象组成
[5]Android具有与定义的UI行为相对应的布局
[6]Android Studio和XCode允许您定义响应的复杂布局运行时约束的步骤
(4)身份验证的方法
移动应用程序可能希望仅允许授权用户访问。常用的身份验证策略有:
基本认证-应用程序控制用户名和密码
[1]单点登录(SSO)-身份验证由企业控制(公司)服务
[2]联合登录-用户可以使用第三方的凭据登录(如谷歌、Facebook等)后者对于缺乏资源的小型组织来说很方便
[3]管理身份验证服务。
在最后一周的学习中,我学会了IOS与Android操作系统的区别,掌握了密码登录、身份验证、数据储存等方法。了解虚拟现实技术的一些应用。最后一周的内容比较偏底层,学习起来有一定的难度,但如果坚持的学习,你会学到很多内容。
总之,在短短一个月的学习中,我收获了满满的知识,了解了国外教学的特点,提高了英语水平,提升了团队协助能力,结交了许多志同道合的小伙伴。本次学习之旅让我感觉不虚此行。
图:成绩单
图:Module 4成绩