trek-finder
收藏资源简介:
Trek Finder是一个完全合成的徒步路线与旅行者评论数据集,旨在支持自然语言徒步搜索应用。用户可以用自己的语言描述想要的徒步路线,系统返回匹配的路线。该数据集由Qwen2.5-1.5B-Instruct模型生成,作为数据科学入门课程期末项目的一部分。数据集包含三个主要部分:路线目录(treks.csv,193条路线)、评论数据集(reviews_final.csv,11,249条评论,为核心数据)和评估查询集(eval_queries.csv,701条查询,清理后为446条)。每条路线包含字段:trek_id、路线名称、国家、地区、景观类型、难度、持续时间、预算等级、最大海拔、最佳季节、是否需要许可证、拥挤程度、摘要等。每条评论包含字段:review_id、trek_id、旅行者类型、团体类型、访问月份、关注点、评分以及用于嵌入的评论文本。数据集适用于语义搜索、推荐系统、句子相似度计算和文本检索任务。已知限制包括:约46%的评论包含套话;696条评论在团体类型上存在矛盾;仅17%的评论提及路线名称;评估标签中36%存在错误(已清理)。建议使用预计算向量或自己嵌入时在评论文本前添加路线名称和景观类型。
Trek Finder is a fully synthetic dataset of hiking routes and traveler reviews, designed to support natural language hiking search applications. Users can describe their desired hiking route in their own words, and the system returns matching routes. The dataset was generated by the Qwen2.5-1.5B-Instruct model as part of a final project for an introductory data science course. It consists of three main parts: a route catalog (treks.csv with 193 routes), a review dataset (reviews_final.csv with 11,249 reviews, the core data), and an evaluation query set (eval_queries.csv with 701 queries, cleaned to 446). Each route includes fields: trek_id, route name, country, region, landscape type (e.g., alpine, desert, jungle), difficulty (1-5), duration (days), budget level, max altitude, best season, permit requirement, crowding level, summary, etc. Each review includes fields: review_id, trek_id (foreign key), traveler type, group type, visit month, focus points, rating (1-5), and review text for embedding. The dataset is suitable for semantic search, recommendation systems, sentence similarity computation, and text retrieval tasks. Known limitations include: approximately 46% of reviews contain boilerplate; 696 reviews have contradictions in group type; only 17% of reviews mention the route name; 36% of evaluation labels have errors (cleaned). It is recommended to use precomputed vectors (provided in the repository) or, when embedding, prepend the route name and landscape type to the review text.
Trek Finder 数据集概述
基本信息
- 许可证: MIT
- 语言: 英语
- 标签: 合成数据、旅行、徒步、语义搜索、推荐
- 数据规模: 10K-100K 条记录
- 任务类型: 句子相似性、文本检索
- 数据配置:
reviews: 训练集(11,249 条评论)treks: 训练集(193 条徒步路线)eval_queries: 测试集(701 条查询)
数据集内容
这是一个完全合成的徒步路线和旅行者评论数据集,旨在支持自然语言徒步搜索应用,用户可以用自然语言描述想要的徒步路线,应用返回匹配的路线。
核心文件
| 文件 | 行数 | 说明 |
|---|---|---|
treks.csv |
193 | 路线目录 |
reviews_final.csv |
11,249 | 主数据集,每行一条评论 |
eval_queries.csv |
701 | 带标签的搜索查询 |
eval_queries_clean.csv |
446 | 审核后的可用测试集 |
embeddings.npy |
11,249 | 应用使用的向量 |
search_index.csv |
11,249 | 嵌入文本,与向量对齐 |
treks.csv 字段
trek_id(关联 reviews 表)trek_name,country,regionlandscape_type: 高山、沙漠、丛林、沿海、火山、北极、森林、峡谷difficulty: 1(简单)至 5(非常困难)duration_days: 2 至 22 天budget_level: 低、中、高max_altitude_m,best_season,permit_required,crowd_levelsummary: 35-45 词
reviews_final.csv 字段
review_idtrek_id(外键关联 treks.csv)persona: 8 种旅行者类型之一group_type: 独自、情侣、朋友、家庭、导游团month_visited,focus,rating(1-5 分)review_text: 用于嵌入的字段
eval_queries.csv 字段
query_texttrue_trek_id,true_landscape,true_difficulty_band,true_duration_band,true_budget
数据生成方式
- 使用
Qwen/Qwen2.5-1.5B-Instruct模型生成 - 两阶段生成:先创建 193 条路线档案,再为每条路线生成多条评论
- 路线属性(地形、难度、时长、预算)在 Python 中采样并固定,模型仅撰写散文
- 每条评论由 persona、团体类型、月份、关注点、开头风格和语气参数化,共 115,200 种组合
- 使用
SEED = 42,无完全重复项,余弦相似度不超过 0.90
已知限制
- 固定短语: 约 46% 的评论包含陈词滥调
- 团体矛盾: 696 条评论描述了独自旅行但被分配了团体
- 路线命名率低: 仅 17% 的评论提及路线名称
- 语言问题: 4 条西班牙语评论已移除
- 评分未范围检查: 65 个 0 分和 1 个 6 分已从最终文件移除
- 评估标签准确性: 36% 的原始标签有误,
eval_queries_clean.csv为审核后版本 - 覆盖不完整: 35 条路线无测试查询,仅覆盖约 82% 的目录
- 事实准确性不保证: 部分路线名称对应真实路径,部分为虚构
检索性能
| 设置 | 召回率@3(含噪键) | 召回率@3(干净键) | 地形准确率 |
|---|---|---|---|
| 纯语义 | 10.3% | 11.2% | 69.7% |
| 语义 + 约束重排序 | 14.0% | 17.3% | 72.9% |
| 纯语义文本 | 9.4% | 8.1% | 68.4% |
| 语义文本 + 重排序 | 13.8% | 14.6% | 67.3% |
- 最佳模型为
all-mpnet-base-v2 - 嵌入不支持否定词(如"nothing steep"与"steep"向量相似)
- 采用约束重排序(非过滤)来处理难度、预算、时长等属性
使用建议
- 存储库提供预计算向量,无需重新嵌入
- 自行嵌入评论时,应先将路线名称和地形前缀添加到
review_text - 不要混用不同模型生成的向量
清理过程
reviews.csv(11,569 条)清理为 reviews_final.csv(11,249 条):
- 移除 160 条少于 40 词的评论
- 移除 90 条与路线地形矛盾的评论
- 移除 66 条评分超出 1-5 范围的评论
- 移除 4 条非英语评论
- 未发现高于 0.90 余弦相似度的近似重复
包含的 Notebooks
01_dataset_generation.ipynb02_exploratory_data_analysis.ipynb03_evaluation_set.ipynb04_search_engine.ipynb05_search_fixes.ipynb07_evaluation_audit.ipynb





