热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

7年算法工程师的工作总结,太精辟了!

大家好,我是chris,入行前5年在一家上市游戏公司做算法,从数据挖掘算法在业务线落地开始,涉及机器学习、深度学习ÿ

大家好,我是chris,入行前5年在一家上市游戏公司做算法,从数据挖掘算法在业务线落地开始,涉及机器学习、深度学习,后来逐步负责整个算法团队建设。

 

现在在阿里,也是负责算法方面的工作,涉及到的领域涵盖CV、NLP、架构等,业务线也扩展到广告、运营、客服、风控等各个方面。


在外行人眼中,算法工程师可能拿到最近某大神新发的Paper,或者自己钻研理论推公式产出理论成果,通过并行编程实现其支持大规模数据训练,然后打败现有模型,ctr提升200%,收入提高200%。然而实际情况是:


理想中的算法工程师:提出假设->收集数据->训练模型->解释结果。

实际中的算法工程师:提出假设->收集数据->预处理->预处理->训练模型->调试->调试->重新收集数据->预处理->收集更多数据->调试->调试->调试->…->放弃


作为算法部门负责人,我曾经面试过很多候选人,一般我通常从逻辑思维、基础算法与数据结构、数学、深度学习、表达能力和工程经验等几个方面考察。


我发现其实很多人只是自认为懂得算法,刷了一遍西瓜书就敢出来面试了,另外有数理基础的应届生,算法掌握得也不错,但实际3年可能写了不到1000行代码,实操能力极差。


在面试了好几个简历优秀的年轻人后,我惊讶得发现原来很多初学者对数据挖掘/算法工程师实际上的工作流都不是很了解,导致职业技能偏差。这就是为什么,企业收到的简历越来越多,但公司实际可用的就那么一两个,而且开价不菲,忍痛签下还可能被同行挖走了。


那么算法岗位具体的工作流程是怎样的?我们先来用一个小型NLP项目流程来举例,让大家了解机器学习项目有哪些大的环节:


1.了解需求,获取数据。与产品和运营开会,了解需求,然后提取公司积累大量的数据和自己网上下载、爬取的数据。


2.数据预处理。数据处理大概会占到整个50%-70%的工作量,通过数据洗清、分词、词性标注、去停用词四个大的方面来完成语料的预处理工作。


3.特征工程。做完语料预处理之后,接下来需要考虑如何把分词之后的字和词语表示成计算机能够计算的类型。把中文分词的字符串转换成数字,有两种常用的表示模型分别是词袋模型和词向量。


4.特征选择。构造好的特征向量,是要选择合适的、表达能力强的特征。特征选择是一个很有挑战的过程,更多的依赖于经验和专业知识,并且有很多现成的算法来进行特征的选择。


5.模型训练。对于不同的应用需求,我们使用不同的模型,传统的有监督和无监督等机器学习模型,如 KNN、SVM、Naive Bayes、决策树、GBDT、K-means 等模型;深度学习模型比如 CNN、RNN、LSTM、 Seq2Seq、FastText、TextCNN 等。


6.评价指标。训练好的模型,上线之前要对模型进行必要的评估,目的让模型对语料具备较好的泛化能力。


7.模型上线应用。模型线上应用,线下训练模型,然后将模型做线上部署,发布成接口服务以供业务系统使用。


以上流程从业务流程来看,机器学习项目基本就是了解业务需求 ->调研业界方案 -> 查看是否适用 -> 上线效果不难发现,在对待具体业务上,算法工程师如何通过“实践”提升自己的机器学习水平,以及如何通过机器学习/深度学习实际应用来改善企业的业务等级和营收能力至关重要。


我经常说算法只是工具,重要的是在正确的行业和产品认知上,实现业务目标。


所以有人恐慌算法工程师会被自己的算法替代,这是极其可笑的。机器可以做的虽然很多,但是无法代替人对数据的理解,这是算法工程师存在的价值。Deep Learning虽然在某种程度上代替人提取特征,但是它最多只能解决特征变换问题,仍然处理不了数据清洗和预处理中需要用到领域知识的情况。


在我的经历里,我倾向于算法工程师是技术+产品经理为一体的综合型人才。


而对于跨专业的学生/从业者来说,跨界反而是优势,不是障碍。特别是如果你作为本身是一个其他行业(物理,工程,化学,医学,农业,卫星地图识别,网络安全领域,社会科学)的普通程序员,在本行业有比较深的理论和实验背景,能接触到海量数据,那么你完全可以做一些创新性和交叉性的工作,这就是人工智能+的人才。


现在有很多的机器学习课程和教科书,它们大都是关于如何从零开始制造烤箱,而不是如何烹饪和创新配方。但对大多数企业而言,其实他们需要的只是烹饪方法——即解决他们业务问题的方法。


为了能让更多初学者了解机器学习/数据分析/数据挖掘等岗位的工作流程,找到入门的切入点,我特地邀请了两位人工智能不同领域的专家,一位BAT的数据挖掘工程师@熊猫酱,一位计算机视觉方向的专家@Angela,还有我阿里高级算法工程师@Chris,以自身具体的工作流为核心,举办连续四场人工智能入门分享会。


640?wx_fmt=jpeg


我们将分别从各自擅长的领域:python数据分析、机器学习理论、机器学习数学、算法工作流,以我们在大厂具体工作流逆向指导理论学习,规划学习路线,是不可多得的入门级课程,旨在为广大的AI爱好者和跨行学习者提供坚实的基础。

福利一:

《人工智能入门分享会》

适合人群:入门、初中级学员

 

1. 6月11日 20:30

一线大厂算法工作流讲解及机器学习路线 

2. 6月13日  20:30

机器学习常见算法推导中的数学基础

3. 6月16日  20:30

从零开始,90分钟入门python数据分析

4. 6月18日  20:30

阿里专家:神经网络原理与人工智能就业指南

(*可领取录播,添加助教:BT474849领取)


本次分享会将为你解答以下疑问:


我适不适合学习人工智能?我是医学生,现在AI医疗就业情况怎么样?数据分析/数据挖掘/算法工程师的区别是什么?算法工程师对算法需要理解到何种程度?模型选择和参数调优技术,是否是通用的?深度学习算法的应用场景……(~你的所有疑惑,在这里将全部解决!)


千万不要在本该快速成长的时候错过机会。参加本期训练营,一线导师将尽心为你在线解答疑问,更有同伴一起相互监督鼓励!本期更是免费帮你分析具体职业进阶方向!


第一期300名试学学员获得一致好评!

↓↓↓

640?wx_fmt=jpeg

▲第一期课程体验反馈+群内交流答疑


福利二:学习资料

机器学习从入门到实战视频课程


另外,前500名成功报名这门课程的同学,都可以获得由这份由上海北大、清华、交大等名校导师以及大厂一线工程师联合组写价值1388元的《机器学习从入门到实战视频课程》,包含python基础、数据分析、大数据、机器学习、实战等五大类目的精华干货视频,课件和源码都能下载,以下是目录。

《机器学习从入门到实战视频课程》

 ——五大章节,63讲


一、Linux与python编程基础

1. vmware虚拟机的安装

2. centos6.9操作系统的安装

3. linux基本命令使用

4. python介绍

5. python安装

6. python环境安装

7. 第一个python程序

8. pycharm(Python开发神器)的使用

9. 变量、整型、浮点型、字符串类型

10. 空值、布尔值、列表、元组、字典、集合

11. if条件语句、input函数

12. 循环语句

13. 函数介绍、函数的定义、函数的调用、函数的参数

14. 函数的返回值

15. 全局变量和局部变量

16. 学生管理系统框架

17. 学生管理系统的增加和查看模块的编写

18. 学生管理系统的修改和删除、家庭作业


二、Python数据分析

19. Python数据科学入门

20. Python常用库介绍

21. 数据分析环境搭建

22. Numpy数据类型和索引的处理

23. NumpyAPI和矩阵运算

24. Numpy高级特性和通用函数

25. Panda概述和Serise

26. Pandas_DataFrame精讲

27. DataFrame和Series的索引


三、大数据与数据处理

28. 大数据是什么

29. 大数据,人工智能,机器学习三者的关系

30. 数据量与高并发(高并发一定是代表数据量大吗?)

31. hadoop精讲:HDFS简介,架构组成,实操演练

32. hadoop精讲:Mapreduce简介,Wordcount实例,框架流程

33. spark简介,环境搭建,集群安装,实例演示


四、机器学习入门

34. 机器学习简介

35. 机器学习开发环境

36. 机器学习IDE介绍

37. 机器学习基础理论与哲理

38. 机器学习算法分类

39. 机器学习常见任务

40. 数据清洗

41. 数据标准化

42. Python与Sklearn数据标准化实践

43. 机器学习中的相似性度量

44. KNN算法

45. 案例:基于 KNN (sklearn)的鸢尾花卉数据分类

46. 案例:基于 KNN(python)的鸢尾花卉数据分类

47. 一元线性回归

48. 多元线性回归

49. 多项式回归

50. sklearn线性回归实践

51. python线性回归实践

52. 案例:基于线性回归的广告收益分析实战

53. 逻辑回归分类算法

54. 二分类分类器处理多分类问题

55. 案例:基于逻辑回归(sklearn)的鸢尾花卉数据分类

56. 案例:基于逻辑回归(python)的鸢尾花卉数据分类


五、机器学习5大实战

57. 前言

58. 准备工作

59. 高端又一般的词云

60. DCgan人脸图片生成

61. 股票价格预测

62. Tensorflow物体检测

63. 天马行空的Deep Dream

当然任何资料都只是辅助,分享会最重要的是能跟着老师们一起动手实操,学习一线开发的人工智能思维,了解大厂具体工作流,迈出人工智能的最坚实的一步!


福利领取:

扫码添加助教小姐姐微信

回复“人工智能”即可领取

福利1:人工智能入门训练营资格

福利2:人工智能入门与进阶视频资源

640?wx_fmt=png




推荐阅读
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 2019年斯坦福大学CS224n课程笔记:深度学习在自然语言处理中的应用——Word2Vec与GloVe模型解析
    本文详细解析了2019年斯坦福大学CS224n课程中关于深度学习在自然语言处理(NLP)领域的应用,重点探讨了Word2Vec和GloVe两种词嵌入模型的原理与实现方法。通过具体案例分析,深入阐述了这两种模型在提升NLP任务性能方面的优势与应用场景。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • 本文介绍了实现人工智能的多种方法,并重点探讨了当前最热门的技术——通过深度学习训练神经网络。文章通过具体实例详细解释了神经网络的基本原理及其应用。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • 通过使用CIFAR-10数据集,本文详细介绍了如何快速掌握Mixup数据增强技术,并展示了该方法在图像分类任务中的显著效果。实验结果表明,Mixup能够有效提高模型的泛化能力和分类精度,为图像识别领域的研究提供了有价值的参考。 ... [详细]
  • 从2019年AI顶级会议最佳论文,探索深度学习的理论根基与前沿进展 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • 视觉图像的生成机制与英文术语解析
    近期,Google Brain、牛津大学和清华大学等多家研究机构相继发布了关于多层感知机(MLP)在视觉图像分类中的应用成果。这些研究深入探讨了MLP在视觉任务中的工作机制,并解析了相关技术术语,为理解视觉图像生成提供了新的视角和方法。 ... [详细]
  • 欢迎关注我们微信公众号,可以加入我们QQ人工智能行业交流群626784247.01在当前飞速发展的创新步伐中,科技似乎正在积极地解决人类最紧迫的难 ... [详细]
  • 本文探讨了一种统一的语义数据模型,旨在支持物联网、建筑及企业环境下的数据转换。该模型强调简洁性和可扩展性,以促进不同行业间的插件化和互操作性。对于智能硬件开发者而言,这一模型提供了重要的参考价值。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有