14-表征:如何确定你到底是谁?

你好,悦创。
上一模块,我们学习了收集数据的各种方法。数据有了,怎么知道这些数据告诉我们的信息呢?这就是理解数据。从这一讲开始,我们进入课程的新模块——理解数据。
说到理解数据,最常见的问题就是:我们怎么从这些数据中得出判断,从而给事物定性呢? 用数据的术语来说就是,我们怎么用数据去表征一个事物呢?
什么是“表征”(Representation)?
简单说:表征就是把一个事物,用数据的形式“描述出来”“表示出来”,让计算机能够理解、分析、比较、分类。
表征 = 用数据的方式,把一个事物的本质特征抓住并表达出来。
换成更标准的数据科学用语:
我们如何找到一个合适的表示(Representation),让数据能够表达事物的关键特性,从而支持判断、分类、分析?
为什么需要“表征”?
世界是复杂的、数据是原始的,模型无法直接理解杂乱的数据。
更详细说说:因为现实世界的事物太复杂,计算机不能直接理解:
- 一张图片
- 一段声音
- 一句话
- 一个用户行为
它只能处理 数字。
所以我们必须找到一种方式把事物:
- 压缩成结构化数据
- 提取出关键特征
- 让这些数字能支持判断
表征就是把复杂世界 → 结构化、数字化、可计算化。
举几个简单到爆的例子
例子 1:判断一个人是否喜欢购物(用户画像)
你不会把整个用户行为全都丢给模型,而是提取数据特征(表征):
- 最近 30 天购买次数:12
- 浏览时长:200min
- 收藏商品数:50
- 单均消费:¥300
- 访问频率:每天 3 次
这些数字就是:➡️ “用户购物行为”的表征。
模型根据这些数字做判断:是购物爱好者。
(你总不能直接问模型:这个人是购物爱好者吗?——大概率我会说,得提供数据才可以得结论。)

例子 2:判断一段文字情绪(NLP)
一句话:“这个耳机太垃圾了,还不如十年前的山寨货。”
模型不能直接理解“文字”,它把文字转换为向量(embedding):
- angry: 0.98
- disappointment: 0.87
- negativity: 0.92
- sarcasm: 0.52
这些数字就是:➡️ 文本情绪的表征。
模型再根据表征判断情绪。
例子 3:判断一张图是猫还是狗(CV)
图片 → 提取特征(边缘、纹理、颜色分布、形状等) → 向量。
这个向量就是:➡️ 图片内容的表征
模型根据向量判断是猫。
例子 4:你要判断一个人是否喜欢运动?
你不可能直接问“宇宙告诉我答案吧”。你会用数据去“表征” ta:
原始信息 数据表征 每周跑步次数 0,1,2,3… 次 心率变化 平均心率、心率区间 App 运动记录 时长、消耗卡路里 体脂率 数值 这些数据构成了:→ 一个人的“运动特征向量”,模型就可以根据这些表征来判断:运动 / 不运动。
例子 5:你要判断一张图是不是猫?
原始图片 = 数百万个像素点,是机器无法直接理解的。
深度学习怎么做?→ 提取特征(表征)
- 边缘
- 纹理
- 颜色分布
- 耳朵形状
- 眼睛位置
- 轮廓
得到一个高维向量(embedding),这就是猫的表征。
模型根据表征判断:猫 / 不是猫。
例子 6:“情绪”怎么用数据表征?
你看到一句话:“我真的好累,不想再坚持了。”
情绪是抽象的,但 NLP 会把它“表征化”:
- 情绪词权重(累、不想)
- 语义 embedding(句子在向量空间的位置)
- 语气模式
通过这些数据的表征 → 模型能判断是“负面情绪”。
用一句课本级定义总结:表征(Representation)是用结构化的特征、向量或变量,将事物的本质属性用数据的形式表达出来,使得模型可以理解、计算和推理。
表征就是把“事物”转换成“数字语言”的过程。 让计算机看懂、让模型能判断。
用数据来给事物定性,在生活中我们并不陌生。一叶落而知天下秋,一叶落就表征了秋天的开始。开车的时候,后视镜里的汽车越来越大,说明它的速度比你快。跟姥爷打麻将,他一旦用大拇指反复蹭桌子,你就知道他听牌了,因为你非常了解他的习惯,也就是他的行为模式。
但是现实中大量的事物都是不可见的,它的特征隐藏在数据中,我们只能从数据中获得信息来形成判断。这是我们理解数据的重要任务之一。
1. 识别挑战,反思认知
我们就用「悦创」App 举例子。「悦创」现在使用情况的趋势是什么呢?这个靠肉眼是看不出来的,必须通过数据才能知道。
可是用什么指标来表征呢?是日活吗?也就是每天都使用悦创的用户数量。是留存率吗?也就是有多少用户来了就不走了。还可能有其他变量,每个变量都表征了「悦创」App 使用情况的一个维度。选择谁,或者选择怎么组合,才对应我们心中的“使用趋势”呢?
假如指标我们确定是“日活”。把日活数据跑出来一看,数据猫一天狗一天,高高低低的,有的是课程上新导致的,有的是做促销导致的,趋势被这些噪音严重干扰。
假如现在我们使用数据技能消除了噪音,发现连续 30 天日活上升。我们敢下结论,趋势就是上升吗?不敢。因为放宽视野来看,如果这个月正在一个大的上升周期当中呢?这一个月的上升本来就是大势,现在的数据跑赢大盘了吗?
诸如此类,一个问题接一个问题,只有解决了所有问题,最终你才可以有足够的信心说:这些数据表明「悦创」App 的使用趋势是上升的。
我们再次理解一下这个案例,在使用数据之前,必须完成两件事:
- 第一:识别真正的挑战是什么,明确我们到底想定性什么;
- 第二:不断反思自己对这件事的认知。
这第二点,特别容易被忽略,我再展开说一说。
对趋势来说,如果你知道趋势是数据沿时间线展开的模式,你要尽可能地提取现有数据蕴含的所有信息,用一个最合适的方程表达出来,那么你对趋势的认知就比那些只会使用“线性回归”这些技能的人水平高很多。
再举一个例子:
在我写这门课的时候,我的朋友冯老师正在研发三高医学课。谈到高血压的时候,冯老师说,其实血压代表的是生命体的能量波动,用某一个时点的高压值和低压值是不能准确反映血压情况的。你看,没有这个认知,你就不知道怎么真正科学的表征血压。
当然,我不是说掌握更多的数据技能和知识没有用,相反,更多的数据技能和知识会让你视野宽广,分析规范,不会犯低级错误。我只是强调,你的认知决定了你如何使用数据技能。
2. 根据信息调整表征方向
不过,使用趋势这个问题其实是最简单的,因为目标很清晰。但是,现实生活中还有更复杂的情况,我们事先不知道我们要表征的方向是什么,只能在寻找的过程中确定。
我给你讲个故事:
有一位叫沈凌的医生,接诊了一位 57 岁的女患者。患者说自己反复胸闷 2 年,多家医院都诊断为冠心病,而且有证据,心电图显示频发室性早搏。
一般来说,普通医生很容易就按照表征冠心病的思路去安排检查了,但是沈医生有疑问。
沈医生问患者的第一个问题是:你的胸闷是怎样的?能描述一下吗?一番询问之后,发现患者并没有心绞痛样的胸痛症状。这就让沈医生开始思考:在 50-59 岁这个年龄段的女性,患冠心病的概率是多少呢?答案是,如果有典型心绞痛的症状,患病概率有 73%;如果有非典型心绞痛的症状,患病概率会下降到 31%;如果没有心绞痛样的胸痛的症状,患病概率就只有7%。也就是说,这位患者患冠心病的概率只有 7%。
只有 7% 的话,那还应该优先安排冠心病相关的检查去表征冠心病吗?当然不能。这就提示沈医生必须扩大视野,提出新的假说。
根据病史采集得来的线索,沈医生给患者做了一系列肺功能检查。其中,患者第 1 秒用力呼气的气体容积是 1.48L,用力肺活量是 2.16L,两者的比值是 68%。这个 68% 是什么意思呢?就是“中重度阻塞性通气功能障碍”,也就是喘不上气的重要表征之一。
于是,加上其他几个维度的表征,再结合临床表现,沈医生下了诊断:患者是支气管哮喘,而不是冠心病。
这个案例给我们的启示就是,在面对复杂问题时,我们需要随着信息的增加而不断调整表征方向。
3. 用数据表征和解决问题
上面的讨论都是从挑战出发寻找表征,不过在现实中有相当多的情况是,你已经有了现成的数据,但这些数据能解决你的问题吗?
这个问题分为两层。第一层的问题就是,怎么确定一个数据到底表征的是什么呢?
我们看一个例子——电视节目收视率。
收视率,看起来定义很清晰,就是看过节目的观众占全体观众的比例。但是,你可以用这个数据表征节目质量吗?
能还是不能,需要回到数据产生的源头。
收视率是怎么得来的呢?分母一般不变,就是全体观众的数量,所以主要就是确定分子。分子是怎么来的呢?是按分钟数统计来的。我虚拟一个情况:一个电视节目的时长有 10 分钟,第一分钟有 10 个人看,第二分钟有 20 个人看,第三分钟有 30 个人看,以此类推,第 10 分钟有 100 个人看。把这些人数加起来,就是 550 人。这样分子就确定了。
注意,这 550 人是 550 个不同的人吗?不是。有的人是从头看到尾,有的人只看了第一分钟和第十分钟。所以,这 550 人实际上是“人分钟”,就是多少人和多少时间交给了这个节目。
所以,从收视率数据产生的源头看,收视率真正反映的是观众的注意力规模,而不是节目的质量好坏。因此,你不能用收视率直接表征节目质量。
现在,留给你一道思考题:GDP(国内生产总值),这个指标到底表征了经济的什么呢?请在留言区写下你的想法,大家一起讨论。
第二层问题其实更难——如果没有现成的变量能表征我们想要的概念,怎么办呢?自己构造。
我讲一个我自己在央视工作时的一次探索。当时的任务是,如何衡量一个新闻记者组的制片人的业务管理水平呢?这个用传统方法做不太容易。如果能使用客观数据来表征,就会有很多好处,比如不受人际关系的干扰、避免主观评价的不标准等。但是,现有的数据就是收视率这些东西,怎么办?
我就构造了一个指标,看一个节目组内部记者工作成果差异程度在两个时期的变化。
你是不是听晕了?听我慢慢解释。
因为电视节目收视率是精确到分钟的,即使一个短短3、5分钟的新闻报道,也可以按照这个时间长度计算收视率。这个收视率就可以与制作它的记者的相关信息一一对应起来。这样,每一个记者的工作业绩就被收视率数据量化了。
单个记者的工作业绩知道了,一个节目组内部的记者之间的差异大小就知道了,就是计算表标准差嘛。我们知道,标准差是反映数据分散程度的指标。
如果一个记者组上半年内部的差异大,下半年的内部差异小,就说明制片人的管理好。为什么敢这么说呢?因为好记者的工作业绩一年内变化不大,而水平一般的记者,如果有制片人的帮助,就会提高工作成果。所以,上下半年的差异缩小,就说明这个组内水平一般的记者进步了,当然就说明制片人管理得到位。
反过来,如果一个记者组上半年内部差异小,下半年的内部差异大,就说明大家的水平进一步分化了,制片人的管理不好。
当然,肯定会有人批评这种评价的合理性。比如,内部差异缩小,可能不是差生变好,而是学霸变差了。我觉得这种情况不常见,好记者可能有一两次失手,但是一年期间做那么多节目,平均而言很少会突然变差。
但这个尝试也不能算完全成功,原因不是刚才那个批评,真正的难点是,收视率与这么小颗粒度的节目对应是有误差的。还记得吗?收视率是抽样调查,结果是个范围,用这个结果直接对应记者的工作业绩是有风险的。所以,这个尝试只能作为参考。
我为什么要举这个不完全成功的例子呢?其实就是想说,利用现有数据构造新指标来表征你的想法是有风险的事情,但是坚持尝试是很有必要的。只有坚持实践,才能磨练你的技能,提高你的数据思维。
下一讲,我们说说理解数据的另一个挑战——分类。
我是悦创,我们下一讲见。
划重点:
寻找表征之前必须先真正理解问题,并反思你的认知。这样才能发挥数据技能的效力。
在面对复杂问题时,我们需要随着信息的增加而不断调整表征方向。
当没有现成的数据能表征我们想要的东西时,可以自己构造新指标。虽然有风险,但值得尝试。
公众号:AI悦创【二维码】

AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Web、Linux」,招收学员面向国内外,国外占 80%。全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh

更新日志
fb639-于547d3-于22d25-于c63b6-于aa793-于