NLP算法岗面经:我,双非本科,0项目经验,三个月拿到30K的Offer

  2021年还有1个月就要过去,NLP算法求职几家欢喜几家愁。有人offer拿到手软,有人从灰飞烟灭到人间地狱。

  我们用了2个月的时间,调研了200多位NLP工程师和100个在2021年热招的岗位,对过去一年NLP领域人才求职和热招岗位情况深度分析了一下。发现了一些情况,以飨大家。

  01

  NLP算法求职更难了吗?

  先直接上个有点粗糙但又反应现状的模型,来说明一下今年秋招NLP算法岗的现状。

  

  上图发给小伙伴看,小伙伴说,好内卷啊,太卷了,卷之又卷。

  但是我们仔细看,真的卷吗?

  其实未必。

  首先我们看到,其实很多人的能力,是处于中等偏下。这导致了中等偏下能力的NLP算法岗的内卷;而在入门之后,技术能力每进一步,其求职难度就会下降一截。这也就反映出:

  现在大部分入门级NLP算法工程师的能力

  是不太能够适用现在工业界的用人需求的

  也就是说,要在NLP算法岗位吃的更开,广大入门或初级的NLPer需要更加修炼自己的技术能力,才能在人才红海中杀出一条血路。

  02

  NLP岗位要求更高了吗?

  自18年之后网上对算法岗劝退的声音就逐渐多起来了,这一方面是由于工业界的萝卜坑不再大幅增长;另一方面,当下工业界看重的能力矩阵也出现了一些不同。现在工业界则愈发注重实际工程落地能力、处理“脏”问题和“乱”问题的能力。这种能力在前些年是可以忽略的,因为在当时一个候选人有基本的代码能力、合格的NLP知识储备就已经很了不起了。而现在的同学要去竞争NLP算法岗,要么需要用足够分量的paper来为自己的学术水准背书,要么需要

  拿出很有说服力的工程项目经历

  为自己技术能力正名。

  而这些都不是在普通技术课程或Demo里所能做到的。

  在这次调研分析中,为了更细致洞察NLP岗所需的能力要求,我们按照不同的业务,从Boss上面找到了100个NLP岗位的JD

  分析了不同岗位方向的能力要求比例:

  知识图谱、信息抽取方向 70%

  对话系统、问答系统方向 40%

  文本分类、情感分析方向 20%

  文本推荐方向 15%

  (*其中采样部分对话系统、推荐系统的搭建依赖于知识图谱、信息抽取技术。)

  同样我们也统计了这100个NLP岗位对其他方面的要求,其中

  软技能:

  学习能力、解决问题能力 60%

  团队协作能力 40%

  表达沟通能力 20%

  加分项:

  高质量的论文 40%

  深度参与的实战算法项目 80%

  高质量的比赛和比赛名次 30%

  对2022年NLP岗位趋势有兴趣的

  可以加我微信一起聊聊

  

  通过以上总结:

  扎实的NLP基础知识

  NLP相关的项目实战经历

  问题解决能力

  求职的能力

  这4项,是工业界最看重或求职最关键的因素。

  *求职的能力:很多人对自己缺少全面认知,忽视且没有专门训练业务理解、行业认知、面试和简历的能力,这大大降低了求职成功率和高薪率。

  在深刻洞察工业界对NLP人才需求的基础上,经过6个月的研发打磨,我们推出

  《NLP算法工程师-AI职业自由计划》

  本培养计划,依托Greedy AI 高品质技术资源、NLP界智囊资源和高科技企业招聘资源,为NLP从业者提供“最大化职业生涯ROI”的职业跃迁服务;在合作中,高品质、强履约、最大化让参与者开启辉煌璀璨的AI职业生涯。

  通过本计划,学员一定可以拿到不止一个高质量NLP岗位的offer,实现涨薪飞跃。我们相信本计划将根本解决广大NLPer的求职难题,并持续深刻影响职业生涯发展。

  面向对象

  本计划采取双向选择的模式,申请者提交简历申请,符合条件的,确认合作事宜。

  符合以下条件之一,均可申请:

  海外在校留学生(含本科、硕士生和博士生)或在职人士;

  一本以上应届生或在职人士;

  硕士应届生或在职人士;

  有1年以上coding经验的在职人士;

  如果你还没有收到心仪的offer

  或者对现有岗位不满意

  可以加我微信一起聊聊

  

  以下我们通过技术能力篇、项目研发篇和求职规划篇,这三大部分,来说明一下这个计划如何帮助你拿到高质量的NLP岗位的offer。

  (*长文预警,Part3有干货)

  技术能力篇

  1、对于今后想从业NLP领域的人,这可能是最全面但同时最精简的课程,该课程已经更新迭代近10次,学完绝对可以满足NLP岗位的技术要求,而且大概率可以让你的技术层面做到TOP10%的水准。

  2、对于已经从业NLP领域的人,可以帮助你利用最少的时间成本来加深对知识的理解和对前沿技术的理解。

  01 课程大纲

  (滑动下方区域查看更多)

  第一章:自然语言处理概述

  什么是自然语言处理

  自然语言处理的现状与前景

  自然语言处理应用

  自然语言处理经典任务

  职业发展

  第二章:数据结构与算法基础

  时间复杂度、空间复杂度

  动态规划

  贪心算法

  各种排序算法

  第三章:分类与逻辑回归

  逻辑回归介绍

  最大似然估计

  优化与梯度下降法

  随机梯度下降法

  第四章:模型泛化与调参

  理解过拟合

  防止过拟合

  L1与L2正则

  交叉验证

  正则与MAP估计

  第五章:文本预处理与表示

  各类分词算法

  词的标准化

  拼写纠错、停用词

  独热编码表示

  tf-idf与相似度

  分布式表示与词向量

  词向量可视化与评估

  第六章:词向量技术

  独热编码的优缺点

  分布式表示的优点

  静态词向量与动态词向量

  SkipGram与CBOW

  SkipGram详解

  Negative Sampling

  第七章:语言模型

  语言模型的作用

  马尔科夫假设

  UniGram, BiGram, NGram模型

  语言模型的评估

  语言模型的平滑技术

  第八章:隐马尔科夫模型

  HMM的应用

  HMM的Inference

  维特比算法

  前向、后向算法

  HMM的参数估计详解

  第九章:线性条件随机场

  有向图与无向图

  生成模型与判别模型

  从HMM与MEMM

  MEMM中的标签偏置

  Log-Linear模型介绍

  从Log-Linear到LinearCRF

  LinearCRF的参数估计

  第十章:深度学习基础

  理解神经网络

  各种常见的激活函数

  反向传播算法

  浅层模型与深度模型对比

  深度学习中的层次表示

  深度学习中的过拟合

  第十一章:RNN与LSTM

  从HMM到RNN模型

  RNN中的梯度问题

  梯度消失与LSTM

  LSTM到GRU

  双向LSTM

  双向深度LSTM

  第十二章:Seq2Seq模型与注意力机制

  Seq2Seq模型

  Greedy Decoding

  Beam Search

  长依赖所存在的问题

  注意力机制的实现

  第十三章:动态词向量与ELMo技术

  基于上下文的词向量技术

  图像识别中的层次表示

  文本领域中的层次表示

  ELMo模型

  ELMo的预训练与测试

  ELMo的优缺点

  第十四章:自注意力机制与Transformer

  LSTM模型的缺点

  Transformer概述

  理解自注意力机制

  位置信息的编码

  理解Encoder和Decoder区别

  理解Transformer的训练与预测

  Transformer的缺点

  第十五章:BERT与ALBERT

  自编码介绍

  Transformer Encoder

  Masked语言模型

  BERT模型

  BERT的不同训练方式

  ALBERT

  第十六章:BERT的其他变种

  RoBERTa模型

  SpanBERT模型

  FinBERT模型

  引入先验知识

  K-BERT

  KG-BERT

  第十七章:GPT与XLNet

  Transformer Encoder回顾

  GPT-1, GPT-2, GPT-3

  ELMo的缺点

  语言模型下同时考虑上下文

  Permutation LM

  双流自注意力机制

  第十八章:命名识别与实体消歧

  信息抽取的应用和关键技术

  命名实体识别

  NER识别常用技术

  实体统一技术

  实体消歧技术

  指代消解

  第十九章:关系抽取

  关系抽取的应用

  基于规则的方法

  基于监督学习的方法

  Bootstrap方法

  Distant Supervision方法

  第二十章:句法分析

  句法分析的应用

  CFG介绍

  从CFG到PCFG

  评估语法树

  寻找最好的语法树

  CKY算法

  第二十一章:依存文法分析

  从语法分析到依存文法分析

  依存文法分析的应用

  基于图算法的依存文法分析

  基于Transition-based的依存文法分析

  依存文法的应用案例

  第二十二章:知识图谱

  知识图谱的重要性

  知识图谱中的实体与关系

  非结构化数据与构造知识图谱

  知识图谱设计

  图算法的应用

  第二十三章:模型的压缩

  模型压缩重要性

  常见的模型压缩总览

  基于矩阵分解的压缩技术

  基于蒸馏的压缩技术

  基于贝叶斯模型的压缩技术

  模型的量化

  第二十四章:基于图的学习

  图的表示

  图与知识图谱

  关于图的常见算法

  Deepwalk和Node2vec

  TransE图嵌入算法

  DSNE图嵌入算法

  第二十五章:图神经网络

  卷积神经网络回顾

  在图中设计卷积操作

  图中的信息传递

  图卷积神经网络

  图卷积神经网络的经典应用

  第二十六章:GraphSage与GAT

  从GCN到GraphSAge

  注意力机制回归

  GAT模型详解

  GAT与GCN比较

  对于异构数据的处理

  第二十七章:图神经网络的其他应用

  Node Classification

  Graph Classification

  Link Prediction

  社区挖掘

  推荐系统

  图神经网络的未来发展

  02 部分案例

  1. 实现一个拼写纠错器

  2. 从零实现Word2Vec词向量

  3. 利用SkipGram做推荐

  4. 从零实现HMM模型

  5. 基于Linear-CRF的词性分类器实现

  6. 从零实现深度学习反向传播算法

  7. 实现AI程序帮助写程序

  8. 实现AI程序帮助写文章

  9. 基于Transformer的机器翻译

  10. 基于KG-BERT的知识图谱学习

  11. 基于知识图谱的风控系统

  12. 基于知识图谱的个性化教学

  13. 利用蒸馏算法压缩Transformer

  14. 利用GCN实现社交推荐

  15. 基于GAT的虚假新闻检测

  (剩下20+个案例被折叠,完整请找我要...)

  03 部分项目作业

  涉及到的知识点:

  中文分词技术

  独热编码、tf-idf

  分布式表示与Word2Vec

  BERT向量、句子向量

  涉及到的知识点:

  问答系统搭建流程

  文本的向量化表示

  FastText

  倒排表

  问答系统中的召回、排序

  涉及到的知识点:

  命名实体识别

  特征工程

  评估标准

  过拟合

  涉及到的知识点:

  常见的对话系统技术

  闲聊型对话系统框架

  数据的处理技术

  BERT的使用

  Transformer的使用

  涉及到的知识点:

  医疗专业词汇的使用

  获取问句的意图

  问句的解释、提取关键实体

  转化为查询语句

  涉及到的知识点:

  文本摘要生成介绍

  关键词提取技术

  图神经网络的摘要生成

  基于生成式的摘要提取技术

  文本摘要质量的评估

  04 部分论文

  

  有在学习NLP算法的

  可以加我微信一起探讨

  

  项目研发篇

  01 项目特色

  真实企业的算法研发项目

  你来这里并不是为了上课,而是来参与一个真实的企业项目

  真实公司环境

  像在公司一样做事情,做出看得见且有价值的系统

  高水平导师带教带Coding

  整个项目实施过程中,有高水平的AI项目导师和项目工程师陪伴每个小组的项目实施

  团队协作机制

  没有标准的答案,需要去不断思考、小组内部思维碰撞,直到部署产品上线

  02 培养方案

  

  03 面向企业画像

  

  04 实战项目

  实战周期:

  项目小组:3-4人一组

  项目周期:10周-12周

  评估:中期验收、项目展示与答辩,颁发结业证书、优秀毕业证书

  实战安排:

  每周项目任务review例会:由项目小组 + 项目管理 + 助教工程师参与(周一)

  每周一次技术分享:所有的项目组一起参加,轮流做技术分享(周四或者周五)

  每个人选择维护技术博客或者github, 两周一次的频次上传平时的工作,打造自己的portfolio。

  中期成果展示:由每个小组 + 项目管理 + 助教工程师 + 导师共同参与

  项目展示以及答辩:所有的项目组一起参加,每个小组轮流展示项目并做答辩,评选优秀项目组,颁发奖项。

  实训中参与的成员:

  参与的用户/学员:实操并完成一个可上线的企业产品

  助教工程师:学员的mentor,全程陪伴项目实施过程

  NLP导师:负责解决方案的提出、任务拆解、以及中期、末期验收

  项目经理:负责每个小组的项目进度,保证项目如期完成

  前/后端工程师:负责除了NLP模块之外的开发

  设计/产品经理:提供对产品的前期设计

  此项目主要解决2B营销上的痛点:

  商机在哪里?哪些企业需要人力外包?哪些企业需要企业培训?哪些企业目前正需要融资?

  如何实时追踪企业需求的变化?哪些企业开始扩张?哪些企业开始做数字化升级?

  如何提高谈单转化率?如何推理出企业背后的痛点?如果快速给出个性化解决方案?

  【解决方案】

  

  【任务拆解】

  1.需求梳理以及解决方案设计

  任务:根据业务需求,调研相关的方案,并按照小组为单位提出落地的方案,包括技术选型、算法方案。

  交付:解决方案文档。

  2.设计知识图谱

  任务:根据业务需求,设计知识图谱的schema,包括实体类型,属性、关系。

  交付:知识图谱设计方案

  3.招聘JD的解析

  任务:解析JD中的关键词,以便用于搭建企业画像。

  交付:解析之后的结果以服务的方式提供。

  4.研报/公告数据的解析

  任务:从研报,公告数据中提取关键指标,如业务数据、合作关系变化、合作情况等。

  交付:解析之后的结果以服务的方式提供。

  5.事件抽取

  任务:从新闻、微博、公告中提取公司事件。

  交付:抽取之后的事件以服务的方式提供。

  6.知识图谱的存储

  任务:把结构化之后的数据存入知识图谱中。

  交付:根据字段读取知识图谱中的数据的服务。

  7.构建企业画像

  任务:根据已经处理好的数据,搭建企业的画像,之后用于分析、推荐已经商机挖掘。

  交付:存好的企业画像。

  8.商业分析

  任务:根据已经知道的数据,展示数据的看板

  交付:根据每个query可返回的数据。

  9.智能商机发现算法

  任务:根据企业现阶段状况,预测出潜在的客户。

  10.智能解决方案生成

  任务:根据企业知识图谱,以及客户的需求,自动生成一套解决方案。

  11.项目总结以及答辩

  任务:用户需要参与最后的答辩,答辩通过即可拿到项目案例成功的证书。

  12.项目文档整理

  任务:项目文档整理,代码整理

  【时间管理】

  

  【项目配套教研】

  第一章:需求讲解与解决方案概览

  项目需求讲解

  解决方案概览,作为参考

  接口开发以及部署

  第二章:设计知识图谱

  知识图谱介绍

  实体、关系的设计

  知识图谱的设计原则

  第三章:信息抽取技术

  基于序列模型(RNN/LSTM)的信息抽取

  BERT等预训练模型的使用

  招聘JD的解析

  研报、公告解析思路

  事件抽取思路

  第四章:企业画像的搭建

  从结构化数据到画像的搭建

  标签体系的设计

  第五章:存储知识图谱

  图数据库的选择

  图数据库的使用

  第六章:知识图谱中的AI应用

  基于知识图谱的可视化分析

  基于知识图谱的关联分析

  基于知识图谱的推荐

  第七章:智能商机的挖掘

  挖掘商机的类别

  每一种商机挖掘的方法论

  第八章:智能解决方案的生成

  智能解决方案的生成要解决的问题

  基于知识图谱的解决方案

  第九章:系统优化迭代

  评估系统

  工业界迭代思路

  第十章:测试以及API部署

  AI系统的测试方法

  服务器中部署服务以及测试

  真正让项目落地包含很多的挑战,比如:

  如何通过简历、过往经历以及结合知识库构建人才画像?

  如何识别简历中的问题点以及矛盾点?

  如何在推荐过程中自动给出可解释性推荐理由?

  【解决方案】