UPDATE_CONFIG_GUIDE.md 4.78 KB

配置参数调整指南

📝 概述

所有默认参数现在都集中在配置文件中,便于统一管理和调整。

🎯 主要默认参数

config/offline_config.py 中配置:

# 时间配置
DEFAULT_LOOKBACK_DAYS = 30    # 默认回看天数
DEFAULT_RECENT_DAYS = 7       # 默认最近天数

# i2i算法参数
DEFAULT_I2I_TOP_N = 50        # 默认返回Top N个相似商品

# 兴趣聚合参数
DEFAULT_INTEREST_TOP_N = 1000  # 默认每个key返回Top N个商品

🔧 调试与生产切换

调试阶段(当前配置)

DEFAULT_LOOKBACK_DAYS = 30    # 30天数据,快速验证
DEFAULT_RECENT_DAYS = 7       # 7天最近数据
DEFAULT_I2I_TOP_N = 50        # Top 50
DEFAULT_INTEREST_TOP_N = 1000 # Top 1000

预估运行时间:30-60分钟
内存占用:2-4GB

生产环境配置

DEFAULT_LOOKBACK_DAYS = 730   # 2年历史数据,更准确
DEFAULT_RECENT_DAYS = 180     # 半年最近数据
DEFAULT_I2I_TOP_N = 50        # Top 50
DEFAULT_INTEREST_TOP_N = 1000 # Top 1000

预估运行时间:6-10小时
内存占用:8-16GB

🚀 使用方式

1. 使用默认配置运行

# 使用配置文件中的默认值(当前为30天)
python3 run_all.py

2. 临时覆盖默认值

# 临时使用不同的参数,不修改配置文件
python3 run_all.py --lookback_days 7 --top_n 20

3. 修改配置文件(推荐)

编辑 config/offline_config.py

# 调试完成后,改为生产配置
DEFAULT_LOOKBACK_DAYS = 730
DEFAULT_RECENT_DAYS = 180

然后运行:

python3 run_all.py

📊 各脚本的默认参数

所有脚本都会从配置文件读取默认值:

脚本 参数 默认值 来源
i2i_swing.py --lookback_days 30 DEFAULT_LOOKBACK_DAYS
i2i_swing.py --top_n 50 DEFAULT_I2I_TOP_N
i2i_session_w2v.py --lookback_days 30 DEFAULT_LOOKBACK_DAYS
i2i_session_w2v.py --top_n 50 DEFAULT_I2I_TOP_N
i2i_deepwalk.py --lookback_days 30 DEFAULT_LOOKBACK_DAYS
i2i_deepwalk.py --top_n 50 DEFAULT_I2I_TOP_N
i2i_content_similar.py --top_n 50 DEFAULT_I2I_TOP_N
interest_aggregation.py --lookback_days 30 DEFAULT_LOOKBACK_DAYS
interest_aggregation.py --top_n 1000 DEFAULT_INTEREST_TOP_N

💡 调试建议

第一次运行(验证流程)

# 使用最小数据量快速验证
python3 run_all.py --lookback_days 7 --top_n 10

第二次运行(调试参数)

# 修改配置文件为30天
DEFAULT_LOOKBACK_DAYS = 30
python3 run_all.py

第三次运行(生产环境)

# 修改配置文件为730天
DEFAULT_LOOKBACK_DAYS = 730
DEFAULT_RECENT_DAYS = 180
python3 run_all.py

🔍 其他可调整的配置

i2i算法详细配置

offline_config.pyI2I_CONFIG 中:

I2I_CONFIG = {
    'swing': {
        'alpha': 0.5,           # swing算法的alpha参数
        'threshold1': 0.5,      # 交互强度阈值1
        'threshold2': 0.5,      # 交互强度阈值2
        'max_sim_list_len': 300,  # 最大相似列表长度
        'top_n': 50,            # 输出top N个相似商品
    },
    # ...其他算法配置
}

兴趣聚合详细配置

INTEREST_AGGREGATION_CONFIG = {
    'top_n': 1000,              # 每个key生成前N个商品
    'time_decay_factor': 0.95,  # 时间衰减因子(每30天)
    'min_interaction_count': 2,  # 最小交互次数

    'behavior_weights': {
        'click': 1.0,
        'addToCart': 3.0,
        'addToPool': 2.0,
        'contactFactory': 5.0,
        'purchase': 10.0,
    },
}

📌 注意事项

  1. 调试优先:先用小数据量(7-30天)验证流程
  2. 逐步扩大:确认无误后再增加到生产数据量
  3. 监控资源:注意内存和磁盘空间使用情况
  4. 保存配置:在配置文件中注释记录不同场景的参数值

🎯 快速切换环境

创建不同的配置副本:

# 备份当前配置
cp config/offline_config.py config/offline_config_debug.py
cp config/offline_config.py config/offline_config_prod.py

# 使用不同配置
cp config/offline_config_debug.py config/offline_config.py  # 调试模式
cp config/offline_config_prod.py config/offline_config.py   # 生产模式

✅ 验证配置

查看当前默认值:

python3 -c "from config.offline_config import *; print(f'LOOKBACK_DAYS: {DEFAULT_LOOKBACK_DAYS}')"

查看帮助信息:

python3 run_all.py --help

配置文件位置: config/offline_config.py
当前默认配置: 30天调试模式
建议: 调试通过后修改为730天生产模式