美文网首页
数据挖掘常用算法

数据挖掘常用算法

作者: 油炸电风扇_db34 | 来源:发表于2017-12-01 16:06 被阅读0次

数据挖掘常用算法

    逐步补充中...

特征工程

        特征工程在实践中是很重要的一个环节,其中主要是特征提取(从原始数据中生成特征,原始数据以及特征的好坏直接决定了我们的算法效果上限)和特征选择(选择重要的特征,比如分类的话选择和标签相关性高的特征,这样可以降低算法的运行时间和降低过拟合风险等...,但还是看算法)

        https://www.zhihu.com/question/28641663里面对特征工程做了些简单介绍

数据预处理

        主要关注这几个方面:

        1.    Data Cleaning: 数据清洗(处理噪音、缺失数据等)

        2.    Normalizaion:数据标准化

        3.    Data Reduction: Dimension Reduction(降维)、Numerosity Reduction(数据量约减)

        4.    Data Transformation And Discretion:进行数据平滑、标准化、离散化、概念层次概化(concept hierarchies generation)等

        降维中使用到的比较有趣的方法:PCA(principal component analysis),我写的另一篇文章有个简单的数学原理介绍

频繁模式挖掘

    1.    Apiori

    2.    FP-Tree

分类

    1.    决策树、随机森林(决策树+bagging+feature random selection)、gradient boost tree(GBT):随机森林效果不错然后使用简单,使用得较为广泛

    2.    朴素贝叶斯:基于贝叶斯定律和特征属性之间都彼此独立的假设,如果属性之间彼此不独立,比如AB、。还简单提到了一个bayesian belief network,计算先验概率后验概率。

    3.    SVM:目标

    4.    神经网络

    5.    ensemble method:应用bagging(leave-p-out、k-fold等)和boosting(抽样时给予分类错误的样本更大的抽样权重,方法有AdaBoosting等)方法,训练多个分类器,结合多个分类器来给出更好的预测结果

    6.    knn等lazy learners

聚类

    1.     kmeans、kmedoid

    2.    hierarchical clustering(层次聚类):agglomerative(自底向上)、divisive(自顶向下)

    3.    DBSCAN、OPTICS

    4.    gaussian mixture models(高斯混合模型):假设数据点属于多个cluster,使用EM算法逐步增大模型的最大似然函数值

    5.     BiClustering

    6.    spectual clustering(谱聚类)、PIC(power iteration clustering,幂迭代聚类):可以用于子图切分,spark mlib提供了PIC的实现

    7.    Clustering with constraint

异常检测(outlier detection)

    1.    基于统计的方法(又分为有参或无参方法)

    2.    基于相似度的方法(grid-based、distance-based、density-based比如LDA)

    3.    基于聚类(方法复杂度可能比较高)

    4.    基于分类(可以使用随机森林等,但要对分类高度不均匀(highly imbalanced)的数据进行处理,使用over-sampling或under-sampling或两者结合使用(https://www.analyticsvidhya.com/blog/2017/03/imbalanced-classification-problem/)

推荐

    1.    content-based:确定产品或用户的特征,计算相似程度进行推荐

    2.    collaborative filtering(协同过滤):不是通过特征而是通过用户的行为来找到相似的用户,从而根据相似用户的行为给用户进行推荐

    3.    local sensitive hashing(LSH,局部敏感哈希):快速找到用户相似度的方法

图算法

    1.     PageRank:大名鼎鼎的pagerank

    2.    SimRank(根据用户对每一个item进行rank):类似于pageRank,公式有点不一样

其他一些有趣的主题(懒得分类了)

    1.    Bloom filter:常用于数据存储等领域,可快速了解数据是否存在,只有FN错误没有FP,FN可以随着hash函数的增加和桶大小的增加而降低

    2.    batch-kmeans、streaming-kmeans


相关文章

  • 数据挖掘常用算法

    数据挖掘常用算法 逐步补充中... 特征工程 特征工程在实践中是很重要的一个环节,其中主要是特征提取(...

  • Scala 强大的集合数据操作示例

    Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据...

  • 关联规则挖掘算法的介绍

    学号:17020110019 姓名:高少魁 【嵌牛导读】关联规则挖掘算法是数据挖掘中的一种常用算法,用于发现隐藏...

  • 学习笔记--(移动数据挖掘引言)

    移动数据挖掘的定义 移动数据挖掘研究的是基于移动数据的数据挖掘算法。这些数据算法需要更多地利用移动数据特性,挖掘与...

  • NLP常用专业术语

    常用概念: 自然语言处理(NLP) 数据挖掘 推荐算法 用户画像 知识图谱 信息检索 文本分类 常用技术: 词级别...

  • EM算法及其相关算法学习

    EM算法是数据挖掘领域十大经典算法之,是一种基础的算法,用到非常用的有名的算法里面比如隐藏马尔科夫算法(HMM)、...

  • 频繁项集挖掘算法——Apriori算法实现初步

    基本概念 这周数据挖掘课上老师介绍了一种基础的数据挖掘算法——频繁项集挖掘算法。这种算法用一句话来总结就是要在数据...

  • 数据挖掘算法笔记

    本篇文章主要是对各类数据挖掘常用算法进行整理,分类。随着个人对各种算法整理,进行更新,因为简书不支持latex公式...

  • xgboost tree

    前言 Boosted Tree是数据挖掘和机器学习中国最常用的算法那之一。 对于输入数据不敏感 -->是统计学家到...

  • 不止于调包,告诉你gbdt,xgboost是怎么计算出最终结果的

    gbdt和xgboost是非常非常常用的数据挖掘算法,常用到什么程度呢,你要是去参加面试,肯定有人会问你用过xgb...

网友评论

      本文标题:数据挖掘常用算法

      本文链接:https://www.haomeiwen.com/subject/wxlwbxtx.html