星期一, 三月 26, 2012

Twitter的数据科学家是如何工作?

本文翻译自technologyreview对Edwin Chen的一篇访谈文章Edwin Chen是一位在Twitter工作的数据科学家,在为Twitter工作之前,他在麻省理工学院学习纯数学和语言学。在这个访谈中, Edwin Chen给我们分享了一些数据科学中的神秘艺术。数据科学可能是目前美国增长最快的领域。现在还没有关于数据科学的教科书或大学课程,然而它整合了许多领域的技术,从华尔街量化交易到网络上的广告定位,以及现实世界中的供应链优化。通常从事数据科学的人士都需要受过严格的数学训练。

在Twitter数据科学家都做什么?
我们做很多事情,比如说构建机器学习模型,并完善大规模数据的处理框架;进行数据可视化或是统计分析;寻找更好的方式来理解我们的用户。有很多不同的工作,它取决于每个人的技能和兴趣。例如,在某些时间,我可能会尝试新的广告定位算法,以MapReduce方式来挖掘海量的推文。为数据建立互动的可视化图形。编写报告解释一些新的发现,在MTurk进行一些实验。



你最新的帖子是受到工作上的一些启发吗?
我一直在做一些关于用户和广告商聚类的工作,以自动推断文本中的主题。设想下我们可以从有关食物的推文中得到些什么信息。例如男人和女人吃的东西是一样的吗?旧金山和纽约的居民,他们的饮食习惯有区别吗?推特用户发表的推文和他们的饮食习惯有什么关系吗?例如,人们在伤心时会更倾向于吃垃圾食品吗?

数据科学是一个崭新的领域,还没有相应的课本或大学课程。你同意吗?
我同意。但它取决于你的数据科学的定义(其中许多人不同意!)。对于我来说,数据科学是三种东西的混合物:定量分析(使你了解你的数据),编程(使你可以处理你的数据),讲故事(帮助别人了解数据的含义)。数据科学家拥有一些非常有用的技能,包括:

  • 统计和机器学习(定量分析方面)。例如,如果你不知道如何区分噪声信号,就无法从数据中提取意义,(不过我要强调的是,我相信任何一种定量学科都会有帮助,我自己的背景是纯数学和语言学,在Twitter里工作的同事也有许多是从物理和化学等领域出来的。你总是可以找到你需要的工具。)
  • 通用编程能力,再加上MapReduce/Hadoop和数据库等领域的知识。以我来说常见的工作模式是,在Scala中编写代码完成MapReduce任务,对结果做一些简单的命令行处理,然后将数据弄到Python或R语言中做进一步分析,从数据库中获取一些其它的数据等等。最终将我得到的东西整合到机器学习模型中。
  • Web编程和数据可视化(讲故事方面)。我觉得能够弄出一个快速的Web应用是非常有用的,不论交流对象有没有技术背景,它都能使其他人(包括我自己)能与数据进行互动。一个很棒的数据可视化往往比一个抽象的数字更有帮助。

虽然现在没有许多教科书或课程能涵盖所有三个领域(唯一的例外可能是:http://datascienc.es/),但也有许多单独覆盖某个技能的资源。(数据可视化似乎继续不受重视,所以这方面的优秀资源比较少见。)

没有评论:

发表评论