最近有很多计算机专业的大学生和程序员、工程师等在职人士,向彼岸教育咨询美国伊利诺伊理工大学的计算机硕士项目,想更多地了解课程和教学内容。
彼岸教育从伊利诺伊理工大学计算机科学系要来了一份近期学校的安排的部分课程大纲,包括教师背景和经验、课程目标、课程内容、考核方式,帮你提前了解修完这些课程,我能学到什么,是否掌握的是核心技术,学到之后有什么用。
如果你的计算机科学基础比较薄弱,也不用被课程内容吓到:
伊利诺伊理工大学拥有海内外助教与大家交流学术话题;
有学习小组可以让线上学员们交流学习所得,分享解决实践问题的经验;
彼岸教育还有定期举办的线下科技菁英会,邀请行业专家分享领域前沿和从业心得。
伊利诺伊理工大学的教务团队帮助学生答疑解惑。只要你想学,肯下功夫,没有什么知识点和作业项目是攻克不了的。
另外,一般情况下计算机科学硕士项目修10门课即可毕业,可以学习以下列举的部分课程,或者结合如人工智能、数据库、网络安全、分布式与云计算等其他方向计算机科学课程。(未列举全部课程,后续实际授课老师有可能会有所调整)
授课教师:
Michael Choi博士,伊利诺伊理工大学计算机科学硕士和博士学位,自1998年起在校任教,并与2008年起任诺基亚首席工程师兼实验室高级经理。具有丰富的软件和工程研发,项目管理和项目交付经验。专业领域包括网络管理系统、下一代IP网络、语音和数据集成网络等。
课程目标:
本课程是数据结构入门课程,包括各类数据结构和面向对象的编程技术。学生将使用课堂上学习的数据结构和编程方法来构建复杂的项目。
课程内容:
数据结构概论,面向对象编程技术,软件工程概论,类,对象和应用,抽象数据类型,动态内存,单链表和双链表,堆栈,Big-O,字符串,数组,链表,继承,递归,二叉搜索树,排序,映射,图,散列,软件项目管理策略,软件项目模型,算法与实际软件技巧。
教材:
Object-Oriented Data Structures using Java, 4 th Ed., 2018, Jones and Bartlett, Nell Dale, Daniel T. Joyce, Chip Weems
面向对象数据结构(Java版)
考核方式:
包含日常作业和项目,课堂参与,随堂测验,期中考试和期末考试,综合评定
所有作业通过Github或者Bitbucket上传共享
课程使用编程语言:Java
日常练习讲解示例
授课教师:
Virgil Bistriceanu ,伊利诺伊理工大学计算机博士学位,在IIT承担教职的同时创办了一家IT咨询公司,专业领域包括信息安全,敏捷软件开发,软件测试,计算机体系结构。曾获伊利诺伊州技术协会聚光灯奖。
课程目标:
本课程介绍了计算机系统的内部体系结构,包括微型,小型和大型计算机体系结构。着重于计算机硬件,指令集以及该计算机上高级语言的实现之间的关系。在系统编程方面,该课程教授了复杂的多层软件系统的组件,包括设备驱动程序,系统软件,应用程序界面和用户界面。
课程内容:
计算机体系结构,性能表现衡量方法,指令集设计,寻址模式,存储器层次结构,缓存,流水线技术,高级C语言编程,流程抽象,流程管理,动态内存分配和垃圾收集,系统级I/O和基本IPC
教材:
Computer Organization and Design, 5th edition, Patterson and Hennessy, Elsevier
计算机组成与设计,第5版(计算机软硬件基础经典教材)
https://item.jd.com/11729917.html
Computer Systems: A Programmer's Perspective, 3rd edition, Randal Bryant & David O'Hallaron, Pearson
深入理解计算机系统,第3版(理解计算机系统必读经典书目)
https://item.jd.com/12006637.html
考核方式:
包含日常作业和项目,期中考试和期末考试,综合评定
课程使用编程语言:
MIPS汇编语言,C语言
课程使用的SPIM软件学习MIPS汇编语言
日常练习讲解示例
授课教师:
Gady Agam博士,伊利诺伊理工副教授,计算机视觉和机器学习领域专家。
课程目标:
讲解数据挖掘的基本概念、数学基础和应用算法,让学生通过实际的编程实践来掌握数据挖掘的各项应用。
课程内容:
数据处理和可视化、决策树、各种分类算法、关联关系算法、聚类算法、异常检测、互联网数据挖掘
教材:
Introduction to Data Mining. P.-N. Tan, M. Steinbach, and V. Kumar
数据挖掘导论
https://item.jd.com/12681764.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
授课教师:
Ola Tannous博士,麻省大学博士,研究方向包括数据库系统的可靠性研究等
课程目标:
学会如何针对实际需求建立关系数据模型,分析设计异常,建立实体联系图,分析数据之间的关系,分析和设计范式等,可以用SQL语言解决数据库事务,有能力设计并实现一个基本的具备常见用户功能的数据库项目
课程内容:
关系数据库模型、关系查询语言、SQL语言学习、实体-联系(ER)模型、数据库设计原理和范式、事务处理、并行数据库
教材:
Database System Concept, Silberschatz, Korth, Sudarshan, McGraw-Hill
数据库系统概论
https://item.jd.com/26652358074.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
日常练习讲解示例
授课教师:
John Korah博士,伊利诺伊理工助理教授,弗吉尼亚理工大学博士,研究领域包括大规模信息处理、并行与分布式处理、信息检索等。
课程目标:
为学生讲解信息检索涵盖的基本概念、方法、以及常见议题,核心侧重在实践以及相关理论。核心议题包括根据用户的查询寻找相关内容的算法和方法。学生可以学会如何建立一套信息检索系统,以及背后涉及的各类设计与实施相关的挑战。
课程内容:
搜索的体系架构、信息的索引、可扩展索引、索引压缩、向量空间模型、语言模型、数据挖掘技巧(分类、聚类)、Page Rank等。
教材:
Introduction to Information Retrieval, Manning, Raghavan, Schütze
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
课程使用编程语言和框架:Python
授课教师:
Michael Choi博士,伊利诺伊理工大学计算机科学硕士和博士学位,自1998年起在校任教,并与2008年起任诺基亚首席工程师兼实验室高级经理。具有丰富的软件和工程研发,项目管理和项目交付经验。专业领域包括网络管理系统、下一代IP网络、语音和数据集成网络等。
课程目标:
介绍计算机算法的设计,行为和分析。重点是搜索,排序和组合算法。评估空间和时间使用的最坏情况和平均定界。
课程内容:
算法设计导论,复杂度分析,递归关系,分治法排序(快速排序,堆和堆排序),下限排序,次序统计,二叉搜索树,平衡二叉搜索树(红黑树,AVL树),扩充数据结构,动态规划,贪心算法,平摊分析,斐波那契堆,并查集,图,深度优先搜索和宽度优先搜索,最小生成树问题,最短路径问题。
教材:
Introduction to Algorithms, 3rd edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, MIT Press
算法导论,第3版(算法标准教材,国内外1000余所高校采用)
https://item.jd.com/11144230.html
考核方式:
包含日常作业,课堂参与,期中考试和期末考试,综合评定
课程使用编程语言:Java
日常练习讲解示例
授课教师:
Michael Saelee,伊利诺伊理工大学计算机系资深讲师,曾经讲授过十几门关于程序设计、计算机系体系结构、操作系统等主题的课程。
课程目标:
学习操作系统的基本原理和知识,掌握操作系统管理的资源和提供的服务,通过理解操作系统的源代码以及模拟器训练来掌握知识。
课程内容:
操作系统简介、进程和线程的基本介绍、系统服务、中断、异常的处理、内核模式和用户模式、调度、地址空间、虚拟内存和内存管理、I/O和设备管理、文件系统、并发处理。
参考教材:
Operating Systems: Three Easy Pieces
操作系统导论
https://item.jd.com/12535621.html
考核方式:
包含日常作业,期中考试和期末考试,综合评定
课程使用编程语言:C/C++和汇编语言
授课教师:
MustafaBilgic博士,伊利诺伊理工大学副教授,马里兰大学计算机科学博士,主要研究方向包括机器学习、信息获取和决策理论。Bilgic博士在伊利诺伊理工教授数门关于人工智能、机器学习以及概率图分析领域的课程。
课程目标:
学习自治体的智能控制计算方法,如何用程序来开发灵活的反馈系统,学习启发式搜索、知识表达、约束条件分析、概率逻辑推断、决策控制、传感器解释。学习的重点在于实际的应用案例。
课程内容:
人工智能发展概论、智能代理、通过搜索解决问题、对抗性搜索、知识表达(命题逻辑、一阶逻辑、不确定性表达)、通过逻辑和概率进行的推断、学习(监督学习、加强学习等)。
教材:
Artificial Intelligence: A Modern Approach, Russel, Norvig
人工智能:一种现代方法(本书为人工智能领域的最经典教材)
https://item.jd.com/11343660.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
课程使用编程语言:Python
授课教师:
Dennis Hood,伊利诺伊理工大学计算机系硕士专业负责人及讲师,在IIT已有20多年的教龄,是一位有着丰富教学经验的讲师,并著有多部关于计算机科学教学研究文献。
课程目标:
帮助学生建立软件工程的良好基础,教会学生如何通过经典的方法以及最新的范例来分析、开发和测试软件系统,并从技术、财务、人力资源角度研究有关问题。
课程内容:
学习软件工程的基本原理与实践方法,主题包括软件质量的概念、流程模型、软件需求的分析、设计方法论、软件测试的方法、软件维护的方法。并通过实践来建立一套软件系统。学生在小组协同作业的过程中学习软件开发全周期的各项任务。
教材:
Software Engineering (10th Edition), Sommerville
软件工程
https://item.jd.com/12311942.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
487日常练习示意
授课教师:
Gady Agam博士,伊利诺伊理工副教授,计算机视觉和机器学习领域专家。
课程目标:
介绍计算机视觉领域的基础性话题,帮助学生建立计算机视觉领域的技术理解、数学基础和算法基础,基于相关论文进行有关项目研究,完成有关的课程软件和技术实践。
课程内容:
计算机视觉领域的简介(包括应用领域、常用软件、OpenCV介绍)、图像的组成与表示(数字表示、几何模型、仿射变换等)、图像滤波(卷积、平滑等)、特征提取(边缘、角、曲线、材质等)、模型匹配、相机参数标定(Camera calibration)、对极几何(Epipolar geometry)、模型重建、动作捕捉、动作跟踪、对象识别和形状表达。
教材:
Computer Vision: Algorithms and Applications
计算机视觉:算法与应用
https://item.jd.com/37702398741.html
考核方式:
包含日常作业和课程实践项目,综合评定
课程使用编程语言和框架:Java/C++/Python, OpenCV/OpenGL
课程目标:
课程专注于计算机网络协议和体系架构的分析和工程实现,包括内容分发、点对点网络、路由的原理和设计,网络的移动性、多媒体网络的服务质量、网络的安全和政策研究。
课程内容:
计算机网络和互联网、应用层、传输层、网络层、局域网、无线网和移动通信网、多媒体网络、计算机网络的安全性、如果管理计算机网络。
参考教材:
Computer Networking, a Top-Down Approach, Kurose, Ross
计算机网络:自顶向下方法
https://item.jd.com/12392810.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
课程使用编程语言:Java
授课教师:
Ioan Raicu博士,伊利诺伊理工大学助理教授,芝加哥大学博士,并行计算和云计算领域专家,发表过多篇相关论文。
课程内容:
分布式计算模型、并行计算模型、可视化、云计算平台的体系架构(AWS、微软Azure、谷歌云等)、面向服务的体系架构、云计算编程、网格计算、点对点网络计算。
教材:
Distributed and Cloud Computing: Clusters, Grids, Clouds and Future Internet, Hwang, Dongarra, Fox
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
授课教师:
Mustafa Bilgic博士,伊利诺伊理工大学副教授,马里兰大学计算机科学博士,主要研究方向包括机器学习、信息获取和决策理论。Bilgic博士在伊利诺伊理工教授数门关于人工智能、机器学习以及概率图分析领域的课程。
课程目标:
介绍机器学习领域的基础课题,提供机器学习领域所需的数学概念、算法、以及理解技巧。为学生建立理解机器学习算法局限的理解以及对学习算法表现的分析。
课程内容:
机器学习简介、回归算法、核方法(Kernel methods)、生成学习(Generative Learning)、判别学习(Discriminative learning)、神经网络(Neural networks)、支持向量机(SVM)、图模型、非监督学习(Unsupervised Learning)、维度降低。
教材:
Machine Learning, Tom Mitchell
机器学习
https://item.jd.com/16007151390.html
考核方式:
包含日常作业和项目,以及期中考试和期末考试,综合评定
课程使用编程语言和框架:Python
Scikit-learn http://scikit-learn.org/stable/
TensorFlow https://www.tensorflow.org/
Keras https://keras.io/
点击“