前文京东金融的广告,如果投放给了不该投放的人群,不仅没有效果,反而被举报。广告素材准备到位了,还需要与对应人群匹配,所谓宝剑赠英雄,才能达到想要的效果。说到人群,在信息流广告中首先想到的就是人群定向,那么其产生的数据如何利用?

我们通常只看某一种定向的转化情况,例如年龄定向,31-50岁转化占比最多。这种情况下常见的做法就是着重投放31-50岁,其实背后还有很多问题没有明朗。31-50转化多,是不是因为整个大盘这个年龄段的人多?与其他定向如何配合?

朴素贝叶斯的数据挖掘

人群画像与信息流广告定向相对应,是广告分发的主要依据。眉毛胡子一把抓显然不是最优解,针对不同的目标人群投放不同的短视频广告,我们需要精细化运营。前段时间花呗针对外卖小哥、毕业生、职场白领、包工头的视频,人群画像肯定也是不同的。针对通投的历史数据,我们可以从平台导出受众分析的数据,比自己凭空想象的可靠性更高。

通过贝叶斯定理,实现定向广告的转化预测。已知某条件概率,如何得到两个事件交换后的概率,也就是在已知P(A|B)的情况下如何求得P(B|A)。比如,我知道账户历史用户中,提交表单31-40岁的比例是36%,那么当31-40岁用户看到我的广告时,她有多大的可能性提交表单。

两个公式

P(B|A)=(P(A|B)*P(B))/P(A)

P(A,B) = P(A|B) * P(B) =P(A)P(B) (P(A,B)代表事件A与B同时发生的概率。当事件A与B的发生是各自独立时,)

我们从头条后台导出,取点击、转化如下数据:

信息流精准定位目标人群,广告受众数据分析-开水网络

总点击3623,转化653。如果可以求定向A(省级地域=广东,年龄=31-40岁,兴趣=应用软件)的转化率,那么就可以组合定向,选出高转化概率的组合投放广告。

即求P(转化| A)=P(X | 转化) * P(转化) / P(A)

P(A | 转化)=P(省级地域=广东|转化)*P(年龄=31-40岁|转化)*P(兴趣=应用软件|转化)

P(未转化| A)=P(A | 未转化) * P(未转化) / P(A)

P(未转化| A)+P(转化| A)=1(一个用户进来只有两种可能,转化和未转化,所以转化和未转化的概率之和为1)

信息流精准定位目标人群,广告受众数据分析-开水网络

带入公式,就可以求出我们想要的P(转化| A),P(未转化| A)。

基于以上三个定向条件,得出一千三百多种组合,高于653/3623=18%平均转化水平的组合有三百多种。数据量越大、越准确的情况下,对于定向组合预估的准确率也会越高。

在实际过程中,转化数据和定向数据往往是割裂的,例如百度的定向就没有提供转化数据。头条到时给了也存才广告计划消耗数据远小于兴趣关键词统计的消耗数据?由于用户身上有多个兴趣分类和兴趣关键词,所以会出现各类基础指标,所以计算总计时会重复累加,大于计划消耗实际值。不过好在,所有数据都会重复累加。除了预估概率,我们还得有其他方案,精准定位目标人群。

计算组合excel、python都可以实现,写好的vba在文末自取!

TGI指数

TGI(Target Group Index)指数,是反映目标群体在特定研究范围(如地理区域、人口统计领域、媒体受众、产品消费者)内的强势或弱势的指数。

TGI(Target Group Index) = 受众中某标签占比 / 大盘人群中某标签占比 * 100,体现受众(选中的广告组/计划)相对于广告大盘在某标签上的显著性;以100作为分界,若某标签的TGI>100,说明受众相对于广告大盘在该标签上显著性更强

TGI=

基本应用:用户画像中某领域的人群对某个特征的偏好度。

基本公式:TGI= 某特征某领域的占比 / 某特征整体的占比(平均的占比)*100

例如:用 留言 的用户在某网站的占比 / 留言 的用户在百度用户整体中的占比 * 100

将[网站]留言的人作为目标群体,将有车、无车作为某一特征;整个目标群体中有车留言的占14.49% 无车留言85.51%,在网站留言用户用户有车占比有车的占31.3% 无车68.7%,所以留言在有车一族的TGI为31.3%/14.49%*100=217.36无车68.7%/85.51%*100=80.35。

这里就会发现虽然有68%的留言都是无车的,但是有车的人群更加精准。所以TGI的作用是研究特征和目标人群的关联度,其中TGI指数等于100表示平均水平,高于100,代表该类用户对某类问题的关注程度高于整体水平。

分类和标签

广告行业分类用来圈定广告所属行业,标签用来表述广告属性。广告分类和广告标签一定程度会影响广告预估ctr。建议您根据您投放的素材内容,精确而全面地设置您的广告标签和广告分类

当出价方式为oCPM出价,则eCPM=预估点击率*目标转化出价*1000*预估转化率。所以预估ctr越高eCPM就越高,那么对应的就有更多展示消耗的机会。


Option Explicit

Sub 排列组合()
Dim a1, a2, a3, k As Long
Dim R_a1, R_a2, R_a3 As Long
With ThisWorkbook.Worksheets("概率分布")
    R_a1 = .Range("D65536").End(xlUp).Row
    R_a2 = .Range("H65536").End(xlUp).Row
    R_a3 = .Range("L65536").End(xlUp).Row


k = 1
For a1 = 2 To R_a1
    For a2 = 2 To R_a2
        For a3 = 2 To R_a3
            k = k + 1
            Range("P" & k) = Range("D" & a1) '性别
            Range("Q" & k) = Range("H" & a2) '年龄
            Range("R" & k) = Range("L" & a3) '省份
        Next a3
    Next a2
Next a1
End With
MsgBox "complete"
End Sub

Sub byes_cal()
Dim p_Shift1, p_Shift0 As Variant '转化1|0
Dim p_Age1, p_Gender1, p_City1 As Variant
Dim p_Age0, p_Gender0, p_City0 As Variant
Dim t As Single
t = Timer
Dim R_age, R_gender, R_city  As Variant
Dim px0, px1, px2, px3, px4 As Variant
Dim i, irow, k1, k2, k3, k4 As Integer
R_age = Range("H65536").End(xlUp).Row
R_gender = Range("D65536").End(xlUp).Row
R_city = Range("L65536").End(xlUp).Row

irow = Range("P65536").End(xlUp).Row
If Range("A2") = 1 Then
    p_Shift1 = Range("A2").Offset(0, 1).Value '转化1
End If

If Range("A3") = 0 Then
    p_Shift0 = Range("A3").Offset(0, 1).Value '转化0
End If


On Error Resume Next
For i = 2 To irow

    For k1 = 2 To R_city
        If Range("R" & i).Value = Range("L" & k1).Value Then
            p_City1 = Range("L" & k1).Offset(0, 1).Value
            p_City0 = Range("L" & k1).Offset(0, 2).Value
        End If
    Next k1
    
    For k2 = 2 To R_gender
        If Range("P" & i).Value = Range("D" & k2).Value Then
            p_Gender1 = Range("D" & k2).Offset(0, 1).Value
            p_Gender0 = Range("D" & k2).Offset(0, 2).Value
        End If
    Next k2
    
    For k3 = 2 To R_age
        If Range("Q" & i).Value = Range("H" & k3).Value Then
            p_Age1 = Range("H" & k3).Offset(0, 1).Value
            p_Age0 = Range("H" & k3).Offset(0, 2).Value
        End If
    Next k3

'    For k4 = 2 To R_Intres
'        If Range("y" & i).Value = Range("p" & k4).Value Then
'            p_Intres1 = Range("p" & k4).Offset(0, 1).Value
'            p_Intres0 = Range("p" & k4).Offset(0, 2).Value
'        End If
'    Next k4
    
'        For k5 = 2 To R_Kws
'        If Range("ab" & i).Value = Range("t" & k3).Value Then
'            p_Age1 = Range("t" & k3).Offset(0, 1).Value
'            p_Age0 = Range("t" & k3).Offset(0, 2).Value
'        End If
'    Next k5


    px1 = CDec(p_City1 * p_Age1 * p_Gender1)

    px0 = CDec(p_City0 * p_Age0 * p_Gender0)

    px2 = (p_Shift1 * px1) / (p_Shift0 * px0) 'k
    
    px3 = Format(px2 / (px2 + 1), "0.00%") '转化可能性
    'px4 = Format(1 - px3, "0.00%") '不转化可能性
    Range("S" & i) = px3
   
Next i
MsgBox "完成" & Chr(13) & "用时" & Format(Timer - t, "0.00s")

End Sub


Sub clear()
    ThisWorkbook.Worksheets("概率分布").Columns("P:S").clear
End Sub