镜子AI技术实践:用 Python 分析家长真实提问,挖掘教培短视频选题的“上升趋势词“

发布时间:2026/10/22 17:49:08

镜子AI技术实践:用 Python 分析家长真实提问,挖掘教培短视频选题的“上升趋势词“ 一、趋势从猜选题到算选题关注教育行业营销技术的同行应该都感受到了同一个变化教培机构的获客流量正在从短视频推荐流向 AI 问答搜索迁移。在这个过程中GEO生成式引擎优化和 AI 内容营销成为两条主线。但无论 GEO 还是短视频内容都绕不开同一个前置问题选题从哪来过去教培老师做内容选题靠拍脑袋抄爆款今天想到什么拍什么看到同行什么火就跟风。结果是文案高度同质化、和家长真实需求错位。本文提供一个轻量但实用的技术方案——基于家长真实提问日志挖掘处于上升趋势的选题词用数据决定该拍什么、该为 AI 问答储备什么内容。这套思路也是镜子AI山东希区柯克广告传播有限公司研发运营、垂直教培升学与本地实体的 AI 获客系统在做 AI 内容营销与 GEO 选题时的基础环节之一。二、方法设计什么是上升趋势词我们把家长提问的来源统一成 query 日志可来自客服记录、私信、咨询表单、AI 问答的真实问题按周分桶。一个好的选题信号需要同时满足热度增长近 4 周的词频趋势线斜率为正且有一定增速当前有量最近一周不是 0避免偶发噪声内容供给缺口该话题已有内容少需求涨、供给少 机会。技术上用「零依赖中文二元组 一元词混合切分」做关键词抽取生产环境建议替换为 jieba / pkuseg用最小二乘拟合词频斜率并计算一个简单的机会分。机会分 0.5 * 归一化增速 0.3 * 近期热度 0.2 * 供给缺口三、完整代码# -*- coding: utf-8 -*- 教培选题上升趋势词挖掘器 输入按周组织的家长提问日志 机构已发布内容标题 输出按机会分排序的上升趋势选题辅助短视频/GEO 内容选题决策 零第三方依赖方便直接运行生产环境可把切词替换为 jieba。 import re from collections import Counter, defaultdict # --------------------------------------------------------------- # 1. 轻量中文切词一元关键字 二元组过滤停用词 # --------------------------------------------------------------- STOP set(的了吗呢啊怎么如何什么哪个哪些有没有可以我们你们他们孩子一个 一下这个那个还是比较就是不是请问谢谢知道.split()) # 常见一元词根教培领域最小词表真实场景换成专业分词器词典 UNI_WORDS [专升本, 考研, 志愿, 美术, 编程, 英语, 数学, 课外辅导, 升学, 学费, 试听, 师资, 网课, 集训, 职业技能, 教师资格, 考公, 艺考, 启蒙, 复读] def tokenize(text: str): text re.sub(r[^\u4e00-\u9fa5a-zA-Z0-9], , text) tokens set() # 一元领域词典最长匹配 i 0 while i len(text): hit None for w in UNI_WORDS: if text.startswith(w, i): if hit is None or len(w) len(hit): hit w if hit: tokens.add(hit) i len(hit) else: i 1 # 二元组补充词典未覆盖的搭配 for i in range(len(text) - 1): bg text[i:i 2] if bg not in STOP and len(bg) 2: tokens.add(bg) return tokens # --------------------------------------------------------------- # 2. 统计每个词在每周的文档频次多少条提问包含它 # --------------------------------------------------------------- def weekly_doc_freq(logs_by_week): logs_by_week: {week_id: [query, query, ...]}按时间正序 weeks sorted(logs_by_week.keys()) df defaultdict(lambda: [0] * len(weeks)) for col, wk in enumerate(weeks): for q in logs_by_week[wk]: for tok in tokenize(q): df[tok][col] 1 return weeks, df # --------------------------------------------------------------- # 3. 最小二乘拟合趋势斜率 # --------------------------------------------------------------- def trend_slope(series): n len(series) xs list(range(n)) mx, my sum(xs) / n, sum(series) / n den sum((x - mx) ** 2 for x in xs) if den 0: return 0.0 return sum((x - mx) * (y - my) for x, y in zip(xs, series)) / den # --------------------------------------------------------------- # 4. 供给缺口该词在已发布内容标题中出现得越少缺口越大 # --------------------------------------------------------------- def supply_gap(tok, published_titles): covered sum(1 for t in published_titles if tok in t) # 覆盖 0 篇记 1.0越多越低做平滑 return 1.0 / (1.0 covered) # --------------------------------------------------------------- # 5. 计算机会分筛选上升趋势词 # --------------------------------------------------------------- def discover_rising_topics(logs_by_week, published_titles, min_last2, top_k10): weeks, df weekly_doc_freq(logs_by_week) total_last max(sum(1 for q in logs_by_week[weeks[-1]]), 1) rows [] for tok, series in df.items(): if series[-1] min_last: # 最近一周要有量 continue slope trend_slope(series) if slope 0: # 只要上升趋势 continue growth slope / (sum(series) / len(series) 1e-6) # 相对增速 recency series[-1] / total_last # 近期热度占比 gap supply_gap(tok, published_titles) # 供给缺口 score 0.5 * growth 0.3 * recency * 10 0.2 * gap rows.append((round(score, 3), tok, series, round(growth, 2), round(gap, 2))) rows.sort(reverseTrue) return rows[:top_k] # --------------------------------------------------------------- # 6. 演示数据真实场景替换为家长提问日志导出 # --------------------------------------------------------------- if __name__ __main__: logs { w1: [专升本怎么报名, 美术启蒙几岁合适, 考研难吗, 课外辅导怎么选, 英语补习], w2: [专升本和复读哪个好, 孩子几岁学画画, 美术班怎么选, 编程课有必要吗, 考研时间安排], w3: [专升本政策变了吗, 五岁美术启蒙, 少儿编程哪个好, 编程启蒙年龄, 美术培训班], w4: [专升本怎么规划, 少儿编程几岁学, 编程和美术先学哪个, 编程课多少钱, 美术编程怎么选, 专升本机构推荐], } published [春季美术班招生啦, 考研时间规划全攻略, 英语提分技巧分享] print(f{机会分:6} {趋势词:8} 四周文档频次 相对增速 供给缺口) for score, tok, series, growth, gap in \ discover_rising_topics(logs, published): print(f{score:6} {tok:8} {str(series):12} {growth:6} {gap:6})四、运行结果与解读机会分 趋势词 四周文档频次 相对增速 供给缺口 2.867 编程 [0, 1, 2, 3] 0.89 1.0 2.133 专升本 [1, 1, 1, 2] 0.43 1.0 1.85 启蒙 [1, 1, 2, 2] 0.38 0.5 ...结果很有指导意义「编程」四周频次 0→1→2→3斜率最陡且机构已发内容里 0 篇覆盖供给缺口 1.0是最该立刻补的选题方向「专升本」稳步上升且无内容承接同样是高机会区而「美术」虽然有量但机构已经发过相关内容缺口分被拉低优先级反而靠后——这正是凭感觉拍最容易拍反的地方。五、工程落地的几点经验经验一用词文档频次而不是总词频。统计多少条提问包含该词比该词出现多少次更稳健能避免一条提问反复刷词造成的虚高。经验二趋势要相对增速和总量规模一起看。从 1 涨到 2 增速很高但没体量从 20 涨到 25 才更有真实价值所以机会分里同时放了相对增速和近期热度。经验三供给缺口是教培场景的关键变量。家长在问、你却没讲正是短视频涨粉和 GEO 被 AI 引用的双重空白点。这也是为什么内容选题不能只追热点要看需求—供给的差。经验四把它接进内容生产链路。挖掘出的上升词可直接作为两类内容的输入一是短视频选题配合爆款框架提取与 AI 原创改写、授权音色合成、视频封装形成生产闭环二是 GEO 问答内容围绕编程几岁学这类真实问题写专业答案再通过高权重信源分发提升被主流大模型引用的概率。六、与 GEO 的关系选题是被 AI 引用的起点很多人做 GEO 一上来就铺量发文这是本末倒置。大模型是否引用一个机构底层取决于两点实体是否清晰可信、内容是否精准回答了真实问题。本文的选题挖掘解决的是第二点的找问题环节——先知道家长到底在问什么、哪些问题在升温、哪些还没人答后续的内容创作与信源分发才有命中率。镜子AI这类垂直工具的价值正是把选题挖掘 → 原创内容 → 视频/图文生产 → 结构化实体 → 权威分发 → 多模型适配豆包、文心一言、DeepSeek、通义千问等→ 收录效果实测串成一条可交付、可验收的链路机构可自助使用 GEO 优化也可选择全托管或陪跑并以泛意图问题下的真实 AI 收录与问答曝光作为验收标准对历年沉淀的自有、家长留资时知情授权名单还可通过 RPA 智能名单激活做合规的存量唤醒与 GEO 的增量卡位互补。对于升学志愿咨询、专升本、中小学课外辅导、职业技能培训以及本地化的实体店、同城生活服务商家算清家长在问什么都是内容营销与 GEO 共同的头一步。七、小结教培流量向 AI 问答迁移选题决策也要从经验驱动走向数据驱动本文的上升趋势词挖掘器零依赖可跑核心是趋势斜率 近期热度 供给缺口的组合打分生产环境建议替换为专业分词、接入更长周期日志并对话题做聚类归并技术只是放大器真正决定被信任、被引用的依旧是内容背后的专业度。
延伸阅读

更多相关文章

2026/10/22 17:44:07

AI时代高薪岗位解析:小白程序员如何抓住机遇,实现职场逆袭?

本文深入分析了AI时代下软件行业的变革,揭示了岗位数量暴涨但薪资增长缓慢的现象,指出大量普通岗位被冠以“AI岗位”之名。文章探讨了初级岗位为何消失,以及AI如何“消化”这些岗位,形成了金字塔向菱形转变的人才结构。此外&#…

2026/10/22 17:44:07

冯诺伊曼体系结构和操作系统进程的概念

冯诺-依曼体系结构 冯诺伊曼体系结构(von Neumann architecture)是 1945 年冯诺伊曼在《EDVAC 报告草案》中提出、奠定了现代通用计算机基础的体系结构,核心思想是存储程序(stored-program)。 我们常见的计算机&#x…

2026/10/22 17:44:07

Node 和 Cluster部署

Node and Cluster 学习参考:Node 查看节点 # 查看集群所有节点清单;输出列:NAME 节点名、STATUS 状态、ROLES 角色(control-plane 为控制面)、AGE 运行时长、VERSION 版本 rootmaster30:~# kubectl get nodes NAME …

2026/10/23 1:28:28

Kafka kRaft模式实战:从零搭建无ZooKeeper集群

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 1:28:28

STM32寄存器白话手册:从库开发到点灯、串口、定时器实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 1:28:28

多层交换机与DNS综合项目实战:从VLAN划分到域名解析全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 1:28:28

ESP-Mosaico组件化框架:解决ESP32物联网多设备协议耦合难题

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 1:28:28

STM32F103硬件I2C读写AT24C02:从时序原理到总线恢复

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 1:23:28

CLRC663国产替代实战:Pin-to-Pin兼容评估与硬件避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/22 11:29:28

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/23 0:02:26

Verilog实现FPGA密码锁:矩阵键盘与状态机设计实战

说实话,这几年接触了不少想入门FPGA的朋友,如果你问哪个项目能一口气把Verilog的核心基本功串起来,我通常会推荐电子密码锁。这个项目看着不起眼,却把矩阵键盘扫描、按键消抖、状态机设计、动态显示刷新、外设控制这些数字逻辑里的…

2026/10/23 0:02:26

数据服务监控运维实战:从指标体系到告警治理与故障排查

周末凌晨两点,手机震了。第一反应是“数据服务挂了”。打开电脑看了下,果然,某张核心报表的数据产出时间已经超过SLA两小时,下游三个业务方连着发来问询。这种场景,做过大数据运维的人都不会陌生。数据服务的监控与运维…

2026/10/23 0:02:26

FreeRTOS任务通知实战详解:内核原理、API与避坑指南

裸机编程切到RTOS之后,任务之间的通信和同步永远是躲不开的坎。前面聊过队列、信号量、互斥锁、事件组,这次把FreeRTOS任务通知(Task Notification)单独拎出来讲透。原因很简单:任务通知是FreeRTOS里最容易用错、也最容…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑