聊聊 Tubi 的数据工程 (Data Engineering)
今天,我们的 VP 佘昶 (Chang 是大家喜爱的 Python 库 Pandas 的第二位核心作者,在 Tubi 负责数据、机器学习等业务) 发表了一篇博客:
比图科技:打造一家模型驱动型公司 - Tubi 数据与机器学习平台简介 谈到了 Tubi 的数据工程,机器学习,算法驱动。内容非常丰富,值得深入阅读。借这个机会我也聊聊对于数据相关的想法,对于机器学习和模型驱动打算再写一篇。
数据
几乎每一个公司都会号称自己是数据驱动公司。所以我特别喜欢一个问题,“你们的前端工程师可以轻松的获取所有的数据,得出跟数据分析师一样的结论吗?”,这件事情在绝大多数公司都是难以想象的。
数据的存储不规范,大量的隐藏知识(hidden knowledge)只被少数人拥有,慢慢就会形成数据垄断。一方面说着我们是数据驱动的公司,一切以数据为准,另一方面只有很少的人能够知道数据存在哪里,格式是什么,如何查询,历史的变迁等等。数据此时又变成了任人打扮的小姑娘,成了领导层实施自己主观意志的工具,他们想做什么,数据就能变成什么,这完全丧失了数据存在真正的意义。
数据驱动的核心目的,就是让决策的流程可以分布式,让团队的每一个人都能够获取同样高质量的数据,每个人都能做出相同的决策,消除纷争,相互信任,共同向前。
这当然很难,一方面需要大量的基础设施建设,另一方面也需要提高每位同学数据相关的技能。但这是未来的发展方向,是值得的,让 Tubi 的每一个人都是 Mini Data Scientist,就是我们的愿景。
工具
数据很难做,但是在 Tubi,因为从上到下我们是如此的在乎数据的质量,数据相关的任务几乎都是最高优先级。
首先,我们设计了高质量的数据语言,确保客户端和数据的读取用户一眼就能明白这些数据是什么意思。
我们设计了一套和自然语言接近,能够记录用户交互行为的语法。我们使用不同的事件描述各类用户行为,这个设计相对牺牲了一定的灵活性,但是保证了数据的高质量,从长远看降低了维护成本,增加了我们分析使用这些数据时的信心。

CTO 马老师带我们重温一堂语法课
我们有二十多个不同平台的客户端,他们开发平台各异,语言不同,框架不同,保证相同高质量的用户行为数据难上加难。但是数据质量就是公司的生命线,所以优先级高,客户端做了大量的自动化测试工作,确保功能的开发不会导致数据质量的变化。同时后端有大量的预警系统,确保一旦数据有问题能够第一时间得到修复。
客户端统一数据质量,存储端统一数据存储,查询端也要统一工具查询。我们搭建了 Tubi Data Runtime 使得每一位同学都能快速的获得想要的数据。

无代码可视化(Jupyter + Nteract Data Explorer)

我们的内容宇宙(Jupyter + Plotly Dash)
热爱
每位加入 Tubi 的同学都会惊叹,为什么 Tubi 可以在如此小的工程师团队(至今不过百),维护将近三十个完全不同的平台客户端,有自己完善的数据系统、机器学习系统、AB 测试平台、广告平台、广告竞拍、内容管理系统、流媒体处理等若干异常复杂的系统,可以收入做到这么高,增长那么快,甚至超过不少国内数千人工程师的公司。
我们热爱工具,我们相信工具赋予每位工程师的力量。我在之前的一篇文章提到过,我相信技术对于生产力的进步也是符合摩尔定律的,也是能做到18月翻一番的。硅谷这几年大量的开源技术 + 云服务 + SaaS 极大地减少了工程师重复造轮子的需求,让我们可以做到每位同学都能关注核心的业务逻辑,只做业界领先的事情,每位同学都 work life balance 的情况下,迭代的速度依然领先。
受益于旧金山-北京全球迭代的模式,我们在北京和旧金山都有大量的职位:
北京:
Tubi China Team 旧金山:
Watch Free TV & Movies Online | Stream Full Length Videos | Tubi 我常驻旧金山城区,也经常去北京。欢迎对我们感兴趣的小伙伴私信我,一起喝杯咖啡 ;)。
继续阅读
全部内容大模型落地的未来:开源+微调?
最近,AI 社区里流传着这样一句话——“通用大模型很强,但我并不需要我的应用去给我背诵法文诗歌。” 这句话听上去有点调侃,却反映了一个重要现象:许多企业和开发者在早期会选择大型通用模型(例如 GPT-4)去快速验证想法,但真正想要落地到生产环境,往往发现必须在速度、成本和“专用领域准确度”之间做权衡。 于是,“微调(F...
[ML 1分钟]细节太多,犯错太容易
机器学习工程师小月最近一直在研究新的深度学习算法。相对于现有的算法框架,新算法要求兄弟团队一块搭建了不少新的框架,也选用了一些以前不太熟悉的库。经过了三个月的准备,终于可以上线AB测试了。 但是AB测试效果老是不好 经过了几个月的迭代,效果依然不佳,仅仅只比手动排序更好,与现有的模型相比效果差距甚远。离线数据 AUC,...
[ML 1分钟]第一个模型能跑通就不错了
有业务能上机器学习模型了,算法工程师小月开心地不行。毕竟作为一名机器学习工程师,口袋子藏着无数陈年老模型:线性模型、树模型、深度模型、增强学习,要啥有啥。业务一来,恨不得立刻就掏出最炫酷的模型,一步到位。 但是,第一个模型,一定要简单 正当小月兴奋着呢,经理大圆泼了一瓢冷水,“第一个模型,一定要简单”。 第一个次迭代往...


