2019年西南交大信息学子NUS暑期实践队的第一波消息来了!

来源:信息科学与技术学院  作者:IN传媒  日期:2019-07-12  点击数:55

74日,西南交通大学信息科学与技术学院2019年新加坡国立大学暑期实践队(NUS Summer Workshop小队)顺利出征,随队指导为白立群老师,实践队成员于74日下午抵达新加坡国立大学,开启了为期三周的暑期实践。本次暑期实践是继2016年首届新加坡国立大学暑期实践项目之后第四届信息学院与新加坡国立大学合作的暑期实践项目,参加过的同学们纷纷表示,在项目中得到了提升和锻炼,获得了更广阔的发展平台。

75日上午实践队的小伙伴们参加了NUS计算机学院(Soc)轻松的欢迎会,通过老师的介绍,初步了解了本次NUS Summer Workshop的任务和要求,在NUS老师和同学的引导下,游览了校园,走进了NUS计算机学院的实验室,初步了解了校园环境。整洁、优美的校园,宁静、舒适的教室,让同学们很快静下心来,激起了学习兴趣,下午与所有同学们都开始了各自暑期实践的第一次课。

 

本次实践NUS针对当下热点方向,为我们准备了四大Cluster——Multimedia and VR/AR(多媒体与虚拟现实)Big Data and Cloud Computing(大数据与云计算)AI and Security(人工智能和信息安全)Predictive Analytics(预测分析)。由大牛教授耐心讲授,每个主题下,又分设三到四个小的topic,要求小组成员锁定各自最感兴趣的一个topic进行深入、完成项目。

在即将过去的第一周,实践队的小伙伴们要听所选Cluster下全部的小课题的课程,扩展视野的同时,也细心抉择最适合自己的那一个topic

 一周的课程下来,小伙伴都有各自的学习心得,快让我们分享一下吧。

Cluster 1 – Multimedia and VR/AR Topic 1 :

Topic 1: Real-Time and Realistic Graphics Rendering

时下,3D图形被广泛应用在电脑游戏、电影和电视节目中,是计算机技术下重要的课题。这门课程就是为了让我们了解3D图形图像合成的基础知识而设。在这个课题下,学生将使用OpenGL,学习和实践先进的渲染技术,如多通道渲染、实时表面效果和实时阴影算法。Low Kok Lim 教授先是介绍了OpenGL的发展历史和其基本的编程技巧,又向我们讲解了很多计算机图形学算法的知识。最后,他打开着色器引擎向我们编程演示,短短数十行代码就实现了有趣的动画,逼真漂亮的渲染着实让同学们惊艳到了,本来担心这门课程数学要求高而不敢选的同学们也纷纷变卦。

Topic 2 :Immersive VR Experience Development

依托Unity 3D平台,以及Oculus Rift头戴显示器,Bhojan教授从沉浸式VR的工作原理、面临的挑战以及应用开发时应注意的问题切入,指导我们进行应用开发。通过逐渐深入的探索,我们发现了也解决了越来越多的问题。从一开始的地形设计、材质贴图,到后来的光影特效、物理互动、脚本编写,一步步将虚拟世界打造地更接近于现实世界,模糊了虚拟与现实的界限。

在这个过程中,我们平日里所学到的知识得到了充分的应用——C语言、数电、模电、计组、微机接口,没有哪一样是多余的,并极大地扩充了知识面,也了解到理论结合实际的重要性。

Topic 3: Building a Video Streaming System with DASH (使用 DASH技术构建视频流系统)

课程的主要内容是通过了解现代视频流系统及其工作方式并且构建自己的功能视频流系统。教授通过介绍几种不同的光盘存储技术和不同的传输协议来引入如何让视频传输的速度够快的同时保证画面的质量。图中就是所示就是根据人眼分辨度的能力将后面的数据全部舍弃,这样既能够减少传输所需要的数据,又不会降低视频或者图片的质量。总的来说,这一方面是我之前从来没有接触过的领域,但又十分有趣且实用。

Cluster2 :Big Data & Cloud Computing

Topic1:Computing with big data(大数据计算)

课程以项目为基础,让学生了解云计算的理论和实践。学习目标包括理解云计算概念、模型、技术及其在大数据中的应用的关键原则。主题包括:云计算的原理什么和为什么,关键业务驱动,基本概念和术语,技术和非技术挑战;基本概念和模型云特征、云服务(交付)模型、参考体系结构、云部署模型;云计算背后的技术资源托管、数据中心中的主要组件、虚拟化、多租户;云架构如何组织(分区)资源,如何操作/管理资源以满足特定的目标,云爆发;云应用程序和范例云应用程序、开发应用程序的挑战、应用程序开发模型——IaaS(基础设施即服务)PaaS(平台即服务)SaaS(软件即服务)MapReduce编程模型。

Topic2:Simulation – Allowing ‘what if?’ scenarios

本节课的simulation用于将许多未在现实中实现的场景以及只在想象中出现过的场景进行多次模拟,来得到大量的结果,从而进行分析来预测未来在真是场景中可能出现的状况。

课程首先介绍了离散事件仿真(DES),我们如何推进仿真时间?离散事件模拟的组件和组织;给我们举了个单个服务器排队系统的模拟的例子;为我们搭建了建模世界观(不同的方法);以及最重要的模拟和模型构建的步骤。

接下来模拟中的各种统计模型,这需要用到大量的统计学知识,将模型构建者眼中的概率性的世界建模成模拟模型,从而能够选择输入分布,对输出数据进行统计分析。

课程还介绍了柯尔莫可洛夫-斯米洛夫检验(Kolmogorov-Smirnov test),这是一种检验分布函数是否具有显著差异的测试。并且,课程还教我们初步使用Arena

下面是模拟单服务器排队系统的核心算法:

Cluster3 AI&Security

Topic 1:Deep learning(深度学习)

机器学习是一门专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能的学科。其主要方法是将称作“神经元”的简单计算单元连接成神经网络。关于神经网络Colin教授给我们介绍了循环神经网络(RNN)和卷积神经网络(CNN)的基本概念。除了基础概念的讲解,实际操作也是非常重要的,教授带领我们建立了一个基础的神经网络,并给我们演示了调整不同参数和输入对输出结果的影响。

Topic2:Securing Sercive in the Untrusted Envirnment

在课程的一开始,教授先做了简单自我介绍,之后用一个朴素的小游戏来引入本课程的有关内容。

针对这个游戏中特有的不公平因素,即其中存在作弊的可能性,教授在之后提出了可以用密码学原语(cryptographic primitives)和分布式账本(distributed ledger)两种方法来确保它的公平性。教授紧接着介绍了比特币(bitcoin)的历史和来由,针对比特币分析了其底层的区块链(blockchain)技术。区块链是建立在去中心化的基础上面,它所运用的分布式账本(Distributed ledger)是一种在网络成员之间共享、复制和同步的数据库。分布式账本记录网络参与者之间的交易,比如资产或数据的交换。这种共享账本降低了因调解不同账本所产生的时间和开支成本。

之后教授简单介绍了如何认证记录的真伪以及“挖矿”(mining)中的有关细节与简要操作。教授最后详细讲述了共享合约(smart contract)中的有关知识点和细节,并给出了如下的例子方便我们理解。

Topic 3: tele-robot

tele-robot中,Prof. Uncle Soo首先向我们介绍了这个项目的基本组成以及时间安排。然后向我们展示往届学长学姐的优秀作品。向我们展示了无穷的想象力如何在机器人上得到淋漓尽致的展示。紧接着,老师为我们讲解了主要使用的两种硬件以及配套的软件Raspberry Pi以及Arduino。然后Uncle Soo向我们演示了这些硬件是如何运行与使用。其中,对Arduino进行了重点的介绍。在Arduino中,我们可以实现对于马达,传感器,摄像头的控制以及使用。通过这些,我们可以构建一个机器人的双脚”,“眼睛”,“眼睛”。除此之外,Uncle Soo还从系统的角度上为我们讲解了Arduino的运行原理。

Topic 4:Data: Defense of the ancients.

No DOTA, no DOTA 2. 这个Topic虽然顶着一个游戏的名字,主题却是信息安全――Defend(保卫)我们的设备们。我们的教授Hugh Anderson是一个非常可爱的新西兰人,操着一口纯正的英式英语给同学们讲解信息安全的基本原理,顺带还介绍了一下密码学,在两天的Lecture中圈粉无数。与其他项目不同,信息安全除了使用高超的技术外,更重要的是人与人之间的对抗,所以花样繁多,教授也很好的利用了这一点,在课上播放了很多案例视频,从套壳的ATM机,到使用婴儿哭声套出对方的社保账号,无不让同学们惊叹连连。下图是教授在第二天带到课堂上展示的美军曾经使用过的密码机,非常精巧。

一周的紧张课程很快过去了,目前NUS Summer Workshop的成员们都已经填写了选课问卷及project topic意向,西南交大信息学院的小伙伴在NSU将与来自海内外其它高校的队员们做进一步的学习交流,他们的学习实践情况值得期待哦。

2019710日星期三)