数字书院
首页 >> 数字书院 >> 科学前沿 >> 正文

AI程序设计

2024-04-29  点击:[]

《人工智能程序设计》学习说明

一、课程说明及学习目标

《人工智能程序设计》是面向当前人工智能技术发展需求,以明确需求驱动的程序设计 课程。课程以培养同学们自主学习、逻辑思维和动手实践能力为目标,开展自我驱动式教学模式改革,旨在引导同学们“做中学、学中思、思中创”。课程主要对Python基本语法、面向对象程序设计思想与实现、基于python的人工智能程序设计展开教学。教学过程中对学生进行分层次引导,同学们在完成PPT和视频的自主学习后完成课后习题即达到基础养目标,同学们能够利用所给的课外学习资料综合运用所学知识完成特定任务的开发即达到进阶培养目标,同学们利用所学知识参加各类创新创业竞赛取得成绩、参与学育导师课题项目、撰写科学研究论文达到课程高阶培养目标。本课程培养的同学们能针对交叉方向科研、实践需求,编写调试适合的代码,服务未来科技创新活动。

二、课程学习内容及习题安排(2*16

第一讲 初识程序设计与人工智能

基本要求:了解Python编程语言与人工智能发展的重要关系,了解人工智能最新研究前沿。对Python语言有初步了解,熟练掌握Python输入输出用法。

学习内容:

  1. 了解人工智能热潮中Python程序设计语言的重要作用。

  2. 了解编程导论、计算机导论等内容,了解高级语言、汇编语言、机器语言等特性;了解Python语言的特色,了解解释性语言和编译型语言。

  3. 能够使用Python完成基本输入输出语句;

    建议学时:4学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=1&vd_source=14acea41433c582df4b0e3fc165f7c69

    (从P1-P7

    习题:尝试完成Python输入输出语句

第二讲 Python基本数据类型

基本要求:了解人工智能应用与Python程序设计语言的关系;熟练掌握Python基本数据类型和基本运算符。

学习内容:

1、了解Python基本数据类型(4种);

2、了解Python基本运算符。

3、理解Python基本运算符的基本案例,掌握对变量定义和使用的规范。

建议学时:2学时

视频:https://www.bilibili.com/video/BV1944y1x7SW?p=8&vd_source=14acea41433c582df4b0e3fc165f7c69

习题:https://www.luogu.com.cn/training/484044#problems 第1~5题

第三讲 Python复杂数据类型

基本要求:熟练掌握Python中复杂数据类型(4种)及其相关操作(建、增、删、改、查);了解复杂数据类型运算。

学习内容:

  1. 掌握什么是列表及列表的基本操作;

  2. 掌握什么是元组及元组的基本操作;

  3. 掌握什么是字典及字典的基本操作;

  4. 掌握什么是集合及集合的基本操作。

    建议学时:2学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=18&vd_source=14acea41433c582df4b0e3fc165f7c69

    习题:尝试创建简单成绩管理系统程序实现增、删、改、查

第四讲 Python基本数据结构应用(复习课)

基本要求:熟练使用所学的Python数据结构,以创建一个购物清单为案例

建议学时:2学时

视频:https://www.bilibili.com/video/BV1944y1x7SW?p=18&vd_source=14acea41433c582df4b0e3fc165f7c69

习题:尝试创建简单成绩管理系统程序实现增、删、改、查

第五讲 Python流程控制语句

基本要求:熟练掌握流程图与利用其表示程序结构;熟练掌握顺序结构、选择结构、循环结构;了解利用循环结构构建列表推导式和字典推导式。

学习内容:

  1. 了解流程图基本元素及利用其表示程序结构

  2. 掌握Python顺序结构;

  3. 掌握Python选择结构;

  4. 掌握Python循环结构;

  5. 理解利用循环结构构建列表推导式和字典推导式。

  6. 同学们可自行选择多重循环、查最大最小、求平方、斐波拉切数列、手动翻转数列顺序、简单排序等多种案例来练习Python流程控制语句。

    建议学时:2学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=20&vd_source=14acea41433c582df4b0e3fc165f7c69

    习题:https://www.luogu.com.cn/training/484044#problems 第6~32题

第六讲 函数与模块

基本要求:熟练掌握Python中构建函数的语法规则;掌握位置传入、关键词、默认参数、不定长参数等含义与作用;掌握模块构建及调用方式。

教学内容:

  1. 理解Python构建函数的语法规则;

  2. 掌握如何调用Python函数,重点介绍位置传入、关键词、默认参数、不定长参数等含义;

  3. 掌握全局变量和局部变量的含义及在程序设计中的作用,让学生理解变量与作用域;

  4. 了解匿名函数与高阶函数

  5. 掌握如何利用自己所写的函数构建Python模块(库)并实现调用。

    建议学时:4学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=23&vd_source=14acea41433c582df4b0e3fc165f7c69

    习题:https://www.luogu.com.cn/training/484044#problems 第33~37题

    [写给同学们的话]到目前为止同学们已经可以用Python实现成绩管理系统、五子棋等应用开发,还请同学们不要懈怠,继续努力,认真学习程序设计思想的巨大飞跃——面向对象程序设计,体会程序设计思想之美。

第七讲 类与对象1

基本要求:熟练掌握Python中面向对象程序设计思想;掌握类与对象的含义,掌握继承与多态的特性,并能熟练设计相应的类及实例,掌握接口的设计与实现。

学习内容:

  1. 理解类与对象的定义,对类的字段、属性、方法等概念进行解析;掌握对象的实例化、创建(构造方法)、销毁(析构方法)等概念,以及self的使用。

  2. 理解python中封装、继承与多态的特性,掌握面向对象继承机制,理解父类与子类的概念,掌握面向对象思想;

  3. 通过案例对继承与多态进行理解。

    建议学时:4学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=27&vd_source=14acea41433c582df4b0e3fc165f7c69

    习题:https://www.luogu.com.cn/training/484044#problems 第38、39题

第八讲 类与对象2

基本要求:熟练掌握Python中面向对象程序设计思想;掌握类与对象、继承与多态的特性的基础上,了解接口与抽象类。

教学内容:

  1. 了解接口和抽象类的概念,理解抽象类与接口、类之间的区别和联系。

  2. 结合案例对接口、抽象类进行理解。

    建议学时:4学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=28&vd_source=14acea41433c582df4b0e3fc165f7c69

    习题:https://www.luogu.com.cn/training/484044#problems 第40~42题

第九讲 异常与文件操作

基本要求:了解Python中异常及异常处理的概念,熟练掌握异常构建及抛出的方法并进行处理。掌握Python文件操作基本语法,掌握Python下数据读写方法

学习内容:

  1. 理解异常与异常处理的概念,对异常的捕获与抛出进行学习,构建程序安全性的思想。

  2. 理解上下文与with语句。

  3. 理解Python中文件读写操作关键语法(read、open、write等)。

  4. 理解文件 IO 与序列化。

    建议学时:4学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=30&vd_source=14acea41433c582df4b0e3fc165f7c69(P33:异常,P30文件操作)

    习题:无

第十讲 Python机器学习工具包与人工智能(一)

基本要求:了解Python机器学习常用工具;理解Numpy为机器学习提供了基础数据结构,Matplotlib为机器学习提供了数据可视化和交互的接口,利用Numpy和Matplotlib完成科学数据的读写和图形化展示。

教学内容:

  1. 掌握Numpy提供的基本数组数据类型;

  2. 掌握Numpy常用数据操作,包括建、增、删、改、查等;

  3. 掌握Numpy提供的基本科学计算函数;

  4. 了解什么是Matplotlib,理解Matplotlib中图和子图的概念;

  5. 了解Matplotlib常用绘图函数,使用Numpy提供的数据类型完成Matplotlib作图;

  6. 了解SciPy库的功能及作用。

    建议学时:2学时

    视频:https://www.bilibili.com/video/BV1944y1x7SW?p=33&vd_source=36a0e12ac20355bef57991dc2918c654

    习题:可对课程所设计成绩管理系统中的成绩利用Numpy数据结构存储,并利用Matplotlib作成绩分析图。

第十一讲 Python机器学习工具包与人工智能(二)

基本要求:熟练掌握Pandas为机器学习尤其是数据分析提供了基本数据结构;了解Scikit-learn提供现有大部分机器学习算法;熟练掌握利用Scikit-learn库实现机器学习的一般步骤。

学习内容:

  1. 了解什么是Pandas,掌握Series数据结构和DataFrame数据结构;

  2. 掌握Pandas提供的两种重要数据结构的一般操作,包括建、增、删、改、查等;

  3. 了解什么是Scikit-learn,了解Scikit-learn提供的常见机器学习方法;

  4. 了解Scikit-learn库实现及其学习的一般步骤;对机器学习一般框架有所了解。

    建议学时:2学时

    视频:https://www.bilibili.com/video/BV1fa4111724/?spm_id_from=333.337.search-card.all.click&vd_source=36a0e12ac20355bef57991dc2918c654

    习题:同学们可根据自己掌握的知识,探索利用Pandas完成与EXCEL文件交互,并利用Scikit-learn完成预测、分类等任务。

 

相关课件附件如下:



  • 附件【AI程序设计2.pdf】已下载
  • 附件【AI程序设计3.pdf】已下载
  • 附件【AI程序设计4.pdf】已下载
  • 附件【AI程序设计1.pdf】已下载
  • 附件【AI程序设计6.pdf】已下载
  • 附件【AI程序设计8.pdf】已下载
  • 附件【AI程序设计5.pdf】已下载
  • 附件【AI程序设计9.pdf】已下载
  • 附件【AI程序设计7.pdf】已下载
  • 附件【AI程序设计10.pdf】已下载