到今天才开始撰写竞价的第一篇文章,其实一直以来特别想聊聊付费投放相关的,相对于SEO,我更喜欢SEM、FEED,付费投放也确实给我带来很大价值。竞价广告-
SEM是复杂问题简单化,不用考虑太多未知的算法、规则、技术、思路等,只要在持续把控ROI的前提下思考用户需求和优化固定指标即可,SEO则相反,很多时候你要优化的问题是不是个问题都不一定。
竞价排名广告是离不开关键词的,但绝大部分SEMer没有任何技术能力,特别是官方代理商公司里的运营人员,几乎是有一个算一个,所以一般只会使用官方的工具来简单拓词(比如关键词规划师),又或者通过"搜索词报告"来发现新词等等。
举个例子:外包公司推广小程序定制开发业务,一般的拓词方式是打开百度关键词规划师拓展:
然后继续把常见的:"小程序开发"、"小程序定制"、"小程序多少钱"等等拓展一遍。竞价广告
最终在Excel里去重、再人工挑选出认为有商业价值、有流量、值得投放的关键词,放入账户,一般是几百到几千不等,开始投放。
带来的问题是:
这些大家都有,并不稀奇,我们能看到,别人也能看到,工具也不会一下子把数据库里有的都给你,那么一些想象不到的词根词缀往往可能拓展不出来,这就可能漏掉了很多需求。
优先会被拓展出来的词,都是搜索量极高的热词,他们的转化不一定是最好的,但广告成本一定是最高的。竞价广告
通过搜索词报告(系统会把用户每天通过什么词点击你的广告统计给你)来发现更多没有考虑到的长尾词不是不可以,但是需要时间成本和预算成本,往往还不小(想要量大得开宽泛的匹配浪费更多预算),很容易在数据测算时期就夭折了。
特别是很多传统行业的公司,没有专业的SEMer,账户都是托管给代理商的客服人员(因为免费的),他们搭建账户的方式千篇一律(毕竟每个人手上都有几十个不等的账户要管理),几乎是接到户之后就打开"关键词规划师",输入行业主词,简单挑选几百个有明显商业价值的词,粗暴的区分几个单元就开始投放了,不管竞争强度不管长尾流量,更别提账户质量度。竞价广告
最终会造成整个行业的人习惯性的在抢占少部分看得到的热词,又因为竞价的机制,点击单价快速拉升,广告预算水涨船高,最后得出结论:百度竞价真贵!!!
而事实上在理想情况下应该是像我们标题所表达的意思:
尽可能挖掘出更多还没人花钱投放的有效词,这些词才是实打实的真金白银,做了等于捡钱!
:收集词缀
在过往的文章里,我们为了挖掘用户需求,已经涉及过各种渠道的挖词方式,以及一些巧妙的挖词思路,但事实上只要你愿意,还会有更多。竞价广告
当我们向百度搜索框里搜索:"小程序"
我们可以看到百度为我们找到了",,"个网页,也就是它的数据库里至少有这么多跟小程序相关的页面。竞价广告
可事实上我们只能得到个网页:
实际原因一是它不认为我们需要那么多,只需要把最优质的、最相关的给我们即可,再一个是客观上来说我们也"承受不起",带宽资源和硬件设备没办法一下子接收,当然还包括其他原因。竞价广告
但是当我们搜索:"小程序 ":
百度数据库里就显示大约只有",,"个,并且图中被红框框选出来的页面,在我们上一次搜索时,应该是没出现的,仅仅是因为这次我们搜索词里明确有"",因此百度优先帮我们返回包含""的。
我们把这个现象对应到任何关键词拓展工具里,其实都是一个道理,特别是百度关键词规划师:
如上图通过这种方式是拓展不了多少个词的,如果我们加上相应的词缀,比如"开发",就可以专门提取跟"开发"有关的"小程序"长尾词,按照这个道理,我们只要反复加上各式各样的词缀,理论上几乎可以把工具背后的数据库里有的长尾词全部提取出来。
但是:
问题:小程序这个领域包含哪些词缀?
问题:可以想象是的成千上万,怎么批量收集,又怎么批量拓词?竞价广告
对于这两个问题,我们过往文章也涉及到这个场景,比如先拓展一批词,对它们分词,把主词带着高频词缀去工具里搜索:
可是通过一两次的拓展,分词统计出来的词缀并不全面,起码很有限,另外别说成千上万,就是几百个词缀反反复复一个个带着去工具里搜索拓展,也只有狠人才能干得出来。
这也是为什么大部分管理竞价的人员只能简单拓展小部分关键词就开始投放的原因,说到底还是要借助技术。竞价广告
PS:这里跟我们为了分析需求去挖词还不太一样,分析需求我们只需要找到有代表性的词就可以,做竞价,不同词就是不同词。
针对这个问题,本篇文章我们来使用另一种方式:利用海量文本内容来挖词。
所谓的文本内容可以是:文章、回答、帖子、新闻等互联网特有形式的文本内容。竞价广告-
简单的逻辑是:
收集一批目标领域的文本内容,比如几万篇以小程序为主题的文章,以及一批非目标领域的随机文本内容,比如几十万篇新闻文章(这几十万篇可以在不同行业重复利用)。
利用TF-IDF算法(是判断文章主题时常见的算法)提取目标领域每一篇内容的高权词。竞价广告
TF-IDF算法之前讨论过:
某篇文章中,高度反复出现的一些词,在其他文章里很少出现,这些词是最能说明文章主题的,在任何文章里总是出现的词汇不助于理解文章,不具备重要性和相关性。
可以想象的是:
一堆小程序领域的内容,当然会频繁出现跟小程序高度相关的词汇,而在其他领域文章再多也不会出现多少,反过来类似"可是"、"好像"、"这个"等等这类无关痛痒的大众词汇,在任何正常书写出来的内容里,都会出现,而且还不少,单纯在目标领域里计算,这些常见词的权重分数也不低,有时候不是很好区分。
利用TF-IDF的思想,再结合无差别领域的内容来抑制常见词的分数,沉淀出来的就是小程序领域的相关词汇。竞价广告
以它们作为词缀结合"小程序"去反复拓词,理论上就能尽可能的把整个领域的词都收集到。
收集的内容越多,这种计算就越准确,且能整理的词缀就越全面。
有了这个简单的逻辑,我们开始来实现。竞价广告
步骤:收集内容
目标是某个领域的一批内容,什么地方能批量找出同领域内容呢?
很多,比如一些专题论坛、社区、各种垂直自媒体号等等,因为特定的关系它们的内容都围绕具体某一领域,包括百度的搜索结果其实也可以,我这里挑选了某乎。竞价广告
知乎里一个问题下的所有答案,不就是专门讨论同一个主题的嘛,由此延伸的是:同一个话题下的所有问题对应的所有答案,也都是讨论同一个领域的(所谓的领域是相对的),比如:
本次测试收集了知乎"小程序"话题下的+问题,标题包含"小程序"且有回答,总回答数+。
收集的方式可以Python+知乎官方api接口,或者使用第三方采集工具如:"火车头"、"八爪鱼",某宝找人代采集也可以。竞价广告
部分测试数据:
对于非目标领域的无差别内容,百度找"新闻语料库",有合适的直接下载,有技术能力也可以自己采集一些自媒体文章,有个一二十万也行,分类随机即可。
我这里收集了几百W新闻文章的语料库,涵盖各种新闻类别,只拿了W来参与计算。竞价广告
步骤:计算权重分数(程序员看)
虽然TF-IDF的算法思维很好,但它也有天生的缺陷,对于过滤低词频的不相关词汇效果很显著,但是某些常见词比如:"可以",它在某些文章还就总是经常出现,词频很高,再加上非目标领域数据往往不见得全面,有时抑制效果不太好,还需要辅助支撑一下。
当然:"可以"和"小程序"等主题词不见得就没有任何关联性,它们也是可以组成长尾词的。
TF-IDF的计算,Python有现成的模块:scikit-learn,也不知道是不是我姿势不对,前几天试了一下,发现效率和分数都跟我自己写的没太大差别,也就没用它了。
有广告,看上去好像有商业价值,可问题是我们是做"程序开发"的外包公司,运营我们不在行啊,根本不接这类需求,所以这个词虽然有价值,但不是我们的业务范围。竞价广告-