全文共3314字,预计学习时长10分钟
源自:csdn
免责声明:以下内容均基于笔者对设备学习团队的观察——并非对该行业的学术调查。笔者是Cortex的贡献者,它是一个用于在生产中安排模型的开源平台(本文标题中的“咱们”指的便是Cortex)。
学Python还是R语言,这是个困难……
这两个反常强大、灵活好用的数据分析语常常让咱们难以抉择。
有非常多文案将Python语言和R语言在数据科学方面的优缺点进行了比较,但本文并不在其中之列。
与之区别,本文介绍了数据分析师和设备学习工程师的差异,以及她们对编程语言的区别需求。
简单而言,设备学习工程师从基本上来讲是软件工程师,她们用的是为软件工程设计的编程语言——而不是统计运用的编程语言。
这听起来相当显而易见,但它表率了设备学习生态系统的一种变化,值得深入科研。
Python和R语言都适合进行数据分析
源自:Python
在以往比较Python和R语言的文案中一般会凸显出某种语言的显著优良,但这些优良充其量是微不足道的、主观的。尽管有些人认为R语言非常规统计函数的优良超过了Python,原由是后者必须运用Numpy这般的第三方库,但这些差异并无产生那样大的影响。
事实便是R语言和Python都完全能够用于数据分析。
例如,假设用户要对某些数据(例如房价)运行简单的线性回归模型。R语言的运行结果如下: square_feet <- c(1000, 1300,942, 1423, 2189)
price <- c(300000, 299000, 240000, 420000, 600322)correlation <-lm(price~square_feet)new_house <- data.frame(square_feet = 1100)
new_house_price = predict(correlation, new_house)print(new_house_price)
而Python的运行结果如下: import pandas as pd
import statsmodels.api as smdata = {square_feet: [1000, 1300, 942, 1423,2189], price: [300000, 299000, 240000, 420000, 600322]}
housing_data = pd.DataFrame(data=data)model = sm.OLS(housing_data[price],housing_data[square_feet]).fit()new_data = {square_feet: [1400]}
new_housing_data =pd.DataFrame(data=new_data)model.predict(new_housing_data[square_feet])两者的差异并非出人意料。有些人可能更喜爱某一种语言的语法,或可能更爱好R语言的默认绘图库(ggplot2),不爱好Matplotlib或Python的其他库。而其他人会认为Python比R语言的性能更好。
现实状况是,倘若用户要做的只是分析数据,那样任何一种语言都能完成得很不错。
然则设备学习工程与软件相关——并非商场智能
源自:aliyun
分析数据从而认识业务的机构(亦便是商场智能)与将设备学习当作制品一部分的机构有着区别的需求。
正如Foursquare的核心技术负责人亚当·瓦克斯曼所说:
“非常多时候,机构说她们有‘数据科学团队’,其实她们有的是分析支持功能。在Foursquare,设备学习模型在制品中占很大比重……Foursquare将数据科学视为制品研发团队的一部分”
瓦克斯曼还暗示,在Foursquare,“无数据科学分部——工程分部负责处理非常多事情。”
设备学习工程师的需求是区别的。这儿举一个真实的例子。
为机构设计客户服务设备人,可能必须将模型安排为微服务,该服务将接收客户的输入并返回要在设备人前端进行渲染的响应。
构建该应用程序界面必须:
· 加载模型,无论运用哪种框架,它们基本上都拥有本地Python包。
· 选取一个框架,服务于应用程序界面。Python有多种选取(其中,Flask最受欢迎),而R语言仅限于Plumbr。
· 思虑到解析用户输入以及与其他服务进行通讯等问题。运用通用脚本语言(例如Python)会更加得心应手。
换句话说,设备学习工程师必须处理工程方面的问题,而Python是更好的选取。
设备学习既是科研行业亦是工程学科
想要认识设备学习工程是怎么样显现的,看一看关联行业(网络研发)的发展经历非常有用。
2000年,仅有一种制品依赖于客户端和服务器之间的异步通信,它便是Outlook Web Access。微软机构负责该制品的团队亦同期开发了XMLHTTP。XMLHTTP让后台HTTP请求作为可能。
换句话说,独一能构建异步应用程序的人便是哪些发明了异步应用程序技术的人。
不久之前,设备学习行业亦是如此。仅有的几家生产设备学习关联制品的机构一样持有相当数量的设备学习团队,例如谷歌、脸书和网飞。
然则,网络研发行业火速就将关联人员划分为科研人员和从业人员。科研人员还在科研新技术和框架(一般应用于很强的机构)的时候,大都数从业人员就起始用她们的发明生产制品了。
设备学习行业亦显现了类似的趋势。设备学习工程师正在以从业者的身份显现,她们运用大型机构和科研实验室生产的最新模型和框架来生产设备学习驱动型制品。
例如,尼克·沃尔顿在黑客马拉松比赛中运用OpenAI的GPT-2微调版创建了AI地牢,该程序由设备学习驱动,用户可创建自己的冒险游戏:
大都数网络研发人员并不设计自己的数据库或框架,沃尔顿和她们类似,他亦无发明自己的模型架构。相反,他利用设备学习科研人员输出的成果来创建新制品。
像沃尔顿这般的从业人员都把精力放在构建软件上,她们必须运用适合于构建软件(而不是掌控面板)的语言进行工作。
设备学习正在走出实验室并投入生产——Python便是设备学习的产物
源自:Pexels
商场智能和数据分析会始终存在,在这些行业内,R语言仍会是个很受欢迎的选取。然则,设备学习工程已然向前发展了。
越来越多像Foursquare这般的团队涌现出来,针对她们来讲,数据科学和设备学习与制品研发和工程相关。负责这些行业的并非数据分析师,而是工程师(按照的是职责,而不是职叫作),她们运用的是软件工程师熟练的工具和语言(例如Python)。
R将始终是生成掌控面板和输出报告的有效工具。然则,为拼车软件创建估计到达时间功能、为流媒介服务供给内容举荐工具或为照片应用程序供给人脸识别器是设备学习工程师和Python该完成的工作。
笔者的团队为设备学习工程师构建了Cortex,由于咱们本来便是期盼利用设备学习的软件工程师。笔者所关心的问题与设计新模型无关,而与工程问题相关,例如:
· 与受欢迎的设备学习框架最为匹配的语言是什么?每一个框架都有本地Python包。
· 哪种语言最适合编写请求处理代码?Python这般的通用语言。
· 可用于包装应用程序界面模型的最简微服务框架是什么?Flask,当然是Python。
源自:Pexels
换句话说,笔者的团队为设备学习工程师(而不是数据分析师)创立了一个平台,这就寓意着咱们支持的是Python,而不是R语言。
而对大众而言,适合的才是最好的,Python和R语言,在区别的行业,面对区别的问题,都有着各自没法取代的优良。
留言点赞关注
咱们一块分享AI学习与发展的干货
如转载,请后台留言,遵守转载规范
|