feat(training): 新增 TabM 排序学习模型支持并优化训练流程
- 新增 TabMRankModel、TabMRankTask 及配套损失函数与配置 - 将 DataQualityAnalyzer 从 experiment 迁移至 training 模块 - 调整数据处理器移除过度的 NaN/null 硬填充逻辑 - 优化 RankTask 评估指标使用分位数标签替代原始收益率 - 更新实验脚本处理器顺序与模型超参数配置
This commit is contained in:
@@ -54,27 +54,10 @@ N_QUANTILES = 20
|
||||
|
||||
# 排除的因子列表
|
||||
EXCLUDED_FACTORS = [
|
||||
'active_market_cap',
|
||||
'close_vwap_deviation',
|
||||
'sharpe_ratio_20',
|
||||
'upper_shadow_ratio',
|
||||
'volume_ratio_5_20',
|
||||
'GTJA_alpha090',
|
||||
'GTJA_alpha084',
|
||||
'GTJA_alpha066',
|
||||
'GTJA_alpha150',
|
||||
'GTJA_alpha148',
|
||||
'GTJA_alpha106',
|
||||
'GTJA_alpha109',
|
||||
'GTJA_alpha108',
|
||||
'GTJA_alpha176',
|
||||
'GTJA_alpha169',
|
||||
'GTJA_alpha156',
|
||||
'chip_dispersion_70',
|
||||
'winner_rate_cs_rank',
|
||||
'atr_price_impact',
|
||||
'low_vol_days_20',
|
||||
'liquidity_shock_momentum',
|
||||
# 'debt_to_equity',
|
||||
# 'GTJA_alpha016',
|
||||
# 'GTJA_alpha141',
|
||||
|
||||
]
|
||||
|
||||
# LambdaRank 模型参数配置
|
||||
@@ -145,8 +128,8 @@ def main():
|
||||
pipeline = DataPipeline(
|
||||
factor_manager=factor_manager,
|
||||
processor_configs=[
|
||||
(NullFiller, {"strategy": "mean"}),
|
||||
(Winsorizer, {"lower": 0.01, "upper": 0.99}),
|
||||
(NullFiller, {"strategy": "mean"}),
|
||||
(CrossSectionalStandardScaler, {}),
|
||||
],
|
||||
filters=[STFilter(data_router=engine.router)],
|
||||
|
||||
Reference in New Issue
Block a user