加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

从江湖算命到AI算法,人工智能的年代,已经来临。

发布时间:2021-11-13 07:21:25 所属栏目:大数据 来源:互联网
导读:如果你曾经了解过江湖算命这个行当,会发现他们一个惯用的套路就是:第一时间并不会问你所问何事,会故作高深地凝视你一会,然后得出几个结论,问你他说得对不对。 然后你会惊呼:哇!算得真准! 本质上这个过程并不是算命,而是观察和总结的能力: 如是老年
如果你曾经了解过江湖算命这个行当,会发现他们一个惯用的套路就是:第一时间并不会问你所问何事,会故作高深地凝视你一会,然后得出几个结论,问你他说得对不对。
 
然后你会惊呼:哇!算得真准!
 
本质上这个过程并不是算命,而是“观察”和“总结”的能力:
 
如是老年人问事业,多是子女不孝;
 
如是年轻人穿着破烂,多是英雄迷途不知前路;
 
如是年轻女性问,十有八九是姻缘,再看其神色则可知是热恋,还是要闹分手了
 
从概率上来讲,这些论断八九不离十。你也可以朝坏了说,毕竟一个人如果过得开心快乐,是不会来算命的。
 
人类的学习和认知,大部分结论是来自经验总结,根据历史和经验归纳出规律。当遇到新的问题的时候,再根据总结出来的规律,做出预测。
 
 
不过有趣的是,人类从历史中得到的唯一教训,就是人类从来不从历史中接受教训。相似地,而机器学习不是基于推理的“演绎法”,而是基于观测的“归纳法”。这个过程中,使用算法处理历史数据,在机器学习中,叫做『训练』;『训练』得到的结果是一个『关系』,这个关系可以描述历史数据,也可以预测新的数据,这个『关系』,被称之为模型。
 
机器学习
 
我们把经验和历史(包含特征和结果)这些数据扔给机器,让他自动找出特征和结果之间的关系(模型),然后再利用这个模型进行预测和分类,这个过程就是所谓的机器学习。
 
 
华强买瓜-线性回归(Linear Regression)
 
让我们来举一个小例子。有一个人前来买瓜。
 
 
假如旁边有一个计算机,他并不知道西瓜的价格,他只能观察到秤上的数字(重量),和付了多少钱(价格)。当有很多“华强”来买瓜,这个计算机便收集了很多重量和价格的数据。
 
 
我们把这些数据列出来,计算机会从中找到一条规律,其实就是找到一条线,让这条线尽量经过所有的数据点,或者尽量离所有数据点最近。
 
 
很快,计算机就找到这条线,用一个函数来表达:价格=重量×2
 
这个规律也就是,商贩口中的“两块钱一斤”。
 
 
如果还有人来买瓜,计算机就可以根据这个规律来报出价格。当然这是一个简单的线性模型,也可以是其他类型的曲线,比如抛物线或者指数关系。机器学习有很多算法,比如最为经典的梯度下降算法,这也就是我们所说的线性回归。当然,也有能够进行“非线性拟合”的算法。
 
华强买瓜-线性回归(Linear Regression)
 
还有一种经典的机器学习模型,叫做决策树,从上到下,好像是一个开枝散叶的树。简单来说,就是根据一层层的判断,来做最终的决策或者分类。
 
就拿周六要不要打游戏这种事情来说,决策树模型如下:
 
 
要不要打游戏这件事情,受到多个变量的控制:取决于你有没有女朋友要陪,取决于你有没有紧急的工作要完成。
 
那么这个决策树是怎么来的,来自以往的经验和数据,当把这些数据输入到计算机中,就可以按照一定的算法生成决策树模型。
 
 
当然以上的决策树是一个简单的模型,大家可以看到,“有没有女朋友”这个特征的重要性被过度放大了。假如你有女朋友,但是你的女朋友不需要陪,根据这个决策树,你毅然决然地选择了打游戏。但是有一项重要的工作你并没有完成,周一上班老板肯定要砍了你的那种,所以单一的决策树往往会造成偏差。
 
女朋友比工作重要吗-随机森林(Random Forests)
 
怎么解决呢?可以通过随机挑选多个特征构建多个决策树,之后再通过“投票”的方式来进行最终的决策,这种方式被称之为“随机森林”(Random Forests)。
 
 
但是如果你精力旺盛,好家伙,同时交了八个女朋友,因为每个女朋友脾气秉性,对你的依赖程度也不尽相同,随机森林这种“随机挑选”特征的方式有可能会导致错误。
 
交了八个女朋友-梯度提升(Gradient Boosting)
 
于是又诞生了,梯度提升树(GBDT)。思路步骤如下:
 
1.与随机森林不同的是,并不是随机挑选特征来生成树,梯度提升树采用了所有的特征来构建决策树;
 
2.然后把预测的结果与真实的结果进行比对,计算出一个差值。根据这个差值,对于某些重要特征赋予权重,建立新的决策树模型。比如你给女友A赋予了更高的权重,其他女友的权重甚至都没有工作重要;
 
3.不断地重复这个步骤,就可以获得准确性更高的决策树模型,最终多个决策树模型的和就是最终结果。
 
杨绛先生书中说:
 
精通命理的对以往的事历历如绘,不差分毫。但推算将来,则忙如捕风。
 
机器学习也同样如此,对于历史的数据太容易做拟合了,只要你愿意,每一个过往的数据都能给你拟合上。但是做预测,大部分都抓瞎了,只能给出一个概率。
 
这是为什么呢?大量的现实问题,并不是“重量”,“价格”这样明确的数字,他们有可能不是数值,有可能包含多个属性,为了更好地量化他们,所以很多时候我们需要给数据打标签。其实人类在生活中,很多时候也下意识这么做,会给人群打上标签,地域黑、00后、五毛党、海军、米粉等等。
 
可见数据越多,模型就会越加的准确,这也就是机器学习中“数据为王”的原因。你的数据标准更加全面,更加准确,无疑可以获得更加精确的结果。
 
分类的奥义
 
我是哪种人-邻近算法(KNN,K-NearestNeighbor)
 
所谓K临近算法,就是有K个最近的邻居的意思。思路也很简单:
 
计算一个新数据与已有数据的距离;对距离进行排序,选择距离最小的K个点;对于K个点的属性进行查看,把这个新数据归类到那个最多的类别中去。
 
 
一个小例子,假如只用两种学生,一种勤奋苦学,一种是吊儿郎当的,他们之间的差异是学习时间和抖音时长。历史数据如下:
 
这时候有一个新人,叫孙八,学习时间3小时,游戏时间5小时,他属于哪种类型的呢?做一下数据可视化,我们一眼就可以看出孙八到底属于哪种类型。
 
当然,算法没有你这么好的眼力,他还得老老实实地计算新数据每一个数据点的距离,然后排个序。这时候我们只要统计前K个数据的标签是什么,就知道新数据应该划分到哪个类别。
 
当然,这个例子为了简化,只用了时间一个维度的数据,实际上KNN算法可以采取多个维度的数据,计算距离的方式也多种多样,最为常用的是欧氏距离。K的取值有时候也会影响结果的准确性。
 
那么如何选择一个准确的K值呢?
 
实际中并没有特别通用有效的解法,只能是不断尝试,更换参数。大家发现,这个过程跟炼丹特别像,加多少汞,用多少炭,完全不知道,凭着感觉来,爆炸了就更改比例再来一次。于是调参,也就被戏称为“炼丹”了。
 
 
概率的概率-贝叶斯分类器(Bayes classifier)
 
所谓贝叶斯分类器,主要原理就是贝叶斯定理。贝叶斯定理,其实就是计算条件概率的公式,指的就是在事件B发生的条件下,事件A发生的概率。一个很简单的例子,你经常在网上发一些自拍,然后收到了很多私信,那么大概率你是一个美女or帅哥。这里边隐藏了一个“经验概率”,就是我们认为好看的人比难看的人有更大概率收到私信,这个概率被称之为经验概率。
 
可以看到这个经验概率存在很大的主观性。而且实际生活中,许多的事物是没有办法进行客观判断的,到了互联网时代,大数据和运算力为贝叶斯提供了基础,只要数据量足够多,这个经验概率也会不断趋于准确。
 
再举一个输入法的例子:如果你使用拼音输入法,输入【天气】,那么这个词语可能是:天气、田七、天启。没有上下文的时候,天气出现的概率要比田七多得多。但是如果你前文出现了重要这两个字,那么是【田七】的概率就会比【天气】大很多。贝叶斯分类器就是基于这样的原理,来对新的数据进行分类。
 
支持向量机(SVM)
 
支持向量机,本质上也是一种逻辑回归算法,根据已有数据,用一条线作为数据集的分界线。
 
 
如图所示,两条虚线是数据集的边界线,其实这两条线也能作为两个数据集的分类,但是明显精确度不高。这时候我们需要算出两条线中间的那条实线,也就是离已有数据越远越好,这条分界的实线就被称为“超平面”。
 
为什么一条线要被称为平面呢,这是因为目前我们的数据是二维的,如果是三维的,这条线就是一个面。离超平面最近的数据点称之为“支持向量”。
 
其实这样的分类线用逻辑回归方法也能画出来,那么支持向量机的优点在哪里?我们看这样的数据集。
 
 
很明显,是很难画出一条线将两类数据分开,怎么做呢,我们可以采用“核函数”这种数学手段,把数据转换到高纬度。
 
这样我们就很容易画出这个“超平面”,来对数据进行分类。
 
未被标注的数据
 
以上所有的训练数据,都经历过标注,这些算法也被称之为监督学习。
 
那么如果我们手头上的数据没有标注,如何通过这些数据来训练模型呢?这种不需要标注数据,通过训练得到模型的算法称之为无监督学习。最为常见的就是聚类算法。
 
人以类聚-K-平均算法(K-Means)
 
步骤也很好理解:
 
1.将数据分为K组,随机选择K个对象作为初始的聚类中心;
 
2.计算每个数据点到这聚类中心的距离;
 
3.按照距离把这些点分配给对应的聚类中心。
 
其实这就是一个“近朱者赤近墨者黑”的过程,和人类自发组织的过程极其相似:
 
有一大群人,接收到命令,要分为若干个群体,这时候肯定会有人自发站出来当小组长(随机的聚类中心);
 
然后人们会按照跟组长的相似性(爱好、习惯)来决定跟定哪个组(计算距离、归类);
 
这时候已经建成,通过互相了解,人们发现,组里有一个人更加契合组长的要求,然后推选他作为新的组长(算法选出新的聚类中心)。
 
 
衡量你我的关系-降维算法(Dimensionality Reduction)
 
数据有多少维度?就拿各位读者举例子,关于你的数据有身高、体重、三维、口味、喜欢的电影、在哪个大学读书、价值观、年收入、喜欢的人等等,种种数据,要完全地形容你,这个数据可以轻轻松松达到百维,甚至千维。而每当增加一个维度时,数据体积也就会指数级增长,以现在机器的处理能力根本没有办法应对,这种情况也被称之为维数灾难。
 
那就,降维打击吧。
 
我们从一个现实的例子感受一下“数据降维”的过程。人与人之间的交往关系,是特别复杂的:
 
你请我吃过饭,我帮你修过空调,你曾经带我出去旅游,我之前给你买过生日礼物,你帮我内推过简历,我帮你引荐了一个官员,你给我推荐过股票,我帮你挂了一个协和医院的专家号。
 
那么如何衡量我们之间关系的好坏,要把种种交往关系的过程数据化,不是不可能,只是数据量太多,维度太高,导致根本无法计算。
 
那么有没有一种方法,既可以减少分析的数据量,又能够尽量地保留主要的信息。你肯定听过一句话,成年人的世界只有利益。
 
那么我们就可以把所有的交际过程转换成利益得失,请吃饭多少钱,修空调多少钱,生日礼物多贵等等等,都可以折合成金钱指标。这样原本多维的数据分析也就变成了一维数据,分析起来自然明确而简单,虽然有失精确,但是起码能够对人际交往这种事情进行衡量了。
 
这里只是为了数据降维举例,不讨论人情世故。
 
......
 
机器是否能够真的理解?
 
这是一个长盛不衰的话题,机器是否能够真的理解,机器是否有意识,一起机器是否能够预测?其实这个答案无关紧要。
 
答案的关键,就在于你怎么定义、理解、意识和预测。
 
回到开头说到的算命,有一句话说得好:
 
你若信命,一切偶然都是必然;
 
你若不信,一切必然都是偶然。
 
同样的,你认为的机器学习不过是数字的统计和矩阵的运算,那我也可以认为人类的情感和意识只不过是化学反应和神经电位的传播。对于结果来说,理解真的重要么,或者还是说人类所谓的理解,只不过是一厢情愿?
 
最后希望这篇文章可以让大家对于人工智能AI有一个简单的了解,因为人工智能的时代,已经来临。

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!