当前位置: 首页 > 编程日记 > 正文

程序员再也不能埋头敲代码了

上周,阿里巴巴重磅发布了机器学习平台 PAI 3.0 版本,据悉,这个 PAL 平台封装了 200 多种经典算法,可以轻松搭建机器学习实验。作为码农一枚,使我不得不抬起原本一直低着敲代码的头,看看这个为 AI 狂欢的世界。


01

做算法、工程还是数据?


我们不说怎么能够成为XXX,我们先来看看成为XXX之后要做什么事情,而做这些事情,需要什么样的能力,在拥有了这些能力、做上了这件事情之后,又能往什么方向发展。


1. 算法工程师的日常


1.1 日常工作


所有人都想做算法,那么,说到底,在工业界做算法到底是干什么?


真正的算法工程师(也有公司叫科学家),最基本的日常工作其实是:读论文&实现之——确认最新论文中的阐述是否真实可重现,进一步确认是否可应用于本企业的产品,进而将其应用到实践中提升产品质量。


1.2 必备能力


既然日常工作首先是读别人论文。那么,必不可少,作为算法工程师得具备快速、大量阅读英语论文的能力。


在计算机科学,尤其是人工智能、机器学习、深度学习这几个当今世界最热门的领域里,大家都在争分夺秒地抢占制高点,根本不能容忍耽搁时间。如果要做算法,平均而言,大致要保持每周读一篇最新论文的频率。


也许这就是为什么,到目前为止,笔者所听闻和见过的算法工程师都是名校相关专业博士的原因。经过几年强化学术研究训练,这些博士们,就算英语综合水平不过CET-4,也能读得进去一篇篇硬骨头似的英语论文!


1.3 理论联系实际,将学术论述与产品、业务结合的能力


一般来说,在大企业里做到真正的算法工程师/科学家,也就不需要自己去动手开发产品了。但做 demo/prototype 还是不能避免的。


算法工程师,可不是用别人写好的工具填几个参数去运行就可以的,需要负责实际业务问题到数学模型的抽象,并能够将他人最新成果应用到业务数据上去。


说得更通俗一点,就算是用别人写的工具或框架,做算法的,也得是i)第一拨、最前沿那批试用者,或者ii)工具最新玩法的发明者。


2. 做工程的都在做什么


2.1 日常工作


相对于算法的创新和尖端,做工程要平实得多。


这一角色比较有代表性的一种岗位就是:机器学习工程师(或戏称调参工程师)——他们使用别人开发的框架和工具,运行已有算法,训练业务数据,获得工作模型。


其间可能需要一些处理数据、选取特征或者调节参数的手段,不过一般都有据可循,并不需要自己去发明一个XXXX。


2.2 做工程,「机器学习」学到多深够用


当然,既然是有领域的程序员,在专业上达到一定深度也是必要的。虽然做工程一般要使用现成技术框架,但并不是说,直接把算法当黑盒用就可以做一名合格的“调参”工程师了。


作为程序员、工程人员,想用机器学习算法解决实际问题,就得对算法有一定程度的掌握,此外对于数据处理和模型验证,也需具备相应知识。


3. 做数据


此处说得做数据并非数据的清洗和处理——大家可以看到做工程的岗位,有一部分工作内容就是 ETL 和处理数据。


3.1 标注数据的重要性


虽然机器学习中有无监督学习,但在实践领域被证明有直接作用的,基本上还都是有监督模型。


近年来,深度学习在很多应用上取得了巨大的成功,而深度学习的成功,无论是图像、语音、NLP、自动翻译还是 AlphaGo,恰恰依赖于海量的标注数据。无论是做 ML 还是 DL 的工程师(算法&工程),都共同确认一个事实:现阶段而言,数据远比算法重要。


02

认清形势,脚踏实地


近来一段时间,能明显感到,想入行 AI 的人越来越多,而且增幅越来越大。为什么这么多人想入行 AI 呢?说白了,大多数人是为了高薪。


寻求入行的人虽多,能真的认清市场当前的需求,了解不同层次人才定位,并结合自己实际寻找一条可行之路的人太少。基于此,才有了 21 天机器学习训练营——


4 月 2 日第六期 21 天机器学习训练营即将正式开班。为了不耽误一部分同学报名,下面先放出训练营的报名链接,方便大家抢占名额。


 扫码了解详情

640?wx_fmt=jpeg


如何参加第 6 期机器学习训练营?


附上本训练营的学习计划,供你近一步参考。


课程大纲


640?wx_fmt=png


此外,这个训练营的高级和价值所在,就是特别重视学习效果,我们的助教会 1v1 的来督促你学习,并且每章还会有课后习题来检测学习效果,可以说,这个训练营的学习模式就是根治你懒癌的最佳方式。


训练营导师介绍

李烨,微软(Microsoft)高级软件工程师,曾在易安信(EMC)和太阳微系统(Sun Microsystems)任软件工程师。先后参与聊天机器人、大数据分析平台等项目的开发。

关于课程的其他介绍及报名方式

1. 开营时间:

第六期 4 月 2 日开营。第六期训练营特训时间为 21 天,训练营结束后也可以反复观看图文课程内容。

2. 学习形式:

图文课程内容 + 打卡学习 + 课后练习题 + 实践项目 + 助教监督提醒+奖学金助学

3. 训练营名额:

4 月 2 日开营,第六期限额 200,报名人数达标则关闭报名通道。

4. 报名后如何参加学习

报名成功后加助教-「梦梦」微信,提交购买截图,助教会拉你进学习训练营社群。

购买疑问请咨询

训练营小助手微信(gitchat2018)

640?wx_fmt=png

点击阅读原文,我在开营那天等你 !

相关文章:

函数的重载 - C++快速入门06

函数的重载 让编程改变世界 Change the world by program 函数的重载 C 里的函数重载(overloading)机制比我们此前见到的东西都高深,这种语言的灵活性和强大功能在它身上体现得淋漓尽致。 所谓函数重载的实质就是用同样的名字再定义一个有…

【Go】Go基础(五):函数

1、简述 Go 里面有三种类型的函数: * 普通的带有名字的函数 * 匿名函数或者lambda函数 * 方法(Methods)两个特殊函数:main()和init(),它们没有参数和返回值; Go语言里面没有函数重载; 2、函数…

搬箱轮滑再炫技!一个被波士顿动力耽误的机器人

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后3天,请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营(ID:rgznai100)据 TheVerge 等多家外媒报道,波士顿动力公司 (Boston Dynamics) 又推出了一款新的机器人&…

我是如何在天猫、蚂蚁金服、百度等大厂面试中被拒的 | 掘金技术征文

本人16年毕业于普通二本院校网络相关专业,工作经验两年半,目前就职业于一家普通民营企业。 由于非985、211学历硬伤,校招进大厂的门槛远高于同届985、211的毕业生。于是乎,从毕业到现在经历了三家创业公司,创业公司的痛…

solaris上的pkg管理

原文写于2010-05-18 19:43:40 网易博客,已删. 在solaris上安装程序,很多时候多离不开package管理.上的编译好的软件都是已package的形式压缩好然后提供给大家下载的. 关键是3个命令:pkgadd/pkginfo/pkgrm pkgadd -d pkgname用来添加安装包 pkginfo 用来打印系统…

【Go】Go基础(六):数组、切片slice、映射map

1、数组 1.1 数组定义 数组:数组是具有相同 唯一类型 的一组已编号且长度固定的数据项序列。 数组长度必须是一个常量表达式,并且必须是一个非负整数。数组长度也是数组类型的一部分,所以[5]int和[10]int是属于不同类型的。数组长度最大为 …

语义表征的无监督对比学习:一个新理论框架

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后3天,请扫码咨询 ↑↑↑译者 | Linstancy责编 | 琥珀出品 | AI科技大本营(ID:rgznai100)诸如图像、文本、视频等复杂数据类型的语义表征 (也称为语义嵌入) 已成为机器学习的核心…

YEX黄建:脱离比特币谈区块链,要么真傻,要么装疯卖傻丨区块链十人谈

如果说2017年是属于虚拟货币的一年,那么2018年的区块链将是生态和应用的一年,随之而来的也将是新的玩法、新的赚钱姿势。为此,雷锋网推出“区块链十人谈”(十人者,取是知众人博所长之意,非实指)…

70佳精美的PSD素材免费下载(上篇)

设计师经常会去网上搜罗各种各样的素材,这些免费素材不仅能帮助他们节省大量的时间,而且能有很好的效果。今天,本文与大家分享70佳精美的PSD素材,非常感谢那些很有才华的设计师分享它们的劳动成果,让更多的人可以使用他…

漫画讲述人工智能简史

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后3天,请扫码咨询 ↑↑↑作者 | 武博士、宋知达、袁雪瑶、聂文韬来源 | 大鱼AI(id:DayuAI-Founder)本文我们会以生动有趣的漫画来介绍关于人工智能(AI)相…

【Go】Go基础(七):包

一、标准库概述 1、官方手册 内置包在 Go 语言中有 150 个以上,它们被称为标准库,完整列表可以在Go Walker中查看 https://gowalker.org/search?qgorepos 2、常用包简介 unsafe: 包含了一些打破 Go 语言“类型安全”的命令,一般的程序中不会…

Mysql是时候学习一个存储过程了

create procedure 存储过程名() DECLARE uid INT; #注意声明的变量名不能跟表的字段名一致,否则会报错。如user的主键是id,那么这里声明用来存id值的变量名就不能为id,可以改为uid等 DECLARE done INT DEFAULT 0; #repeat结束标识 DECLARE us…

ASP.NET的Cookie跨域问题

将Cookie的有效范围限制到域。 默认情况下,Cookie 与特定的域相关联。例如,如果您的站点是 www.contoso.com,那么当用户向该站点请求页面时,您编写的Cookie就被发送到服务器。(有特定路径值的Cookie除外)…

详解物联网的中间件:为何说它是不可或缺的?

互联网的大规模普及,拉近了人与人之间的交流,而不同国家人与人之间的交往也变得密切起来。由于彼此使用的语言不通,为了能够互相交流,我们需要将不同种的交流语言转换成对方可识别的信息,这就是翻译存在的理由了。同样…

Decoders对于语义分割的重要性 | CVPR 2019

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后3天,请扫码咨询 ↑↑↑作者 | Lin-Zhuo Chen转载自博客链接:https://linzhuo.xyz/posts/DUpsample/今天为大家推荐一篇 CVPR2019 关于语义分割的文章 Decoders Matter for Semantic Segme…

【Go】Go基础(八):结构体和方法

一、 结构体(struct) 1、结构体定义 type identifier struct {field1 type1field2 type2... }声明:new(Type) 和 &Type{}是等价的 2、初始化结构体 type Interval struct {start intend int }初始化方式: intr : Inter…

Windows 2008 R2 SP1部署Lync2010企业版(四)

9 部署存档和监控服务器 1) 以域管理身份登录SQL01服务器。 2) 单击“开始”,依次指向“程序”、“管理工具”,然后单击“服务器管理器”显示服务器管理器。 3) 单击“添加功能”启动“添加功能向导”,选择“消息队列”,下一步。 …

【Go】Go基础(九):接口(Interfaces)与反射(reflection)

一、接口(interfaces) 1、概述 接口定义了一组方法(方法集),但是这些方法不包含(实现)代码:它们没有被实现(它们是抽象的)。接口里也不能包含变量。 通过如…

用ECMAScript4 ( ActionScript3) 实现Unity的热更新 -- 使用原型链和EventTrigger

原型链是JS的必备,作为ECMAScript4,原型链也是支持的。 特别说明,ActionScript3是支持完整的面向对象继承支持的,原型链只在某些非常特殊的情况下使用。 本文旨在介绍如何使用原型链。 任意对象类型都有一个prototype属性,包括导入的Unity的A…

教育部发文35所高校新增AI本科专业!想回去重新高考

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后3天,请扫码咨询 ↑↑↑作者 | 琥珀出品 | AI科技大本营(ID:rgznai100)2019 年 3 月 28 日,教育部公布了 2018 年度普通高等学校本科专业备案和审批结果。消息一出&…

莱芜市公安局交警支队智能交通项目集成及容灾公开招标公告

莱芜市公安局交警支队智能交通建设项目公开招标公告 时间:2011-7-5 点击:249莱芜市公安局交警支队智能交通建设项目公开招标公告一、招标人名称:莱芜市公安局交警支队 联系方式:0634-5667998(吕老师)二、招标代理机构名称&#x…

【Go】Go基础(十):文件读写

一、读写数据 1、读取用户的输入 使用fmt 包提供的 Scan 和 Sscan 开头的函数; * Scanln 扫描来自标准输入的文本,将空格分隔的值依次存放到后续的参数内,直到碰到换行。 * Scanf 与其类似,除了 Scanf 的第一个参数用作格式字符…

怎样能拿到第一份编程工作?这里告诉你答案 | 码书

“写代码时,每次都要告诉自己:最后负责维护代码的,会是一个知道你住在哪的变态暴力狂。” ——约翰伍德(John Woods)拿下第一份编程工作需要付出更多努力,但是如果采纳下面的建议,应该不会有太大…

JSON知识点

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读…

asp常用函数(备忘)

1.数组长度&#xff1a; <% Dim grade,i gradesplit("1,2,5,10,20,50,100,200,500,1000",",") for i0 to ubound(grade) response.write grade(i)&"\n" next %> 2.获得插入的id set rs server.createobject(&q…

【leetcode】力扣刷题(1):两数之和(Go、Python)

一、问题描述 给定一个整数数组 nums 和一个目标值 target&#xff0c;请你在该数组中找出和为目标值的那 两个 整数&#xff0c;并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;你不能重复利用这个数组中同样的元素。 示例: 给定 nums [2, 7,…

轻松练:如何从900万张图片中对600类照片进行分类|技术头条

点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后2天&#xff0c;请扫码咨询 ↑↑↑作者 | Aleksey Bilogur译者 | 风车云马责编 | Jane出品 | AI科技大本营&#xff08;公众号id:rgznai100&#xff09;【导语】完成一个简单的端到端的机器学习模型需要几步&…

介绍两个好玩的和Github相关的Chrome扩展

1. Octotree 默认的github网页里的代码显示没有我们在IDE里看到的直观&#xff0c;即代码文件所在的文件夹无法以树形层级结构显示在屏幕左边。 安装Octotree之后&#xff1a; 方便多了。 2. Isometric Contributions github commit的统计页面比较平淡&#xff1a; 安装了Isome…

Schema约束模式实例

book.xsd <?xml version"1.0" encoding"UTF-8"?> <!-- xmlns:默认命名空间 xmlns:xs:当前的文档的标记来自http://www.w3.org/2001/XMLSchema命名空间 前缀:xs elementFormDefault&#xff1a;当前文档使用的标记必须是使用http://www.w3.…

【leetcode】力扣刷题(2):两数相加(go语言)

一、问题描述 给出两个 非空 的链表用来表示两个非负的整数。其中&#xff0c;它们各自的位数是按照 逆序 的方式存储的&#xff0c;并且它们的每个节点只能存储 一位 数字。 如果&#xff0c;我们将这两个数相加起来&#xff0c;则会返回一个新的链表来表示它们的和。 您可…