字数有点过多了,就这样吧,懒得改了。
内容大致分为这几块:
语音输入与人工智能
提高识别准确率的工程意义
通用化与专门化的关系
机器学习的原理
正文
语音识别就是一种人工智能。像现在的这几句话,就是通过语音识别输入的。
关于这种人工智能的这种实现原理的话。主要还是通过一种模式匹配,也就是通过一种误差最小化的方式,不断迭代而获得一种知识结构的一种过程。
就比如说现在的语音识别,人想要识别语音的话,他往往是通过各种的语调,声调,然后还有一些其他的一些东西来识别的。而机器去识别的话,机器本身它也需要一些特征,也就一些数据特征来识别出所说的这句话。这些特征一般都具有一些客观性质,像频率,振幅等等这些东西。但是单纯的通过这么多的输入特征来准确而快速的识别它其实也是一个问题。
其实你看现在的机器学习是吧,像神经网络,深度学习,看起来非常的高大上,但其实他们的原理并不复杂。这其实也涉及到人工智能领域中的一个原理,奥卡姆剃刀。如果一项任务可以通过简单的方式来完成,那么一定不要使用复杂的方式。
这几天也在看人工智能相关的一些书籍。包括他的一些工程实现,还有他的一些基本原理,所使用的数学方法,像一些最优化的算法,还有像一些概率方法,概率估计,参数估计,非参数估计这些东西。虽然可能在一些公式的表示形式上是非常的复杂,各种距离,范数,然后还有其他的一些类似的东西来估计这个误差。但整体上呢这些方法都是有机可循的,都是比较成熟的一些数学方法,本质上并没有什么非常陌生的地方。
比如上面这一大段内容都是通过语音识别的方式来输入的,正确率可以说是非常高的。这个东西嘛,就像现在的机器翻译一样,可以作为一种辅助工具来减轻人的负担,解决一些简单劳动,而只需要在一些比较困难的点上是用人的智力去解决,通过机器辅助的方式就可以极大的提高生产率。
比如,这么长一段话,如果纯手打就差不多需要半个小时。
但我感觉语音输入最大的难点还在于人说话的时候这种逻辑性是不怎么强的,所以说话就有很松散,不连贯的那种感觉。
其实工程上的一些进步的话,这就通过这一系列准确率,成功率的提升来体现的,如果它的准确率只有50%以下,那么他的失误几率就太大了,想要纠正这些错误,人需要花费很大的精力,就不划算。但如果他的准确率到达了80% ,90%多个点的话,那么你想要纠正其中的错误,就是比较容易的一件事情。
PS:像前面这将近一千字的篇幅,需要修改的内容不到100字,这也是很让人惊讶的,在几年前的话,应该还达不到这样的准确率的。
对于一项复杂任务,总可以分解为几个小任务的组合,而整个任务的成功率就是这些单个任务成功率的乘积,那么如果这几个小任务的成功率都得到了极大的提高,那么整个复杂过程,他的成功率就会非常高。
简单的就拿通信系统来讲,通信系统的实现分为很多个阶段,比如接入网阶段,比如网络传输阶段,还有服务器端客户端这几个点。于是通讯系统的准确率就需要这几个环节都达到很高的准确率。
还有就是现在非常火的物联网,它本身也是涉及多个环节的一个复杂任务,包括物品的信息输入,信息识别,边缘计算,以及他的服务器端的一些应用以及信息回传。
整个复杂系统,就是通过这样的一系列的小环节来实现的,它本身并不是一个杂糅的,一个大的不可分的系统。这其实也是现代管理中的一个观点,将各个不同的功能部分分离,封装以及组合远比实现一个非常耦合非常紧密的一个大系统,要更加的可靠,要更加易于管理。
一个具体的实例的话,可以考虑现在的程序编写过程,以前的程序的话,大多数就是一个文件一个过程,完成全部任务,而现在大多是通过封装各种对象,封装各种常用操作,构成常用库,通过库函数的调用来实现一个复杂的任务。
所以这也是现在技术的一个,可以说是一个目标,也就等他的成功率达到某一个比较高的程度的话,那么他就可以作为可靠系统中的一个可替换模块,那么对于其他的复杂系统,只要有这个功能需求,就可以把这个模块给它接入进去,并且接入之后他整个系统的稳定性,他的可靠性,抗干扰性也会很高。
工程上经常讲的一个话题就是整合,整合各个子系统,然后把它形成一个复杂系统。因为现在的产品,他所拥有的部件,他所实现的各种功能都非常复杂,一家企业或者少数几家企业想要将它整个过程完全打通,他是没有必要的,而且也是很难实现的。比如说汽车,汽车的话是机械元件,电子元件以及网络软件等等一些东西所构成的一个复杂系统。在原理上或者原则上的话,我们是可以把它整合成一整个系统的,它里面也有机械,有电子,也有网络,但是这样的整合出来的系统,他显然是非常复杂,非常臃肿的,而且抗干扰能力非常差,可替换能力也是非常差的。所有的这些特征,对于它的一个规模化生产而言,都是不利因素。
对产品生产比较了解的都知道,产品最重要的是要有一个标准化,有一个可替换性,也就我一个部分坏了,我可以到任意的一家市场买到这个规格的配件,把它给更换上去,那么机器就马上就能用了。就是这种方便可替换性才导致了这种规模化的生产,规模化的使用。
然后是关于人工智能给人们所带来的一些意义。这主要是一种思维方式的转变,像以前的话,人们认为如果要实现一件事情,那我必须彻头彻尾的去了解他,把他每一步都搞清楚,不然的话你想造出这个东西来,他是非常不可靠的。而现在的观点的话,你可以在一定的误差范围内,去实现一个东西,不必非要非常准确,而是可以有一些误差。这其实是和现实很相似的,因为现实中你不可能完全了解所有的情况,但是你仍然需要做出一些决定,这些决定就是在一种不确定的或者有部分不确定的这个环境下进行的。
不过,这种想法也是现在人工智能发展最大的问题。因为你的本质上是一种手段,就是一种调整误差的一种手段,通过对结构参数的调整来减小输出误差的这样一种手段,所以如果要提高它的准确率的话,它是一种以一种通用化的方式去实现的,而大家都知道,通用化显然比专门化得到的结论要弱。
对专门问题的深入研究肯定还需要一些专门化的一些手段,而这个方面也是这个领域里面给出的许多优化措施,与许多针对某一特定场合所使用的这些优化措施有关的。
这也是符合科学的正常的一个发展流程,首先有通用化的理论,然后在各个专门领域将这个通用化理论进行专门化,精确化才会得到更加准确有效的专门化手段。
不过,这其实也反映了一个停滞期,因为科技的发展总是在一种通用化手段的来临之下,才会实现一个全面的爆发。一个应用,如果进入到专门化的领域的话,那就显得比较乏味和枯燥了。
不过嘛,这也是必要的准备期,因为要找到一个新的通用化理论,总得需要在专门化的领域中取得了某种大的进步,然后才有可能发现更加普遍的一种联系性,而这种联系性就是新的通用化理论。
就比如说我现在在看着这个范畴论,可以说是非常通用化的理论,但是他的诞生也是源于专门化领域中的深入研究,得到了一种特殊结构,体现了一种共性,然后进行抽象之后,才得到了这样的普世理论,并不是凭空而来的。
ps:在目前的水平下,去分析机器学习的原理,其实可以视为内外部的一种耦合。机器学习的训练集就是外部的输入输出特征,这种特征必然是和特定的内部实现相联系的。机器学习的主要目的就是使用这些输入输出来得到系统的内部实现,这显然是非常困难的任务,不过,其实对于一些简单的问题,我们早已有了精确的求解方法。比如,多项式插值,就是通过数据点获得数据曲线。还有,概率估计,通过样本点得到合理的概率分布。不过这些方法对于复杂系统就不起作用了,但是他们的思想是可以借用的,这些方法本质上是对某种度量的最小化,也就是最小化推测输出和实际输出的误差。于是,即使复杂的多层神经网络,误差的测量也总可以进行,之后就是调整参数来减小误差,以实现推测系统与实际系统的匹配。落到具体的方法,还是处于经验化的阶段,并没有统一的方法。这也只是目前的认识。
内外分离和内外耦合,一个是对已知事物的高效管理,一个是对未知事物的有效探索。都是非常有意思的思想。也是将事物分为内与外而产生的艺术。
pps:我觉得语音输入暂时还只能代替逻辑性不强的内容。毕竟语言的媒介本身就具有不同的特质,口语流畅而直白,书写缜密而严谨,图像形象而情绪化。传达不同的内容,自然要选择不同的载体。