Skip to main content

关于电影评分

电影不像游戏,书籍或者其他大多数商品,几乎没有退货这么一说。为了避免踩雷,预判电影好坏就显得非常重要。这里好坏并不是电影艺术水平,社会反响或者制作质量,而是针对单一观看者的喜好。例如,如果我不爱看动作片,那动作电影拍得再好我也不爱看。

不知道是不是因为制作门槛降低了,我感觉现在每年电影太多了,可惜保持不变的是好片的数量而不是比例。似乎游戏产业也有类似现象。

我对电影(包括电视剧)的态度是不看新片,等上映后过几个月或者几年如果还有人记得,还能在网络上提起“这不是XX电影的经典片段吗?”,我才会觉得这电影基本靠谱,再去网上继续调查。在电影上映前和上映时能够作为判断依据的资料不多,预告片大概能算一主要信息,然而我觉得预告片只能大致证明影片的类型,别的不能过多参考。我踩雷的一个例子就是看了一个10分钟左右的预告片,觉得不错去看了一个动作片,然而发现这个片子最精彩的动作部分都在预告片里了。你说预告片骗人了吗,没有。我上当了吗,那肯定上当了。

另外我经常看电影简介,虽然里面是吐槽的为主。很多电影被压成不到15分钟的小故事反而
挺有趣的。极少数的电影,我了解了剧情,了解了结局还去看的,而且看了还很喜欢,比如《カメラを止めるな!》。而大多数的电影通过了简介这么一层过滤也就没了兴趣。

评分则是另一个大致有效的过滤标准,比如国内比较有影响力的豆瓣。“豆瓣评分X.Y”大概是在豆瓣网之外最有效最简短的电影评价。对于评分我一直也觉得参考意义不大,依据是豆瓣的评分是来自于“愿意在豆瓣上评分的人”,而不是来自于所有人(例如在街上随机抽人调查)。“愿意在网站上评分”大致取决于性格以及影片观后感。而我从来都不属于这种人。

不过去年跟朋友讨论之后,我觉得可以做一个量化实验,判断各个电影评分对我能有多大参考意义。简单来说就是我看若干影片,自己打个分,然后跟各个电影评分算相关性。我自己打分分为4档:好看,一般,勉强以及难看,分值分别是2, 1, 0和-1。另外看电影之前我根据网上的信息预测电影的评分,作为比对。

下面是根据十七部电影的统计结果,九部国外八部国内。图表显示了各个评分系统对于我实际观感的Pearson相关系数,数值越高越相关:



可以看出相关性都不咋样,最高的是我自己的预测,豆瓣相比其他的系统要高不少。最有趣的是Metacritic的相关性几乎为0,甚至是负数。

在得出“自己评分比别的系统更靠谱”的结论之前,我又想了想:

- 自己的评分是参考了网上我查到的各种信息,其中就包括了各类评分和评论
- 我挑选的十七部影片大部分都是预测还行的影片,其中只有一部预测-1,一部预测0,其他预测都是1或者2。所以这并不是均匀的抽样,实际推理来看网上的评分已经帮过过滤掉大部分的烂片了。把那两部预测-1和0的影片去掉以后Pearson相关性是这样的:


虽然分值也都不高,但是很多评分都是比我预测要好的,有的虽然是负相关,但也可以拿来用。

所以结论我只能说,在高分区(或者说我初步判断电影可以看)网上评分勉强有点用,但是作用不大。理论上网上的低分可以帮我过滤掉烂片,但是通过我的实验并不能证明。

感觉这在游戏上是类似的,回头也许再做实验验证一下。

Comments

Popular posts from this blog

A Rocky Migration: Moving from docker-compose to Podman and gVisor

I've been running a few containers for several years. They were all running under rootless Docker with a single user. Initially, I planned to  migrate the containers to VMs , but I couldn't get a stable workflow after about two months of effort. Later,  gVisor caught my attention , and I decided to migrate to Podman with gVisor instead. The new plan is to run each container with  --userns=auto  and use Quadlet for systemd integration. This approach provides better isolation and makes writing firewall rules easier. I'm now close to migrating all my containers. Here are a couple of rough edges I'd like to share. Network Layout I compared  various networking options  and spent a few hours trying the one-interface-per-group approach before giving up. I settled on a single macvlan network and decided to use static IP addresses for my containers. To prevent a randomly assigned IP address from conflicting with a predefined one, I allocated a large IP range for my ...

GameConqueror 0.09 -- Linux Game Hacking Tool

If you are a game hacker If you've been looking for a `CheatEngine for Linux` Then you can't miss this. ============================================== GameConqueror is a game hacking tool for linux, it's written in PyGTK and uses scanmem as its backend. It's supposed to be with most useful features of CheatEngine for Linux. Currently, I've implemented almost everything about scanning, involving variant data types and scan types: Data Types: int{8/16/32/64}, float{32/64}, unknown type(int or float) and unknown width(will try each of them), byte array and string Scan Types: equal, greater, less, changed, unchanged, increased(by), decreased(by) This should be enough for most cases, so I decided to release it at the current status. ============================================= Here's how you can get it PPA (for Ubuntu users) https://launchpad.net/~coolwanglu/+archive/scanmem (I've not test it in 32bit environments or Jaunty, do please inform me if it doe...

Fix Google Security Code

Google Security Code (http://g.co/sc) is one type of 2-step verification. This is particularly useful when security keys and passkeys are not available. I have been using it in my LXC containers, until today I found out that it stopped working. It just kept saying "The code is invalid". It is easy to rule out some factors: The code works on other browsers on my laptop. The code works on other devices that are directly connected to the router. So it appears that Google also checks IP addresses besides the security code. Recently I have IPv6 enabled, so most devices that are directly connected to the router have both IPv4 and IPv6 addresses. But  I only enabled IPv4 for my LXC containers. So I guess when a code is generated by device A and used by device B, Google should be able to check that device A and device B are closely located. But in my case, IPv6 address appears on device A but not on device B, which may look suspicious. To fix the problem, I just needed to disable IPv...