可微编程简单来说,就是把神经网络当成一种语言,而不是一个简单的机器学习的方法,从而描述我们客观世界的概念以及概念之间的关系。目前最流行的方法是用深度学习提取特征,然后结合机器学习的一些方法来解决实际当中的一些问题,也可以反过来用深度神经网络拿来直接生成数据,也就是目前最火的生成式对抗网络。但是这样做可解释不强。可微编程把神经网络直接当成一种语言,直接用于替代问题的描述或者说抽象化问题。这样做的话易于优化。只需要一个SGD或者SGD的变种,而不需要发展出非常复杂的优化的算法。此外,还易于计算。并且也能做端到端的学习。所以说它是利器也是有道理的。
深度学习三巨头之一Yann LeCun了解一下吧,可微分编程的说法来源于他,他同时也承认了“可微分编程”只不过是重新命名了现代深度学习技术体系,和当年给神经网络里有两个以上隐藏层的变体起名叫“深度学习”差不多,所以除了概念很新以外,也没有什么是很陌生的。后深度学习时代的网络通过从单网络到多网络的协同优化完成感知、决策与认知的有效结合;是数据规模及硬件加速平台的整体全面发展,但是深度学习本身还是具有黑盒智能、可解释性差等质疑,现在绝大多数可微编程的工作都是基于优化的过程展开,发现能得到新的长短期记忆,再从可微编程角度,找到与长短期记忆网络的连接,作为衔接传统算法与深度学习之间的桥梁为深度算法提供可解释性,其实是有可能成为打开深度学习黑盒子利器的。
现在的可微编程是对传统的继续学习方法的等价或者一种替代物。从问题的描述,再到问题的建模、求解,这是一个很复杂的过程。如果我们对传统的学习的方法,在一定的假设和前提下已经有建好的建模,完成等价的神经网络的建立,能走出最容易的一步。但是如果我们真的在未来要贯彻可微编程,就是把它当成一种语言。神经网络应该更进一步直接对问题进行建模,也就是对我们的物理现象进行抽象完成建模,并且传统的统计机器学习方法有一些先验知识,进而解决我们的一些实际问题。
人们现在普遍认为AI和区块链因为各自的特征及存在的缺馅决定了这两者的结合是必然的选择,分布化和去中心化的区块链给AI带来良好的数据基础,AI又拥有成熟得模块资源和算法资源,如果将人工智能添加到区块链中,可以让区块链变得更加节能、安全和高效,其智能合约也能变得更加得完善。人工智能与区块链的关系就好比计算机与互联网之间的关系,计算机为互联网提供了生产工具,互联网为计算机实现了信息互联互通;人工智能将解决区块链在自治化、效率化、节能化以及智能化等方面难题,而区块链将把孤岛化、碎片化的人工智能以共享方式实现通用智能,前者是工具,后者是目的。所以可以说在区块链上构建人工智能完全是可行的。这两者的结合目前了解到的大概会有2种不同的方式,而这2种方式的侧重点也有所不同:一是基于区块链,将AI的功能用于优化区块链(包括私链、同盟连、公链)的搭建;二是基于AI,利用区块链的去中心化和价值网络的天然属性,分布式解决AI整体系统的调配,以及实现数据、算法、模型资源的自由流动。区块链和AI作为技术层面两个极端方面:一方面培养封闭数据平台的集中智能,另一方面在开放数据环境中推动分散式应用。如果我们找到一种智能的方法来使它们一起工作,那么对于这两种技术而言都是极大的发展。
区块链技术创建了充满数据的世界。AI解决方案在没有完全分析的数据集时不会有效果。这些数据集的创建,以及AI技术的发展,都有结合的空间。区块链-AI的结合简化了人们之间的合作。在很多发展中国家,要开银行户头很困难,而且赚取法币也不容易。赚取加密货币成为了解决方案。注册以太坊或者比特币钱包只需要几分钟而已。总结下来,区块链可以通过扩大自身社区,从而加速AI在现实世界的融入,其中包括更多的劳动力以及可以使得数据集能够不仅是被科技巨头所掌控,也可以给一些小型企业。区块链有这种潜力来打破现有AI发展的障碍,最终会导致AI技术更有效率,更开放以及更加廉价。
node在某些方面显然是失败的,其中存在的问题是无法忽视的。js社区常年选择性失明的那些问题,总有人要站出来改正。能脑补出这个问题的标题党,也是傻X。演讲里确实是提到了一些问题,但并没有说已无力回天。那么多公司,那么多项目能因为有人指出来几个问题就不能工作了吗?就因为这个人是最先提出的Node的人问题就能更严重是吧?大家都是成年人了,一天到晚咋咋呼呼的不嫌累吗?再说做前端的人那么多年技术迭代都过来了,这点小风小浪又不算啥了,小年青的就少抱怨吧,非得做前端就得习惯,这年头哪有一招鲜吃遍天的技术?对新人的建议:不要学deno,也不要学node,最好连前端都不要碰。
node在某些方面显然是失败的,其中存在的问题是无法忽视的。js社区常年选择性失明的那些问题,总有人要站出来改正。能脑补出这个问题的标题党,也是傻X。演讲里确实是提到了一些问题,但并没有说已无力回天。那么多公司,那么多项目能因为有人指出来几个问题就不能工作了吗?就因为这个人是最先提出的Node的人问题就能更严重是吧?大家都是成年人了,一天到晚咋咋呼呼的不嫌累吗?再说做前端的人那么多年技术迭代都过来了,这点小风小浪又不算啥了,小年青的就少抱怨吧,非得做前端就得习惯,这年头哪有一招鲜吃遍天的技术?对新人的建议:不要学deno,也不要学node,最好连前端都不要碰。
对于无监督学习领域。我只能回答这个领域才刚刚起步。而当下无监督领域流行的算法相比有监督学习来说差别很大。机器学习目前还在有监督学习阶段发展,不过目前有慢慢向无监督学习发展的趋势,从而出现了半监督学习。比如康奈尔大学研究出的半监督学习的方法:主要是结合贝叶斯和对抗生成网络提出来的。
我认为无监督学习缺乏一个明确的理论。目前提出的无监督学习的理论都与期望差别过大,效果也非常差。其次,与有监督学习相比,无监督学习难以对模型进行训练。大量的原始数据需要有监督学习模型自己去进行分类与学习,然后通过这些数据对模型进行训练。最后,无监督学习缺乏反馈。我的专业是自动化,所以对于自控控制中的反馈模型非常熟悉。反馈模型在有监督训练中也有着广泛的应用。这对于机器学习非常有用,机器学习可以通过反馈对模型进行调整。
首先我觉得无监督学习迷雾重重,目前无监督学习领域并没有一个好的正确的方向。但是,本身无监督学习相比于有监督学习要难许多。而且我认为无监督学习应该归属到强人工智能领域。而有监督学习应该归属到弱人工智能领域。所以我认为无监督学习的设计模式、设计方法应该跟有监督学习完全不同。但是,目前的无监督学习好像完全是在有监督学习的基础之上发展的,甚至还有提出处于有监督学习与无监督学习之间折中的方案:半监督学习。我认为这是不对的,我们如果研究无监督学习,就应该完全抛弃有监督学习,不能被有监督学习中的理论、方法所影响到。尽管有监督学习目前已经取得了不错的成果。但是这很容易影响我们的思维,让我们的思维束缚在有监督学习的框架中。
无监督学习难题很多,目前仍然没有一个重大的突破性进展出现。需要我们的思维有重大的跳跃才能找到一个好的解决方案。