作者:杨家瑞
1. 人工智能导论
人工智能
基本概念
人工智能是一种使机器具备模仿人类智能行为的技术,
包括学习,推理,感知,自然语言处理
AI技术能过够让计算机执行
比如:语音识别,视觉识别,决策制定,情绪识别等任务
● 人工智能的基本概念和历史发展
● 机器学习与深度学习的了解
● 自然语言处理的应用场景
2. 研讨案例分析
e.g.
1.语音识别:小度,siri
2. 视觉识别:人脸识别
3. 情绪识别:微信语音
语音识别
计算机能够通过识别语音,并把语音转化为文本,通常涉及声学模型,语言模型和解码算法
STT(声音到文本)
speech to text
TTS
text to speech
● AlphaGo、自动驾驶技术和ChatGPT案例
● 各案例中应用的AI技术(如语音助手)
3. 人工智能体验
机器学习是什么:
是人工智能的一个子领域,使得计算机能够从数据中学习,
并在有明确的编程指令的情况下做出决策,机器学习算法可以分为
监督学习,无监督学习,强化学习等类型
深度学习:
深度学习是一种基于人工神经网络的学习方法,它使得计算机能够处理大量的
数据,图像,语音,它的学习模型通常具有多层神经元组成。
● 图像识别和语音识别的实际应用和背后技术
● AI 实验室中的数据处理示例分析
4. 编辑器介绍与开发环境搭建
PyCharm
为python开发设计的集成开发环境(IDE)提供了丰富的代码分析、调试、和集成工具
优点:功能全面,可以自动补全;缺点:占用系统资源多
VS code
轻量级的编辑器,支持多种编程语言和插件扩展,
优点:界面简介,速度快,可高度定制
● 常用编程编辑器(VS Code, PyCharm)的优缺点
● 树莓派环境的搭建过程与其应用场景
5. 编写首个程序脚本
print("Hello World!")
● 变量与数据类型
# 变量
# 类型int double string list Boolean
#```变量名+赋值符号=变量值```
from enum import nonmember
#int
a=1
print(type(1))
#flost
b=1.2 #class'float'
d="1"
print(type(b))
print(a+int(d))#cast 强制数据类型转化
#string
c='engulf'
e='''这是一个大段落'''
f="""依然是一个大段落"""
print(type(c))
#list
stu_list= ["jj","kk","ii","oo","kevin","Jee",1,2,3]
print(stu_list)
#对列表元素取值
#下标 index,从零开始对应列表里的元素
print(stu_list[0])#取元素
print(len(stu_list))#求length
print(stu_list[2:5])#取头不取尾
print(stu_list[:3])
print(stu_list[-2:])
print(stu_list.count("jj"))
print(stu_list.pop(2))#只能输入下标,pop删除
#字典 dict dictionary
#键->key
#值->value
#所以字典就是”键值对“
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
#元组,用(),不可变内容
yuanzu =(1,2,3)
#布尔型
# true/false
# 1/0 none
6. 树莓派概述与功能介绍
● 树莓派的硬件结构与功能特点
● 树莓派(Raspberry Pi)是一款小型、低成本的单板计算机,广泛应用于教育、DIY项目和物联网等领域。其硬件结构与功能特点如下:
● ### 硬件结构
● 1. 处理器:
● - 树莓派搭载ARM架构的处理器,最新型号(如树莓派4B)通常采用四核Cortex-A72(ARM v8 64位处理器),主频为1.5 GHz。
● 2. 内存:
● - 不同型号的树莓派提供不同容量的RAM,通常有1GB、2GB和8GB的选项(例如树莓派4B)。
● 3. 存储:
● - 使用microSD卡作为主要存储介质,支持操作系统的安装和数据的存储。某些版本(如树莓派4B)还支持USB 3.0接口,可以连接外部硬盘。
● 4. 视频输出:
● - 提供HDMI和DisplayPort(树莓派4B)接口,可连接显示器、电视等设备进行视频输出。
● 5. 音频输出:
● - 支持HDMI音频输出和3.5mm音频插孔,为音频提供输出功能。
● 6. USB接口:
● - 具备多个USB接口(USB 2.0和USB 3.0),可连接鼠标、键盘和其他外部设备。
● 7. 网络连接:
● - 内建以太网端口(某些型号还支持PoE供电)以及Wi-Fi和蓝牙功能,以供无线连接和数据传输。
● 8. GPIO接口:
● - 提供多达40个GPIO(通用输入输出)引脚,支持与各种传感器、马达等外部设备的连接,适合各种硬件项目和实验。
● 9. 摄像头接口:
● - 提供CSI接口以连接树莓派专用摄像头模块。
● ### 功能特点
● 1. 低成本:
● - 树莓派的价格非常实惠,适合教育和开发使用。
● 2. 小巧便携:
● - 体积小,便于携带和应用于各种环境。
● 3. 灵活性:
● - 支持多种操作系统,主要为基于Linux的系统(如Raspbian、Ubuntu等),还可以运行Windows IoT等。
● 4. 社区和学习资源丰富:
● - 拥有庞大的开发者社区,提供大量的教程、项目示例和技术支持,适合学习编程和电子项目。
● 5. 适用于多种应用:
● - 可用于教育、趣味编程、物联网、机器人、媒体中心等多种场景。
● 6. 功耗低:
● - 能耗相对较低,方便在电源有限的环境下使用。
● 树莓派因其简单易用、扩展性强而受到了广泛关注,成为学习计算机科学和编程的理想平台。
7. Python 基础
● Python 语法结构的基本认识与实战应用
● 使用random进行简单编程
#设计猜数字的游戏
import random
# 生成一个1到100之间的随机数字
answer= random.randint(1, 100)
count=5
while count>0:
guess=int(input("猜测一个1到100的整数>>>"))
if guess==answer:
print("correct,good job")
elif guess>answer:
print("less than"+str(guess))
count-=1
elif guess<answer:
print("more than"+str(guess))
count-=1
● 数据类型的选择
重点在于强制数据类型转化的恰当应用,以满足程序项目需求
● 条件语句与逻辑运算
8. 程序结构与逻辑运算
● 程序顺序结构与条件结构的设计与实现
● 循环结构的应用场景
#while loop
#while + 条件 + 循环体
a=1
while a<=20:
print(a)
a+=1
#for 循环
for i in range(1,11,2):#1到11,步长为2
for j in range(0,3):#遍历
print(i,j)
#用循环嵌套,输出乘法口诀
for i in range(1, 10): # 外层循环,控制行
for j in range(1, i + 1): # 内层循环,控制列
print(f"{j} x {i} = {i * j}", end='\t') # 输出乘法结果,使用end参数控制不换行
print() # 输出完一行后换行
● 逻辑运算符的使用
# 如果 或者
#if else
#如果 或者如果 或者
#if elif else
score = int(input("Enter your score: "))
if int(score)>90:
print("you are honor student")
elif 90>=int(score)>80:
print("you are good student")
elif 80>=int(score)>70:
print("you are bad student")
else:
print("what can I say")
9. 编写一个傻瓜式机器人
● 简单机器人程序的设计思路
● 机器人行为的逻辑编程
● 程序调试与优化过程中的问题及解决
eg
a=int(input("请输入一个0到5的数字>>>"))
# myf_dict = {
# 1: "hello,here is robot,how is it going?",
# 2: "just do it",
# 3: "这是一个冷笑话,觉得有人喜欢你,可能是错觉,感觉有人讨厌你,十有八九是真的。",
# 4: "很抱歉,这都是我的问题,不要感到自责",
# 5: "来,让我抱抱你。我在这里,不管发生什么,我都会陪着你。告诉我发生了什么,让我帮你分担一下,好吗?如果不想说话也没关系,我们可以静静地坐一会儿",
# }
# if a==0:
# break
# print(a)
if a==1:
print("hello,here is robot,how is it going?")
elif a==2:
print("just do it")
elif a==3:
print("这是一个冷笑话,觉得有人喜欢你,可能是错觉,感觉有人讨厌你,十有八九是真的。")
elif a==4:
print("很抱歉,这都是我的问题,不要感到自责,你做的很好")
elif a==5:
print( "来,让我抱抱你。我在这里,不管发生什么,我都会陪着你。告诉我发生了什么,让我帮你分担一下,好吗?如果不想说话也没关系,我们可以静静地坐一会儿")
10. Linux 基础
● Linux 基本命令的实用性分析
● 文件与目录操作在项目中的应用
11. Python 基础 II 与硬件控制
● 列表与字典在编程中的应用
12. 循环控制与思维逻辑
● for循环与while循环的区别与应用
● 嵌套循环在复杂问题中的应用
● 循环控制的思维逻辑训练
13. 完成乘法口诀表挑战
● 循环嵌套在乘法表设计中的应用
for i in range(1, 10): # 外层循环,控制行
for j in range(1, i + 1): # 内层循环,控制列
print(f"{j} x {i} = {i * j}", end='\t') # 输出乘法结果,使用end参数控制不换行
print() # 输出完一行后换行