- 博客(88)
- 资源 (5)
- 收藏
- 关注
原创 [自动驾驶算法][从0开始轨迹预测]:二、自动驾驶系统中常用的坐标系及相应的转换关系
上一篇文章中,我们介绍了坐标转换的基础知识,接下来,我们将介绍由汽车的传感器到全局定位会涉及到的若干个坐标系统。
2024-01-16 17:01:23 2215
原创 [自动驾驶算法][从0开始轨迹预测]:一、坐标系和坐标系变换
既然要从0开始轨迹预测,那从哪开始写起呢?回想下自己的学习历程,真正有挑战性的不是模型结构,不是繁琐的训练和调参,而是数据的制作!!!笔者自认为不是一个数学基础牢固的人,那么我们的轨迹预测之旅就从坐标转换开始吧~~~由难至简,才能做到【删繁就简三秋树,领异标新二月花】,专注于轨迹预测的核心算法。
2024-01-13 03:01:19 1337
原创 [从0开始轨迹预测]:Laplace分布
具有密度函数fx∣μb2b1e−bx−μ的分布叫做拉普拉斯分布;μ是位置参数,b是尺度参数。拉普拉斯分布的期望为μ,方差为2b2,偏度为0,峰度为3。拉普拉斯分布的密度函数,可以看作是两个指数分布函数的概率密度“背靠背”拼接在一起。因此又称(事实上拉普拉斯分布与指数分布确实有很密切的关系)
2024-07-05 23:32:06 748
原创 [自动驾驶算法][从0开始轨迹预测][文献阅读笔记] [MTR++]:Multi-Agent Motion Prediction with Symmetric Scene Modeling and G
Waymo Open Motion Dataset 2023年冠军方案,较MTR适配了多智能体联合预测的技术方案[自动驾驶算法][从0开始轨迹预测] [文献阅读笔记] [MTR]:Motion Transformer with Global Intention Localization and Local MoMTR仓库。
2024-07-04 17:09:21 633
原创 [自动驾驶算法][从0开始轨迹预测] [文献阅读笔记] [MTR]:Motion Transformer with Global Intention Localization and Local Mo
MTR模型的整体架构如图所示,(a) 表示稠密未来预测模块,它预测每个智能体的单个轨迹(例如,在上面的 (a) 中绘制为黄色虚线)。 (b) 表示动态地图收集模块,它沿着每个预测轨迹收集地图元素(例如,在(b)的上述部分中沿着每个轨迹绘制为阴影区域)以提供特定于轨迹的地图元素运动解码器网络的功能。 ©表示运动解码器网络,其中𝒦是运动查询对的数量,𝑇是未来帧的数量,𝐷是隐藏特征维度𝑁 是 Transformer 解码器层数。 预测轨迹、运动查询对和查询内容特征是最后一个解码器层的输出,并将作为下一个解
2024-07-04 11:17:49 1115
原创 [从0开始轨迹预测][NMS]:NMS的应用(目标检测、轨迹预测)
任务中,尤其是在的算法时,会产生大量的候选区域,而这些区域可能存在大量的重叠。为了解决这个问题,使用NMS算法来保留最有可能的区域,同时抑制其他冗余或重叠的区域。
2024-07-02 23:49:54 823
原创 [PyTorch]:加速Pytorch 模型训练的几种方法(几行代码),最快提升八倍(附实验记录)
本篇博文概述了在不影响 PyTorch 模型准确性的情况下提高其训练性能的技术。为此,将 PyTorch 模型包装在 LightningModule 中,并使用 Trainer 类来实现各种训练优化。只需更改几行代码,就可以将单个 GPU 上的训练时间从 22.53 分钟缩短到 2.75 分钟,同时保持模型的预测准确性。性能提升了 8 倍!
2024-07-02 21:03:46 780
原创 [PyTorch][PyTorch Lightning]:断点续训
日志:保存训练过程中的日志信息,包括损失、指标和训练时间等信息。对象的状态,包括当前的 epoch 和 batch 等信息。优化器状态:保存优化器的状态,包括当前的学习率和动量等信息。参数来控制是否保存模型的权重、最后一次保存的模型权重和。,则只会保存模型的权重,而不会保存其他信息。在需要从断点继续训练的时候,创建一个新的。参数来指定要继续训练的模型状态的路径。对象的状态以及其他信息。参数来指定要恢复训练的检查点路径。参数,以指示从该检查点处恢复训练。回调来保存模型的状态。模型权重:保存模型的权重参数。
2024-05-14 10:50:39 873 3
原创 [从0开始AIGC][Transformer相关]:算法的时间和空间复杂度
算法是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但是过程中消耗的资源和时间却会有很大区别。那么如何衡量不同算法之间的优劣?主要还是从算法所占用的时间和空间两个维度去考量。
2024-04-09 21:48:42 1668
原创 [从0开始AIGC]: 如何区分并记住常见的几种 Normalization 算法
这里再重复一下上文的类比。如果把x∈RN×C×H×Wx∈RN×C×H×W类比为一摞书,这摞书总共有 N 本,每本有 C 页,每页有 H 行,每行 W 个字符。计算均值时BN 相当于把这些书按页码一一对应地加起来(例如:第1本书第36页,加第2本书第36页…),再除以每个页码下的字符总数:N×H×W,因此可以把 BN 看成求“平均书”的操作(注意这个“平均书”每页只有一个字)
2024-04-09 21:40:50 897
原创 [Pytorch]:PyTorch中张量乘法大全
在 PyTorch 中,有多种方法可以执行张量之间的乘法。两个矩阵相乘,第一个矩阵的列数必须等于第二个矩阵的行数。()`对应位置的元素相乘,输入张量形状必须相同或。:对于具有更高维度的张量(点积),可以使用。换句话说,输入张量的形状应为。此外,第一个输入张量的。必须与第二个输入张量的。两个一维张量的点积。
2024-04-03 17:31:15 1090 1
原创 [Pytorch][缘来如此]:PyTorch中的广播机制
使两者形状互相兼容。广播提供了一个向量化数组操作的机制,这样遍历就发生在C层面,而不是Python层面。广播可以避免不必要的数据复制,通常导向高效的算法实现。不过,也存在不适用广播的情形(可能导致拖慢计算过程的低效内存使用)。in-place operation称为原地操作符,在pytorch中是指改变一个tensor的值的时候,不经过复制操作,而是直接在原来的内存上改变它的值。in-place操作不允许tensor像广播那样改变形状。在满足特定限制的前提下,的数组上应用算术运算。
2024-04-03 17:03:28 631
原创 [从0开始AIGC][Transformer相关]:Transformer中的激活函数:Relu、GELU、GLU、Swish
FFN(Feed-Forward Network)块是Transformer模型中的一个重要组成部分,接受自注意力子层的输出作为输入,并通过一个带有 Relu 激活函数的两层全连接网络对输入进行更加复杂的非线性变换。在公式中,首先将输入向量 x 通过一个全连接层(线性变换)得到一个与 x 维度相同的向量,然后将该向量通过Sigmoid函数进行激活。在公式中,Swish函数首先对输入向量 x 进行一个非线性变换,然后通过Sigmoid函数进行激活,并将该激活结果与输入向量 x 逐元素相乘,得到最终的输出值。
2024-04-02 23:04:48 2310
原创 [文献阅读笔记]:SEPT: TOWARDS EFFICIENT SCENE REPRESENTATION LEARNING FOR MOTION PREDICTION
SEPT: TOWARDS EFFICIENT SCENE REPRESENTATION LEARNING FOR MOTION PREDICTION
2024-02-04 15:16:21 1253
原创 [文献阅读笔记]:Forecast-MAE: Self-supervised Pre-training for Motion Forecasting with Masked Autoencoders
[文献阅读笔记]:Forecast-MAE: Self-supervised Pre-training for Motion Forecasting with Masked Autoencoders
2024-02-02 15:41:17 1054
原创 [系统配置]:Linux安装中文字体-以QT控件显示中文为例
在Qt中,笔者在使用QPainter的drawText在QImage/QPixmap中绘制中文文字显示为一系列方框,可能是因为字体设置的问题。你需要确保你的系统支持你选择的字体,并且这个字体支持中文字符。//字体,大小,粗体,斜体painter.drawText(rect, Qt::AlignHCenter, "你的中文字符串");
2024-01-16 10:24:23 729
原创 [AI算法]:Keras版GCN源码自用解析
最近在研究图卷积的相关理论,有看Pytorch版本和DGL版本的GCN源码,但对象要用到Keras版本,就将Keras版本的GCN源码分析,粘一份,以备查看。1 setup.pyrom setuptools import setupfrom setuptools import find_packages setup(name=‘kegra‘, # 生成的包名称 version=‘0.0.1‘, # 版本号 description=‘Deep
2024-01-15 21:21:00 2175
原创 [实用小知识][ffmpeg]:ffmpeg解决所有视频问题
FFmpeg是一个强大的工具,可以进行视频和音频格式转换、流媒体的录制和转播、以及其他多媒体相关操作。
2024-01-10 20:19:23 467
原创 [开发语言][python][c++]:C++中的this指针和Python中的Self -- 26岁生日
C++中的this指针和Python中的Self
2024-01-07 00:39:50 1985
原创 [开发语言][python]:Python参数传递,“值传递”还是“引用传递“?
Python中的函数参数传递方式是“传对象引用”,可以理解为“值传递”和“引用传递”的混合体。
2024-01-05 10:40:28 577
原创 [开发语言][C++]:详解Lambda 函数
lambda在源代码中使用简洁的语法就地定义。Lambda 函数在 C++11 中引入,现已成为广泛使用的功能,尤其是与标准库函数结合使用。
2023-06-26 23:37:28 374
原创 [文献阅读报告]:Take-over Time Prediction for Autonomous Driving in the Real-World: Robust Models, Data Aug
人们普遍认为,一旦认知刺激的水平低于自己的兴奋阈值(own comfortable 'setting point‘),大多数人会寻找替代的/额外的信息来源,从而导致注意力分散。
2023-03-20 16:05:17 288 1
原创 [开发语言][c++]:理解指针
最近在看csapp这本书,对于一个非科班出身的我来说,犹如神书!在理解了计算机底层原理后,从头理解一下之前让我爱了又恨的指针,想来也会有一些别样的收获。之后我会将我在学习计算机系统的过程中的感悟和笔记,放在。
2022-11-21 18:23:25 1558
原创 [bug fix]:Jupyter NoteBook 中使用 cv2.imshow 显示图片
Jupyter NoteBook 中使用 cv2.imshow 显示图片Jupyter NoteBook 中使用 cv2.imshow 显示图片有两种办法:用 cv2.imshow时加入cv2.destroyAllWindows()用 plt.imshow() 代替 cv2.imshow1. cv2.imshow加入 cv2.destroyAllWindows() 后可以解决 crash 或者图片显示不出来的问题。import cv2%matplotlib inlineimage =
2021-11-17 10:02:37 6759
原创 [AI算法][PyTorch]: nn.LSTM(*args, **kwargs) 输入输出参数详解以及使用的注意事项
class torch.nn.LSTM(*args, **kwargs)参数列表:input_size:x的特征维度hidden_size:隐藏层的特征维度num_layers:lstm隐层的层数,默认为1bias:False则bih=0和bhh=0. 默认为Truebatch_first:True则输入输出的数据格式为 (batch, seq, feature)dropout:除最后一层,每一层的输出都进行dropout,默认为: 0bidirectional:True则为双向lstm默
2021-11-15 14:15:25 2128
原创 [AI算法][Pytorch]:分布式训练
1. 数据并行训练PyTorch 为数据并行训练提供了多种选项。对于从简单到复杂,从原型到量产逐渐增长的应用,共同的发展轨迹是:使用单机训练,如果数据和模型可以放在一个 GPU 中,并且训练速度不是问题。使用单机多 GPU DataParallel,如果服务器上有多个 GPU,并且您希望以最少的代码更改来加速训练。使用单机多 GPU DistributedDataParallel,如果您想进一步加快训练速度并愿意编写更多代码来设置它。如果应用程序需要跨机器边界扩展,请使用多机Distribute
2021-10-25 11:06:11 1259
Social STGCNN.pdf
2020-03-10
Social-BiGAT Multimodal Trajectory Forecasting论文翻译.pdf
2020-03-03
(DDPG中文)Continuous control with deep reinforcement learningCH
2019-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人