当前位置: 首页 > news >正文

AI杂七杂八系列(1)——工程篇

1. 远程服务器无法登录问题

2. 内存溢出解决方法

3. Padding

4. try...except...处理异常报错

5. view、expand、repeat、transpose、permute和squeeze、unsqueeze的区别


1. 远程服务器无法登录问题

权限可能是root权限,修改权限

用户权限: sudo chown -R user1 /path/to/directory

群组权限: sudo chgrp -R group1 /path/to/directory


2. 内存溢出解决方法

1)调小batch_size;

2)换一个显存更大/性能更好的GPU——e.g. V100 24G->A100 40G/ A100 80G ;

3)多卡并行 。


3. Padding

(1)用于卷积网络中,对输入边缘进行填充;

(2)避免特征图边缘信息损失;

(3)控制输出特征图大小和形状。


4. try...except...处理异常报错

try:pass
except exception as e:print(e)pass

5. view、expand、repeat、transpose、permute和squeeze、unsqueeze的区别

(1) view

import torchx = torch.randn(2, 3)
print(x.view(3, 2)) ### (2, 3) --> (3, 2)

(2) expand

x = torch.tensor([[1], [2], [3]])
print(x.expand(3, 4)) ### (3, 1) --> (3, 4)
print(x.expand(-1, 4)) ### (3, 1) --> (3, 4)
print(x.expand(4, 4)) ### 报错!!!

(3) repeat

x = torch.tensor([1, 2, 3])
print(x.repeat(3, 1)) ### (1, 3)--> (3, 3)

(4) transpose: 交换张量的两个指定维度

x = torch.randn(2, 3)
print(x.transpose(0, 1)) ### (2, 3) -->(3, 2)

(5) permute: 根据指定顺序重新排布张量的所有维度

x = torch.randn(2, 3, 4)
print(x.permute(2, 0, 1)) ### (2, 3, 4) --> (4, 2, 3)

(6) squeeze: 去除张量中大小为 1 的维度

x = torch.randn(1, 2, 3, 1)
print(x.squeeze()) ### (1, 2, 3, 1) --> (2, 3)

(7) unsqueeze: 增加一个大小为 1 的维度

x = torch.randn(2, 3)
print(x.unsqueeze(0)) ### (2, 3) --> (1, 2, 3)

### 总结

- **view**: 改变张量形状,但不改变存储;

- **expand**: 沿指定维度重复数据,但不复制内容,不改变存储;

- **repeat**: 实际复制数据以沿指定维度重复,改变存储;

- **transpose**: 交换两个指定维度;

- **permute**: 根据指定顺序重新排列所有维度;

- **squeeze**: 去除大小为 1 的维度;

- **unsqueeze**: 增加一个大小为 1 的维度。

http://www.lryc.cn/news/439233.html

相关文章:

  • 学习大数据DAY58 增量抽取数据表
  • HTTPTomcat
  • Python数据分析-Matplotlib快速入门
  • 重塑在线软件开发新纪元:集成高效安全特性,深度解析与评估支持浏览器在线编程的系统架构设计
  • 【鸿蒙OH-v5.0源码分析之 Linux Kernel 部分】003 - vmlinux.lds 链接脚本文件源码分析
  • MongoDB实现高级RAG:Parent-Document检索技术详解
  • 胡学乱想----前端知识点(css色彩)
  • GEE 案例——利用MODIS数据和NDWI指数进行美国五大湖水体计算和时序分析(直方图统计和面积统计)
  • 【jvm】记一次hive堆heap内存溢出的排查
  • 编译运行 webAssembly(wasm)
  • Linux bash 关联数组
  • 选择排序
  • SQL数据库(MySQL)
  • 在MindSearch中使用SiliconCloud:全面指南**
  • C++(2)之Linux多线程服务端编程总结
  • 【AI视频】复刻抖音爆款AI数字人作品初体验
  • Mysql 面试题总结
  • stack - queue
  • 微软九月补丁星期二发现了 79 个漏洞
  • 研1日记12
  • Rocky Linux 9安装mysqlclient库报错的解决方法
  • Spring Boot母婴商城:安全、便捷、高效
  • php实现kafka
  • YOLOv10改进系列,YOLOv10损失函数更换为Powerful-IoU(2024年最新IOU),助力高效涨点
  • 工具知识 | Linux 常用命令参考手册
  • mysql 常用知识点总结
  • conda常用指令
  • 前后端分离项目--下载功能
  • PMP--一模--解题--81-90
  • 计算机网络 --- 【2】计算机网络的组成、功能