AI工程师技术学习进阶指南

数学基础

微积分

  • 《北京大学高等数学B》

线性代数

  • 北京大学出版社,《线性代数简明教程》
  •  MIT 的线性代数公开课

概率论与数理统计

  • 李航《统计学习方法》

朴素概率论

  • 钟开来概率论

朴素统计学理论

  • 北京大学出版社,《概率论与数理统计下册》
  • 北京大学出版社,《多元统计》
  • Wasserman所著《All of Statistics》

朴素优化理论

  • Boyd和Vandenberghe所著《Convex Optimization》

 

编程基础

编程语言(至少熟悉1+)

  • 《集体智慧编程》
  • LEETCODE刷题:链表、二叉树、排序

Python

基础语法

  • Python基础语法
  • Ramalho所著Fluent Python

numpy基础操作

  • Numpy官方文档

pandas基础操作

  • McKinney所著Python for Data Analysis
  • Pandas官方文档
  • groupby

matplotlib基础操作

  • matplotlib官方文档

scikit-learn机器学习框架

  • scikit-learn官方文档
  • scikit-learn中文文档
  • train_test_split(划分训练集与测试集)

C/C++/Java/Matlab/R/Scala

  • 参考相关文档

数据库(至少熟悉1+)

SQL

  • 关于SQL的介绍
  • 根据自己所使用的SQL库相关的深度材料(如MySQL,Oracle)等
  • 根据自己所使用的NoSQL数据库的基本操作

MySQL基础操作

  • mysql学习笔记——增删改查基本数据库操作指南

分布式计算

Spark基本操作

  • Spark官方文档,注意尽可能查询Scala文档(Python文档有一些错误)

hadoop

hive

深度学习框架(至少熟悉1+)

tensorflow

TensorFlow 2.x基本操作

  • Tensorflow教程,包括面向初学者和面向专家的快速入门教程
  • Tensorflow最新版本的官方文档,注意由于TensorFlow bug很多并且每版API变化很多,不建议使用书籍。

pytorch

  • PyTorch官方网站中的tutorial
  • PyTorch XLA的官方例子
  • PyTorch Lightning官方网站及源代码。由于源代码bug较多,建议对源代码有所了解

Caffe

keras

 

算法与数据结构能力

传统机器学习算法

  • 《Pattern Recognition and Machine Learning》一书
  • 吴恩达机器学习公开课
  • Sklearn官方文档
  • 周志华教授的《机器学习》
  • 机器学习十大经典算法

  • 经典机器学习算法梳理

线性回归

逻辑回归

SVM

KNN

MLP

Random Forest和Extra Trees

  • 见LightGBM booster为rf时候的相关文档;不建议使用Sklearn API

XGBoost

  • 见XgBoost文档

LightGBM

  • 见LightGBM文档

CatBoost

  • 见Catboost文档

GBDT

深度学习算法

  • 吴恩达深度学习公开课
  • 如需要GPU加速,请见CuML文档

CNN

RNN

BERT

ATTENTION

常见特征构建方法

  • 这部分并没有很好的书籍或文章介绍,更好的方法是根据Kaggle及其他主流比赛的Kernel进行总结

基于业务理解的特征构建方式

常见的encoder

常见的机遇探索性分析和Bad-Case分析方法构建模型

常见特征选择方法

基于单变量检验的选择方法

  • 目前比较好的文档是Sklearn当中feature selection模块的文档

基于模型的自带选择方式(如树模型、线性回归、逻辑回归、L1损失等)

  • 对于树模型(如XgBoost,LightGBM等)最好的就是看官方文档
  • 对于L1模型,如果只对于常见模型感兴趣,可以看sklearn相关文档;如果想要深度了解,可以看proximal methods的原理

常见Stacking方法

  • 介绍可以看https://towardsdatascience.com/a-guide-to-ensemble-learning-d3686c9bed9a
  • 更多的介绍只能看Kaggle比赛的一些经验

 

项目

  • Kaggle 历史赛事

项目处理方法论

  • 机器学习项目处理流程方法论

NLP基础

  • 基础可以参见国外知名NLP课程,如https://www.youtube.com/watch?v=8rXD5-xhemo&list=PLoROMvodv4rOhcuXMZkNm7j3fVwBBY42z
  • 预训练模型见Hugging Face Transformer中的模型和paper
  • 更新的进展可以参见比赛当中的一些应用
  • 常用自然语言处理NLP模型原理

传统NLP模型

  • Word Embedding
  • LSTM
  • TextCNN

预训练语言模型基础

文本分类

文本序列标注

 

业务能力

具体业务具体分析能力,不同的业务场景如何解决的能力,需要具备一定的业务数据敏感度和行业知识储备,多读业务相关知识

 

其它能力

逻辑分析思维

  • 解决问题需要有清晰的思维,对知识点举一反三,在面对一个相对陌生的问题时,能否给出一个精练、合理、高效的解决方案
  • 不要为了面试而去刷 LeetCode 等题库,而是保持一个稳定的节奏,可以是一周 2-3 道 Hard 难度的题目,保持自己的思维不会因为一些重复劳动的工作而固化,同样方式可以适用于 Kaggle 来训练自己
  • 多做项目、多读分析思维书籍,讲一个大问题拆分为多个小问题,逐步解决

表达能力

  • 清晰并富有逻辑的谈吐会给面试官带来极大的加分,这表明即使当你遇到问题了你也可以无障碍和你的同事、主管沟通,这在创业公司显得尤为重要,好的沟通下才能让产品快速迭代,完成所谓的精益创业目标。

输出能力

技术类博客

  • 可以多写技术类博客,多用文字来总结自己所学的知识,业余时间可以多参与像狼人杀、阿瓦隆一类言语类游戏
  • csdn、博客园、stackoverflow、github

WORD/EXCEL/PPT输出

  • excel常用函数、图表制作

大赛经验

  • 大厂青睐 ACM 竞赛经历
  • 比赛网站:kaggle、天池、科赛、数据

文献查阅能力

  • 关注 ICML、NIPS、AAAI、CVPR 等顶级学会发布的相关论文

你可能感兴趣的:(机器学习,算法,人工智能,机器学习,python,AI)