笑里看城

国庆假期结束,上海共接待游客1862.25万人次,旅游消费总金额269.19亿元。金额和人数都很容易抽象成一个个数字,但是,如何判断哪里的游客最开心?

就在国庆节期间,我们做了一个不那么严肃的小研究,结果发现——上海最开心的游客,在杨浦区。


一场记录笑容的旅程


你快乐吗?幸福吗?

这涉及到一个困扰了学者许久的问题。

经济学家早就发现,收入和消费并不能直接量化人们的幸福感。最有名的研究莫过于卡尼曼在2010年发现的结论——年收入在7.5万美元以下时,幸福感随着收入上升。但年收入达到7.5万美元以上时,幸福感停止增加。
图片

而2021年沃顿商学院的Killingsworth则发现,即使年收入超过7.5万美元,幸福感也不会停止上升。
图片

社会学家对经济学家充满了铜臭的收入消费之说往往嗤之以鼻,于是发明了直接询问法,并在大部分社会调查问卷中塞入这么一项问题,
图片
图片
图片
(以上问题分别来自CFPS2020、CGSS2021和CHFS2019问卷)

不同的问卷,基本上都有一项幸福感相关的问题。当幸福感如此简单的被量化,访谈中出现“我姓曾”的回复也就并不奇怪了。

但是幸福、快乐与否真的是一个如此间接并难以察觉的指标吗?显然并非如此。在大多数情况下,人们只需一眼就能看出对方的心情,因为它首先会呈现在人们的脸上——展露了笑容的人们,就是幸福的所在
如何评价人们脸上是否展露笑容?读者们可能首先会想起抖音上曾经流行的一个插件,使用录制短视频,就可以为自己的笑容评分,笑容越灿烂分数越高。

这样的评分在技术上其实早已实现,现在最广泛使用的FER模块(Facial Expression Recognition)就是使用机器学习方法,学习了大量已经被标注过的人脸信息,对包括眼睛弯曲程度,嘴角咧开的程度等都有着详细的数据,使用FER,可以很方便地批量对人脸进行笑容评分。

但这种方式实际上存在着一定不足,玩儿过笑容评分的读者就会发现,夸张的眯眼咧嘴露齿笑容最容易得到高分,而这种表情可能较为僵硬。

而目前最新的大模型,则能够超越FER识别出更为细微的表情。下图给出了Claude和OpenAI的两个例子:
图片
图片
如果对这两张脸孔使用FER,则会得到0分和10分。而使用大模型对于笑容进行评分,可能会得到更准确,更接近人类判断的结果。

我们的笑容记录之旅将包含以下几个步骤——
1,在选定需要评估的地点,佩戴摄像设备,正常行走并录像。每一个地点沿着主要路线靠右行走500米,再返回500米,持续时间十分钟。
2,将录像每秒一帧进行分析,使用MTCNN人脸检测器对每一帧图像进行人脸检测,记录人脸检测图像。(MTCNN,Multi-task convolutional neural network,即多任务卷积神经网络。它是2016年中国科学院深圳研究院提出的用于人脸检测任务的多任务神经网络模型,该模型主要采用了三个级联的网络,采用候选框加分类器的思想,进行快速高效的人脸检测。参见https://github.com/yeyupiaoling/Pytorch-MTCNN)
3,将检测出来的人脸图像发送给大模型,使用这样的指令,要求大模型给予评分——{请返回这张脸孔的情绪分数。如果面无表情,返回5,如带有笑容,返回6或者更高的分数,笑容越灿烂分数越高,10分最高;如果有负面表情,返回4或者更低的分数,情绪越负面分数越低,0分最低。}
4,对每个地点的10分钟录像分析评分后,得到该地点的“笑容评分”。

由于拍摄时间有限,本次旅程包括的地点并不多(其实是按照小红书打卡推荐排序确定的),包括迪*尼武*路思*路南*东路外*陆*嘴

拍摄结果和打标结果的一个例子如下图所示:
图片
(上图是南*东路拍摄时的打标结果,为了保护个人隐私,对于被识别出的路人我们都进行了面部打码处理。)

可以注意到的是远方的广告牌上,陈道明正使用坚毅的眼神注视着大家。这当然也被AI成功识别了出来,而且打上了5分的标签。看起来大模型认为陈道明的这张脸属于“面无表情”。(考虑到陈道明造成的特殊情况,在最终的模型中我们去掉了在屏幕上方40%被评分的脸孔)


“全世界最快乐的地方”竟然没有排名第一?


图片


从打分结果看,5分是最多的,街上超过70%的人,面无表情。12.6%的脸孔被打分为正面表情,高于5分。14.68%的人表情打分为4分,有1.57%的人打分为3分,最低分为2分——看来街头并没有GPT认为的“最负面最痛苦的表情”。

总体来看,上海的这六个地点,各类表情较为均衡。

分地点的平均分如下表所示,结果可以说是相当出人意料:
图片
大家都很接近5分,这点从前一张图中就能猜测到,因为大部分人的表情都是“面无表情”。

排名第一的是陆*嘴。在股市连续大涨之后,陆*嘴在这六个地点中排名勇夺第一,虽然是长假,但仍然能看到金融精英模样的行人,步履匆匆的同时,脸上还挂着志得意满的微笑。

南*东路和外*分列二、三位。适逢长假,这两个地点已经挤满了游客,人流量极大,十分钟的视频中,每一秒都有超过一张脸孔被评分。虽然有不少游客可能因拥挤与疲劳眉头紧锁,但也有同样多的游客展开笑颜,笑容和负面表情基本抵消了。

迪*尼,传说中全世界最快乐的地方,但在这六个地点中,它竟然只排名第四,而且平均分同样低于5分。

在实际拍摄时就能感受到,当天人们在迪*尼时,许多人脸上带着些许急切,笑容没有预期的那么多。可以理解,国庆长假,许多项目排队时间已经超过一个半小时甚至超过两个小时,一个项目稍微慢一点,下一个项目可能就要多排十分钟,一边赶路,脑子里一边还需要精准计算“先去玩这个,然后排那个,然后……”,也无怪乎大家有点“笑不动”了。当然,我们只能拍到急匆匆赶路的人群,并没有能拍摄到在项目游玩中的游客表情,对迪*尼的笑容指数可能会有低估。

武*路、思*路,这两个拍摄打卡网红地点也已经人流攒动,这两个地点的表情更严肃,因为大家正在寻找拍照的最佳地点。不少女士正在指挥身边的男伴,眉头一皱,“不行不行,再拍一张”。我开着第一视角摄像头从他们身边匀速走过,心中为已经满头大汗的男伴掬一把同情泪。于是乎,拍照打卡点就成了这六个地点中笑容评分最低的地方。

难道就只有正在经历股票大涨的陆*嘴,才能获得超过5分的表情评分吗?在那些不属于网红打卡地的街道,是否会有什么不一样呢?


上海笑容最多的街道,可能在杨浦


因为原本就住在五角场旁边,晚上带娃到大学路吃饭。饭后,娃一头扎进了她最喜欢的八音盒店,而我在步行街上漫无目的地游荡。

此时我观察到——大学路的笑容含量,似乎不低。迎面走来的人,也难寻愁容,是一个值得记录笑容的地点!

于是戴上第一视角拍摄装置,开始拍摄。MTCNN从视频中一帧帧取出脸孔,发送给OpenAI,后者在100毫秒内返回结果。观察数据,我不由得被震惊了。

图片

和别的地点一样,大学路仍然有70%左右的“面无表情”,但不同的是,只有4.1%的脸孔被评分为4分,没有3分和2分,却有26.4%的脸孔被评分为6分或以上!大学路的笑容率,是前文被记录到的上海其他六个地点的两倍以上。 

加入了大学路之后的笑容评分表格如下所示:
图片
可以看到,大学路的笑容评分高达5.36分,远高于其他网红打卡地点。

但还有一个问题,这样的笑容差距,会不会是人口构成不同导致的?大学路学生众多,是否会因为学生本来就比较爱笑,才导致了大学路的笑容更密集呢?

为了控制这一点,我们再控制了模型返回的每张脸孔的推测年龄和性别,得到下列结果:
图片

上表显示,即使控制了每张脸孔的年龄、性别,大学路也仍然是这七个地点中笑容评分显著最高的

但话说回来,虽然做了很多,又是第一视角拍摄,又是神经网络/大模型,还搞了一串回归分析,却只是为之前很多潜意识的选择做了注脚。

上海好玩的地方有很多,作为带娃家长,常去迪士尼,也喜欢到市中心探店。但娃最喜欢去的地方,却总是大学路。每一两周,她总要来大学路找一家新的小店来吃——有时好吃,有时不好吃;找到新的小摊——然后央我买下一个不知道能做什么的新玩意儿。而我也从未觉得厌烦与重复,乐在其中。

图片

图片


所以,“幸福生活”可能不在于社区的高曝光率,也不在于有多少网红打卡点,甚至股市大涨影响也有限。我想,“幸福生活”更多在于身边可以参与的日常,是充满笑容的街道氛围,是多姿多彩的社区活动,也是富有活力的社区生态,人们被这些日常所吸引,不自觉地融入其中,自在地生活着。而这一切的背后,需要城市管理者从人民群众日常生活需求出发,构建完善的城市运营维护机制,完成大量细致的基层工作,并与市民积极互动交流。“润物细无声”,这可能才是“人民城市”建设的真正含义。

图片