Skip to content

lisf-git/seq-modeling

Repository files navigation

行业场景

在有“顺序”的数据上,用模型学习“从已发生序列”到“未来行为/状态”的映射,从而解决行为(或兴趣)演化、顺序敏感、实时个性化等产品问题。

随着互联网的全面普及与信息化的广泛覆盖,产生了各种各样的序列数据,其中涵盖了时间序列、行为序列、事件序列、文本/语音序列、状态/轨迹序列等。这些序列数据涉及了很多行业场景,这些场景主要包括工业与制造、金融与风控、零售与电商、供应链与物流、交通与出行、能源与电网、医疗健康、智慧城市/航运/运维/网络安全等。

  • 工业与制造:设备预测性维护、工艺参数与质量预测、柔性产线动态排产
  • 金融与风控:行情与波动率预测、信用评分与违约预警、欺诈与异常交易检测
  • 零售与电商:销量预测与库存优化、序列化推荐与用户行为建模、客户生命周期与LTV预测
  • 供应链与物流:需求预测与补货策略、路由优化与到货时效预测、仓储调度与异常停留识别
  • 交通与出行:交通流量与拥堵预测、公交/网约车调度、事故与异常事件检测
  • 能源与电网:负荷与电价预测、新能源功率预测、设备健康与预警
  • 医疗健康:生命体征监护与预警、疾病进展/血糖/用药响应建模、设备状态与耗材预测
  • 智慧城市/航运/运维/安全:航运轨迹与港航风险预警、AIOps 与日志/指标异常检测、网络安全流量异常检测

功能介绍

设计了数据模块、模型模块、学习模块、系统模块、其他(配置、常量、工具等)模块。

数据模块:用于处理序列数据的 Dataset 类和相关函数。它包括了从文件中读取数据、构建特征序列以及将数据转换为适合模型训练的格式的功能。根据模型模式的不同,数据可以以不同的方式进行处理和组织,以满足不同类型模型的需求。

模型模块:定义了 FMLSTMAttentionModel、FMLlamaModel 两种模型。

  • FMLSTMAttentionModel:基于 DeepFM、LSTM 和多头自注意力模型的分类及回归任务解决方案。
  • FMLlamaModel:基于 DeepFM、Llama 自回归大模型架构模型的分类及回归任务解决方案。

学习模块:模型训练和评估的核心逻辑。它包含了数据生产者和消费者的实现,训练和评估模型的函数,以及模型准备和保存的功能。通过使用多线程和多进程技术,该模块能够高效地处理大规模数据集,并在训练过程中动态评估模型性能。整个流程包括数据加载、模型训练、性能评估以及结果记录等关键步骤,为整个项目的运行提供了基础支持。

系统模块:定义了一个用于序列分析的系统,包含模型加载、数据处理和预测功能。系统支持多种模型类型(如 FMLSTMAttentionModel 和 FMLlamaModel)以及不同的输出模式。通过使用预训练模型对输入数据进行特征提取和预测,系统能够为每个序列生成一个综合评分,用于评估其未来表现的潜力。该模块还包括结果保存功能,可以将预测结果输出到CSV文件中,以便进一步分析和使用。

其他(配置、常量、工具等)模块:用于辅助以上四个模块的辅助模块。

模型实现

实现了两种模型:

  • FMLSTMAttentionModel:基于 DeepFM、LSTM 和多头自注意力模型的分类及回归任务解决方案。

    该模型由三个主要部分组成:

    1. DeepFM 组件:能够捕捉低阶和高阶的特征交互关系。
    2. LSTM 组件:能够捕捉特征之间的序列关联关系。
    3. 多头自注意力组件:能够捕捉特征之间的全局关联关系。 该模型融合了 DeepFM、LSTM 和多头自注意力机制的优势,为分类和回归任务提供了强大且灵活的解决方案,使其成为推荐系统和预测建模领域从业者的重要工具。 多头自注意力机制的运用使模型能够捕捉特征之间的复杂相互关系,而 LSTM 组件则有助于捕捉序列数据中的时间依赖性,这使其在诸如时间序列数据或用户行为建模等特征顺序至关重要的任务中表现尤为出色。
  • FMLlamaModel:基于 DeepFM、Llama 自回归大模型架构模型的分类及回归任务解决方案。

    该模型由两个主要部分组成:

    1. DeepFM 组件:能够捕捉低阶和高阶的特征交互关系。
    2. Llama 自回归大模型架构组件:能够捕捉含有旋转嵌入位置编码的增强特征之间的全局关联关系。 该模型在较高层面上与 FMLSTMAttentionModel 类似,但将 LSTM + 多头自注意力机制替换为了一个利用旋转嵌入进行位置编码的 Transformer-Decoder 模型,为硬件资源充裕且具有大规模有效数据的场景提供了强大且灵活的解决方案,使其成为序列建模领域从业者的重要工具。 DeepFM 可以捕捉特征之间的低阶和高阶交互关系,而 Llama 自回归大模型架构通过堆叠 Transformer-Decoder 充分扩容模型的参数量捕捉含有旋转嵌入位置编码的增强特征之间的全局关联关系,这使其在序列建模任务中表现尤为出色。

特点:

  • 设计具有灵活性,能够支持使用深层结构,并可根据所提供的配置灵活设置注意力机制。
  • 包含了针对分类和回归任务的评估指标,使其适用于推荐系统和预测建模等众多领域。
  • 确保了权重和偏置的正确初始化,并使用了 dropout 和层归一化技术来防止过拟合并提高训练的稳定性。
  • 设计便于进行扩展和修改,使其能够适应机器学习和深度学习领域的各种数据集和需求。
  • 使用 PyTorch 实现的,利用了其在高效构建和训练深度学习模型方面的强大功能。

示例图片

运行结果 降序_真实值_预测值_对比_头部 降序_真实值_预测值_对比_中部 降序_真实值_预测值_对比_尾部 升序_真实值_预测值_对比_头部 升序_真实值_预测值_对比_中部 升序_真实值_预测值_对比_尾部

运行脚本

$SEQ_MODELING_HOME/run_prophet.bat

About

实现了两种序列建模(时序分析)解决方案:FMLSTMAttentionModel、FMLlamaModel。 FMLSTMAttentionModel:基于 DeepFM、LSTM 和多头自注意力(Multi-Head Self-Attention)模型的分类及回归任务解决方案。 FMLlamaModel:基于 DeepFM、Llama 自回归大模型架构模型的分类及回归任务解决方案。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors