Ads Automation
Amazon 广告关键词清洗工具
不是把三份关键词表合并,而是建立一套保留证据来源、表达判断理由并把不确定性留给人工复核的决策流水线。
Python · pandas · openpyxl · Rule Config
打开演示三份表不是三份答案。后台搜索词说明用户实际搜过什么,自身反查说明当前覆盖了什么,候选词池则告诉我还有什么可能性;它们的证据强度不同,不能简单拼在一起排序。
这套清洗工具的目标,是先保留差异,再把重复劳动交给规则,最后把不确定性清楚地交还给人工复核。
我的核心做法是把关键词判断拆成“数据事实、品类规则和建议动作”三层。事实层只描述来源中真实存在的信号,规则层表达当前品类假设,动作层才给出扩词、观察、排除或复核建议。三层分开后,结论变化时可以追溯究竟是数据更新、规则调整还是策略改变。
先问每份数据能证明什么
导入阶段不会立即把三份数据压成统一分数,而是先为每行补充来源、采集范围、目标产品和原始字段。相同关键词出现在多个来源时,记录会被关联但不会丢掉各自证据。
这种保留来源的设计避免了常见误区:竞对反查里的高排名不等于自己的转化机会,自身已经覆盖也不等于表现良好,后台有曝光同样不代表词义一定相关。每个来源只能支持有限结论。
| 来源 | 在判断中承担的角色 |
|---|---|
| 后台搜索词 | 提供实际曝光、点击与转化信号,是已发生行为的证据。 |
| 自身覆盖 | 说明当前产品与哪些词已经建立关联,避免重复扩词。 |
| 候选词池 | 扩展可能性,但没有后台验证时不能直接进入最高等级。 |
清洗不是删除,而是逐层增加判断依据
顺序很重要:如果在规范化之前运行规则,同一个词的大小写或标点差异会造成不同结论;如果在保留来源之前折叠变体,又会失去判断证据。因此每一步只增加信息或建立关联,不提前删除仍可能有用的上下文。
- 01
Normalize
先兼容来源字段别名,再统一大小写、连续空格、标点、数字和缺失值;原始关键词与原始指标始终保留,规范词只作为关联键。
- 02
Group
按规范词、单复数和受控变体建立词组,聚合时仍保留每个来源与指标明细;不会因为近似写法就丢掉能够解释差异的原始表达。
- 03
Match
依次运行核心词根、产品属性、使用场景、品牌、平台词和错品类模式,并保存所有命中,而不是只保留最后一个标签。
- 04
Evaluate
把后台行为、自身覆盖和外部候选证据放入明确优先级,识别证据一致、证据不足和证据冲突三种状态。
- 05
Grade
根据证据状态与规则命中生成等级、建议动作和 reason codes;任何降级都必须能够用人能读懂的句子解释。
- 06
Review
高优先、候选排除和不确定项进入不同复核队列;工具不连接广告投放接口,不自动执行添加或否定。
哪些规则可以复用,哪些必须随品类重做
把这些内容放进配置而不是散落在 Python 分支里,换品类时才看得见哪些假设正在被继承。工具追求的不是“一键得出正确答案”,而是让每个判断有出处。
配置按稳定性分层:字段别名和数值解析属于通用基础,品牌、核心词根与错品类模式属于品类知识,分级阈值和建议动作属于运营策略。换产品时只复用通用层,品类层必须重新确认,策略层则要根据当前目标评估。
每次运行把配置版本写入结果,使同一个词在两次运行中结论不同的时候,可以比较数据变化与规则变化,而不是把所有差异都归因于模型或脚本不稳定。
- 字段别名、数值清洗和来源追踪可以跨批次复用。
- 核心词根、品牌、平台词和错品类模式必须随品类重新检查。
- 缺少后台验证的候选词按策略降级,并保留原因。
- 分级结果是复核队列,不是自动投放或自动否定决定。
排序之前,先建立证据层级
三个来源不能直接用同一个分数比较。后台搜索词来自已经发生的用户行为,自身反查描述当前覆盖,竞对反查只提供值得调查的候选方向。把它们合并后统一排序,会让外部候选因为某个高指标看起来比真实行为更可靠。
工具先给每条词保留来源标签,再根据证据组合决定它能进入哪一层。候选词可以被推荐复核,但没有后台行为支持时不会自动升级为最高优先级。
证据层级不是固定评分公式,而是一组最低证明要求。例如“建议扩词”至少需要确认相关性并说明当前覆盖缺口;“候选排除”需要明确的品牌、错品类或场景冲突依据;仅仅因为某项指标低,不足以推导否词动作。
| 证据组合 | 允许得出的结论 |
|---|---|
| 后台表现 + 自身覆盖 | 可判断已有词的表现与维护优先级。 |
| 后台表现 + 未覆盖 | 可进入扩词复核,但仍需检查相关性和转化语境。 |
| 仅自身覆盖 | 说明关联存在,不足以单独证明投放价值。 |
| 仅竞对候选 | 只进入候选池,不能直接成为投放结论。 |
规则不是黑名单,而是一组可以解释的论证
每次规则命中都会保存规则名称与理由,例如品类词根缺失、命中品牌模式、与目标产品使用场景冲突,或缺少后台证据。最终的等级不是一个孤立标签,而是这组证据和规则共同产生的结论。
同一个词可能同时命中正向与负向信号,因此流程不会采用“最后一个规则覆盖前面结果”的写法,而是先收集证据,再按明确优先级解决冲突,并把冲突本身交给人工复核。
规则输出被设计成可组合记录:规则 ID 保证机器可追踪,中文理由帮助运营理解,来源字段说明证据来自哪里,配置版本说明当时使用了哪套假设。最终建议只是这些材料的摘要,原始论证仍然可以展开检查。
normalized_term -> source_evidence[]source_evidence -> rule_hits[]rule_hits -> grade + suggested_actiongrade -> reason_codes[] + review_bucket不确定不是错误,而是需要单独交付的结果
这让工具的目标从“替人挑词”变成“把人最值得看的部分整理出来”。自动化压缩的是重复筛选成本,而不是抹掉运营判断。
人工反馈也会被区分为两类:个别词的判断结果不会自动改写全局规则;只有当同类误判反复出现,并且能够形成明确品类模式时,才进入配置变更。这样可以避免为解决一个特殊词而破坏整类词的判断。
- 证据充分的高优先词进入人工确认队列,不直接写入广告活动。
- 明显错品类、品牌或平台词进入候选排除队列,并保留命中依据。
- 证据冲突、词义依赖上下文或只有外部来源的词进入不确定队列。
- 任何自动降级都记录原因,避免下一次运行无法解释为什么排序改变。
复核界面应该让人做判断,而不是重新做一遍清洗
输出表不只给出关键词和等级,而是把最需要人工判断的上下文放在同一行:来源组合、后台表现摘要、自身覆盖状态、命中规则、建议动作与理由。使用者无需在三份原表之间反复搜索,便能理解系统为什么把它送进当前队列。
队列按照决策成本组织,而不是简单按分数从高到低。证据充分的词可以快速确认,明显排除项可以批量检查,冲突和低置信度词则保留更多上下文供逐条判断。
| 复核队列 | 界面重点 |
|---|---|
| 高优先候选 | 展示正向证据、覆盖缺口和建议动作。 |
| 候选排除 | 突出命中的品牌、错品类或场景冲突规则。 |
| 证据冲突 | 并列展示正负信号,不强行压成单一答案。 |
| 数据异常 | 回指来源文件、字段和原始值,便于修复输入。 |
如何验证清洗结果没有在标准化过程中失真
验证目标不是让规则覆盖所有语言,而是确保系统对已知规则保持一致、对未知表达保持诚实。无法可靠判断的词进入不确定队列,比生成一个无法解释的高置信结论更符合实际业务。
- 核对每个来源导入行数、有效行数与异常行数,任何丢行都有明确原因。
- 为规范化前后建立映射,确保一个规范词可以回到全部原始变体。
- 使用品牌词、错品类词、复合词、单复数和缺失指标构造边界样本。
- 比较不同配置版本的等级变化,并要求每次变化都有数据或规则依据。
- 抽查最终建议能否仅凭结果表中的证据被另一位运营复核。
最后交付的是一条审查线索
结果包含关键词、来源组、规范词组、分类、建议动作和判定理由。Lab 会把三类输入先分开展示,再播放规范、折叠、规则命中和复核队列。
下载结果可以直接查看每条建议的来源与判断路径,适合作为后续人工复核的起点。
公开演示使用合成关键词与指标,重点展示同一个词如何经过来源保留、词形规范、规则命中、证据分层和人工复核。它不会连接广告账户,也不会把建议自动写入真实投放。
Related Lab
查看公开流程演示
载入预设样本,按关键步骤运行,并下载对应的 Sample 结果。
打开演示