人工智能,几经波折,起起落落。2016年3月,AlphaGo在围棋领域击败了韩国顶尖棋手李世石之后,它的热度又一次被点燃,瞬间成为了家喻户晓的科技明星。 那么类似这种棋谱策略游戏方面的人工智能,它是什么样的技术呢? 首先,小编为大家介绍一下人工智能这一概念。 人工智能(Artificial Intelligence),即AI,它是计算机科学的一个分支,它是研究、研发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 它企图了解智能的本质,并且能以人类的智能方式做出反应的智能机器,该领域的研究包括语音识别、图像识别、自然语言处理等。 人工智能的概念比较宽泛,它包括机器学习和深度学习,并且每次技术的变革都是在解决相关智能技术遇到的瓶颈问题。 比如:深度学习在机器学习的基础上引入了神经网络,它可以自动学习特征和任务之间的关联,还能从简单特征中提取复杂的特征,这样就解决了传统机器学习特征提取问题难的弊端。 今天小编主要给大家介绍几种机器学习的算法,为以后的深度学习打基础: 算法一:逻辑回归(Logistic Regression, LR) 它为逻辑回归分析,是分类和预测算法中的一种。采用的是监督学习的方式,通过分析历史数据特征来对未来事件发生的概率进行预测。 代表函数是sigmoid函数,它具有我们需要的一切优美特性,其定义域在全体实数,值域在[0, 1]之间,并且在0点值为0.5。公式如下: 那么,如何将f(x)转变为sigmoid函数呢? 设p(x)=1即为表示具有特征x的样本被分到类别1的概率,那么p(x)/[1-p(x)]则被定义为让步比(odds ratio)。 为了解除p(x),则引入对数: 那么可得: 此时的p(x)这就是需要的sigmoid函数。如果要机器学习,那么根据已知数据,拟合出该式中n个参数c即可。 算法二:决策树 它的思想是:寻找一种算法,计算机可以根据该算法完成像if-else结构一样从根开始不断判断选择到叶子节点的树,这样的树就称为决策树。 该方法的重点就在于如何从这么多的特征中选择出有价值的,并且按照最好的顺序由根到叶。 信息增益则是最常见的算法之一。它划分数据集的规则是将无序的数据变得更加有序。它涉及到信息的有序无序问题,那么就要考虑信息熵(另一种方法是基尼不纯度)了。 熵在信息论中代表随机变量不确定度的度量。一个离散型随机变量 X的熵 H(X)定义为: P(x),i=1,2,…,X为信源取第i个符号的概率 信息熵用来衡量信息量的大小: 若不确定性越大,则信息量越大,熵越大; 若不确定性越小,则信息量越小,熵越小。 比如我们要计算“夏天下雪”这个事件的信息熵,这个信息量很大,那么熵也很大。 该算法计算复杂度不高,输出结果易于理解,对中间值缺失不敏感,可以处理不相关的特征数据,它是一种非参数的监督式学习的方法,常常用于分类和回归。 情况三:朴素贝叶斯 在机器学习分类算法中,朴素贝叶斯和绝大多数的分类算法不同。 例如:逻辑回归(LR),svm,决策树,KNN等等,这些都是判别方法。 他们是直接学习出特征输出Y和特征X之间的关系:决策函数Y = F(X)或条件分布P(Y|X),然而朴素贝叶斯是生成方法,它直接找出特征输出Y和特征X的联合分布P(X,Y),则可知:P(Y|X) = P(X,Y)/P(X) 首先回顾一下朴素贝叶斯相关的统计学知识: 贝叶斯的思想可以等效为:先验概率 数据=后验概率。 一般来说先验概率就是我们对于数据所在领域的历史经验,但是这个经验常常难以量化或者模型化,那么我们可以假设先验分布的模型,比如正态分布,高斯分布等。 假如X和Y相互独立,则有: 假如X和Y不相互独立,则公式: Or: 那么,则有全概率公式: 从上面的公式很容易得出贝叶斯公式: 该算法在scikit-learn中,一共有3个朴素贝叶斯的分类算法类。 它们分别是GaussianNB,BernoulliNB和MultinomialNB。 其中: 1)GaussianNB表示先验为高斯分布的朴素贝叶斯; 2)BernoulliNB表示先验为伯努利分布的朴素贝叶斯; 3)MultinomialNB表示先验为多项式分布的朴素贝叶斯。 这三个类适用的分类场景各不相同,一般来说: 1)假如样本特征的分布绝大部分是连续值,使用GaussianNB; 2)假如样本特征是二元离散值或者很稀疏的多元离散值,则BernoulliNB; 3)假如样本特征的大部分是多元离散值,使用MultinomialNB。 总之在很多实际应用中,贝叶斯理论很好用,比如垃圾邮件分类,文本分类。 总之机器学习算法是构架深度学习神经网络的基础,只有我们打好了基础,我们才能更好的学习,深度学习的精髓。 最后小编推荐,DeepMind团队和暴雪公司给大家提供了基于星际争霸II的强化学习环境SC2LE,它提供一个开源的Python界面,用于与游戏引擎进行通信,据相关的强化学习算法构造一个基于游戏行为的控制策略。希望大家体验下。 本文属于由科技原创,转载请联系后台 文|由小来 |
|