首页> 中国专利> 结合内/外积特征交互和贝叶斯神经网络的营销预测方法

结合内/外积特征交互和贝叶斯神经网络的营销预测方法

摘要

一种结合内/外积特征交互和贝叶斯神经网络的营销预测方法,包括数据预处理步骤、数据集划分步骤、模型建立步骤和对营销活动点击的预测步骤;其在预测模型的建立过程中,通过有效利用贝叶斯推断,在贝叶斯神经神经网络中引入预测的不确定性,使贝叶斯神经网络模型具有更强的鲁棒性。并且采用内/外积结合的方法,对特征进行了交叉来提取高维隐性特征。因此,本发明可以有效扩展深度学习对于计算广告和推荐系统算法问题的应用,并显著提升对用户点击行为预测的准确性。

著录项

  • 公开/公告号CN112819523A

    专利类型发明专利

  • 公开/公告日2021-05-18

    原文格式PDF

  • 申请/专利权人 上海数鸣人工智能科技有限公司;

    申请/专利号CN202110125002.3

  • 发明设计人 项亮;方同星;

    申请日2021-01-29

  • 分类号G06Q30/02(20120101);G06N3/04(20060101);G06N3/08(20060101);G06N7/00(20060101);

  • 代理机构31275 上海天辰知识产权代理事务所(特殊普通合伙);

  • 代理人陶金龙;尹一凡

  • 地址 200436 上海市静安区江场三路238号1601-026室

  • 入库时间 2023-06-19 11:02:01

说明书

技术领域

本发明涉及人工智能在互联网营销的技术领域,更具体地,涉及一种结合内/外积特征交互和贝叶斯神经网络的营销预测方法。

背景技术

网络广告营销是借助网络营销能最大化的传播给受众人群,其借助网络平台投入广告给目标性客户。在计算广告和推荐系统算法中,常用的算法包括了线性模型如逻辑回归(logistic regression,LR)、因式分解机(factorization machine,FM)等。

上述这些算法具有可解释性好和算法实施简单的特点,然而,由于算法自身较为简单,表达能力有限。因此,这些算法往往对于特征之间的高阶交互信息的抽提较为困难,从而影响算法的整体性能。

此外,随着深度学习算法在诸多领域,如自然语言处理(Natural LanguageProcessing,NLP),计算机视觉(Computer Vision,CV)等的成功应用,深度学习模型也正逐步应用于主流广告和推荐系统领域。

尽管深度学习模型具有自动提取特征,以及端到端学习等诸多传统算法不具备的优点,然而,其在针对计算广告和推荐系统的应用中,也存在明显如下几种弊端:

①、在绝大多数推荐系统数据集中,会形成大维度的稀疏矩阵,即由0和1构成的矩阵,对基于梯度下降的深度学习模型来说,存在一定的困难;同时,大型稀疏矩阵也会造成较大的算力消耗和过大的计算时间。因此,如何在降低特征维度,同时有效提取特征的交互信息,对特征工程及算法的设计提出更高要求。

②、防止过拟合现象是深度学习算法中一个非常重要的问题。一般来说,可以采用早停机制、权值衰减、L1-L2正则化、Dropout等方法降低模型的过拟合风险。但是,对于广告营销中的精准定位和投放问题,往往还需要考虑模型中对于不确定性的度量,一个过度自信的算法决策往往无法在实际广告投放中收获很好的效益。因此,如何在网络架构中加入不确定性度量,使得算法决策的可信度更高,并有效防止过拟合,是深度学习应用于计算广告和推荐系统问题应着力突破的关键技术之一。

③、传统的深度学习模型是直接通过多层全连接层完成特征的交叉和组合的,但这样的方式缺乏一定的“针对性”。

首先,全连接层并没有针对不同特征域之间进行交叉;

其次,全连接层的操作也并不是直接针对特征交叉设计的。

因此,我们需要针对具体业务,发展具有表征不同数据模式能力的深度学习模型。

发明内容

本发明的目的在于克服现有技术存在的上述缺陷,提供一种结合内/外积特征交互和贝叶斯神经网络的营销预测方法,其包括数据预处理步骤S1、数据集划分步骤S2和模型建立步骤S3;

所述数据预处理步骤S1包括如下步骤:

步骤S11:获取用户的原始信息,并从所述用户的原始信息提取原始特征信息;其中,所述原始特征信息包括用户ID、用户手机号码归属地、任务批次号、用户当日访问DPI、用户访问DPI频次、用户访问时间和/或用户访问时长;其中,所述任务批次号表示一个日期时间段中用户的原始信息,所述用户访问DPI、用户访问DPI频次、用户访问时间和/或用户访问时长为每一个任务批次号为计量单位,所述用户当日访问DPI和用户的手机号码归属地特征为类别特征;

步骤S12:对类别特征进行处理;即对所述用户手机号码归属地特征和用户访问DPI进行One-hot编码处理;其中,所述One-hot编码处理包括:

依次按所述任务批次号将所有不同的用户访问DPI作为单独的特征展开,以及在所述任务批次号中将DPI访问频次也按照所有不同的用户访问DPI展开为DPI与用户访问DPI的频次的关系特征;

步骤S13:对连续特征进行处理;即将不同维度的访问时间和访问时长数据映射到一个统一区间,并调整数据分布近似为高斯分布;

步骤S14:采用主成分分析对髙维特征进行降维处理;

所述数据集划分步骤S2包括如下步骤:

步骤S21:预处理之后,将所述归属地特征和用户当日访问DPI是否点击的特征看作稀疏特征,将所述用户访问DPI频次定义为连续特征;

步骤S22:根据需要预测的时间点t+1之前时间序列为1,2,…t-1时间点的历史数据,形成训练集数据;而对时间点t所对应的数据作为本地验证集;

所述模型建立步骤S3包括如下步骤:

步骤S31:提供初始的贝叶斯神经网络模型,将所述训练集数据中的类别特征作为所述贝叶斯神经网络输入层的M1维特征信息,将所述M1维特征信息输入到所述贝叶斯神经网络的嵌入层进行信息抽提和降维,将所述M1维特征信息降到M2维特征信息;其中,M2小于M1,所述贝叶斯神经网络包括输入层、嵌入层、乘积层、因式分解层、全连接层和输出层;

步骤S32:将降维后的所述M2维特征加上M3维的连续特征形成M维特征,在乘积层中,对所述M维特征进行内积和外积的乘法运算,使所述M维特征的特征信息进行交互;

步骤S33:在所述因式分解层中,采用因式分解法将所述M维特征的权重矩阵做因式分解;

步骤S34:将所述M维特征的信息输入到在所述全连接层中进行训练,得到训练后的贝叶斯神经网络模型,所述贝叶斯神经网络模型为具有两个输出层神经元的用户预测模型;并采用所述本地验证集中数据对所述用户预测模型验证。

进一步地,所述的结合内/外积特征交互和贝叶斯神经网络的营销预测方法还包括步骤S35,对所述用户预测模型进行模型评价指标处理和调优处理。

进一步地,所述模型评价指标包括采用对数损失函数、相对信息增益RIG和AUC值。

进一步地,所述模型评价指标为AUC值,若所述AUC值小于一预定的阈值,再对所述用户预测模型进行模型调优处理。

进一步地,所述模型调优处理包括如下一种或几种:

①、增加批归一化,解决数据的内部协变量偏移问题;

②、在网络中增加让部分神经元在训练过程中处于休眠状态的功能;

③、调整学习率,一般会通过指数式衰减等策略调整训练过程中的学习率;

④、设置多种子训练取平均,以更好的提高由于数据方差较大引起的泛化能力不足的问题;

⑤、增加L1或者L2正则化,对损失函数施加惩罚,以降低过拟合风险;

⑥、对超参数的优化方法。

进一步地,所述对超参数的优化方法采用贝叶斯优化策略。

进一步地,对所述连续特征处理为利用RankGauss方法。

进一步地,所述的结合内/外积特征交互和贝叶斯神经网络的营销预测方法,在步骤S11后,还包括对所述用户的原始信息进行异常检测与处理步骤。

进一步地,所述的结合内/外积特征交互和贝叶斯神经网络的营销预测方法还包括模型预测步骤S4,根据所述用户预测模型,得到需要预测的时间点t+1时筛选出的用户进行精准营销的任务。

进一步地,所述贝叶斯神经网络模型层级节点分布形态包括:递增型increasing、不变型constant、钻石型diamond或递减型Decreasing。

从上述技术方案可以看出,本发明的结合内/外积特征交互和贝叶斯神经网络的营销预测方法,可以有效利用贝叶斯推断,在贝叶斯神经神经网络中引入预测的不确定性,使贝叶斯神经网络模型具有更强的鲁棒性。通过内/外积结合的方法,通过内积和外积的乘法运算对特征进行了交叉来提取高维隐性特征。该结合内/外积特征交互和贝叶斯神经网络模型可以有效扩展深度学习对于计算广告和推荐系统算法问题的应用,并显著提升对用户点击行为预测的准确性。

附图说明

图1所示为本发明实施例中网络整体结构的意图

图2所示为本发明实施例中贝叶斯神经网络层级节点分布的四种形态示意图

图3所示为本发明实施例中结合内/外积特征交互和贝叶斯神经网络的营销预测方法的流程示意图

图4所示为本发明实施例中内积(A)和外积(B)操作的示意图

图5所示为本发明实施例中对权重矩阵因式分解操作示意图

图6所示为传统深度学习网络权重(左)及贝叶斯网络权重(右)的对比示意图

具体实施方式

下面结合附图1-6发明的具体实施方式作进一步的详细说明。

在下述的具体实施方式中,在详述本发明的实施方式时,为了清楚地表示本发明的结构以便于说明,特对附图中的结构不依照一般比例绘图,并进行了局部放大、变形及简化处理,因此,应避免以此作为对本发明的限定来加以理解。

需要说明的是,在以下本发明的具体实施方式中,该结合内/外积特征交互和贝叶斯神经网络的营销预测方法,是架构在贝叶斯神经网络模型的整体结构中的。请参阅图1,图1所示为本发明实施例中网络整体结构的意图。如图1所示,所述贝叶斯神经网络包括输入层(Input layer)、嵌入层(Embedding layer)、乘积层(Product layer)、因式分解层(Factorization layer)、全连接层(Fully-connected layer)和输出层(Output layer)。

具体地,输入层用于将接收的预处理后和数据集划分的特征数据,然后再经过嵌入层、乘积层和因式分解层处理,再输入全连接层和输出层。

该结合内/外积特征交互和贝叶斯神经网络的营销预测方法,其首先是将输入原始特征信息特征中的类别特征经过独热编码(One-hot encoding)后,根据特征性质(例如,用户ID所包括的年龄和性别,DPI用户访问时间和/或用户访问时长等信息)分为不同的域(field);接着经过嵌入层嵌入处理后,通过特征间的内积或者外积进行特征信息的交互;然后通过对网络参数引入先验的高斯分布假设、通过变分推断和最小化Kullback-Leibler散度来计算后验分布得到更新后的网络权重;最后得到最终的得到神经网络模型。

与传统的利用运营商数据的数据营销领域所采用的技术相比,本发明能够通过特征工程及算法的巧妙设计,可以有效提取特征的交互信息和降低特征维度,同时,将在网络架构中加入不确定性度量,使得算法决策的可信度更高,并有效防止过拟合,从而获得了具有表征不同数据模式能力的深度学习模型(叶斯神经网络模型)。

请参阅图2,图2为本发明实施例中贝叶斯神经网络层级节点分布的四种形态示意图。如图2所示,所述贝叶斯神经网络模型层级节点分布形态包括:递增型increasing、不变型constant、钻石型diamond或递减型Decreasing。上述层级节点分布的四种形态的选择可以根据业务的不同需要进行,在此不再赘述。

请参阅图3,图3所示为本发明实施例中结合内/外积特征交互和贝叶斯神经网络的营销预测方法的流程示意图。如图3所示,稿结合内/外积特征交互和贝叶斯神经网络的营销预测方法,其包括数据预处理步骤S1、数据集划分步骤S2、模型建立步骤S3和模型预测步骤S4。

在本发明的实施例中,数据预处理步骤非常重要,所述数据预处理步骤S1包括如下步骤:

步骤S11:获取用户的原始信息,并从所述用户的原始信息提取原始特征信息;其中,所述原始特征信息包括用户ID、用户手机号码归属地、任务批次号、用户访问DPI、用户访问DPI频次、用户访问时间和/或用户访问时长;其中,所述任务批次号表示一个日期时间段中用户的原始信息,所述用户访问DPI、用户访问DPI频次、用户访问时间和/或用户访问时长为每一个任务批次号为计量单位,所述用户访问DPI和用户的手机号码归属地特征为类别特征。

请参阅下表1,表1为预处理之前的原始数据的表格描述,以同一批次的数据为例,预处理之前的原始数据形式如下表1所示:

表1:

较佳地,在本发明的实施例中,在步骤S11中,还可以包括对所述用户的原始信息数据还需要经过异常检测与处理、类别特征处理、连续特征处理和降维处理等步骤。

异常检测与处理:在结合业务要求的过程中,对于原始数据中的缺失值、过大值等需要进行删除、填充等处理。在数据的采集过程中,由于一般用户量为百万级别,因此,采集过程中可能出现缺失情况;若缺失量较小,一般可直接进行剔除;若无法判断缺失数据是否会影响最终的模型训练效果,则一般可根据取平均数、众数、中位数等方法来填补缺失值。

另外,在数据采集中,可能还会遇到过大值的问题,比如某用户在一天之内访问了DPI上万次,这种情况一般在实际建模过程中对于提升模型的泛化能力并无特别帮助,因此,也可以采用剔除的处理,或者采用填补的方法进行相应的处理。

步骤S12:对类别特征进行处理;即对所述用户手机号码归属地特征和用户访问DPI进行One-hot编码处理;其中,所述One-hot编码处理包括依次按所述任务批次号将所有不同的用户访问DPI作为单独的特征展开,以及在所述任务批次号中将用户访问DPI频次也按照所有不同的用户访问DPI展开为DPI与用户访问DPI的频次的关系特征。

具体地,首先,可以对用户访问DPI、用户的手机号码归属地特征进行One-hot独热编码,将其展开。以用户访问DPI为例,若某个用户访问了某DPI,则记录该DPI为1,其余DPI为0;因此,若总共有10个不同的DPI,则最后会形成10列特征,并且,每一列特征中只有一个对应用户为1,其余都为0。

步骤S13:对连续特征进行处理;即将不同维度的访问时间和访问时长数据映射到一个统一区间,并调整数据分布近似为高斯分布。

步骤S14:采用主成分分析(PCA)对髙维特征进行降维处理。

具体地,从上述对类别特征的处理可知,一般经过独热编码后,会形成高维稀疏矩阵,对于贝叶斯神经网络的训练而言,这意味着在误差反向传播时,很多地方没有办法求导,这显然是不利于贝叶斯神经网络训练的。

同时,高维度特征也增加了计算开销。因此,有必要对于高维特征先进行降维处理。本领域技术人员清楚,主成分分析PCA通过求解原始数据在某投影方向的方差最大,实现降维目的;在减少特征维度的同时,还可以尽量减少原始特征包含信息的损失,以达到对所收集数据进行全面分析的目的。

经过上述步骤预处理后,数据形式请参阅下表2:

接下来,就可以执行所述数据集划分步骤S2,在本发明的实施例中,可以将用户访问DPI特征是否点击的特征看作稀疏特征,将归属地特征和用户访问DPI频数定义为连续特征。由于点击通过率(Click-Through-Rate,CTR)问题一般涉及明显的时间顺序,即需要预测的是下一个时间点用户的行为。因此,一般将其之前的历史数据,即时间序列为作为训练数据(training data);而对时间点所对应的数据进行本地验证(lidation data)。

所述数据集划分步骤S2具体包括如下步骤:

步骤S21:预处理之后,将所述归属地特征和用户当日访问DPI是否点击的特征看作稀疏特征,将所述用户访问DPI频次定义为连续特征;

步骤S22:根据需要预测的时间点t+1之前时间序列为1,2,…t-1时间点的历史数据,形成训练集数据;而对时间点t所对应的数据作为本地验证集。

然后,可以通过执行模型建立步骤S3进行所述用户预测模型的训练和验证了。在本发明的实施例中,所述用户预测模型为贝叶斯神经网络模型。

具体地,步骤S3可以具体包括:

步骤S31:提供贝叶斯神经网络初始模型,将所述训练集数据中的类别特征作为所述贝叶斯神经网络输入层的M1维特征信息,将所述M1维特征信息输入到所述贝叶斯神经网络的嵌入层进行信息抽提和降维,将所述M1维特征信息降到M2维特征信息;其中,M2小于M1。

如图1所示,所述贝叶斯神经网络包括输入层、嵌入层、乘积层、因式分解层、全连接层和输出层。假设原始特征经过预处理后,形成了N和不同的域(编号为Field1,Field2,Field3,…,FieldN)。

由于经过了独热编码的步骤,该N个域的特征(Feature1,Feature1,Feature2,Feature3,…,FeatureN)形成了髙维的稀疏矩阵。因此,首先在网络结构中添加嵌入层,对特征进行嵌入(embedding)处理,对稀疏特征信息进行一次提取和降维,得到一个低维的low-dimensional vector层。

步骤S32:将降维后的所述M2维特征加上M3维的连续特征形成M维特征,在乘积层中,对所述M维特征进行内积和外积的乘法运算,使所述M维特征的特征信息进行交互。

在所述特征降维步骤S31和S32中,所述解码器部分的输出层使用sigmoid函数作为激活函数,所述解码器部分的输出层的输出值为0和1之间的值;其余其它层的激活函数均使用ReLU激活函数。

请参阅图4,图4所示为本发明实施例中内积(A)和外积(B)操作的示意图。与现有技术的深度学习模型直接添加全连接层的操作不同,本发明还需要对上述经过嵌入处理后的特征进行内积和外积的乘法运算,对特征信息进行交互。

从图4可以看出,对外积操作得到矩阵而言,如果该矩阵只有对角线上有值,就变成了内积操作的结果,所以内积操作可以看作是外积操作的一种特殊情况。通过这种方式,就可以衡量两个不同域之间的关系。

本领域技术人员清楚,在经过对特征的内积或者外积操作后,一般模型的参数会上升。为了降低计算消耗,可采用因式分解(factorization)的方法,将大的权重矩阵转化为小的权重矩阵与该矩阵的转置的乘积。即执行步骤S33,在所述因式分解层中,采用因式分解法将所述M维特征的权重矩阵做因式分解。

请参阅图5,图5所示为本发明实施例中对权重矩阵因式分解操作示意图。上述步骤完成后,就可以执行步骤S34,即将所述M维特征的信息输入到所述全连接层中进行训练,得到训练后的贝叶斯神经网络模型,所述贝叶斯神经网络模型为具有两个输出层神经元的用户预测模型;并采用所述本地验证集中数据对所述用户预测模型验证。

请参阅图6,图6所示为传统深度学习网络权重(左)及贝叶斯网络权重(右)的对比示意图对于贝叶斯神经网络模型,其与传统的深度学习网络模型的差别之一是,网络之间的连接权重不再是一个常数,而是一种分布,并通过贝叶斯推断来求得这个分布。

在本发明的实施例中,对贝叶斯网络的算法描述可以如下:

①、从N(μ,log(1+e

②、分别计算log q(ω|θ),log p(ω),log p(y|ω,x);

③、计算损失函数

④、更新网络参数θ'=θ-α▽

进一步地,上述模型训练完成后,所述的结合内/外积特征交互和贝叶斯神经网络的营销预测方法还包括步骤S35,对所述用户预测模型进行模型评价指标处理和调优处理。

所述模型评价指标包括通常可以所述模型评价指标包括采用对数损失函数(Logloss)、相对信息增益(Relative Information Gain,RIG)和AUC(Area under ROC curve)值。一般来说,AUC值越接近1,则用户预测模型的分类效果越好。

例如,在对数据按照上述步骤处理并通过模型训练后,通过本地验证的AUC值,可以判断该模型的训练效果;所述模型评价指标为AUC值小于一预定的阈值,再对所述用户预测模型进行模型调优处理,若效果较差,一般需要对模型进行调优,对于深度学习算法,一般可从如下几方面进行优化:

①、增加批归一化(Batch Normalization),解决数据的内部协变量偏移问题(Internal Covariate Shift)。

②、在网络中增加Dropout(神经元休眠个数),即让部分神经元在训练过程中处于休眠状态。

③、调整学习率,一般会通过指数式衰减等策略调整训练过程中的学习率。

④、设置多种子训练取平均,降低训练过程中的过拟合风险。

⑤、增加L1或者L2正则化,对损失函数施加惩罚,以降低过拟合风险。

⑥、超参数的优化方法。

在对超参数的优化方法上,一般可以采用网格搜索(Grid Search)或者随机搜索(Random Search);但上述两种方法对于计算资源的消耗较大,且效率不高。在本发明的实施例中,采用贝叶斯优化(Bayesian Optimization)策略。贝叶斯优化通过高斯过程回归计算前面n个数据点的后验概率分布,得到每一个超参数在每一个取值点的均值和方差;贝叶斯优化通过均衡均值和方差,根据超参数间的联合概率分布,最终选择一组较好的超参数。

上述所有处理步骤完成后,就可以通过将上述特征带入用户预测模型,能够提前在广告投放之前就筛选出意愿较高的部分用户,并对这些用户进行营销广告的精准投放。

即本发明还可以包括模型预测步骤S4,根据所述用户预测模型,得到需要预测的时间点t+1时筛选出的用户进行精准营销的任务。

结果表明,本用户预测模型算法选出的高意愿用户的点击率是低意愿用户点击率的10倍左右。通过该用户预测模型,可以将大量的低意愿用户直接从投放目标中筛出,从而节省大量的营销成本,实现利润率的增加。

以上所述的仅为本发明的优选实施例,所述实施例并非用以限制本发明的专利保护范围,因此凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号