KOL Score
微播易发明
SNBT指数
微播易发明了一个SNBT指数
,来计算社交媒体账号的影响力指数
,SNBT指的是社交媒体账号的影响力指数,是微播易的发明专利
(专利名称:广告精准投放方法和系统、专利号:ZL2015 1 0958772.0)的简称,数值范围:0~100,数值越高表示账号质量
越好。它由账号影响力(Rank_Score)
和账号判假系数(FD_Ratio)
计算得出,其计算公式如下
$$SNBT = (Rank_{Score} \times FD_{Ratio}) \times 100$$
为了更好让您理解SNBT,下面将对SNBT进行详细介绍。
Rank_Score - 账号影响力
Rank_Score指的是账号影响力,数值范围:0.0 - 1.0,它由账号总阅读数
、头条平均阅读数
等数据计算得出,下面是Rank_Score的计算方式。
计算公式
$$Rank_{Score} =\sum_{i=1}^8 f_i \times w_i$$公式释义
$$\begin{array}{c|lcr}
特征值(F) & \text{特征标准化计算方法} & \text{权重(W)} \\
\hline
总阅读数指标 F1 & \ln(R_{total} \quad + 1) \over \ln(30 \times 800001) & 0.48 \\
头条平均阅读指标 F2 & \ln(R_{head} \quad + 1) \over \ln(30 \times 100001) & 0.04 \\
单篇最高阅读指标 F3 & \ln(R_{max} \quad + 1) \over \ln(100001) & 0.04 \\
平均阅读指标 F4 & \ln(R_{average} \quad + 1) \over \ln(100001) & 0.24 \\
总点赞数指标 F5 & \ln(L_{total} \quad + 1) \over \ln(30 \times 800001) & 0.12 \\
头条平均点赞数指标 F6 & \ln(L_{head} \quad + 1) \over \ln(30 \times 100001) & 0.01 \\
单篇点赞数指标 F7 & \ln(L_{max} \quad + 1) \over \ln(100001) & 0.01 \\
平均阅读指标 F8 & \ln(L_{average} \quad + 1) \over \ln(100001) & 0.06 \\
\end{array}$$$$\begin{array}{c|lcr}
指标 & \text{说明} \\
\hline
R_{total} & = 最近30天所有位置文章总阅读数 \\
R_{head} & = 最近30天所有头条文章总阅读数 \\
R_{max} & = 最近30天所有位置文章最高阅读数 \\
R_{average} & = 最近30天所有位置文章平均阅读数 \\
L_{total} & = 最近30天所有位置文章总点赞数 \\
L_{head} & = 最近30天所有头条文章总点赞数 \\
L_{max} & = 最近30天所有位置文章最高点赞数 \\
L_{average} & = 最近30天所有位置文章平均点赞数 \\
\end{array}$$相关数据说明
- 阅读数选取的时间周期是最近3个月的文章
• 如果最近三个月推送次数不够4次,Rank Score统一记为0.10
• 如果最近三个月推送次数超过4次,按照公式计算Rank Score - 选取文章列表时,需要过滤阅读数Read Number或点赞数Like Number异常的文章
• 过滤方法是:超过3月同一位置平均阅读数3倍方差的文章
• 也就是说,我们鼓励文章阅读或者点赞正常有序增长,突变文章会被当做阅读异常点过滤掉 - 单篇文章的阅读数或者点赞数至少需要48+小时方可取
- 阅读数选取的时间周期是最近3个月的文章
FD_Ratio - 账号判假系数
FD_Ratio指的是账号的判假系数,数值范围:0.0 – 1.0,数值越小,代表账号越真实,数值越大,代表账号刷阅读点赞的行为
越严重。下面是对FD_Ratio计算方法的详细介绍。
- 计算方法
- FD_Ratio计算规则比较复杂,是一套规则系统
- 一个账号违反规则越多,FD_Ratio越低,表示账号刷阅读点赞的情况越严重
• 阅读和点赞的比例不合理
• 同一个位置文章的阅读数随时间发生突变,且此类异常文章比例较多
• 不同位置文章的阅读数比例不合理
• 文章中嵌入的链接追踪到文章PV数与文章实际显示的阅读数差距较大
• 单篇文章阅读数随时间变化不符合一般规律,且此类异常文章较多 - FD取值范围是0到1的一个连续数
智能推荐算法说明
推荐指数
是微播易根据账号传播能力
与行业匹配度
进行综合评定的推荐指标,数值范围为 0~1000,数值越高表示账号越适合您。其计算公式为:$推荐指数 = 账号传播能力 * 行业匹配度$
为了让您更好的理解“推荐指数”特做以下详细说明
- 账号传播能力
账号传播能力由账号时效性
、账号传播广度
与账号传播深度
三个维度构成,账号传播能力计算公式为:$账号传播能力 = α 账号时效性 + β 账号传播广度 + γ 账号传播深度1$。 $$\begin{array}{c|lcr}
维度 & \text{计算依据和基础} & \text{数值范围} & \text{说明} \\
\hline
账号时效性 & 账号最后一次发文时间 & [0, 100] & 最后一次发文时间越近,分值越高,账号活跃度越好 \\
账号传播广度 & 账号近90天发文次数与阅读数 & [0, 100] & 发文次数越多,平均阅读数越大,分值越高,账号传播触达能力强 \\
账号传播深度 & 账号近90天互动数据(转发、评论、点赞) & [0, 100] & 互动数越高,分值越高,账号传播互动能力强 \\
\end{array}$$ - 行业匹配性
行业匹配性受自有发布内容的行业匹配性
和其他行业标签映射值
两个方面影响,其公式为:$行业匹配性 = MAX(自有发布内容的行业匹配值,其他行业标签的映射值)^1 \over 21$。 $$\begin{array}{c|lcr}
维度 & \text{统计} & \text{计算} \\
\hline
自有发布内容的行业匹配性 & 账号近3个月发布文章中具有各行业属性的文章数 & 各账号在各个行业的行业贡献度 \\
其他行业标签映射值 & 活跃用户的行为数据对各行业的浏览和互动情况 & 用户一段时间内在两个行业账号的浏览或互动行为 \\
\end{array}$$
注意:
$$自有发布内容的行业匹配值=发布的相关行业文章数 \over 总文章数^2$$
其他行业标签映射值对于未曾发表相应行业文章的账号其行业匹配度并非为0,若用户在一段时间内在两个行业账号产生多次浏览或互动行为,则代表此两个行业关联性大。
专利内容
本发明公开了一种广告精准投放方法和系统,所述方法包括:S10、根据待投放广告要求的投放类别
获取对应的归一化需求强度值;S20、分别获取预设所有投放账号的影响领域
;S30、分别获取每个投放账号在各自影响领域下的影响力
;S40、根据所述待投放广告要求的投放类别对应的归一化需求强度值和每个投放账号在各自影响领域下的影响力,获取所述待投放广告与每个投放账号的匹配度
;S50、由匹配度高到低
依次从所有投放账号中选取预设第一个数个账号作为目标投放账号
,并向所述目标投放账号发送所述待投放广告;所述系统包括预处理服务器、数据处理集群、数据库服务器和供电电源;所述方法和系统可解决现有技术中的诸多缺陷,从而具有良好的应用潜力。
- 一种广告精准投放方法,其特征在于,包括:
S10、根据待投放广告要求的投放类别
获取对应的归一化需求强度值
;
S20、分别获取预设所有投放账号的影响领域
;
S30、分别获取每个投放账号在各自影响领域下的影响力
;
S40、根据所述待投放广告
要求的投放类别
对应的归一化需求强度值
和每个投放账号在各自影响领域下的影响力
,获取所述待投放广告与每个投放账号的匹配度
;
S50、由匹配度高到低
依次从所有投放账号中选取预设第一个数个账号作为目标投放账号
,并向所述目标投放账号发送所述待投放广告
;
所述S10,包括:
S101、判断所述待投放广告
要求的投放类别的个数N是否为1;如果是,执行S102;否则,执行S103;所述N≥1;
S102、获取值为1的归一化需求强度值;
S103、获取每个投放类别对应的优先级
,根据所述优先级分别获取每个投放类别对应的归一化需求强度值。 - 根据权利要求1所述的广告精准投放方法,其特征在于,所述S103,包括:
S1031、根据所述优先级将所述待投放广告
的所有投放类别进行排序
,得到每个投放类别的排列顺序;
S1032、对于任一投放类别x,获取该投放类别x的排列顺序$rank_x$的倒数所述,N≥x≥1;
S1033、将所述 $1 \over rank_x$加1,得到${1 \over rank_x} + 1$;
S1034、获取所述${1 \over rank_x} + 1$的对数,得到$ \log({1 \over rank_x} + 1) $;
S1035、获取$ \sum_{x=0}^N \log({1 \over rank_x} + 1) $;
S1036、将所述$ \log({1 \over rank_x} + 1) $除以$ \sum_{x=0}^N \log({1 \over rank_x} + 1) $,得到所述投放类别$x$的归一化需求强度值。 - 根据专利要求1所述的广告精准投放方法,其特征在于,所述S20包括:
S201、对于任一投放账号,获取该投放账号所发表的所有文章
;
S202、分别获取该投放账号所发表的每篇文章的内容分类
;
S203、分别获取该投放账号所发表的每篇文章的权重
;
S204、根据该投放账号所发表的所有文章的内容分类和权重获取该投放账号的影响领域
。 - 根据权利要求3所述的广告精准投放方法,其特征在于,所述S202,包括:
S2021、对于该投放账号所发表的任意一篇文章,对该篇文章进行分词
,得到该篇文章的至少一个词语
;
S2022、对于该篇文章的至少一个词语中任一词语,根据该词语在该篇文章中出现的次数
获取该词语的出现频率,并根据所有文章中包含该词语的文章个数获取该词语的逆文档频率
;
S2023、根据每个词语的出现频率和逆文档频率,以及预先训练的所有类别的类别分类器,分别获取该篇文章属于每个类别的权重
;
S2024、根据该篇文章属于每个类别的权重,获取权重最大的类别
作为该篇文章的内容分类
。 - 根据权利要求4所述的广告精准投放方法,其特征在于,在所述S2023之前,所述S202还包括:
S2025、训练任一类别的类别分类器
时,获取P篇文章样本和每篇文章样本的类别值
,属于该类别的文章样本占所述P篇文章样本的一半;所述P>1;
S2026、从所述P篇文章样本中随机选取第二个数篇文章,并分别获取第二个数篇文章中每篇文章的至少一个词语、每个词语的出现频率和每个词语的逆文档频率;
S2027、将所述第二个数篇文章中每篇文章的至少一个词语、每个词语的出现频率和每个词语的逆文档频率,以及每篇文章样本的类别值,输入至预设第一核函数和第一模型参数的第一SVM分类器进行训练,得到该类别的类别分类器
;
S2028、将所述P篇文章样本中除所述第二个数篇文章之外的测试文章分别输入到该类别的类别分类器,得到测试文章的分类结果
;
S2029、根据测试文章的分类结果和类别值,判断分类差异
是否大于预设第一分类阈值;如果小于,训练结束;否则,修改所述第一核函数和/或第一模型参数,重新执行所述S2027至S2029。 - 根据权利要求3所述的广告精准投放方法,其特征在于,所述S203包括:
S2031、对于该投放账号所发表的任意一篇文章,获取该篇文章的转发数和所有文章的最高转发数;
S2032、将该篇文章的转发数除以最高转发数
,得到转发数加权
;
S2033、获取该篇文章的评论数和所有文章的最高评论数;
S2034、将该篇文章的评论数除以最高评论数
,得到评论数加权
;
S2035、根据该篇文章的发表时间获取该篇文章的时间加权
;
S2036、获取转发数加权、评论数加权和时间加权之积,得到该篇文章的权重
。 - 根据权利要求3所述的广告精准投放方法,其特征在于,所述S204,包括:
S2041、将该投放账号所发表的所有文章中相同内容分类的文章的权重求和,得到每个内容分类的汇总权值
;
S2042、将该投放账号所发表的所有文章的权重求和,得到所有类别的汇总权值
;
S2043、分别将每个内容分类的汇总权值除以所有类别的汇总权值,得到每个内容分类的归一化权重值
;
S2044、从每个内容分类的归一化权重值中,获取预设第三个数个较大的归一化权重值;
S2045、根据所述第三个数个较大的归一化权重值对应的内容分类确定该投放账号的影响领域
。 - 根据权利要求3所述的广告精准投放方法,其特征在于,所述S30包括:
S301、对于任一投放账号的任一影响领域,获取属于该影响领域的分类文章组;
S302、根据所述分类文章组中每篇文章的转发数,获取转发中位数
;
S303、获取该投放账号的账号真粉率
;
S304、根据所述账号真粉率、该投放账号的粉丝数和关注数、所有投放账号的个数和预设阻尼系数,获取该投放账号的PR值
;(表现网页等级的一个标准,级别分别是0到10,是Google用于评测一个网页“重要性”的一种方法)
S305、根据该投放账号的PR值、粉丝数、转发中位数和提及数,获取该投放账号在该影响领域下的影响力
。 - 根据权利要求8所述的广告精准投放方法,其特征在于,所述S303包括:
S3031、对于该投放账号的所有粉丝中任一粉丝,获取该粉丝的粉丝特征信息,所述粉丝特征信息包括粉丝昵称中包含的英文字母的个数、粉丝昵称中包含的数字的个数、个人描述的字数、是否有头像、收藏数、关注数、粉丝数、微博数、关注与粉丝之比中的一种或多种;
S3032、将该粉丝的粉丝特征信息
与预设基础规则
进行匹配,判断该粉丝是否属于僵尸粉;当该粉丝不属于僵尸粉时,执行S3033;否则,执行S3034;
S3033、将该粉丝的粉丝特征信息输入到预先训练的僵尸粉分类器,获取该粉丝的真粉率;
S3034、获取值为0的该粉丝的真粉率;
S3035、获取该投放账号所有粉丝的真粉率之和,得到总真粉率
;
S3036、将所述总真粉率除以该投放账号的粉丝个数,得到该投放账号的账号真粉率
。 - 根据权利要求9所述的广告精准投放方法,其特征在于,在所述S3033之前,所述S303还包括:
S3037、获取Q个粉丝样本、每个粉丝样本的粉丝特征信息和真粉值;
S3038、从所述Q个粉丝样本中随机选取第四个数个粉丝样本,将第四个数个粉丝样本中每个粉丝样本的粉丝特征信息和真粉值输入预设第二核函数和第二模型参数的第二SVM分类器进行训练,得到僵尸粉分类器
;
S3039、将所述Q个粉丝样本中除上述第四个数个粉丝样本之外的粉丝样本分别输入到所述僵尸粉分类器,得到僵尸粉分类结果
;
S3030、根据所述僵尸粉分类结果和真粉值,判断分类差异是否大于预设第二分类阈值;如果小于,训练结束;否则,修改所述第二核函数和/或第二模型参数,重新执行所述S3038至S3030。 - 根据权利要求8所述的广告精准投放方法,其特征在于,所述S304包括:
S3041、获取该投放账号$t$的初始PR值$PR_t^{(0)}$, 所述$PR_t^{(0)}=\log(10+followersCount_t*TFR_t)$, 所述$followersCount_t$为该投放账号$t$的粉丝数,$TFR_t$为该投放账号$t$的账号真粉率;预设所有投放账号的个数为$y$,所述$y≥1,y≥t≥1$;
S3042、根据所述$PR_t^{(0)}$和$y$获取该投放账号$t$第$i$轮迭代的PR值$PR_t^{(i)}$, 所述$PR_t^{(i)}=d*\sum_{j=1}^{followersCcount_t} {PR_j^{(i-1)} \over friendsCount_t} + {(1-d) \over y}$; 所述$d$为预设阻尼系数,所述$d>0$;所述$PR_j^{(i-1)}$为投放账号$j$第$i-1$轮迭代的PR值;所述$friendsCount_t$为投放账号$j$的关注数;所述$u≥i≥1$,所述$u$为预设迭代阈值;
S3043、根据该投放账号$t$第$i$轮迭代的PR值$PR_t^i$, 获取整体PR差异$\Delta PR_i$, 所述$\Delta PR_i=\sum_t^y abs(PR_t^{(i)} - PR_t^{(i-1)})$;
S3044、判断所述$\Delta PR_i$是否小于预设差异阈值;如果小于,根据迭代结果获取该投放账号的PR值;否则,判断迭代次数是否超过预设迭代阈值,如果超过预设迭代阈值,计算结束;如果未超过预设迭代阈值,将所述$i$置为$i+1$后重复所述S3042至S3044。 - 根据权利要求8所述的广告精准投放方法,其特征在于,所述S305包括:
S3051、获取该投放账号$t$的粉丝数的标准化值$f1$,所述$f1=\log(followersCount_t+e)$;所述$followersCount_t$为该投放账号$t$的粉丝数;
S3052、获取该投放账号t的提及数的标准化值$f2$,$f2=\log(reference_Count_t+e)$;所述$reference_Count_t$为该投放账号$t$的提及数;
S3053、获取该投放账号$t$的转发中位数的标准化值$f3$,$f3=\log(medPostCount_t+e)$;所述$medPostCount_t$为该投放账号$t$的转发中位数;
S3054、获取该投放账号$t$的PR值的标准化值$f4$,所述$f4=\log(PR+e)$;所述PR为该投放账号$t$的PR值;
S3055、获取$f_2$的归一化值$f_2^{'}={1 \over {1 + e^{-1 * (a_1 * f_2 + b_1)}}}$, 所述$a1>0,b1<0$;
S3056、获取$f_3$的归一化值$f_3^{'}={1 \over {1 + e^{-1 * (a_2 * f_3 + b_2)}}}$, 所述$a2>0,b2<0$;
S3057、对所述$f1$、$f_2^{'}$、$f_3^{'}$和$f_4$进行线性组合,得到初步得分score,所述$score=a_3*f1 + b_3*f_2^{'} + c_3*f_3^{'} + d_3*f_4$;所述$a_3$、$b_3$、$c_3$、$d_3$均大于0;
S3058、对所述初步得分score进行对数化处理,得到logisticScore,所述$logisticScore=1 \over {1 + e^{-1 * (a_4)*score+b_4}}$;所述$a_4>0,b_4<0$;
S3059、对所述logisticScore进行分值变化,得到该投放账号在该影响领域下的影响力inft,所述$inft=e*logisticScore*10+2+100.5$;所述$e$为自然常数。 - 根据权利要求1所述的广告精准投放方法,其特征在于,所述S40,包括:
S401、将预设M个类别中除所述至少一个投放类别外其他类别的归一化需求强度值设置为0;
S402、将预设M个类别中除每个投放账号的各自影响领域外的其他类别的影响力设置为0;
S403、对于任意账号,获取$\sum_{j=1}^M ads_j*acs_j$, 所述$ads_j$为类别$j$的归一化需求强度值,所述$acs_j$该投放账号在类别$j$下的影响力;所述$M≥1,M≥j≥1$;
S404、获取$\sqrt{\sum_{j=1}^M ads_j^2}$和$\sqrt{\sum_{j=1}^M acs_j^2}$之积,得到向量积;
S405、将所述$\sum_{j=1}^M ads_j*acs_j$除以所述向量积,得到该投放账号的匹配度
。 - 一种广告精准投放系统,其特征在于,包括:
预处理服务器、数据处理集群、数据库服务器和供电电源;所述供电电源用于为所示预处理服务器、数据处理集群和数据库服务器供电;所述预处理服务器和所述数据库服务器分别与所述数据处理集群相连;
所述预处理服务器
,包括:用于接收广告投放请求的请求接收单元;用于获取初始账号信息的信息抓取单元;与所述信息抓取单元相连,用于对所述初始账号信息进行预处理,得到处理后的账号信息的预处理单元;分别与所述请求接收单元和所述预处理单元相连,用于将处理后的账号信息和所述广告投放请求要求的投放类别发送至所述数据处理集群的信息发送单元;
所述数据处理集群
,包括:与所述信息发送单元相连,用于接收所述处理后的账号信息和广告投放请求要求的投放类别的信息接收单元;与所述信息接收单元相连,用于根据所述广告投放请求要求的投放类别获取对应的归一化需求强度值的归一化处理单元;与所述信息接收单元相连,用于根据处理后的账号信息获取所有账号的影响领域的领域处理单元;与所述领域处理单元相连,用于根据领域处理单元获取的所有账号的影响领域,分别获取每个投放账号在各自影响领域下的影响力的影响力处理单元;分别与所述归一化处理单元和所述影响力处理单元相连,用于根据所述待投放广告要求的投放类别对应的归一化需求强度值和每个投放账号在各自影响领域下的影响力,获取所述待投放广告与每个投放账号的匹配度的匹配度处理单元;与所述匹配度处理单元,用于由匹配度高到低依次从所有投放账号中选取预设第一个数个账号作为目标投放账号,并向所述数据库服务器发送所述目标投放账号的账号发送单元;
所述数据库服务器
,用于接收所述数据处理集群发送的目标投放账号并存储;
所述归一化处理单元用于根据所述广告投放请求要求的投放类别获取对应的归一化需求强度值,所述归一化需求强度值的获取包括:
S101、判断所述待投放广告要求的投放类别的个数N是否为1;如果是,执行S102;否则,执行S103;所述N≥1;
S102、获取值为1的归一化需求强度值;
S103、获取每个投放类别对应的优先级,根据所述优先级分别获取每个投放类别对应的归一化需求强度值。 - 根据权利要求14所述的广告精准投放系统,其特征在于,还包括:
存储服务器
,所述存储服务器与所述预处理服务器相连,用于对所述预处理服务器获取的初始账号信息和/或待投放广告要求的投放类别进行备份。 - 根据权利要求14所述的广告精准投放系统,其特征在于,还包括:
请求队列服务器
,与所述预处理服务器相连,用于对输入到预处理服务器的广告投放请求进行排队,并根据排队结果依次向所述预处理服务器发送广告投放请求。 - 根据权利要求14所述的广告精准投放系统,其特征在于,还包括:
数据抓取集群
,与所述预处理服务器相连,用于抓取初始账号信息,并向所述预处理服务器发送所述初始账号信息。 - 根据权利要求14所述的广告精准投放系统,其特征在于,还包括:
不间断电源
,所述不间断电源用于为所述数据处理集群和所述数据库服务器供电。 - 根据权利要求14至18中任意一项所述的广告精准投放系统,其特征在于,所述数据处理集群,包括:
名称节点
和至少一个数据节点
,所述名称节点与所述至少一个数据节点相连;
所述名称节点,用于接收所述预处理服务器发送的处理后的账号信息和投放类别,并从所述至少一个数据节点中选取目标节点后,向所述目标节点发送所述处理后的账号信息和投放类别;
所述目标数据节点,包括:所述信息接收单元、所述归一化处理单元、所述领域处理单元、所述影响力处理单元、所述匹配度处理单元和所述账号发送单元。
说明书
广告精准投放方法和系统 | 技术领域 | 本发明涉及广告投放领域,尤其涉及一种广告精准投放方法和系统。
背景技术
社交网络经过近几年的发展,已经逐渐成为人们相互沟通、传播信息的重要途径之一;由于社交网络具有传播速度快、覆盖范围广等特点,因此越来越多的广告商选择通过社交网络推送广告。现有技术中,广告推送一般使用广播的方式,即向所有社交网络的用户无差别的推送广告。
然而,由于每个广告的受众群体不同,因此无差别的广告推送
可能引起用户的反感甚至导致用户屏蔽广告,进而导致广告的传播效果较差。
因此,对于新型的广告精准投放方法和系统,仍存在着继续研究的必要和需求,这也正是本发明得以完成的动力所在和基础所倚。
发明内容
为了解决上述缺陷以及提供新型的广告精准投放方法和系统,本发明人进行了大量的深入研究,在付出了创造性劳动后,从而完成了本发明。
具体而言,本发明提供一种广告精准投放方法和系统
,所述方法和系统能够有针对性地推送广告,进而提升广告的传播效果。
更具体而言,第一个方面,本发明提供一种广告精准投放方法,所述方法包括:
S10、根据待投放广告要求的投放类别
获取对应的归一化需求强度值;
S20、分别获取预设所有投放账号的影响领域
;
S30、分别获取每个投放账号在各自影响领域下的影响力
;
S40、根据所述待投放广告要求的投放类别对应的归一化需求强度值和每个投放账号在各自影响领域下的影响力,获取所述待投放广告与每个投放账号的匹配度
;
S50、由匹配度高到低
依次从所有投放账号中选取预设第一个数个账号作为目标投放账号
,并向所述目标投放账号发送所述待投放广告。
在本发明的所述广告精准投放方法中,所述S10,包括:
S101、判断所述待投放广告要求的投放类别的个数N是否为1;如果是,执行S102;否则,执行S103;所述N≥1;
S102、获取值为1的归一化需求强度值;
S103、获取每个投放类别对应的优先级,根据所述优先级分别获取每个投放类别对应的归一化需求强度值。
在本发明的所述广告精准投放方法中,所述S103,包括:
S1031、根据所述优先级将所述待投放广告的所有投放类别进行排序,得到每个投放类别的排列顺序;
S1032、对于任一投放类别$x$,获取该投放类别$x$的排列顺序$rank_x$的倒数$1 \over rank_x$;所述,N≥x≥1;
S1033、将所述$1 \over rank_x$加1,得到${1 \over rank_x} + 1$;
S1034、获取所述${1 \over rank_x} + 1$的对数,得到$\log_({1 \over rank_x} + 1)$;
S1035、获取$\sum_{x=1}^N \log_({1 \over rank_x} + 1)$;
S1036、将所述$\log_({1 \over rank_x} + 1)$除以$\sum_{x=1}^N \log_({1 \over rank_x} + 1)$,得到所述投放类别x的归一化需求强度值。
在本发明的所述广告精准投放方法中,所述S20包括:
在本发明的所述广告精准投放方法中,所述S202,包括:
在本发明的所述广告精准投放方法中,在所述S2023之前,所述S202还包括:
在本发明的所述广告精准投放方法中,所述S203包括:
在本发明的所述广告精准投放方法中,所述S30包括:
在本发明的所述广告精准投放方法中,所述S303包括:
在本发明的所述广告精准投放方法中,所述S304包括:
在本发明的所述广告精准投放方法中,所述S305包括:
在本发明的所述广告精准投放方法中,所述S40,包括:
第二个方面,本发明还提供了一种使用上述广告精准投放方法的广告精准投放系统,所述系统包括:
如上所述,本发明提供了一种广告精准投放方法和系统,通过该方法和系统的使用,可根据待投放广告的归一化需求强度值
与每个投放账号的影响力
,确定待投放广告与每个投放账号的匹配度
,从所有投放账号中选取匹配度较高的进行广告投放,从而实现广告精准投放。
本发明所提供的所述方法和系统,解决了现有技术中由于每个广告的受众群体不同,因此无差别的广告推送可能引起用户的反感甚至导致用户屏蔽广告,进而导致广告的传播效果较差的问题,具有良好的应用潜力。
附图说明
图1为本发明实施例1提供的广告精准投放方法的流程图;
图2为本发明实施例2提供的广告精准投放系统的结构示意图一;
图3为本发明实施例2提供的广告精准投放系统的结构示意图二;
图4为本发明实施例2提供的广告精准投放系统的结构示意图三;
图5为本发明实施例2提供的广告精准投放系统的结构示意图四;
图6为本发明实施例2提供的广告精准投放系统的结构示意图五。
具体实施方式
下面结合附图和实施例对本发明进一步说明。但这些例举性实施方式的用途和目的仅用来例举本发明,并非对本发明的实际保护范围构成任何形式的任何限定,更非将本发明的保护范围局限于此。
实施例1
如图1所示,本发明实施例提供一种广告精准投放方法,包括:
- 步骤101,根据待投放广告要求的投放类别获取
对应的归一化需求强度值
。
在本实施例中,系统可以预设内容分类体系,当广告提供商需要投放广告时,根据该内容分类体系选取该待投放广告的投放类别;该选取的投放类别可以为一个类别或多个类别,当为多个类别时,还需要设置每个投放类别对应的优先级,使系统能够根据要求的投放类别和设置的优先级实现精准投放。
在本实施例中,通过步骤101获取归一化需求强度值的过程包括:首先判断待投放广告要求的投放类别的个数N是否为1,该N≥1;如果待投放广告要求的投放类别的个数N为1,获取值为1的归一化需求强度值;如果待投放广告要求的投放类别的个数N不为1,获取每个投放类别对应的优先级,根据该优先级分别获取每个投放类别对应的归一化需求强度值。其中,根据该优先级分别获取每个投放类别对应的归一化需求强度值,包括:根据优先级将待投放广告的所有投放类别进行排序,得到每个投放类别的排列顺序;对于任一投放类别$x$,获取该投放类别$x$的排列顺序$rank_x$的倒数N≥x≥1;将加1,得到获取的对数,得到获取将除以得到该投放类别$x$的归一化需求强度值。通过上述过程,依次将$x$取值1~N,即可得到每个投放类别的归一化需求强度值。
在本实施例中,当待投放广告的投放类别不能完全覆盖内容分类体系的所有预设类别时,可以将未覆盖的类别的归一化需求强度值设为0。 - 步骤102,分别获取
预设所有投放账号的影响领域
。
在本实施例中,当广告商需要投放广告时,可以选择该待投放广告的投放平台,从而确定预设的所有投放账号。步骤102可以根据每个投放账号的信息统计用户的行为,进而确定投放账号的影响领域
;具体的,通过步骤102获取预设所有投放账号的影响领域的过程包括:对于任一投放账号,获取该投放账号所发表的所有文章;分别获取该投放账号所发表的每篇文章的内容分类;分别获取该投放账号所发表的每篇文章的权重;根据该投放账号所发表的所有文章的内容分类和权重获取该投放账号的影响领域
。
其中,可以通过网络爬虫分别获取该投放账号所发表的所有文章,也可以通过其他方式获取该投放账号所发表的所有文章,在此不做限制;通过上述过程,既可以获取该投放账号所发表的每篇文章的内容,也可以获取每篇文章的评论数、转发数和发送时间等信息。
分别获取该投放账号的每篇文章的内容分类
的过程包括:对于该投放账号所发表的任意一篇文章,对该篇文章进行分词,得到该篇文章的至少一个词语;对于该篇文章的至少一个词语中任一词语,根据该词语在该篇文章中出现的次数获取该词语的出现频率,并根据所有文章中包含该词语的文章个数获取该词语的逆文档频率;根据每个词语的出现频率和逆文档频率,以及预先训练的所有类别的类别分类器,获取该篇文章属于每个类别的权重;根据该篇文章属于每个类别的权重,获取权重最大的类别作为该篇文章的内容分类。其中,可以使用普通分词词典对该篇文章进行分词;进一步的,为提高分词的准确率,还可以使用普通分词词典与自定义分词词典结合的方式对该篇文章进行分词,该自定义分词词典可以包含昵称、自定义标签等词语,此时还可以结合预先设置的普通分词词典和自定义分词词典的优先级进行分词,在此不再一一赘述。词语的出现频率等于该词语在该篇文章中出现的次数,词语的逆文档频率可以等于所有文章中包含该词语的文章个数的倒数。通过对该篇文章进行分词,能够清洗该篇文章中标点符号以及不具有含义的文字等,从而得到至少一个有含义的词语。
可以基于通用SVM算法
,通过参数定制的方式,分别训练生成每个类别的类别分类器
;训练类别分类器的过程包括:训练任一类别的类别分类器时,获取P篇文章样本和每篇文章样本的类别值,属于该类别的文章样本占P篇文章样本的一半;P>1;从P篇文章样本中随机选取第二个数篇文章,并分别获取第二个数篇文章中每篇文章的至少一个词语、每个词语的出现频率和每个词语的逆文档频率;将第二个数篇文章中每篇文章的至少一个词语、每个词语的出现频率和每个词语的逆文档频率,以及每篇文章样本的类别值,输入至预设第一核函数和第一模型参数的第一SVM分类器进行训练,得到该类别的类别分类器;将P篇文章样本中除第二个数篇文章之外的测试文章分别输入到该类别的类别分类器,得到测试文章的分类结果;根据测试文章的分类结果和类别值,判断分类差异是否大于预设第一分类阈值;如果小于,训练结束;否则,修改第一核函数和/或第一模型参数,重新执行SVM分类器训练、测试文章分类和分类差异判断过程。其中,为了提高训练的准确率,P一般大于500;第二个数一般占P的80%以上;当文章样本属于该类别时,该文章样本的类别值为1,否则为0;初始模型参数中惩罚系数C=1,新特征空间的分布控制系数Gamma=8,核函数=径向基函数;分别获取第二个数篇文章中每篇文章的至少一个词语、每个词语的出现频率和每个词语的逆文档频率与之前分别获取该投放账号的每篇文章的内容分类的过程中分词、获取出现频率和逆文档频率的过程类似,在此不再一一赘述。
分别获取该投放账号所发表的每篇文章的权重
的过程包括:对于该投放账号所发表的任意一篇文章,获取该篇文章的转发数和所有文章的最高转发数;将该篇文章的转发数除以最高转发数,得到转发数加权;获取该篇文章的评论数和所有文章的最高评论数;将该篇文章的评论数除以最高评论数,得到评论数加权;根据该篇文章的发表时间获取该篇文章的时间加权;获取转发数加权、评论数加权和时间加权之积,得到该篇文章的权重。其中,时间加权的计算方式可以预先设置,如设定发表时间在一个月以内的时间加权为1,设定发表时间在一个月至半年之间的时间加权为0.7,设定发表时间在半年以外的时间加权为0.3等,也可以设定时间加权的其他计算方式,在此不做限制。
分别获取每个投放账号的影响领域
的过程包括:将该投放账号所发表的所有文章中相同内容分类的文章的权重求和,得到每个内容分类的汇总权值;将该投放账号所发表的所有文章的权重求和,得到所有类别的汇总权值;分别将每个内容分类的汇总权值除以所有类别的汇总权值,得到每个内容分类的归一化权重值;从每个内容分类的归一化权重值中,获取预设第三个数个较大的归一化权重值;根据第三个数个较大的归一化权重值对应的内容分类确定该投放账号的影响领域。其中,第三个数可以根据需要设定,如设置为3等,在此不做限制。 - 步骤103,分别获取
每个投放账号在各自影响领域下的影响力
。
在本实施例中,通过步骤103获取影响力的过程包括:对于任一账号的任一影响领域,获取属于该影响领域的分类文章组;根据分类文章组中每篇文章的转发数,获取转发中位数;获取该投放账号的账号真粉率;根据账号真粉率、该投放账号的粉丝数、所有投放账号的个数、和预设阻尼系数,获取该投放账号的PR值;根据该投放账号的PR值、粉丝数、转发中位数和提及数,获取该投放账号在该影响领域下的影响力
。
具体的,通过步骤102确定所有投放账号的影响领域
以及每个投放账号所发表的每篇文章的内容分类
后,可以将同一投放账号的内容分类与影响领域进行匹配,确定每篇文章的影响领域。获取某影响领域的影响力时,从所有文章中选取属于该影响领域的文章即可。
获取该投放账号的账号真粉率
的过程,包括:对于该投放账号的所有粉丝中任一粉丝,获取该粉丝的粉丝特征信息,粉丝特征信息包括粉丝昵称中包含的英文字母的个数、粉丝昵称中包含的数字的个数、个人描述的字数、是否有头像、收藏数、关注数、粉丝数、微博数、关注与粉丝之比中的一种或多种;分别将该粉丝的粉丝特征信息与预设基础规则进行匹配,判断该粉丝是否属于僵尸粉;当该粉丝不属于僵尸粉时,将该粉丝的粉丝特征信息输入到预设僵尸粉分类器,获取该粉丝的真粉率;当该粉丝属于僵尸粉时,获取值为0的该粉丝的真粉率;获取该投放账号所有粉丝的真粉率之和,得到总真粉率;将总真粉率除以该投放账号的粉丝个数,得到该投放账号的账号真粉率。其中,预设基础规则可以设定文章数、粉丝数、关注与粉丝之比、微博名称与真粉率的关系。
可以基于通用SVM算法
,通过参数定制的方式,分别训练生成僵尸粉分类器
;具体的,僵尸粉分类器的训练过程包括:获取Q个粉丝样本、每个粉丝样本的粉丝特征信息和真粉值;从Q个粉丝样本中随机选取第四个数个粉丝样本,将第四个数个粉丝样本中每个粉丝样本的粉丝特征信息和真粉值输入预设第二核函数和第二模型参数的第二SVM分类器进行训练,得到僵尸粉分类器;将Q个粉丝样本中除上述第四个数个粉丝样本之外的粉丝样本分别输入到僵尸粉分类器,得到僵尸粉分类结果;根据僵尸粉分类结果和真粉值,判断分类差异是否大于预设第二分类阈值;如果小于,训练结束;否则,修改第二核函数和/或第二模型参数,重新执行SVM分类器训练、测试文章分类和分类差异判断过程。为了提高训练的准确率,Q一般大于500;第四个数一般占Q的80%以上;当粉丝为真粉时,该粉丝的真粉值为1,否则为0;初始模型参数中惩罚系数C=1,新特征空间的分布控制系数Gamma=8,核函数=径向基函数。
获取投放账号的PR值
的过程包括:获取该投放账号$t$的初始PR值$followersCount_t$为该投放账号$t$的粉丝数,$TFR_t$为该投放账号$t$的账号真粉率;预设所有投放账号的个数为$y$,$y≥1,y≥t≥1$;根据和$y$获取该投放账号$t$第$i$轮迭代的PR值$d$为预设阻尼系数,$d>0$;为投放账号$j$第$i-1$轮迭代的PR值;$friendsCount_j$为投放账号$j$的关注数;$u≥i≥1$,$u$为预设迭代阈值;根据该投放账号$t$第$i$轮迭代的PR值获取整体PR差异ΔPRi,判断ΔPRi是否小于预设差异阈值;如果小于,根据迭代结果获取该投放账号的PR值;否则,判断迭代次数是否超过预设迭代阈值,如果超过预设迭代阈值,计算结束;如果未超过预设迭代阈值,将$i$置为$i+1$后重复第i轮迭代的PR值的计算、整体差异的计算和判断过程。其中,如果某个账号没有落在$friendsCount_j$内,该账号的为0;根据迭代结果获取投放账号的PR值时,该投放账号的PR值为最后一次迭代的PR值。
获取投放账号在该影响领域下的影响力的过程包括:获取该投放账号t的粉丝数的标准化值$f_1$,$f_1=\log(followersCount_t+e)$;$followersCount_t$为该投放账号$t$的粉丝数;获取该投放账号t的提及数的标准化值$f_2$,$f_2=\log(referenceCount_t+e)$;$referenceCount_t$为该投放账号$t$的提及数;获取该投放账号t的转发中位数的标准化值$f_3$,$f_3=\log(medPostCount_t+e)$;获取该投放账号$t$的PR值的标准化值$f_4$,$f_4=\log(PR+e)$;PR为该投放账号$t$的PR值;获取$f_2$的归一化值$f_2^{'}$,$a1>0,b1<0$;获取$f_3$的归一化值$f_3^{'}$,$a2>0,b2<0$;对$f_1$、$f_2^{'}$、$f_3^{'}$和$f_4$进行线性组合,得到初步得分score,$score=a_3*f_1+b_3*f_2^{'}+c_3*f_3^{'}+d_3*f_4$;$a_3$、$b_3$、$c_3$、$d_3$均大于0;对初步得分score进行对数化处理,得到logisticScore,$a_4>0,b4<0$;对logistic_score进行分值变化,得到该投放账号在该影响领域下的影响力inft,$inft=e*logisticScore*10+2+100.5$;$e$为自然常数。在本实施例中,上述参数可以根据影响力数值的账号排序结果,与人工选定的账号优劣排序结果进行比对;根据试验得到最匹配的参数。特别的,为了提高影响力评估的准确性,可以对各参数进行以下设定:a1=0.355,b1=-1.732,a2=0.281,b2=-0.54,a3=0.4122,b3=0.3199,c3=0.2545,d3=0.0024,a4=0.231,b4=-0.393。 - 步骤104,根据待投放广告要求的投放类别对应的归一化需求强度值和每个投放账号在各自影响领域下的影响力,获取
待投放广告与每个投放账号的匹配度
。
在本实施例中,通过步骤104获取匹配度的过程包括:将预设M个类别中除至少一个投放类别外其他类别的归一化需求强度值设置为0;将预设M个类别中除每个投放账号的各自影响领域外的其他类别的影响力设置为0;对于任意账号,获取$ads_j$为类别j的归一化需求强度值,$acs_j$该投放账号在类别$j$下的影响力;$M≥1,M≥j≥1$;获取和之积,得到向量积;将除以向量积,得到该投放账号的匹配度。 - 步骤105,由
匹配度高到低
依次从所有投放账号中选取预设第一个数个账号作为目标投放账号,并向目标投放账号发送待投放广告
。
在本实施例中,通过步骤105可以首先将待投放广告与每个投放账号的匹配度进行排序,然后由匹配度高到低依次从所有投放账号中选取第一个数个账号作为投放账号。
本发明实施例提供的广告精准投放方法,由于根据待投放广告的归一化需求强度值与每个投放账号的影响力,确定待投放广告与每个投放账号的匹配度,从所有投放账号中选取匹配度较高的进行广告投放,从而实现广告精准投放。本发明实施例提供的技术方案,解决了现有技术中由于每个广告的受众群体不同,因此无差别的广告推送可能引起用户的反感甚至导致用户屏蔽广告,进而导致广告的传播效果较差的问题。
实施例2
如图2所示,本发明实施例提供的广告精准投放系统,包括:
预处理服务器201、数据处理集群202、数据库服务器203供电电源;供电电源用于为所示预处理服务器、数据处理集群和数据库服务器供电;预处理服务器和数据库服务器分别与数据处理集群相连。
- 其中,所述
预处理服务器
201,包括:用于接收广告投放请求的请求接收单元2011;用于获取初始账号信息的信息抓取单元2012;与所述信息抓取单元相连,用于对所述初始账号信息进行预处理,得到处理后的账号信息的预处理单元2013;分别与所述请求接收单元和所述预处理单元相连,用于将处理后的账号信息和所述广告投放请求要求的投放类别发送至所述数据处理集群的信息发送单元2014; - 所述
数据处理集群
202,包括:与所述信息发送单元相连,用于接收所述处理后的账号信息和广告投放请求要求的投放类别的信息接收单元2021;与所述信息接收单元相连,用于根据所述广告投放请求要求的投放类别获取对应的归一化需求强度值的归一化处理单元2022;与所述信息接收单元相连,用于根据处理后的账号信息获取所有账号的影响领域的领域处理单元2023;与所述领域处理单元相连,用于根据领域处理单元获取的所有账号的影响领域,分别获取每个投放账号在各自影响领域下的影响力的影响力处理单元2024;分别与所述归一化处理单元和所述影响力处理单元相连,用于根据所述待投放广告要求的投放类别对应的归一化需求强度值和每个投放账号在各自影响领域下的影响力,获取所述待投放广告与每个投放账号的匹配度的匹配度处理单元2025;与所述匹配度处理单元,用于由匹配度高到低依次从所有投放账号中选取预设第一个数个账号作为目标投放账号,并向所述数据库服务器发送所述目标投放账号的账号发送单元2026; - 所述
数据库服务器
,用于接收所述数据处理集群发送的目标投放账号并存储。
在本实施例中,通过预处理服务器、数据处理集群和数据库服务器确定目标投放账号,进而实现广告精准投放的过程,与本发明实施例1提供的相似,在此不再一一赘述。
进一步的,如图3所示,本发明实施例提供的广告精准投放系统,还包括:存储服务器
204,存储服务器与预处理服务器相连,用于对预处理服务器获取的初始账号信息和/或待投放广告要求的投放类别进行备份。在本实施例中,为防止预处理服务器出现故障导致数据丢失,设置存储服务器,以对预处理服务器的数据进行备份。
进一步的,如图4所示,本发明实施例提供的广告精准投放系统,还包括:请求队列服务器
205,与预处理服务器相连,用于对输入到预处理服务器的广告投放请求进行排队,并根据排队结果依次向预处理服务器发送广告投放请求。在本实施例中,为防止广告投放请求丢失,在向预处理服务器发送广告投放请求时,可以先通过请求队列服务器对广告投放请求进行排队。
进一步的,如图5所示,本实施例提供的广告精准投放系统,还包括:数据抓取集群
206,与预处理服务器相连,用于抓取初始账号信息,并向预处理服务器发送初始账号信息。在本实施例中,可以通过数据库实时存储初始账号信息;为获得最新的初始账号信息,预处理服务器在获取时,可以直接通过数据抓取集群进行抓取。
进一步的,本实施例提供的广告精准投放系统还包括:不间断电源
,不间断电源用于为数据处理集群和数据库服务器供电。在本实施例中,为防止供电电源突然断电,对数据处理集群和数据库服务器造成影响,可以单独通过不间断电源为数据处理集群和数据库服务器进行供电。
进一步的,如图6所示,为了提高数据处理速度,本实施例提供的广告精准投放系统中数据处理集群,包括:
名称节点和至少一个数据节点,所述名称节点与所述至少一个数据节点相连;
所述名称节点
2027,用于接收所述预处理服务器发送的处理后的账号信息和投放类别,并从所述至少一个数据节点中选取目标节点后,向所述目标节点发送所述处理后的账号信息和投放类别;
所述目标数据节点
2028,包括:所述信息接收单元、所述归一化处理单元、所述领域处理单元、所述影响力处理单元、所述匹配度处理单元和所述账号发送单元。
在本实施例中,名称节点可以为目标数据节点处理信息进行分配,实现负载均衡,从而提高处理速度。
本发明实施例提供的广告精准投放系统,由于根据待投放广告的归一化需求强度值与每个投放账号的影响力,确定待投放广告与每个投放账号的匹配度,从所有投放账号中选取匹配度较高的进行广告投放,从而实现广告精准投放。本发明实施例提供的技术方案,解决了现有技术中由于每个广告的受众群体不同,因此无差别的广告推送可能引起用户的反感甚至导致用户屏蔽广告,进而导致广告的传播效果较差的问题。
以上实施例的先后顺序仅为便于描述,不代表实施例的优劣。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。