Data Mining / Trajectory Prediction
Porto Taxi 轨迹终点预测
基于 Porto Taxi Trajectory 数据集完成出租车轨迹终点预测,围绕 20%、40%、60% 前缀轨迹构建时空特征、模型对比、目的地聚类、轨迹相似度和 ClusterTop30OffsetXGBoostDeep 混合预测链路。
任务将完整出租车轨迹拆分为前缀轨迹和真实终点,分别使用 20%、40%、60% 三种前缀比例评估预测效果。
数据清洗阶段解析 POLYLINE 字段,剔除缺失轨迹、异常经纬度点和短轨迹,并构造前缀轨迹数据集。
特征工程覆盖起点、当前点、轨迹采样点、前缀长度、时间、星期、速度、方向角、曲折度、经纬度范围和分段距离。
基础模型覆盖 Baseline_CurrentPoint、RandomForest、ExtraTrees、HistGradientBoosting、KNN、XGBoost 和 XGBoost_Deep,并使用 Haversine 距离统一评价。
最终方案采用 KMeans 终点聚类、Top-30 候选目的地区域、类内偏移回归和概率加权融合,形成 ClusterTop30OffsetXGBoostDeep。
样本实验中 Deep 版在 60% 前缀下均值误差约 1.0047 km;课程报告记录全量实验 60% 前缀均值误差约 0.8840 km。
Snapshot
实验数据
1.0047 km样本 60% 前缀均值误差ClusterTop30OffsetXGBoostDeep 结果表记录。
0.5738 km样本 60% 前缀中位误差同一模型在 60% 前缀下的中位距离误差。
99.20%样本 Top30 命中率60% 前缀下真实终点所在聚类进入 Top30 候选的比例。
1,640,633全量有效轨迹课程研讨报告记录的全量实验有效样本数。
0.8840 km全量 60% 前缀均值误差课程研讨报告记录的全量实验结果。
46.02%全量相对基线提升课程研讨报告中 ClusterTop30Deep 相对 Baseline 的提升。
0.40779聚类轮廓系数destination_cluster_silhouette.txt 中的记录。
Timeline
推进过程
数据清洗解析 Porto Taxi Trajectory 数据集的 POLYLINE 字段,过滤 MISSING_DATA、异常 GPS 点和短轨迹。
前缀构造分别截取 20%、40%、60% 轨迹前缀,将完整轨迹最后一个点作为真实终点。
特征工程提取位置、时间、速度、方向、曲折度、采样点和分段距离等轨迹特征。
基础模型对比比较当前点基线、随机森林、ExtraTrees、HistGradientBoosting、KNN、XGBoost 和 XGBoost_Deep。
聚类与相似度分析使用 MiniBatchKMeans 分析目的地聚集结构,并构造相似轨迹近邻特征。
最终模型采用 ClusterTop30OffsetXGBoostDeep,在候选目的地区域内执行偏移回归并进行概率加权融合。
Methods
标签解释
Porto Taxi Trajectory出租车轨迹数据集,每条记录包含一次行程的时间戳、缺失标记和 POLYLINE GPS 点序列。
Pandas用于读取原始 CSV、解析轨迹、构造前缀数据集、保存结果表和组织特征矩阵。
scikit-learn提供随机森林、ExtraTrees、HistGradientBoosting、KNN、MiniBatchKMeans、NearestNeighbors 和训练测试划分等工具。
XGBoost作为强基准回归器、聚类分类器和类内偏移回归器,学习前缀轨迹到终点坐标或候选区域的非线性关系。
MiniBatchKMeans将目的地终点划分为 50 个聚类区域,使终点预测先转化为候选区域判断,再进行区域内坐标修正。
NearestNeighbors用于检索前缀形态相似的历史轨迹,并构造相似轨迹预测点、近邻距离和终点离散程度等补充特征。
Feature Engineering将起点、当前点、时间、速度、方向、曲折度、采样点和分段距离转化为模型输入。
Haversine使用球面距离评价预测终点与真实终点之间的误差,单位为千米。
Mermaid
技术路线
flowchart LR A["Porto Taxi train.csv"] --> B["POLYLINE 解析与异常过滤"] B --> C["20% / 40% / 60% 前缀轨迹"] C --> D["位置 / 时间 / 方向 / 速度 / 形态特征"] D --> E["基础模型对比"] D --> F["MiniBatchKMeans 终点聚类 K=50"] D --> G["轨迹相似度近邻特征"] E --> H["XGBoost_Deep 强基准"] F --> I["Top-30 候选目的地区域"] I --> J["类内偏移回归"] G --> J H --> J J --> K["概率加权融合终点"] K --> L["Haversine 距离误差评估"]
File Tree
交付材料
Gallery
结果图表
Resources
相关文件下载
DOCX数据挖掘课程研讨报告
下载 →课程研讨报告,覆盖任务要求、数据清洗、特征工程、模型对比、ClusterTop30OffsetXGBoostDeep 与全量实验结果。
ZIP程序源码包
下载 →项目程序包,包含预处理、模型对比、终点聚类可视化、最终混合模型脚本和 dm_taxi 公共模块。
ZIP结果数据包
下载 →模型输出包,包含结果 CSV、聚类轮廓系数、特征重要性和结果图表,不包含原始训练数据。
DATASET训练数据来源:Porto Taxi Trajectory train.csv
打开 →Kaggle Taxi Trajectory Data 页面,数据来自 ECML/PKDD 15 Porto Taxi 轨迹预测任务。页面提供 train.csv 下载入口。