NLP常用到的算法

317 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

详细算法

(1)分类算法

(1).LR (Logistic Regression,逻辑回归又叫逻辑分类)
(2).SVM (Support Vector Machine,支持向量机)
(3).NB (Naive Bayes,朴素贝叶斯)

(4).KNN
(5).DT (Decision Tree,决策树))

  • 1).C4.5
  • 2).ID3
  • 3).CART

(5).集成算法

  • 1).Bagging
  • 2).Random Forest (随机森林)
  • 3).GB(梯度提升,Gradient boosting)
  • 4).GBDT (Gradient Boosting Decision Tree)
  • 5).AdaBoost
  • 6).Xgboost

(6).最大熵模型                                                                               ----------------------------------------- ?

(2)回归算法

(1).LR (Linear Regression,线性回归)
(2).SVR (支持向量机回归)
(3). RR (Ridge Regression,岭回归)

(3).聚类算法


(2).Kmeans 算法
(3).层次聚类
(4).密度聚类

(4)降维算法(模型优化计算参数)

(1).SGD (随机梯度下降)

(2)牛顿法、拟牛顿法

(3)坐标轴下降法

(5)概率图模型算法

(1).贝叶斯网络
(2).HMM
(3).CRF (条件随机场)

(6)文本挖掘算法

(1).模型

  • 1).LDA (主题生成模型,Latent Dirichlet Allocation)
  • 2).最大熵模型

(2).关键词提取

  • 1).tf-idf
  • 2).bm25
  • 3).textrank
  • 4).pagerank
  • 5).左右熵 :左右熵高的作为关键词
  • 6).互信息:

(3).词法分析

  • 1).分词
    – ①HMM (因马尔科夫)
    – ②CRF (条件随机场)
  • 2).词性标注
  • 3).命名实体识别

(4).句法分析

  • 1).句法结构分析
  • 2).依存句法分析

(5).文本向量化

  • 1).tf-idf
  • 2).word2vec
  • 3).doc2vec
  • 4).cw2vec

(6).距离计算

  • 1).欧氏距离
  • 2).相似度计算

(7)优化算法

(1).正则化

  • 1).L1正则化
  • 2).L2正则化

(8)深度学习算法

(1).BP
(2).CNN
(3).DNN
(3).RNN
(4).LSTM

 

 

2、建模方面

(1)模型优化·

  • (1).特征选择
  • (2).梯度下降、坐标轴下降、牛顿法拟牛顿法、凸优化
  • (3).交叉验证
  • (4).参数调优
  • (5).模型评估:准确率、召回率、F1、AUC、ROC、损失函数

(2)数据预处理

  • (1).标准化
  • (2).异常值处理
  • (3).二值化、区间化
  • (4).缺失值填充: 支持均值、中位数、特定值补差、多重插补

深度学习网络用到数据预处理较少:
    ① 缺省值处理:不管机器还是深度 都需要
    ② 中心化(标准化,它是以 列为单位)、正则化(以行为单位)、白化(先SVD降维,在标准化)