以服务于中国广大创业者为己任,立志于做最好的创业网站。

标签云创业博客联系我们

导航菜单

营销活动效果评估怎么写,短视频营销效果评估

  

  点击上方 蓝字关注我们   

  

  https://mp.weixin.qq.com/s/1xBlwxtEuknXq4vX-Sq1XA   

  

  利用Uplift模型识别营销敏感用户提升转化率   

  

  上篇   

  

  1.探索数据的基本情况。   

  

  2.数据预处理和相关性分析。   

  

  3.样本余额验证。   

  

  下篇   

  

  1.建立营销收益模型。   

  

  2.营销收益模型的效果评价。   

  

  完整数据集和代码已经上传知识星球,获取连接   

  

  https://t.zsxq.com/AMBAa2F   

  

  #继续分享上周的内容。回头见。   

  

  https://mp.weixin.qq.com/s/BtA6JyEMQ32QgNJ8XBx3eg,还是点击阅读原文吧!   

  

  #建立营销收益模型。   

  

  经过上述过程,数据集已经被处理成营销增益模型所需的输入形式。以下是建立营销收益模型的正式开始。和其他监督模型一样,营销增益模型也需要分为训练集和验证集。我们通过下面的代码实现了数据特征和数据标签的分离,按照7:3的比例划分训练集和测试集。   

  

  来自sklearn。model _ selection导入train _ test _ split导入XG boost为XG bdef上传_ split (df _ model3360pd。dataframe) : #数据集分区。按照7:3的尺度,划分数据集x=df _ model.drop (['target ',' target _ class'],axis=1)y=df _ model . target _ class x _ train,x _ test,\ y _ train,y _ test=train _ test _ split(。y,test_size=0.3,random_state=42,分层=df_model['治疗'])返回X_train,X_test,y_train,y_test   

  

  数据集划分后,我们通过xgboost构建了一个营销收益模型。营销模式的实现过程如下代码所示,可分为三个步骤。首先,在测试数据集上,用xgboost算法训练模型。其次,在验证数据集上计算营销增益得分,即营销增益响应率(增量)。   

  

  响应率,内部收益率);最后,绘制混淆矩阵来评价模型的效果。   

  

  def隆起_模型(X_train:pd。DataFrame,X_test:pd。DataFrame,y_train:pd。DataFrame,Y_test:pd。DataFrame): #使用XGB模型训练数据集结果=pd。dataframe (x _ test)。copy()upup _ model=xgb。xgbclassifier()。fit (x _ train。drop('治疗',Axis=1),y_train) #预测测试集隆起_ proba \=隆起_模型的结果。predict _ proba (x _ test.drop('治疗',axis=1))结果[' proba _ cn ']=upload _ proba[33366]。0]结果['proba_CR']=隆起_proba[:1]结果['proba_TN']=隆起_proba[:2]结果['proba_TR']=隆起_proba[:3]结果['隆起_score']=结果. eval '、proba_CN/(proba_CN proba_CR))、proba_TR/(proba_TN proba_TR)、- proba_TN/(proba)valid _ pred=upload _ model . predict(x _ test . drop('治疗',axis=1))cm=sk . metrics . muffusion _ matrix(y)。   

(10,10)) sns.heatmap(cm, annot=True, fmt='g',cmap="YlGnBu",ax = ax); #annot=True to annotate cells #轴标签、图名 ax.set_xlabel('Predicted labels'); ax.set_ylabel('True labels'); ax.set_title('Confusion Matrix'); ax.xaxis.set_ticklabels(['CN', 'CR','TN','TR']);ax.yaxis.set_ticklabels(['CN', 'CR', 'TN','TR']); result['target_class'] = y_test return result

  

此处对营销增益响应率做一个说明,营销增益响应率是描述与未受到促销干预的用户相比,其购买比率提升的程度,计算公式如下所示。

  

  

参考:https://www.worldscientific.com/doi/abs/10.1142/S0219622019500172

  

公式(1)中T表示受到干预的全部用户,即(TR + TN);C表示未受到干预的全部用户。

  

最后将数据集分割函数和建模函数整合到一起构建营销整合模型,实现代码如下。

  

def uplift(df_model:pd.DataFrame): # 整合数据集分割函数以及建模函数 X_train, X_test, y_train, y_test =uplift_split(df_model) result = uplift_model(X_train, X_test,y_train, y_test)return result

  

# 营销增益模型效果评价

  

完成建模之后的工作就是评价模型效果,这一节我们通过混淆矩阵、增益值分布以及Qini曲线评价营销增益模型效果。

  

# 1.混淆矩阵

  

第一部分已经完成营销增益模型的构建,如下代码实现对“买一送一”营销策略的用户转化分类,并在验证集上通过混淆矩阵检验模型效果,混淆矩阵结果如图1所示。

  

bogo_uplift = uplift(df_model_bogo)

  

  

图1 “买一送一”营销策略的混淆矩阵

  

同样地,对于“打折促销”策略也是用营销增益模型识别营销敏感人群,实现代码如下,混淆矩阵结果如图2所示。

  

discount_uplift = uplift(df_model_discount)

  

  

图2 “打折促销”策略的混淆矩阵

  

# 2.增益值分布

  

除了混淆矩阵外,增益值也是直观衡量营销策略的指标。对于“买一送一”策略,我们通过如下代码绘制了营销增益分数的分布。

  

plt.figure(figsize= (10,6))plt.xlim(-.05,.1)plt.hist(bogo_uplift.uplift_score,bins=1000, color=['#2077B4'])plt.xlabel('Upliftscore')plt.ylabel('Numberof observations in bogo')plt.title("Upliftscore of bogo")

  

如图3展示了实施“买一送一”带来的用户转化提升。相比于没有任何营销策略,“买一送一”策略能够对用户转化带来积极的作用,当然对于部分用户也会出现反作用。

  

  

图3 “买一送一”策略增益值分布

  

同样地,对于“打折促销”策略我们也使用同样的方法对营销增益值进行可视化,实现代码如下所示。

  

plt.figure(figsize= (10,6))plt.xlim(-.05,.1)plt.hist(discount_uplift.uplift_score,bins=1000, color=['#2077B4'])plt.xlabel('Upliftscore')plt.ylabel('Numberof observations in discount')plt.title("Upliftscore of discount")

  

结果如图4所示,“打折促销”策略对于用户的转化同样存在积极作用和消极作用,但是与“买一送一”策略相比,“打折促销”策略对用户转化的积极影响更胜一筹。

  

  

图4 “打折促销”策略增益值分布