人话人工智能(1):深情还需浅谈

除了金三胖,每个人一天都有24个小时,工作8小时,睡眠8小时,业余也有8个小时。

我在业余时间了解了下人工智能的有关知识,感觉挺有意思,稍作分享。

下面将要说的内容,是地球上的一粒尘埃在宇宙中的大小。

这句话很重要,因为行家会饶过我。

我所理解的人工智能,就是计算机模拟人的思考方式,达到能从条件得出结果的能力。

由于计算机脑子带电,不怕累,所以它可能在判断力上,比你更厉害。

那么,问题来了,他怎么模拟人的思考呢?

这得从神经元说起。

人话人工智能(1):深情还需浅谈

人的一个神经反应是好多条件促成的,也就是好多输入造成一个输出。

比如,你用手指按了一个按钮,然后感觉可能会受到伤害,手猛得缩了回去。

这过程中发生了什么?

你感觉到按钮有点烫,按钮表面很光滑,按下的时候看到红灯闪烁,并听到了报警声。

这么多信息输入,肯定不是每一条都造成你缩手这个反应。

那么按钮表面光滑,不会造成你缩手。按钮有点烫,本身不是大问题,小米手机用久了也这样,充其量能占你缩手原因的两成。但是,红灯闪烁和报警声音,这个挺吓人,能占原因的六成。

那么,如果八成就能达到你缩手的条件,你这次缩手的公式就是:

按钮光滑*0 + 按钮烫*0.2 + 红灯报警*0.6 = 八成。

达到条件,所以缩手。

如果,某一次没有红灯报警,那么你就不会缩手。

其实,我们就是这么算着数长大的。

小时候,吃红苹果,感觉很好吃。其实,我们在学习。

红苹果:圆形的*0.3+红色的*0.2+有光泽*0.2 + 很大*0.1 = 八成很好吃。

不过有时候也会受到伤害。

比如吃了一个没有熟的小青苹果,那么这时我们大脑也会列一个公式。

青苹果:圆形的*0.3+不是红的*(-0.2)+没有光泽*(-0.2)+ 不大*(-0.1 )= 负两成,很难吃。

这就是学习。

在你五岁那年,忽然有人给你一个黄色的大鸭梨,这时你会有一个判断,这个东西能吃。

你是从以前的经验判断出来的。

大鸭梨:圆形的*0.3+黄色,虽然不是红色的,但也不绿*0.0+无光泽有小点点*(-0.1) + 很大*0.3 = 五成很好吃。

你吃过之后,发现确实挺好吃,这时你会得到反馈,并修改你的判断公式,黄色的是很能加分的,有点点这个特征原来不是减分,也能加一点分。

新大鸭梨判断:圆形的*0.3+黄色*0.2+有点点*0.1 + 很大*0.3 = 九成很好吃。

你十岁的时候,阿富汗的叔叔给你带了一个杨桃,你虽然从来没有见过这个东西,但是你立马能判断出这东西可能会有点酸,不过黄色的部分应该很好吃。

并没有人告诉你他的味道,你也能判断。这是因为通过不断地吃水果,你总结了很多经验,都存在你的大脑中。你吃的越多,判断的也就越准确。

如果你这辈子就吃过苹果和西瓜,那么你可能会觉得杨桃是一种什么五星鸟下的蛋。

说这么多,就是想说明,我们的学习和成长是在观察,猜测,验证和反馈中进行的。

好了,人工智能也是这样。

举个例子,比如你刚刚开始卖苹果,卖了两筐苹果,一筐好卖的,一筐不好卖的。

后来,你又弄来一筐苹果,你也不知道好不好卖。

这时就可以交给人工智能来学习并判断一下。

你只要告诉电脑,那些好买苹果的数据,不好卖苹果的数据,电脑会自动分析出来哪些是关键数据。

分析过程跟小孩子吃水果的学习一样。

人话人工智能(1):深情还需浅谈

比如x1是颜色,x2是大小。

那么,它随机几个数,这几个数据是颜色和大小的判断比率,通过公式

X1*0.4 + x2*0.4 = 八成好吃。

然后拿来好卖的那筐苹果的数据,往里算,因为那筐苹果肯定好卖,所以能看出来预测的准不准。如果准的话,再试试其他苹果符不符合这个规律。发现符合,再试试那些不好卖的苹果,是不是也符合。结果一算,不符合,不好卖的也八成好吃,那么这个0.4太高了,调成0.2,这样不好吃的苹果,就是三成好吃,也就是不好吃。

0.2调完了,再把那些好吃苹果数据拿来再试试,结果发现全都准确。那么至此,就学习完了。

得到结果是

X1*0.21345 + x2*0.622221 = 好不好吃,具体结果看苹果多大,多红。

人话人工智能(1):深情还需浅谈

上面说的训练就是前向和反向传播。

训练完了,随便拿过来一筐苹果,输入数据,立马输出好不好卖。

我自己意淫了一个小玩笑,针对于你能不能买得起房子,做一个训练和预测。

下面这个训练数据有1000条,就当我是问了1000个人得到的真实数据。

前面的0或者1是结果,0是买不起房的人,1是买得起房子的人。

后面的两位是平均每月中,吃饭时花钱的心疼指数、娱乐时花钱的心疼指数。

人话人工智能(1):深情还需浅谈

这1000条数据,没有任何界限值,当然我们也能找出规律,但是现在我要让基于TensorFlow的人工智能去找。

程序的运行效果,下图是训练的效果:

人话人工智能(1):深情还需浅谈

下图是验证训练结果的效果:

人话人工智能(1):深情还需浅谈

那么说,这个程序通过对1000条数据进行15000次的训练之后的效果,到底怎么样呢?

上图的预测谁知道是真的还是假的?

其实很真。

因为那批数据是我造的,规律是后两位加起来小于1得,就是1成功,反之结果是0。意思就是当你吃饭和娱乐不是很心疼的时候,说明你挣得钱多,有更多的钱买房子。

我造的数据,我知道这个规律。

但是电脑不知道,通过最后的预测可以看出,它自己找到了这个规律。

这,就是人工智能的初级学习和判断的应用。

再回到生活中去,它的应用就太广了。

根据大量的数据,预测城市发展,预测疾病,预测拥堵,甚至预测一个地区10岁孩子的身高,这些预测都会有一定的参考价值。可能有人会说,变化这么快,预测的能准吗?其实这就得看你把哪些数据当做参考项了,如果把变化的数据也当做其中一个条件,那么预测就会相对准一些。

说到这里的话,其实数据更为关键了。

需要完整代码的,评论留下邮箱。