python与深度学习随手记录(个人翻阅用)

python与深度学习随手记录(个人翻阅用)

1.Python 切片操作符 ([], [:], [::]
参考:
1.Python 切片操作符 ([], [:], [::])
2.python中[:,2]是什么意思
num[ ] 在python中代表列表list
num( ) 在python中代表元组
num{ } 在python中代表集合
列表操作:
num[]:访问序列中的一个元素,例如 str_list[3] 表示访问 str_list 序列中的第四个元素,index = 3。
num[:]:访问序列中的一段元素,例如 str_list[1:4] 表示访问 str_list 序列中的第二到第四个元素 (str_list[1],str_list[2],str_list[3]),不包含 str_list[4] 元素。
如果没有提供索引值,则默认从 0 开始。str_list[:4] 表示访问这个序列的第一到第四个元素 (不包含 str_list[4] 元素),str_list[4:] 表示访问第五到最后一个元素。
num[a:b,c:d]:分析时以逗号为分隔符,逗号之前为要取的num行的下标范围(a到b-1),逗号之后为要取的num列的下标范围(c到d-1);如果是这种num[:b,c:d],a的值未指定,那么a为最小值0;如果是这种num[a:,c:d],b的值未指定,那么b为最大值;c、d的情况同理可得。

2 .数据a=np.asarray(b),打印a.shape为(),但是直接print(a)又有数据,这是为什么?
numpy数组矩阵shape操作

3 .数据维度扩展,a=np.expand_dims(b,0)(a是2产生的数组),可扩展一个1维度

4 . TypeError: can’t convert np.ndarray of type numpy.object_. The only supported types are: float64, float32, float16, int64, int32, int16, int8, uint8, and bool.
解决一:
将numpy数组进行强制类型转换成float类型(supported types)
解决二:
维度问题
维度不一致,例如:每个元素的长度可能不相同的二维list,保证维度一致

5.torch.Tensor维度压缩

torch.squeeze(input, dim=None, *, out=None)->Tensor
input:要移除维度为大小1的tensor
dim:指定要移除的维度,默认为None。
out:输出

当dim=None,此方法就是将指定tensor中所有大小为1的dim移除,此方法返回的Tensor和原Tensor共享内存。

5.强化学习中action是多维的,ratio如何计算

action各个维度分布是独立的,当我们计算输出的一组多维action的prob是应该是连乘。计算ratio,一组多维action的log_prob则需要将几个维度的log_prob加起来:

在这里插入图片描述
参考:PPO强化学习如何实现多维度的动作呢?

6.gazebo中如何重置agent位姿
参考:
发布位姿命令
通过 topic 实时改变 Gazebo 中的 model pose
1.gazebo_msgs/GetModelState||SetModelState
通过此话题可以省去动力学模型(即省去了控制器),直接发布位姿命令到gazebo中加载的模型.(很好用,odom也会被重置)

7.强化学习图像绘制
使用seaborn绘制强化学习中的图片
使用seaborn绘制强化学习图片,保存数据到文件中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值