人工智能交互挑战 记录 DAY 1

64 阅读8分钟

作者:杨家瑞

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 基本命令的实用性分析

● 文件与目录操作在项目中的应用

屏幕截图 2024-08-19 190603.png

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() # 输出完一行后换行