01 实操 人工智能系统设计(完工)
公司需要开发了一个XX系统,在文件夹中包含了XX.csv,其中每一行表示一个XX样本,最后一列为每个样本的标签,现需要设计模型与系统,请按照以下要求完成算法测试。根据要求完成以下任务,将完成的任务(包括但不限于截图、文档、程序等)保存:
(1)打开“XXXX.ipynb”;
(2)编写代码补全其中神经网络模型的设计部分;具体要求如下:一共3层神经网络(L1、L2、L3);前两层都要完成线性计算、BatchNorm(B1、B2)、激活函数relu的计算,神经元数量分别为128和256;最后一层只需完成线性计。截取代码命名为”保存;
python 代码解读复制代码 def __init__(self):
super(MyNet, self).__init__()
# 第一层
self.fc1 = nn.Linear(14,128)
self.bn1 = nn.BatchNorm1d(128)
self.relu = nn.ReLU()
# 第二层
self.fc2 = nn.Linear(128,256)
self.bn2 = nn.BatchNorm1d(256)
self.relu = nn.ReLU()
# 第三层
self.fc3 = nn.Linear(256,2)
def forward(self, x):
x = self.fc1(x)
x = self.bn1(x)
x = self.relu(x)
x = self.fc2(x)
x = self.bn2(x)
x = self.relu(x)
out = self.fc3(x)
return out
02 实操2 dw分类训练(要背的代码)(完工)
1.数据集划分
python 代码解读复制代码from torchvision import transforms,datasets
# ----------------
#读取并划分数据集
# 基于torchvision库的ImageFolder提取图片路径
folder = datasets.ImageFolder(root='动物图片', transform=trans_compose)
# 计算总样本数n、训练集样本数n1和测试集样本数n2
n = len(folder)
n1 = int(n * 0.8)
n2 = n - n1
train, test = random_split(folder, [n1, n2])
# ----------------
import torchmetrics
#训练并保存模型
lossf = nn.CrossEntropyLoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)
metricsf = torchmetrics.Accuracy(task='multiclass', num_classes=len(folder.classes))
for i in range(1):
running_loss = 0.0
for batchX, batchY in data_loader:
optimizer.zero_grad()
# 前向传播
outputs = model(batchX)
loss = lossf(outputs, batchY)
# 反向传播和优化
loss.backward()
optimizer.step()
running_loss += loss.item()
# 计算准确率
metricsf(outputs, batchY)
# 打印每个epoch的损失和准确率
epoch_loss = running_loss / len(data_loader)
epoch_accuracy = metricsf.compute()
print(f'Epoch {i + 1}/1, Loss: {epoch_loss:.4f}, Accuracy: {epoch_accuracy:.4f}')
# 重置评估指标
metricsf.reset()
torch.save(model.state_dict(), '2-2model_test.pth')
03 实操基础理论 数据增强(完工)
(1)图像数据增强方法
- 几何变换类:平移(将图像在平面内沿水平或垂直方向移动一定距离)、旋转(绕图像中心旋转一定角度,如 90°、180° 等)、缩放(按比例放大或缩小图像尺寸 )。
- 颜色变换类:亮度调整(增加或降低图像整体亮度 )、对比度调整(增大或减小图像像素间的对比度 )、色彩抖动(随机改变图像的色调、饱和度和明度)。
- 其它类:噪声添加(向图像中加入高斯噪声、椒盐噪声等 )、模糊处理(如高斯模糊、均值模糊 )、裁剪(随机裁剪图像的部分区域 )。
(2)流程图基本概念(要背)
- ①处:判断文件是否为图像文件。
- ②处:判断图像文件是否为.jpg 类型。
- ③处:判断图像文件是否为 RGB 模型。
(3)容易出现的问题:严格筛选致数据丢失、误筛。改进:添加格式转换,兼读文件头信息与色彩模式标识,精准判断格式和模型。
04 实操理论2 数据采集培训要求(完工)
数据采集培训大纲(以下为参考,自己要修改,与下面一致的会造成雷同)
- 基础认知:明晰数据采集概念、重要性与应用场景。
- 方法技巧:讲授多种采集方式,涵盖网络、传感器等,分享实操窍门。
- 工具运用:熟练掌握 Excel、Python 等工具用于数据获取与整理。
常见问题及解决方法(选2条背)
-
目标不明确
- 问题:未清晰界定采集数据的用途与范围,导致收集大量无关数据,遗漏关键信息。比如市场调研时,不清楚要分析用户哪类消费行为,盲目收集。
- 解决方法:项目启动前,组织跨部门会议,与业务、分析团队深入沟通,基于业务需求和分析目的,详细梳理数据需求清单,明确数据用途、范围、字段及预期成果。
-
样本偏差
- 问题:选取样本缺乏代表性,如调查城市居民出行方式,仅在高档社区采样,无法反映整体情况。
- 解决方法:运用科学抽样方法,像分层抽样,按城市区域、收入水平等分层后随机抽取;扩大样本覆盖范围,涵盖不同特征群体,必要时用统计方法评估样本代表性。
-
数据来源不可靠
- 问题:采用劣质数据源,像某些非官方网站数据,可能存在错误、过时或被篡改,影响数据质量。
- 解决方法:优先选用官方机构、权威数据库等可靠数据源;对新数据源,先小范围验证数据准确性,对比多个来源数据,分析差异。
-
采集方法不当
- 问题:不匹配数据特性与采集手段,如用访谈收集大规模用户行为数据,效率低且易有主观误差。
- 解决方法:依据数据类型(结构化、非结构化等)和规模,合理选择采集方法,如大规模行为数据用埋点技术,文本数据用网络爬虫;结合多种方法交叉验证数据。
-
技术故障
- 问题:采集工具或系统出现故障,如网络爬虫被网站反爬机制阻断,导致数据中断或丢失。
- 解决方法:定期维护采集工具和系统,升级软件版本;针对爬虫被阻,采用 IP 代理池、模拟人类浏览行为等策略绕过反爬;设置数据备份机制,实时或定时备份采集数据。
-
数据重复采集
- 问题:缺乏统一规划,不同部门或环节重复收集相同数据,浪费资源。
- 解决方法:建立企业级数据管理平台,梳理各部门数据需求,绘制数据地图,明确各数据归属与采集责任;制定数据共享规范,促进部门间数据流通。
-
隐私与合规问题
- 问题:采集敏感个人信息未获授权,或违反行业法规,面临法律风险。
- 解决方法:设立数据合规官,负责解读法规政策;采集前向用户明确告知数据用途、范围、存储方式,获用户同意;加密敏感数据,遵循 “最小必要” 原则采集。
05 实操3 (完成) 背的以下代码即可
1.判断是否以png结尾 (根据实际情况调整)
arduino 代码解读复制代码if filename.endswith('.png'):
2.筛选 通道
基础知识
- RGB 通道:这是最常见的色彩模式,用于表示彩色图像。R(红色)、G(绿色)、B(蓝色)三个通道分别存储了图像中对应颜色的强度信息,通过这三个通道的不同组合,可以呈现出丰富多彩的颜色。
- RGBA 通道:在 RGB 的基础上增加了 A(透明度)通道,用于表示图像的透明度信息。A 通道的值范围从 0 到 255,0 表示完全透明,255 表示完全不透明。
- 灰度通道:也称为 L 通道,图像只有一个通道,存储的是灰度值,表示图像的亮度信息。灰度值范围通常从 0(黑色)到 255(白色),可以用来表示黑白图像或彩色图像的亮度分量。
- CMYK 通道:C(青色)、M(洋红色)、Y(黄色)、K(黑色)四个通道,常用于印刷领域。与 RGB 通道不同,CMYK 是一种减色模式,通过这四种颜色的油墨混合来产生各种颜色。
筛选 通道的语句 if img.mode == 'XXXX': (注意最后有封号,XXXX是通道的值)
评论记录:
回复评论: