5b61955e
tangwang
offline tasks: me...
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
# Swing算法快速开始
## 快速运行(3步)
### 1. 生成Session文件
```bash
cd /home/tw/recommendation/offline_tasks
python3 scripts/generate_session.py --lookback_days 730
```
这会生成:
- `output/session.txt.YYYYMMDD` - 标准格式(uid \t json)
- `output/session.txt.YYYYMMDD.cpp` - C++格式(纯json)
### 2. 运行Swing算法
```bash
cd /home/tw/recommendation/collaboration
bash run.sh
```
### 3. 查看结果
```bash
# 查看可读版本(带商品名称)
cat output/swing_similar_readable.txt | head -20
# 或查看原始版本(仅ID)
cat output/swing_similar.txt | head -20
```
## 输出文件
- `output_YYYYMMDD/swing_similar.txt` - Swing相似度结果(ID格式)
- `output_YYYYMMDD/swing_similar_readable.txt` - 可读版本(ID:名称格式)
## 配置修改
如需调整参数,编辑 `run.sh`:
```bash
# 数据路径
SESSION_DATA_DIR="../offline_tasks/output"
# Swing参数
ALPHA=0.7 # 0.5-1.0,越小越关注用户共同行为
THRESHOLD1=1 # 1-5,交互强度阈值
THRESHOLD2=3 # 1-10,相似度计算阈值
THREAD_NUM=4 # 线程数
```
## 详细文档
查看完整文档:`../offline_tasks/SWING_USAGE.md`
## 常见问题
**Q: 如何查看商品名称?**
A: 结果文件 `swing_similar_readable.txt` 已自动添加商品名称
**Q: 如何调整相似商品数量?**
A: 修改 `src/swing.cc` 中的 `max_sim_list_len`(默认300)
**Q: Session文件找不到?**
A: 先运行步骤1生成session文件
**Q: 运行时间?**
A: 1万商品约1-5分钟,10万商品约10-30分钟
|