Trajectory-Transformer 项目安装和配置指南
1. 项目基础介绍和主要编程语言
项目基础介绍
Trajectory-Transformer 是一个用于轨迹预测的 Transformer 网络项目。该项目基于 Transformer 架构,旨在通过深度学习技术预测物体的未来轨迹。该项目的主要应用场景包括自动驾驶、机器人导航等领域。
主要编程语言
该项目主要使用 Python 编程语言进行开发。
2. 项目使用的关键技术和框架
关键技术
- Transformer 网络:基于 Transformer 架构,用于处理序列数据,特别是轨迹数据。
- PyTorch:深度学习框架,用于构建和训练 Transformer 模型。
- KMeans:用于聚类分析,特别是在量化轨迹预测中使用。
框架
- PyTorch 1.0+:用于构建和训练深度学习模型。
- Numpy:用于数值计算。
- Scipy:用于科学计算。
- Pandas:用于数据处理和分析。
- Tensorboard:用于训练过程的可视化。
- kmeans_pytorch:用于 GPU 加速的 KMeans 聚类。
3. 项目安装和配置的准备工作和详细安装步骤
准备工作
在开始安装和配置之前,请确保您的系统满足以下要求:
- Python 3.6 或更高版本
- PyTorch 1.0 或更高版本
- CUDA(如果使用 GPU 进行训练)
- Git
详细安装步骤
步骤 1:克隆项目仓库
首先,使用 Git 克隆项目仓库到本地:
git clone https://github.com/FGiuliari/Trajectory-Transformer.git
cd Trajectory-Transformer
步骤 2:创建虚拟环境(可选)
为了隔离项目依赖,建议创建一个虚拟环境:
python -m venv trajectory_env
source trajectory_env/bin/activate # 在 Windows 上使用 trajectory_env\Scripts\activate
步骤 3:安装依赖
使用 pip
安装项目所需的依赖:
pip install -r requirements.txt
步骤 4:数据准备
项目的 dataset
文件夹需要按照以下结构进行组织:
- dataset
- dataset_name
- train_folder
- test_folder
- validation_folder (可选)
- clusters.mat (用于量化TF)
步骤 5:训练 Individual Transformer
要训练 Individual Transformer,请运行以下命令:
CUDA_VISIBLE_DEVICES=0 python train_individualTF.py --dataset_name eth --name eth --max_epoch 240 --batch_size 100 --name eth_train --factor 1
步骤 6:训练 QuantizedTF
要训练 QuantizedTF,请按照以下步骤操作:
-
创建聚类:
CUDA_VISIBLE_DEVICES=0 python kmeans.py --dataset_name eth
将生成的
clusters.mat
文件放入相应的数据集文件夹中。 -
训练量化模型:
CUDA_VISIBLE_DEVICES=0 python train_quantizedTF.py --dataset_name zara1 --name zara1 --batch_size 1024
-
评估模型:
CUDA_VISIBLE_DEVICES=0 python test_quantizedTF.py --dataset_name eth --name eth --batch_size 1024 --epoch 00030 --num_samples 20
步骤 7:可视化训练过程
使用 Tensorboard 可视化训练过程:
tensorboard --logdir logs
通过以上步骤,您应该能够成功安装和配置 Trajectory-Transformer 项目,并开始进行轨迹预测模型的训练和评估。