人工智能常用的29种算法(人工智能常用的29种算法是什么)
人工智能的数据、算法和处理,三者缺一不可
? ? ? ? 有人认为,数据就宛如人工智能的汽油,重点应该是干净的数据、数据科学和对数据含义的深刻理解。
? ? ? ? 有些人说,没有来龙去脉的数据是没有意义的,这些数据的来龙去脉可以是其他数据、模型/算法或处理流程。
? ? ? ? 让我们以一种简洁的方式探究这些人工智能的要素,以发现每种视角的优点。
数据
? ? ? ? 数据是起点,因为它是非常有用的资产。
? ? ? ? 不管真假,人们都认为数据承载着知识,而利用这些知识将有利于那些善于研究数据的人。
? ? ? ? 对人工智能来说,从数据开始,并通过从中学习来利用优势,是有意义的。在数据量大、速度快的时代,使用数据来训练人工智能十分便捷。
? ? ? ? 企业在商业智能方面有着悠久的历史,很多工作都围绕着数据展开。对于人工智能来说也没什么不同。
? ? ? ? 原始数据一般通过数据采集获得,随后的数据清洗、数据标注相当于对数据进行加工,然后输送到人工智能算法和模型里进行调用。
? ? ? ? 人工智能训练所用的数据如果没有保证足够的多样化和无偏性,就有可能产生人为的”AI偏见”等问题。
? ? ? ? 国内的京东众智、百度众包、觉醒向量等都是专注于AI数据的智能众包平台。
算法
? ? ? ? 理解算法相对于自然环境下的静态数据的优势是很重要的。
? ? ? ? 事实上,组织可以通过优化其业务的算法获得优势。找到合适的公式、统计模型或预测是真正的商业艺术。
? ? ? ? 这些算法受到组织的保护,通常被认为是成功的秘密武器。
? ? ? ? 虽然它们依赖于干净的数据,但数学或逻辑中隐含的规则才是许多行业的真正区别所在。
? ? ? ? 如果没有精算师和他们宝贵的算法,保险业将何去何从?人工智能也不例外。
? ? ? ? 机器学习的常用算法包括决策树、随机森林算法、逻辑回归、SVM、朴素贝叶斯、K最近邻算法、K均值算法、Adaboost算法、神经网络、马尔可夫。
? ? ? ? 人工智能的算法按照模型训练方式和解决任务的不同可以分为好几类,其中需要考虑的因素包括数据本身的数量、质量和特点,具体业务场景中的问题,计算时间及精度要求等。
处理过程
? ? ? ? 正确的步骤或任务、适当的方式对于取得的结果质量是至关重要的。
? ? ? ? 无论处理过程(process)是静态的、可重复的,还是动态的、紧急的,都没有区别。
? ? ? ? 知道下一步的最佳行动是获得最佳业务结果的关键。
? ? ? ? 好的处理过程就是在正确的时间使用正确的数据和算法。
? ? ? ? 由于流程的精确性,业务结果肯定是准确的,并且可以通过使用各种形式的监督的透明反馈周期进行适当的调整。
三者缺一不可?
? ? ? ? 真正的结论是,要想获得长期的成功,你需要这三者。人们可以先从其中一个要素开始,接着添加其他要素。
? ? ? ? 随着机器学习逐渐展现出其威力,许多人工智能项目都是从数据开始的。
? ? ? ? 但随着人工智能的发展,算法和处理过程也将成为不可忽视的要素。
? ? ? ? 基于数据的人工智能目前运行良好,随着问题的复杂性和范围的扩大,算法和处理流程的重要性将会凸显。
? ? ? ? 如同三角形需要三条边来稳定形状,人工智能也将需要全部的三要素来完善自身。
来源(今日头条)
人工智能要考试了 还有好多不会 请教有哪五种常用的启发式算法?A算法和A*算法是吗?
都算的。
其它的常见算法还有:
模拟退火算法(Simulated Annealing Algorithm);
蚁群算法(Ant Algorithm);
禁忌搜索算法(Tabu Search Algorithm);
神经网络算法(Neural Network Algorithm);
遗传算法(Genetic Algorithm)
希望对你有帮助^^
人工智能算法?
推荐教程:Python教程
人工智能英文简称AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
?
人工智能算法也被称之为软计算 ,它是人们受自然界规律的启迪,根据其原理模拟求解问题的算法。
?
目前的人工智能算法有人工神经网络遗传算法、模拟退火算法、群集智能蚁群算法和例子群算等等。
?
随着人工智能算法的不断优化,可以不仅可以帮助我们提高工作效率、改善我们的生活水平,同时也能为我们在庞大的现代信息资源中迅速的找到我们所需要的信息。
人工智能开发机器学习的常用算法?
我们在学习人工智能以及智能AI技术的时候曾经给大家介绍过不同的机器学习的方法,而今天我们就着重介绍一下,关于机器学习的常用算法都有哪些类型。
支持向量机是什么?
支持向量机是一种有监督的机器学习算法,可以用于分类或回归问题。它使用一种称为核技巧的技术来转换数据,然后根据这些转换在可能的输出之间找到一个边界。简单地说,它做一些非常复杂的数据转换,然后根据定义的标签或输出来划分数据。
那么是什么让它如此伟大呢?
支持向量机既能进行分类又能进行回归。在本文中,我将重点介绍如何使用SVM进行分类。我将特别关注非线性支持向量机,或者说是使用非线性核的支持向量机。非线性支持向量机意味着算法计算的边界不一定是直线。好处是您可以捕获数据点之间更复杂的关系,而不必自己做困难的转换。缺点是训练时间更长,因为它需要更多的计算。
那么核技巧是什么?
核技巧对你获得的数据进行转换。有一些很好的特性,你认为可以用来做一个很好的分类器,然后出来一些你不再认识的数据。这有点像解开一条DNA链。你从这个看起来很难看的数据向量开始,在通过核技巧之后,它会被解开并自我复合,直到它现在是一个更大的数据集,通过查看电子表格无法理解。但是这里有魔力,在扩展数据集时,你的类之间现在有更明显的界限,SVM算法能够计算出更加优化的超平面。
接下来,假设你是一个农民,你有一个问题-你需要设置一个围栏,以保护你的奶牛免受狼的攻击。但是你在哪里建造篱笆?好吧,如果你是一个真正的数据驱动农民,你可以做的一件事就是建立一个基于你牧场中奶牛和狼的位置的分类器。昆明北大青鸟建议通过几种不同类型的分类器,我们看到SVM在从狼群中分离你的奶牛方面做得很好。我认为这些图也很好地说明了使用非线性分类器的好处。您可以看到逻辑和决策树模型都只使用直线。
人工智能常用训练方法有哪些
有四种方法如下:
1、监督式学习。
在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写数字识别中的“1“,”2“,”3“,”4“等。
在建立预测模型的时候,监督式学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率。
2、强化学习。
在这种学习模式下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为一个检查模型对错的方式,在强化学习下,输入数据直接反馈到模型,模型必须对此立刻作出调整。
3、非监督式学习。
在非监督式学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习以及聚类等。常见算法包括Apriori算法以及k-Means算法。
4、半监督式学习。
在此学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据来进行预测。
应用场景包括分类和回归,算法包括一些对常用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。
人工智能算法简介
人工智能的三大基石—算法、数据和计算能力,算法作为其中之一,是非常重要的,那么人工智能都会涉及哪些算法呢?不同算法适用于哪些场景呢?
一、按照模型训练方式不同可以分为监督学习(Supervised Learning),无监督学习(Unsupervised Learning)、半监督学习(Semi-supervised Learning)和强化学习(Reinforcement Learning)四大类。
常见的监督学习算法包含以下几类:
(1)人工神经网络(Artificial Neural Network)类:反向传播(Backpropagation)、波尔兹曼机(Boltzmann Machine)、卷积神经网络(Convolutional Neural Network)、Hopfield网络(hopfield Network)、多层感知器(Multilyer Perceptron)、径向基函数网络(Radial Basis Function Network,RBFN)、受限波尔兹曼机(Restricted Boltzmann Machine)、回归神经网络(Recurrent Neural Network,RNN)、自组织映射(Self-organizing Map,SOM)、尖峰神经网络(Spiking Neural Network)等。
(2)贝叶斯类(Bayesin):朴素贝叶斯(Naive Bayes)、高斯贝叶斯(Gaussian Naive Bayes)、多项朴素贝叶斯(Multinomial Naive Bayes)、平均-依赖性评估(Averaged One-Dependence Estimators,AODE)
贝叶斯信念网络(Bayesian Belief Network,BBN)、贝叶斯网络(Bayesian Network,BN)等。
(3)决策树(Decision Tree)类:分类和回归树(Classification and Regression Tree,CART)、迭代Dichotomiser3(Iterative Dichotomiser 3, ID3),C4.5算法(C4.5 Algorithm)、C5.0算法(C5.0 Algorithm)、卡方自动交互检测(Chi-squared Automatic Interaction Detection,CHAID)、决策残端(Decision Stump)、ID3算法(ID3 Algorithm)、随机森林(Random Forest)、SLIQ(Supervised Learning in Quest)等。
(4)线性分类器(Linear Classifier)类:Fisher的线性判别(Fisher’s Linear Discriminant)
线性回归(Linear Regression)、逻辑回归(Logistic Regression)、多项逻辑回归(Multionmial Logistic Regression)、朴素贝叶斯分类器(Naive Bayes Classifier)、感知(Perception)、支持向量机(Support Vector Machine)等。
常见的无监督学习类算法包括:
(1) 人工神经网络(Artificial Neural Network)类:生成对抗网络(Generative Adversarial Networks,GAN),前馈神经网络(Feedforward Neural Network)、逻辑学习机(Logic Learning Machine)、自组织映射(Self-organizing Map)等。
(2) 关联规则学习(Association Rule Learning)类:先验算法(Apriori Algorithm)、Eclat算法(Eclat Algorithm)、FP-Growth算法等。
(3)分层聚类算法(Hierarchical Clustering):单连锁聚类(Single-linkage Clustering),概念聚类(Conceptual Clustering)等。
(4)聚类分析(Cluster analysis):BIRCH算法、DBSCAN算法,期望最大化(Expectation-maximization,EM)、模糊聚类(Fuzzy Clustering)、K-means算法、K均值聚类(K-means Clustering)、K-medians聚类、均值漂移算法(Mean-shift)、OPTICS算法等。
(5)异常检测(Anomaly detection)类:K最邻近(K-nearest Neighbor,KNN)算法,局部异常因子算法(Local Outlier Factor,LOF)等。
常见的半监督学习类算法包含:生成模型(Generative Models)、低密度分离(Low-density Separation)、基于图形的方法(Graph-based Methods)、联合训练(Co-training)等。
常见的强化学习类算法包含:Q学习(Q-learning)、状态-行动-奖励-状态-行动(State-Action-Reward-State-Action,SARSA)、DQN(Deep Q Network)、策略梯度算法(Policy Gradients)、基于模型强化学习(Model Based RL)、时序差分学习(Temporal Different Learning)等。
常见的深度学习类算法包含:深度信念网络(Deep Belief Machines)、深度卷积神经网络(Deep Convolutional Neural Networks)、深度递归神经网络(Deep Recurrent Neural Network)、分层时间记忆(Hierarchical Temporal Memory,HTM)、深度波尔兹曼机(Deep Boltzmann Machine,DBM)、栈式自动编码器(Stacked Autoencoder)、生成对抗网络(Generative Adversarial Networks)等。
二、按照解决任务的不同来分类,粗略可以分为二分类算法(Two-class Classification)、多分类算法(Multi-class Classification)、回归算法(Regression)、聚类算法(Clustering)和异常检测(Anomaly Detection)五种。
1.二分类(Two-class Classification)
(1)二分类支持向量机(Two-class SVM):适用于数据特征较多、线性模型的场景。
(2)二分类平均感知器(Two-class Average Perceptron):适用于训练时间短、线性模型的场景。
(3)二分类逻辑回归(Two-class Logistic Regression):适用于训练时间短、线性模型的场景。
(4)二分类贝叶斯点机(Two-class Bayes Point Machine):适用于训练时间短、线性模型的场景。(5)二分类决策森林(Two-class Decision Forest):适用于训练时间短、精准的场景。
(6)二分类提升决策树(Two-class Boosted Decision Tree):适用于训练时间短、精准度高、内存占用量大的场景
(7)二分类决策丛林(Two-class Decision Jungle):适用于训练时间短、精确度高、内存占用量小的场景。
(8)二分类局部深度支持向量机(Two-class Locally Deep SVM):适用于数据特征较多的场景。
(9)二分类神经网络(Two-class Neural Network):适用于精准度高、训练时间较长的场景。
解决多分类问题通常适用三种解决方案:第一种,从数据集和适用方法入手,利用二分类器解决多分类问题;第二种,直接使用具备多分类能力的多分类器;第三种,将二分类器改进成为多分类器今儿解决多分类问题。
常用的算法:
(1)多分类逻辑回归(Multiclass Logistic Regression):适用训练时间短、线性模型的场景。
(2)多分类神经网络(Multiclass Neural Network):适用于精准度高、训练时间较长的场景。
(3)多分类决策森林(Multiclass Decision Forest):适用于精准度高,训练时间短的场景。
(4)多分类决策丛林(Multiclass Decision Jungle):适用于精准度高,内存占用较小的场景。
(5)“一对多”多分类(One-vs-all Multiclass):取决于二分类器效果。
回归
回归问题通常被用来预测具体的数值而非分类。除了返回的结果不同,其他方法与分类问题类似。我们将定量输出,或者连续变量预测称为回归;将定性输出,或者离散变量预测称为分类。长巾的算法有:
(1)排序回归(Ordinal Regression):适用于对数据进行分类排序的场景。
(2)泊松回归(Poission Regression):适用于预测事件次数的场景。
(3)快速森林分位数回归(Fast Forest Quantile Regression):适用于预测分布的场景。
(4)线性回归(Linear Regression):适用于训练时间短、线性模型的场景。
(5)贝叶斯线性回归(Bayesian Linear Regression):适用于线性模型,训练数据量较少的场景。
(6)神经网络回归(Neural Network Regression):适用于精准度高、训练时间较长的场景。
(7)决策森林回归(Decision Forest Regression):适用于精准度高、训练时间短的场景。
(8)提升决策树回归(Boosted Decision Tree Regression):适用于精确度高、训练时间短、内存占用较大的场景。
聚类
聚类的目标是发现数据的潜在规律和结构。聚类通常被用做描述和衡量不同数据源间的相似性,并把数据源分类到不同的簇中。
(1)层次聚类(Hierarchical Clustering):适用于训练时间短、大数据量的场景。
(2)K-means算法:适用于精准度高、训练时间短的场景。
(3)模糊聚类FCM算法(Fuzzy C-means,FCM):适用于精确度高、训练时间短的场景。
(4)SOM神经网络(Self-organizing Feature Map,SOM):适用于运行时间较长的场景。
异常检测
异常检测是指对数据中存在的不正常或非典型的分体进行检测和标志,有时也称为偏差检测。
异常检测看起来和监督学习问题非常相似,都是分类问题。都是对样本的标签进行预测和判断,但是实际上两者的区别非常大,因为异常检测中的正样本(异常点)非常小。常用的算法有:
(1)一分类支持向量机(One-class SVM):适用于数据特征较多的场景。
(2)基于PCA的异常检测(PCA-based Anomaly Detection):适用于训练时间短的场景。
常见的迁移学习类算法包含:归纳式迁移学习(Inductive Transfer Learning) 、直推式迁移学习(Transductive Transfer Learning)、无监督式迁移学习(Unsupervised Transfer Learning)、传递式迁移学习(Transitive Transfer Learning)等。
算法的适用场景:
需要考虑的因素有:
(1)数据量的大小、数据质量和数据本身的特点
(2)机器学习要解决的具体业务场景中问题的本质是什么?
(3)可以接受的计算时间是什么?
(4)算法精度要求有多高?
————————————————
原文链接: