一、掌握核心原理的技能
1、数学:微积分,统计学,线性代数; 2、周边学科:信息论基础; 3、推荐算法: CF,LR,SVM,FM,FTRL,GBDT,RF,SVD,RBM,RNN,LSTM,RL; 4、数据挖掘:分类,聚类,回归,降维,特征选择,模型评价。
二、实现系统检验想法的技能
1、操作系统: Linux; 2、编程语言: Python/R, Java/C++/C,sql,shell; 3、RPC框架: thrift, Dubbo,gRPC; 4、web服务: tornado, django, flask; 5、数据存储: redis, hbase, cassandra, mongodb, mysql, hdfs,hive, kafka, elasticsearch; 6、机器学习/深度学习: Spark MLib,GraphLab/GraphCHI,Angel,MXNet,TensorFlow,Caffe, Xgboost,VW,libxxx; 7、文本处理: Word2vec,Fasttext,Gensim,NLTK; 8、矩阵分解: Spark ALS,GraphCHI,implicit,qmf,libfm; 9、相似计算: kgraph, annoy,nmslib, GraphCHI, columnSimilarities(spark.RowMatrix); 10、实时计算: Spark Streaming, Storm,Samza。
三、为效果负责的技能
1、熟悉常见离线效果指标:准确率,召回率,AUC,基尼系数; 2、能够定义产品效果指标:点击率,留存率,转换率,观看完整率; 3、会做对比试验并分析实验结果:指标数据可视化; 4、知道常见推荐产品的区别: Feed流推荐,相关推荐,TopN推荐,个性化推送; 四、其他软技能 1、英文阅读:读顶级会议的论文、一流公司和行业前辈的经典论文和技术博客,在Quora和Stack Overflow上和人交流探讨; 2、代码阅读:能阅读开源代码,从中学习优秀项目对经典算法的实现; 3、沟通表达:能够和其他岗位的人员沟通交流,讲明白所负责模块的原理和方法,能听懂非技术人员的要求和思维,能分别真需求和伪需求并且能达成一致。
|