footlocker数据挖掘必备基础知识
数据挖掘,从字⾯上理解,就是在数据中找到有⽤的东西,哪些东西有⽤就要看具体的业务⽬标了。最简单的就是统计应⽤了,⽐如电商数据,如淘宝统计过哪个省购买泳⾐最多、哪个省的⼥⽣胸罩最⼤等,进⼀步,可以基于⽤户的浏览、点击、收藏、购买等⾏为推断⽤户的年龄、性别、购买能⼒、爱好等能表⽰⼀个⼈的画像,就相当于⽤这些挖掘出来的属性来刻画⼀个⼈,这些还是最简单的东西,更深层次的⽐如预测(股票预测),但是⽐较难。
说到数据挖掘。往往与机器学习离不开。⽐如分类、聚类、关联规则挖掘、个性化推荐、预测、神经⽹络、深度学习等。很多年前说⼈⼯智能AI(⽐如产⽣式系统、专家系统等,好像现在提得⽐较少了),90年代AI到了瓶颈阶段,机器学习是⼀个突破⼝,现在机器学习⼜遇到了瓶颈阶段,深度学习⼜是⼀个突破⼝(其实神经⽹络出来了很久,但是为什么中间⼀段时间沉寂了,在70年代左右出现了低潮(根据评论修改),我归结是两点,第⼀神经⽹络就像⼀个⿊夹⼦⼀样,很多东西不透明,模型的解释性不强,以及当时没办法处理⾮线性分类问题(后⾯多层感知器便可以对⾮线性问题进⾏拟合,如解决XOR问题),参数过多,训练复杂,容易出错,容易过拟合,⽆法保证全局最优,加上很多问题⽆法⽤数学⽅法证明(个⼈理解)等等,科学家和⼯程师还是有区别的,科学家都想把⼀个问题归结为数学问题,然后证明出来,他们就会认为是有意义的,数学上证明其有效往往⽐做千百个实验说明其有效要好些吧,⼯程师往往更在乎效果与结果),直到后来出现了BP算法。第⼆,得益于现在的⼤规模计算⼯具,
能够处理PB级别的数据了。总之现在⼈⼯智能还远没达到⼈类的⽔平,最后结果会怎样,这个暂时不设想。
⽬前正处于⼤数据时代,很多企业拥有巨⼤的数据,⽐如阿⾥拥有消费数据、百度拥有搜索数据,腾讯拥有社交数据,消费数据与搜索数据都可以直接变现形成商业模式,⽽社交数据暂时还⽆法直接变现,⾄少企鹅现在还在探寻中,举个例⼦,你的朋友圈,qq空间到处是⼴告,你是不是很讨厌,差评,呵呵。数据有了,还有个重要的⽅⾯,处理数据的能⼒,也就是数据处理⼯具,能够处理这么⼤的数据量,⼆者不可或缺,缺⼀谈什么⼤数据都是耍流氓。
对于数据挖掘⼯程师:
⾸先你数学知识肯定要扎实吧,统计与概率论是最基本(也有⼈说现在的机器学习是统计学习,确实有道理)、微分与积分肯定要知道、数学公式要看的懂吧,进阶阶段最优化,随机过程等。建议去看看机器学习⼗⼤算法与⼀些深度学习的东西,多看⼤⽜的博客。
suck my dick
对于语⾔,搞科研知道matlab就永不怕了,但是对于⼯程师嘛,肯定要知道写代码吧,不懂写代码的⼯程师都是扯淡,不要写代码的数据挖掘与机器学习,那是研究员,懂得⼀门⾼级语⾔与⼀门脚本语⾔就差不多了(如JAVA或C++,Python或R,个⼈推荐Java与Python,因为像Hadoop、Spark、Hive、MPI之类的都对Java提供了很⽅便的接⼝,Python写脚本很爽),还需要懂得Linux、Shell、S
QL,这都是个⼈意见,⾄少在阿⾥,⽤java+sql+python+shell,阿⾥有个很⽜逼的东西叫做ODPS,现在叫MaxCoupute,可以去阿⾥云官⽹查查相关资料。
剪发培训 对于你所说的excel、SAS、SPSS,数据分析⼈员专⽤,因为⼯程师嘛,编程语⾔还是必须的。对于是否需要学习hadoop、hive之类的,个⼈意见是只要知道⽤,然后怎么⽤,怎么在上⾯实现⼀些算法,怎么去优化⾃⼰写的程序就差不多了,它们只是⼯具,⽽且更新得很快,就说hadoop吧,我还没完全搞明⽩,就逐渐被spark取代了,记住,这些只是⼯具⽽已。推荐个加深你数据挖掘功⼒的东西weka(单机版的)与mahout(分布式的,有基于hadoop与spark),都是开源的。
对于⼯作是否需要设计新算法,我觉得在企业还是没有要求这么⾼,除⾮你觉得⾃⼰很⽜逼,想向google看齐,但是设计⼀个好的算法并能解决实际问题的算法,不是⼀朝⼀⼣的,个⼈观点,很多算法可以想出来,最⼤的问题就是怎样去证明其正确,其有效。想到企业中去,多看看google与ms⼯程性的⽂章,想研究就多看看学术⼤⽜的⽂章,⽐如ICML,IJCAI,KDD,NIPS,CVPR等。⼤部分⼯作是,将已有的机器学习与数据挖掘算法应⽤到具体的实践中,根据业务场景与数据特点对算法进⾏改造或者调整等。
最后举个例⼦,你在淘宝上买⼀件⾐服,系统怎样向你推荐你感兴趣的并且和这件⾐服搭配的裤⼦或者饰品,这就是数据挖掘⼯程师的⼀⽅⾯⼯作。
对于数据挖掘与机器学习,也不是⼩⼩的⼏百字能说清楚的,所以再补充⼀些想从事机器学习与数据挖掘的需要学习的知识点:
常⽤的数据挖掘&知识(点)
Basis(基础):
MSE(MeanSquare Error 均⽅误差),LMS(Least MeanSquare 最⼩均⽅),LSM(Least Square Methods 最⼩⼆乘法),MLE(Maximum LikelihoodEstimation最⼤似然估计),QP(QuadraticProgramming ⼆次规划), CP(ConditionalProbability条件概率),JP(Joint Probability 联合概率),MP(Marginal Probability边缘概率),Bayesian Formula(贝叶斯公式),L1 /L2Regularization(L1/L2正则,以及更多的,现在⽐较⽕的L2.5正则等),GD(Gradient Descent 梯度下降),SGD(Stochastic GradientDescent 随机梯度下降),Eigenvalue(特征
值),Eigenvector(特征向量),QR-decomposition(QR分解),Quantile (分位数),Covariance(协⽅差矩阵)。
2016年10月13日
Common Distribution(常见分布):
Discrete Distribution(离散型分布):Bernoulli Distribution/Binomial(贝努利分步/⼆项分布),Negative
BinomialDistribution(负⼆项分布),Multinomial Distribution(多式分布),Geometric Distribution(⼏何分布),Hypergeometric Distribution(超⼏何分
布),Poisson Distribution (泊松分布)
ContinuousDistribution (连续型分布):Uniform Distribution(均匀分布),Normal Distribution/GaussianDistribution(正态分布/⾼斯分布),Exponential Distribution(指数分布),Lognormal Distribution(对数正态分布),Gamma Distribution(Gamma分布),Beta Distribution(Beta分布),Dirichlet Distribution(狄利克雷分布),Rayleigh Distribution(瑞利分布),Cauchy Distribution(柯西分布),Weibull Distribution (韦伯分布)
Three Sampling Distribution(三⼤抽样分布):Chi-square Distribution(卡⽅分布),t-distribution(t-distribution),F-distribution(F-分布)
Data Pre-processing(数据预处理):
MissingValue Imputation(缺失值填充),Discretization(离散化),Mapping(映射),Normalization(归⼀化/标准化)。
Sampling(采样):
SimpleRandom Sampling(简单随机采样),Offline Sampling(离线等可能K采样),Online Sampling(在线等可能K采样),Ratio-bad Sampling(等⽐例随机采样),Acceptance-rejection Sampling(接受-拒绝采样),Importance Sampling(重要性采样),MCMC(Markov Chain MonteCarlo 马尔科夫蒙特卡罗采样算法:Metropolis-Hasting& Gibbs)。
Clustering(聚类):
K-Means,K-Mediods,⼆分K-Means,FK-Means,Canopy,Spectral-KMeans(谱聚类),GMM-EM(混合⾼斯模型-期望最⼤化算法解决),K-Pototypes,CLARANS(基于划分),BIRCH(基于层次),CURE(基于层次),DBSCAN(基于密度),CLIQUE(基于密度和基于⽹格),2014年Science上的密度聚类算法等aunt
Clustering EffectivenessEvaluation(聚类效果评估):
Purity(纯度),RI(Rand Index,芮⽒指标),ARI(Adjusted Rand Index,调整的芮⽒指标),NMI(NormalizedMutual Information,规范化互信息),F-meaure(F测量)等。
Classification&Regression(分类&回归):
LR(LinearRegression 线性回归),LR(Logistic Regression逻辑回归),SR(SoftmaxRegression 多分
类逻辑回归),GLM(Generalized LinearModel ⼴义线性模型),RR(Ridge Regression 岭回归/L2正则最⼩⼆乘回归),LASSO(Least AbsoluteShrinkage and Selectionator Operator L1正则最⼩⼆乘回归), RF(随机森林),DT(Decision Tree决策树),GBDT(Gradient BoostingDecision Tree 梯度下降决策
树),CART(Classification AndRegression Tree 分类回归树),KNN(K-Nearest Neighbor K近邻),SVM(Support Vector Machine,⽀持向量机,包括SVC(分类)&SVR(回归)),KF(Kernel Function 核函数Polynomial KernelFunction 多项式核函数、Guassian Kernel Function ⾼斯核函数/Radial Basis Function RBF径向基函数、String Kernel Function 字符串核函数)、 NB(Naive Bayes 朴素贝叶
斯),BN(BayesianNetwork/Bayesian Belief Network/Belief Network 贝叶斯⽹络/贝叶斯信度⽹络/信念⽹络),LDA(Linear DiscriminantAnalysis/Fisher Linear Discriminant 线性判别分析/Fisher线性判别),EL(Enmble Learning集成学习
Boosting,Bagging,Stacking),AdaBoost(AdaptiveBoosting ⾃适应增强),MEM(Maximum Entropy Model最⼤熵模型)
mentor
Classification EffectivenessEvaluation(分类效果评估):
回复邮件
ConfusionMatrix(混淆矩阵),Precision(精确度),Recall(召回率),Accuracy(准确率),F-score(F得分),ROC Curve(ROC曲
线),AUC(AUC⾯积),Lift Curve(Lift曲线) ,KS Curve(KS曲线)。
PGM(ProbabilisticGraphical Models概率图模型):
BN(BayesianNetwork/Bayesian Belief Network/ Belief Network 贝叶斯⽹络/贝叶斯信度⽹络/信念⽹络),MC(Markov Chain 马尔科夫链),HMM(Hidden MarkovModel 马尔科夫模型),MEMM(Maximum EntropyMarkov Model 最⼤熵马尔科夫模型),CRF(Conditional RandomField 条件随机场),MRF(Markov RandomField 马尔科夫随机场)。
NN(Neural Network神经⽹络):
ANN(ArtificialNeural Network ⼈⼯神经⽹络),BP(Error Back Propagation 误差反向传播),HN(Hopfield Network),
RNN(Recurrent Neural Network,循环神经⽹络),SRN(Simple Recurrent Network,简单的循环神经⽹络),ESN(Echo State Network,回声状态⽹络),LSTM(Long Short Term Memory 长短记忆神经⽹络),CW-RNN(Clockwork
Recurrent Neural Network,时钟驱动循环神经⽹络,2014ICML)等。
Deep Learning(深度学习):
Auto-encoder(⾃动编码器),SAE(Stacked Auto-encoders堆叠⾃动编码器:Spar Auto-encoders稀疏⾃动编码器、Denoising Auto-encoders去噪⾃动编码器、ContractiveAuto-encoders 收缩⾃动编码器),RBM(Restricted BoltzmannMachine 受限玻尔兹曼
机),DBN(Deep BeliefNetwork 深度信念⽹络),CNN(Convolutional NeuralNetwork 卷积神经⽹络),Word2Vec(词向量学习模型)。
Dimensionality Reduction(降维):
LDA(LinearDiscriminant Analysis/Fisher Linear Discriminant 线性判别分析/Fish线性判别),PCA(Principal ComponentAnalysis 主成分分析),ICA(Independent ComponentAnalysis 独⽴成分分析),SVD(Singular ValueDecomposition 奇异值分解),FA(Factor Analysis 因⼦分析法)。
Text Mining(⽂本挖掘):
VSM(Vector SpaceModel向量空间模型),Word2Vec(词向量学习模型),TF(Term Frequency词频),
TF-IDF(TermFrequency-Inver Document Frequency 词频-逆向⽂档频率),MI(Mutual Information 互信息),ECE(Expected CrossEntropy 期望交叉熵),QEMI(⼆次信息熵),IG(Information Gain 信息增益),IGR(InformationGain Ratio 信息增益率),Gini(基尼系数),x2 Statistic(x2统计量),TEW(Text EvidenceWeight⽂本证据权),OR(OddsRatio 优势率),N-Gram Model,LSA(LatentSemantic Analysis 潜在语义分
析),PLSA(ProbabilisticLatent Semantic Analysis 基于概率的潜在语义分析),LDA(Latent DirichletAllocation 潜在狄利克雷模
型),SLM(StatisticalLanguage Model,统计语⾔模型),NPLM(NeuralProbabilistic Language Model,神经概率语⾔模
型),CBOW(Continuous Bag of Words Model,连续词袋模型),Skip-gram(Skip-gramModel)等。
Association Mining(关联挖掘):
Apriori,FP-growth(FrequencyPattern Tree Growth 频繁模式树⽣长算法),AprioriAll,Spade。乐于奉献
Recommendation Engine(推荐引擎):
DBR(Demographic-badRecommendation 基于⼈⼝统计学的推荐),CBR(Context-bad Recommendation 基于内容的推
gismo
荐),CF(Collaborative Filtering协同过滤),UCF(Ur-bad CollaborativeFiltering Recommendation 基于⽤户的协同过滤推
荐),ICF(Item-bad CollaborativeFiltering Recommendation 基于项⽬的协同过滤推荐)。
SimilarityMeasure&Distance Measure(相似性与距离度量):
EuclideanDistance(欧式距离),Manhattan Distance(曼哈顿距离),Chebyshev Distance(切⽐雪夫距离),Minkowski Distance(闵可夫斯基距离),Standardized EuclideanDistance(标准化欧⽒距离),Mahalanobis Distance(马⽒距离),Cos(Cosine 余弦),Hamming Distance/EditDistance(汉明距离/编辑距离),Jaccard Distance(杰卡德距离),Correlation CoefficientDistance(相关系数距离),Information Entropy(信息熵),KL(Kullback-LeiblerDivergence KL散度/Relative Entropy 相对熵)。
2016美国大选 Optimization(最优化):
Non-constrained Optimization(⽆约束优化):Cyclic Variable Methods(变量轮换法),Pattern Search Methods(模式搜索法),Variable Simplex Methods(可变单纯形法),Gradient Descent Methods(梯度
下降法),Newton Methods(⽜顿法),Quasi-Newton Methods(拟⽜顿法),Conjugate GradientMethods(共轭梯度法)。
ConstrainedOptimization(有约束优化):Approximation ProgrammingMethods(近似规划法),Feasible DirectionMethods(可⾏⽅向法),Penalty Function Methods(罚函数法),Multiplier Methods(乘⼦法)。
HeuristicAlgorithm(启发式算法),SA(Simulated Annealing,模拟退⽕算法),GA(genetic algorithm遗传算法)
Feature Selection(特征选择):
MutualInformation(互信息),Document Frequence(⽂档频率),Information Gain(信息增益),Chi-squared Test(卡⽅检验),Gini(基尼系数)。
Outlier Detection(异常点检测):
Statistic-bad(基于统计),Distance-bad(基于距离),Density-bad(基于密度),Clustering-bad(基于聚类)。
Learning to Rank(基于学习的排序):
Pointwi:McRank;
Pairwi:RankingSVM,RankNet,Frank,RankBoost;
Listwi:AdaRank,SoftRank,LamdaMART;
Tool(⼯具):
MPI,⽣态圈,,BSP,Weka,Mahout,Scikit-learn,PyBrain…
以及⼀些具体的业务场景与ca等。