数据挖掘18大算法实现以及其余相干经典DM算法:决策分类,聚类,链接开掘,关联开掘,模式开掘。图算法,搜索算法等
算法码源见文末
1.算法目录
18大DM算法
包名 | 目录名 | 算法名 | |
---|---|---|---|
AssociationAnalysis | DataMining_Apriori | Apriori-关联规定开掘算法 | |
AssociationAnalysis | DataMining_FPTree | FPTree-频繁模式树算法 | |
BaggingAndBoosting | DataMining_AdaBoost | AdaBoost-装袋晋升算法 | |
Classification | DataMining_CART | CART-分类回归树算法 | |
Classification | DataMining_ID3 | ID3-决策树分类算法 | |
Classification | DataMining_KNN | KNN-k最近邻算法工具类 | |
Classification | DataMining_NaiveBayes | NaiveBayes-奢侈贝叶斯算法 | |
Clustering | DataMining_BIRCH | BIRCH-档次聚类算法 | |
Clustering | DataMining_KMeans | KMeans-K均值算法 | |
GraphMining | DataMining_GSpan | GSpan-频繁子图开掘算法 | |
IntegratedMining | DataMining_CBA | CBA-基于关联规定的分类算法 | |
LinkMining | DataMining_HITS | HITS-链接剖析算法 | |
LinkMining | DataMining_PageRank | PageRank-网页重要性/排名算法 | |
RoughSets | DataMining_RoughSets | RoughSets-粗糙集属性约简算法 | |
SequentialPatterns | DataMining_GSP | GSP-序列模式分析算法 | |
SequentialPatterns | DataMining_PrefixSpan | PrefixSpan-序列模式分析算法 | |
StatisticalLearning | DataMining_EM | EM-冀望最大化算法 | |
StatisticalLearning | DataMining_SVM | SVM-反对向量机算法 |
2.其余经典DM算法
包名 | 目录名 | 算法名 | |
---|---|---|---|
Others | DataMining_ACO | ACO-蚁群算法 | |
Others | DataMining_BayesNetwork | BayesNetwork-贝叶斯网络算法 | |
Others | DataMining_CABDDCC | CABDDCC-基于连通图的决裂聚类算法 | |
Others | DataMining_Chameleon | Chameleon-两阶段合并聚类算法 | |
Others | DataMining_DBSCAN | DBSCAN-基于密度的聚类算法 | |
Others | DataMining_GA | GA-遗传算法 | |
Others | DataMining_GA_Maze | GA_Maze-遗传算法在走迷宫游戏中的利用算法 | |
Others | DataMining_KDTree | KDTree-k维空间要害数据检索算法工具类 | |
Others | DataMining_MSApriori | MSApriori-基于多反对度的Apriori算法 | |
Others | DataMining_RandomForest | RandomForest-随机森林算法 | |
Others | DataMining_TAN | TAN-树型奢侈贝叶斯算法 | |
Others | DataMining_Viterbi | Viterbi-维特比算法 |
3.十八大经典DM算法
18大数据挖掘的经典算法以及代码实现,波及到了决策分类,聚类,链接开掘,关联开掘,模式开掘等等方面,前面都是相应算法的博文链接,心愿可能帮忙大家学。
目前追加了其余的一些经典的DM算法,在others的包中波及聚类,分类,图算法,搜寻算等等,没有具体分类。
-
C4.5
C4.5算法与ID3算法一样,都是数学分类算法,C4.5算法是ID3算法的一个改良。ID3算法采纳信息增益进行决策判断,而C4.5采纳的是增益率。具体介绍链接
-
CART
CART算法的全称是分类回归树算法,他是一个二元分类,采纳的是相似于熵的基尼指数作为分类决策,造成决策树后之后还要进行剪枝,我本人在实现整个算法的时候采纳的是代价复杂度算法,具体介绍链接
-
KNN
K最近邻算法。给定一些曾经训练好的数据,输出一个新的测试数据点,计算蕴含于此测试数据点的最近的点的分类状况,哪个分类的类型占多数,则此测试点的分类与此雷同,所以在这里,有的时候能够复制不同的分类点不同的权重。近的点的权重大点,远的点天然就小点。具体介绍链接
-
Naive Bayes
奢侈贝叶斯算法。奢侈贝叶斯算法是贝叶斯算法外面一种比较简单的分类算法,用到了一个比拟重要的贝叶斯定理,用一句简略的话概括就是条件概率的互相转换推导。具体介绍链接
-
SVM
反对向量机算法。反对向量机算法是一种对线性和非线性数据进行分类的办法,非线性数据进行分类的时候能够通过核函数转为线性的状况再解决。其中的一个要害的步骤是搜寻最大边缘超平面。具体介绍链接
-
EM
冀望最大化算法。冀望最大化算法,能够拆分为2个算法,1个E-Step冀望化步骤,和1个M-Step最大化步骤。他是一种算法框架,在每次计算结果之后,迫近统计模型参数的最大似然或最大后验预计。具体介绍链接
-
Apriori
Apriori算法是关联规定开掘算法,通过连贯和剪枝运算挖掘出频繁项集,而后依据频繁项集失去关联规定,关联规定的导出须要满足最小置信度的要求。具体介绍链接
-
FP-Tree
频繁模式树算法。这个算法也有被称为FP-growth算法,这个算法克服了Apriori算法的产生过多侯全集的毛病,通过递归的产生频度模式树,而后对树进行开掘,前面的过程与Apriori算法统一。具体介绍链接
-
PageRank
网页重要性/排名算法。PageRank算法最早产生于Google,核心思想是通过网页的入链数作为一个网页好快的断定规范,如果1个网页外部蕴含了多个指向内部的链接,则PR值将会被均分,PageRank算法也会受到LinkSpan攻打。具体介绍链接
-
HITS
HITS算法是另外一个链接算法,局部原理与PageRank算法是比拟类似的,HITS算法引入了权威值和核心值的概念,HITS算法是受用户查问条件影响的,他个别用于小规模的数据链接剖析,也更容易蒙受到攻打。具体介绍链接
-
K-Means
K-Means算法是聚类算法,k在在这里指的是分类的类型数,所以在开始设定的时候十分要害,算法的原理是首先假设k个分类点,而后依据欧式间隔计算分类,而后去同分类的均值作为新的聚簇核心,循环操作直到收敛。具体介绍链接
-
BIRCH
BIRCH算法利用构建CF聚类特色树作为算法的外围,通过树的模式,BIRCH算法扫描数据库,在内存中建设一棵初始的CF-树,能够看做数据的多层压缩。具体介绍链接
-
AdaBoost
AdaBoost算法是一种晋升算法,通过对数据的屡次训练失去多个互补的分类器,而后组合多个分类器,形成一个更加精确的分类器。具体介绍链接
-
GSP
GSP算法是序列模式开掘算法。GSP算法也是Apriori类算法,在算法的过程中也会进行连贯和剪枝操作,不过在剪枝判断的时候还加上了一些工夫上的束缚等条件。具体介绍链接
-
PreFixSpan
PreFixSpan算法是另一个序列模式开掘算法,在算法的过程中不会产生候选集,给定初始前缀模式,一直的通过后缀模式中的元素转到前缀模式中,而一直的递归开掘上来。具体介绍链接
-
CBA
基于关联规定分类算法。CBA算法是一种集成开掘算法,因为他是建设在关联规定开掘算法之上的,在已有的关联规定实践前提下,做分类判断,只是在算法的开始时对数据做解决,变成相似于事务的模式。具体介绍链接
-
RoughSets
粗糙集算法。粗糙集实践是一个比拟新鲜的数据挖掘思维。这里应用的是用粗糙集进行属性约简的算法,通过高低近似集的判断删除有效的属性,进行规制的输入。具体介绍链接
-
GSpan
gSpan算法属于图开掘算法畛域。,次要用于频繁子图的开掘,相较于其余的图算法,子图开掘算法是他们的一个前提或根底算法。gSpan算法用到了DFS编码,和Edge五元组,最右门路子图扩大等概念,算法比拟的形象和简单。具体介绍链接
4.Others目录下的算法:
-
GA
遗传算法。遗传算法使用了生物进化实践的常识来寻找问题最优解的算法,算法的遗传进化过程分抉择,穿插和变异操作,其中抉择操是十分要害的步骤,把更适应的基于组遗传给下一代。具体介绍链接
-
DbScan
基于空间密度聚类算法。dbScan作为一种非凡聚类算法,补救了其余算法的一些有余,基于空间密,实现聚类成果,能够发现任意形态的聚簇。具体介绍链接
-
GA_Maze
遗传算法在走迷宫游戏中的利用。将走迷宫中的搜寻进口门路的问题转化为遗传算法中的问题通过结构针对此特定问题的适值函数,基因挪动方向的定位,巧的进行问题的求解。具体介绍链接
-
CABDDCC
基于连通图的决裂聚类算法。也是属于档次聚类算法次要分为2个阶段,第一阶段结构连通图。第二个阶段是决裂连通图,最终造成聚类后果。具体介绍链接
-
Chameleon
两阶段聚类算法。与CABDDCC算法相同,最初是通过对小簇汇合的合并,造成最终的后果,在第一阶段次要是通过K近邻的思维造成小规模的连通图,第二阶段通过RI(绝对互连性)和RC(绝对近似性)来选一个最佳的簇进行合并。具体介绍链接
-
RandomForest
随机森林算法。算法思维是决策树+boosting.决策树采纳的是CART分类回归数,通过组合各个决策树的弱分类器,形成一个最终的强分类器,在结构决策树的时候采取随机数量的样本数和随机的局部属性进行子决策树的构建,防止了过分拟合的景象产生。具体介绍链接
-
KDTree
K-Dimension Tree。多维空间划分树,数据在多维空间进行划分与查找。次要用于要害信息的搜寻,相似于在空间中的二分搜寻,大大提高了搜寻效率,在寻找指标元素时,应用了DFS深度优先的形式和回溯进行最近点的寻找。具体介绍链接
-
MS-Apriori
基于多反对度的Apriori算法。是Apriori算法的降级算法,补救了原先Apriori算法的有余,还减少了反对度差异限度以及反对度计数统计方面的优化,毋庸再次从新扫描整个数据集,产生关联规定的时候能够依据子集的关系防止一些置信度的计算。具体介绍链接
-
ACO
蚁群算法。蚁群算法又称为蚂蚁算法。同GA遗传算法相似,也是使用了大自然规律的算法,用于在图中寻找最优门路的概率型算法。灵感来源于蚂蚁在寻找食物时会散播信息素的发现门路行为。具体介绍链接
-
BayesNetwork
贝叶斯网络算法。补救了奢侈贝叶斯算法中必须要事件独立性的毛病,利用了贝叶斯网络的DAG有向无环图,容许各个事件保留肯定的依赖关系,网络结构中的每个节点代表一种属性,边代表相应的条件概率值,通过计算从而能失去精准的分类成果。具体介绍链接
-
TAN
树型奢侈贝叶斯算法。此算法又被称为加强版奢侈贝叶斯算法。在满足原有奢侈贝叶斯条件的根底上,他容许部条件属性间接的关联性。造成树型的构造。具体介绍链接
-
Viterbi
维特比算法。给定一个隐马尔科夫模型以及一个察看序列,求出潜在的状态序列信息,每个潜在状态信息又会受到前一个状态信息的影响。
5.算法应用办法
在每个算法中给出了3大类型,主算法程序,调用程序,输出数据,调用办法如下:
- 将须要数据的测试数据转化成与给定的输出格局雷同
- 而后以Client类的测试程序调用形式进行应用。
- 也能够自行批改算法程序,来实用于本人的应用场景
算法码源见文末
点击链接即可查看
更多优质内容请关注公号:汀丶人工智能;会提供一些相干的资源和优质文章,收费获取浏览。