机器学习应用实战教与学(教学大纲)
admin
2022-05-04 08:16:17
0

原标题:机器学习应用实战教与学(教学大纲)

《机器学习》课程教学大纲

课程代码

课程类别

专业选修课

课程中文名称

机器学习

课程性质

选修

课程英文名称

Machine Learning

授课语种

中文

讲课学时/学分

32/2

适用专业

软件工程

课内实验学时/学分

8

开设学期

第五学期

课外实验/科研实践学时

8

先修课程

课外研讨学时

责任单位

地理与信息工程学院软件工程系

课外素质拓展学时

_

1

课程地位与作用

《机器学习》课程是软件工程专业的专业选修课。2017年7月8日国务院发布关于印发新一代人工智能发展规划的通知,宣布我国人工智能技术的战略目标:2025年人工智能基础理论实现重大突破,2030年人工智能理论、技术与应用总体达到世界领先水平。2018年4月2日教育部发布关于印发《高等学校人工智能创新行动计划》的通知,指出加快机器学习等核心关键技术研究,形成新一代人工智能技术体系。机器学习作为人工智能技术的基础,是一门多学科融合的技术,通过机器学习,使计算机系统具有从数据中“学习”经验的能力以便实现人工智能。

通过本课程的学习,学生将理解机器学习的原理,掌握常见机器学习方法中主要算法、较新的深度学习网络,通过实验提高机器学习算法编程和应用的能力,能够跟踪机器学习发展前沿,为学生将来从事人工智能相关工作或研究打下基础。

2

课程内容简介

本课程涵盖了机器学习的大部分内容,从机器学习原理到实际应用,从传统机器学习方法到深度学习等该领域近年来较新的研究。具体包括:机器学习基础、数据预处理、分类算法、决策树、支持向量机、回归分析、聚类分析、神经网络训练与深度学习、卷积神经网络、循环神经网络、图神经网络、生成对抗网络等内容。

3

课程目标及对毕业要求的支撑

通过本课程的学习,应达到的目标及能力如下:

目标1:掌握机器学习相关的专业术语,了解机器学习的发展动态,能够查阅该领域的中英文文献。

目标2:了解监督/无监督学习方法,了解回归任务和分类任务,了解人工神经网络的原理和基本结构。

目标3:掌握贝叶斯、KNN、支持向量机、决策树、深度学习网络等机器学习方法及其使用,能够使用这些方法解决实际应用问题。

4

课程内容及教学进度安排

课程总学时为32学时,共包括12章内容。各章节学时进度安排如下表:

实验安排:

5

课程目标达成途径与措施

1. 课堂讲授把握主线,深入浅出讲解原理和算法,以实际背景问题引入,分析解决问题的思路与方法,对不同方法进行总结归纳比较,引导学生掌握机器学习的相关概念、原理、方法和应用场景。

2. 注重理论与实践相结合。在讲解算法的同时,演示算法在实际案例中的使用,避免停留在概念和抽象的理论上。同时结合教学内容,安排4次实验,督促学生在掌握理论的同时,应用于实践,不断提升学生理论分析与实践动手能力。

3. 教学过程中,以学生为主体,鼓励学生自主学习、团队协作等,加强职业能力的训练,运用启发引导、任务引领、问题导向、分组讨论、协同教学等多种互动式教学方法,完成课程教学任务。

4. 教学实施过程中,提供丰富的教育资源丰富,如课件、源码、网络资源等。

6

课程的考核与成绩评定

(一) 考核形式

本课程考核以检验学生能力培养目标达成为主要目的,以检查学生对各知识点的掌握情况和应用能力为重点内容,课程总成绩由平时成绩、实验成绩和期末成绩组成,课程总成绩 = 平时成绩 + 实验成绩 + 期末成绩,课程总评成绩满分为100分。其中,平时成绩由(课堂)日常表现和课堂问答记录组成,考查教学过程中学生对知识点的理解和掌握程度;实验成绩为课内实验的报告成绩;期末成绩通过考核课程大作业的形式给出。各部分考核内容及所占比例如下表所示:

(二)考核与评价标准

1. 实验报告考核与评价标准

实验报告主要考核学生对相应知识点的理解程度、实际应用能力,每次报告评分标准(百分制)如下表所示:

2. 课堂问答、日常表现考核与评价标准

1)日常表现:主要考查学生遵守学习相关规定,按时参加课堂学习的情况。迟到、早退一次扣 1分,旷课一次扣2分。

2)课堂问答:就所上课堂内容、知识点随机点学生回答,根据问题难易和学生回答情况进行评价打分并做好记录。

3. 期末考试考核与评价标准

期末考核方式为考核课程大作业,可综述机器学习在本专业中研究应用和发展趋势,或以机器学习方法解决本专业某一研究课题提交实验报告及源码,课程大作业评价标准同实验报告评价标准。

7

课程目标达成度评价方法与改进机制

(一)课程目标达成度评价方法:期末试题中全部为简答题。课程目标、毕业要求指标点与考核成绩的对应关系如下表所示:

(二)改进机制

学校、学院教学督导组,系课程群组的教学质量管理人员,负责组织和实施对课程教学过程与结果的评价工作。主要措施有:三级联合评估、过程监控、总结与评价、持续改进。

1)三级联合评估:学校、学院、系三级联合评估。每年度进行一次课程评估,从课程目标、内容、教学实施、教学资源建设、教学效果等进行全方位的评价,提出存在问题和改进建议。

2)过程监控:学院质量监控委员会、各级领导干部及同行实施学院统一的听课制度,监控教学实施过程并进行反馈。授课期间面向学生进行问卷调查,了解教师授课效果及教材等资源的使用情况,并进行反馈。

3)总结与评价:课程考核结束后,各课程组进行试卷分析和课程总结,针对学生对课程掌握的情况,提出目前存在的问题和后续改进的措施。

4)持续改进:综合如上的评估反馈、听课反馈、学生反馈、课程总结,汇总各方面的意见和建议,在课程目标、课程学时、课程内容、授课方法、考核方式、资源建设等方面进行持续改进。

8

建议使用教材及教学参考书

建议使用教材:

1. 《机器学习应用实战》,刘袁缘等,清华大学出版社,2022年

建议的参考资料:

1.《Introduction to machine learning》,Ethem Alpaydin,The MIT Press,2020

2.《Pattern Recognition and Machine Learning》,Christopher M Bishop,Springer,2011

课程用书

机器学习应用实战

作者:刘袁缘 李圣文 方芳 主编 周顺平 万波 蒋良孝 叶亚琴 杨林 左泽均 副主编

定价:49.9元

扫码优惠购书

技术背景

近年来,随着大数据技术、机器学习、数据挖掘、数据科学以及人工智能等领域的发展与兴起,掀起一场新的技术革命,各行各业对机器学习相关人才的需求也随之而来。机器学习作为数学与计算机的交叉学科,旨在培养集数学分析和计算机编程于一体的优秀人才,适应于当前人工智能的高速发展。

本书写作目的

本书的编写旨在帮助大量对机器学习和数据挖掘应用感兴趣的读者朋友,整合并应用时下最流行的基于Python语言的机器学习程序库,如scikitlearn、PyTorch等; 针对现实中的科研问题,甚至是企业案例、Kaggle竞赛(当前最流行的机器学习竞赛平台)中的应用任务,快速搭建有效的机器学习系统。

本书每一章都描述一个经典的机器学习方法及其实践案例。作者在充分讲解了方法的理论基础上,进一步通过应用案例手把手地教读者如何搭建一个机器学习模型及其应用。

本书力求减少读者对编程技能和数学知识的过分依赖,进而降低理解本书与应用机器学习模型的门槛,并试图让更多的兴趣爱好者体会到使用经典模型以及更前沿的深度学习模型的乐趣。

本书主要内容

本书可被视为一本以问题为导向的书籍,非常适合具备一定数学基础和计算机编程基础的读者学习。读者可以在短时间内学习本书中介绍的所有算法。

作为一本关于机器学习应用实战的书籍,本书分为三部分,包括基础篇、综合篇和拓展篇,共15章。

第一部分为基础篇,包括第1~8章。

第1章为机器学习基础,首先简要阐述机器学习的相关任务,并对机器学习中常用的术语进行了讲解; 然后介绍了机器学习最常用的编程语言与环境,展示了Python的安装、使用方法和PyTorch框架。

第2章为数据预处理,围绕数据预处理的原理和应用展开,包括数据清洗、数据转换和数据压缩技术。最后在实践环节,通过一个数据预处理应用案例演示了如何利用PCA进行降维分析。

第3章为简单分类算法,围绕分类算法的基础知识和应用展开,介绍了两种经典的分类算法——朴素贝叶斯分类算法和KNN分类算法。在实践环节,通过一个应用案例演示了如何使用KNN进行鸢尾花分类。

第4章为决策树,介绍了决策树的基础知识和相关算法,主要包括决策树的基本概念、决策指标、决策树剪枝和经典的决策树算法。在实践环节,介绍了如何使用scikitlearn实现决策树,并通过使用鸢尾花数据集做分类,演示了基于决策树的鸢尾花数据分类以及可视化结果的完整过程。

第5章为支持向量机,首先介绍了支持向量机的基本原理: 通过核方法,将数据映射到高维空间得到线性决策边界,再映射到低维空间得到非线性决策边界。该方法在解决非线性分类问题上有很好的效果。然后介绍了支持向量机常用的核函数。最后演示了基于SVM的异或数据集分类案例。

第6章为回归分析,介绍了几种常用的回归模型及其基本原理和评估方法,讲解了如何使用Python实现这些回归模型。最后,以基于随机森林的房价预测作为应用案例,展示了一个完整的回归分析过程。

第7章为聚类分析,介绍了聚类分析的基本概念,并详细介绍了3种不同的聚类算法及其应用案例,即Kmeans、层次聚类和DBSCAN应用案例。

第二部分为综合篇,包括第9~12章。

第10章为基于RNN的序列数据分类,首先讲解了RNN的发展和特点、序列数据的特点,并列举了4种与输入输出格式相关的RNN模型结构。接着使用PyTorch简单搭建了一个LSTM模型,并展示了通过该框架构建LSTM的模型结构以及隐含状态的输出。最后结合详细代码介绍了基于LSTM的文本分类。

第11章为基于GNN的文本分类,从GNN的基础概念出发,从原理上介绍了GNN的特点,描述了GCN的代码实现,最后以一个文本分类的TextGCN模型为例,演示GNN的具体使用方法。

第12章为基于GAN的图像生成,首先介绍了GAN的基本原理、模型结构、目标函数,以及GAN的训练流程。接着通过PyTorch搭建一个比较简单的GAN。最后通过使用FashionMNIST数据集实现GAN比较广泛的应用——GAN的图像生成。

第三部分为拓展篇,包括第13~15章。

第13章为基于百度飞桨的车道线检测,首先介绍了百度飞桨深度学习平台和AI Studio平台,然后介绍了如何在AI Studio平台创建项目,最后以车道线检测任务为应用案例。

第14章为基于旷视天元MegEngine的目标检测,首先介绍了旷视天元MegEngine平台,包括整体架构和平台特点,然后介绍了MegEngine平台使用方法,最后以MSCOCO目标检测任务为应用案例,展示基于MegEngine平台的模型构建、训练与测试的过程。

第15章为机器学习竞赛平台实践,介绍了国内外两项主流竞赛——Kaggle竞赛和天池大数据竞赛,并介绍了两项赛事中的经典赛题。

上下滚动查看

目录

第一部分基础篇

第1章机器学习基础

1.1机器学习概述

1.1.1机器学习任务

1.1.2重要概念

1.1.3性能评估

1.2编程语言与环境

1.2.1Python简介

1.2.2Python环境配置与安装

1.2.3Python机器学习编程库

1.2.4PyTorch框架

第2章数据预处理

2.1数据清洗

2.1.1缺失值处理

2.1.2离群值检测

2.2数据转换

2.2.1数字化

2.2.2离散化

2.2.3正规化

2.2.4数值转换

2.3数据压缩

2.3.1降维

2.3.2实例选择和采样

2.4应用案例: 基于PCA的数据降维

2.4.1数据集

2.4.2PCA降维

2.4.3案例结果及分析

第3章简单分类算法

3.1朴素贝叶斯分类算法

3.2KNN分类算法

3.2.1KNN算法实现原理

3.2.2KNN算法实现步骤

3.2.3KNN算法优缺点

3.3应用案例:KNN分类

3.3.1数据集

3.3.2构建KNN分类器

3.3.3案例结果及分析

第4章决策树

4.1决策树模型

4.2特征选择

4.2.1特征和数据划分

4.2.2划分标准

4.3决策树生成算法

4.3.1ID3决策树生成算法

4.3.2C4.5决策树生成算法

4.4CART算法

4.4.1决策树的剪枝

4.4.2CART生成算法

4.4.3CART剪枝算法

4.5应用案例: 基于决策树的鸢尾花图像分类

4.5.1数据集

4.5.2构建决策树

4.5.3案例结果及分析

第5章支持向量机

5.1支持向量机的基本原理

5.1.1线性可分

5.1.2最大间隔问题

5.1.3支持向量

5.2常用核函数

5.2.1线性核函数

5.2.2高斯核函数

5.2.3多项式核函数

5.3应用案例: 基于SVM的异或数据集划分

5.3.1数据集及数据预处理

5.3.2构建SVM分类器

5.3.3案例结果及分析

第6章回归分析

6.1线性回归

6.1.1简单线性回归

6.1.2多元线性回归

6.2多项式回归

6.3正则化回归

6.3.1岭回归

6.3.2最小绝对收缩与选择算子

6.3.3弹性网络

6.4随机森林回归

6.5回归模型的性能评估

6.6回归模型的实现

6.6.1线性回归实现

6.6.2多项式回归实现

6.6.3正则化回归实现

6.6.4随机森林回归实现

6.7应用案例: 基于随机森林的房价预测

6.7.1数据集

6.7.2数据预处理

6.7.3随机森林回归模型建立

6.7.4案例结果及分析

第7章聚类分析

7.1聚类概述

7.1.1性能度量

7.1.2距离计算

7.2Kmeans算法

7.3层次聚类

7.4密度聚类

7.4.1DBSCAN相关概念

7.4.2DBSCAN算法流程

7.5应用案例

7.5.1Kmeans应用案例

7.5.2层次聚类应用案例

7.5.3DBSCAN应用案例

第8章神经网络与多层感知机

8.1神经元模型

8.2感知机原理及结构

8.2.1单层感知机

8.2.2多层感知机

8.2.3反向传播算法

8.3.1数据集及数据预处理

8.3.2三层感知机构建

8.3.3案例结果及分析

第二部分综合篇

9.1CNN的基本组成

9.1.1卷积运算基本过程

9.1.2多通道卷积

9.1.3池化

9.2CNN模型简介

9.3基于PyTorch构建CNN

9.4.1数据集

9.4.2数据预处理

9.4.3搭建卷积神经网络

9.4.4案例结果及分析

第10章基于RNN的序列数据分类

10.1面向序列数据的机器学习

10.1.1RNN相关背景知识

10.1.2序列数据

10.1.3序列数据与建模

10.2RNN的常用网络结构

10.2.1基本结构

10.2.2简单循环网络模型

10.2.3门控算法模型

10.3基于PyTorch构建LSTM

10.4应用案例: 基于LSTM的文本分类

10.4.1数据准备

10.4.2模型构建和实现

10.4.3训练模型

10.4.4测试模型

第11章基于GNN的文本分类

11.1GNN基础

11.1.1GNN模型简介

11.1.2GCN模型简介

11.2GCN构建

11.2.1代码层次结构

11.2.2代码实现

11.3应用案例: 基于GCN的文本分类

11.3.1TextGCN介绍

11.3.2基于TextGCN的文本分类

11.3.3案例结果及分析

第12章基于GAN的图像生成

12.1GAN概述

12.1.1自编码器

12.1.2生成模型

12.1.3GAN基本原理

12.1.4GAN模型结构

12.1.5GAN的两种目标函数

12.1.6GAN的训练

12.2基于PyTorch构建GAN

12.2.1网络结构

12.2.2基于PyTorch建立GAN模型

12.3应用案例: 基于GAN的图像生成

12.3.1FashionMNIST数据集

12.3.2数据预处理

12.3.3搭建GAN模型

12.3.4案例结果及分析

第三部分拓展篇

第13章基于百度飞桨的车道线检测

13.1百度飞桨平台简介

13.2百度AI Studio平台简介

13.3使用AI Studio平台创建第一个项目

13.4应用案例: 车道线检测

13.4.1车道线检测数据集

13.4.2评价指标

13.4.3数据预处理

13.4.4模型构建

13.4.5训练和预测

第14章基于旷视天元MegEngine的目标检测

14.1旷视天元MegEngine平台简介

14.1.1MegEngine整体架构

14.1.2旷视天元平台特点

14.2MegEngine平台使用方法

14.2.1注册

14.2.2创建项目

14.3应用案例: 基于MegEngine的目标检测

14.3.1MSCOCO数据集

14.3.2目标检测评估指标

14.3.3模型训练与测试

第15章机器学习竞赛平台实践

15.1主流竞赛平台

15.1.1Kaggle竞赛

15.1.2天池大数据竞赛

15.2Kaggle竞赛实践

15.2.1应用案例1: 泰坦尼克之灾

15.2.3应用案例3:Home Depot产品相关性预测

15.3天池大数据竞赛实践

15.3.2应用案例2:NLP新闻文本分类

15.3.3应用案例3: 贷款违约预测

参考文献

本书特色

(1) 以问题为导向,对基础理论与算法演练进行详细讲解。

(2) 实战案例丰富,涵盖15个完整项目案例。

(3) 代码详尽,避免对 API 的形式展示,规避重复代码。

(4) 语言简明易懂,由浅入深带领读者学会 Python 以及机器学习常见算法。

(5) 各算法相对独立,数学原理相对容易理解。

配套资源

为便于教学,本书配有源代码、数据集、教学课件和教学大纲,在“书圈”公众号回复书号可下载。

相关内容