作为一名天生充满好奇心的人,每当遇到一个之前未曾听闻的概念时,总是迫不及待地想要深入了解其工作原理。这种好奇心在数据科学之旅中发挥了极大的作用。但在获得第一个数据科学领域的工作机会之前,总是对数据科学家的日常工作充满好奇。否需要不断地构建模型?还是说,那句关于70-80%的时间都花在数据清洗上的名言是真的?相信也问过(或者至少想过)这个问题。数据科学家的角色可能被认为是“21世纪最性感的工作”,但那究竟意味着什么?
决定对此进行研究。想要拓宽视野,了解数据科学家在不同领域(如自然语言处理NLP)如何看待自己的角色。这帮助更广泛地理解了角色,以及为什么在谈论数据科学时应该总是阅读不同的观点。
以下是帮助了解数据科学家典型日常工作的前五个答案。准备好被惊喜吧——构建模型并不是数据科学家日常工作中的主要(且唯一的)功能!
机器学习非常注重流程
喜欢这个答案,因为它简洁、直接且简单。甚至设计了一个流程图,并以精彩的插图方式解释了他的思考过程。以下是他的完整回答:
机器学习非常注重流程。因此,总是处于以下某个阶段:
机器学习工程师在前两个阶段花费大量时间。有趣的部分确实在第三阶段,但它只是现实世界中发生的一小部分。
关于现实世界中的数据科学,有几个关键点需要注意:
几乎所有应用的机器学习都是监督式的。
这意味着针对结构化数据集构建模型。
数据整理是现实世界中发生的一大块工作。
当听到“监督”这个词时,想想分类和回归。
大多数模型都是分类问题。
模型构建大约是工作的20%。
是的,就这些!
许多中小型企业根本不使用深度学习。
为什么?因为像XGBoost这样的结构化数据算法总是赢。
做的一切都是程序化的。
大多数现实世界的数据都存储在关系数据库中。
工作将是编写查询以提取需要的数据。
大数据是未结构化的数据。
如果需要针对大数据构建模型,那么需要学习另一套技能。
云是永恒的。
使用BigQuery处理非常大的结构化数据。
大多数大型模型不能在笔记本电脑上构建。
计算机是单语的。它们只说数字。当将数据传递给模型时,传递的是一个高度结构化、清洁的数值数据集。
数据科学家日常角色的百分比分解
非常喜欢Vinita使用可视化的方式。每个数据科学任务的百分比描述是有帮助和深刻的。Vinita还依靠她的经验来解释数据科学家一步一步的工作。这是一个必读的答案!
与流行的看法相反,数据科学并不都是光鲜的。以下CrowdFlower的调查结果准确地总结了数据科学家的典型一天:
涉及很多回溯。有时甚至需要能够预测移除/添加变量可能带来的后果。
收集数据集:
数据是数据科学的生命线,所以花很多时间策划它。在极少数情况下,一些项目可能已经有很多数据。
清洗和组织数据:
这是整个过程中最耗时和最关键的步骤。
它对最终结果有很大的影响。通常,在这一步之后,大量的数据会减少,所以可能需要收集更多的数据以进行有效的训练。
数据挖掘:
它是检查大型预先存在的数据库以生成新信息的做法。一旦数据被组织并存储在数据库中,最终可以从中提取价值,通过在数据中找到模式。
构建训练集和测试集:
一旦有了相当数量的数据,
需要将其分成训练集和测试集。
训练集是用于发现潜在预测关系的一组数据。它包含所有关于预期输出的信息。测试集是用于评估预测关系的强度和效用的一组数据。它包含混合变量。
优化算法:
从一个骨架算法开始。它非常基础,大致定义了预期的输出。经过几次会议后,记录了准确性、精确度等,算法被优化以最大化其效率。
小公司中的数据科学家视角
这是一个能够感同身受的绝佳答案。请注意,机器学习,数据科学家工作中最令人期待的部分,只占总时间的5%!就像Vinita一样,他也以百分比的形式解释了他的任务。以下是Justin的观点:
自然语言处理相关任务(15%)。
不足为奇的是,PaperRater的自动校对技术需要大量使用解析器、标记器、正则表达式和其他NLP好东西作为核心算法和反馈模块的一部分。
机器学习(5%)。
这往往是最有趣的部分。数据清洗、特征提取/工程/选择和模型构建。
报告和分析(10%)。
运行查询,审查分析,并协助战略决策制定。
数据管理(5%)。
设置和管理数据库服务器,包括MySQL、Redis和MongoDB。较大的项目可能需要Hadoop或Spark。
一般软件开发(40%)。
许多数据科学家都有计算机科学背景,所以如果有适用的背景,预计会参与进来。API集成、Web开发,以及可以增加价值的任何其他地方。
即使在AI初创公司,大多数开发也不会涉及AI。
其他(25%)。
这包括各种任务,包括博客文章、市场营销、管理、技术文档、技术支持、网站副本、电子邮件、会议等。
“数据科学家”有点神话
Tim Kiely使用文氏图来解释数据科学是什么。看看下面的文氏图——它会震撼。Tim还谈到了数据科学家应该是什么,对一般定义采取了一种有些矛盾的观点。以下是Tim的回答:
在看来,“数据科学家”有点神话。并不是说他们不存在,但他们比人们普遍认为的要少得多,而且更多的是例外而不是规则。
把它比作互联网泡沫时期的“网络管理员”头衔——这些所谓的人可以进行全栈编程、前端开发、市场营销等一切。所有这些角色/技能总是专业化的,今天仍然如此。
“数据科学家”应该成为数据库架构师,理解分布式计算,深刻理解统计学以及某些业务或领域专业知识。当任何一项技能集都可以建立一个职业生涯时,这是要求很多。
合作过的数据科学家通常拥有A.I.或机器学习的博士学位,并且是有效的沟通者,这使他们能够指导他们可以利用的分析师、DevOps人员、程序员和数据库管理员来用数据驱动的解决方案解决问题。他们概述了所需的解决方案,并让他们的团队填补空白。