安全人工智能
嘿,朋友们,我有一个想法,可以让神经网络以确定性的方式而不是概率性的方式进行构建。
目前,我们在非结构化数据上训练神经网络,但问题在于它们是概率模型,难以理解。
我想创建一个全可理解的新神经网络,每个权重都是有意图的。
我们的做法是这样的:我们创建一个专门用于读取、理解和编写实际神经网络权重的神经网络。
这个想法是,一个经过正确训练的网络实际上可以有意地创建和更新神经网络,以确定性方式融入新知识。
比如,你可以说“创建一个可以读取MNIST的网络”,它就能真正知道如何构建这个网络,包括权重,并且会为网络中的权重提出合理的值。它会具体说明每个神经元和每个连接的实际权重值。
这件事的酷之处在于,我们可以让它对各种神经架构产生直觉。它会设置权重,分配输入值,运行网络,并进行“调试”,从而在构建神经网络方面越来越出色。
老实说,我们可以让它进行强化学习,每次它做出更好的更新时,就会像“是的”一样!并通过对这一系列进行强化学习来奖励自己,我们并行进行,成功的网络将胜出。
这样做的好处在于,对于安全敏感的场景,拥有一个能够真正理解和检查权重含义及用途的人工智能,并能够为特定目的编辑这些权重。这可以防止例如手术机器人因为在预训练阶段看到屠宰场的视频而导致神经元设置不当,切割过多。
另一个好处是,它可以智能地执行我们大脑所做的事情——创建从早期层到后期层的“跳跃”连接,从而提高效率。
它还可以提高效率,仅建立必要的少量连接。它可以智能选择数据类型,在敏感且需要高精度的区域使用高精度浮点数,而在其他地方使用低精度。
通过训练一个能够检查和构建网络的网络,我们可以更接近于确保网络中没有不良神经元。
由于网络中有数十亿个神经元,我猜它需要逐层高低级别地检查神经元,逐步进行大量工作和不同部分的实验,并创建一个纯文本的“数据库”,记录各部分的引用内容,它可以制作索引等。
最终,一个神经网络可以像一种语言一样“自我编译”,甚至不需要预训练阶段或反向传播。
查看原文
Hey friends I have an idea for a way to make neural networks deterministiclly instead of probabilistically.<p>Right now we train neural networks on unstructured data but the problem is they are probabilistic models and hard to understand.<p>I want to create a new neural network that is fully understandable, and each weight is intentional.<p>So what we do is this. We create a neural network that specializes in reading, understanding and writing actual neural network weights.<p>So the idea is that a correctly trained network could actually intentionally create and update neural networks with new knowledge deterministically.<p>So like you could say "create a network that can read mnist", and it would like actually know how to make the network <i>including the weights</i>, and it would come up with reasonable values for the weights in the network. It would specify each nerve and each connection with the actual value of the weight.<p>The cool thing about this is we could have it like gain an intuition for various neural architectures. it would set weights, assign input values, run it through, and "debug" so it would get better and better at making neural nets.<p>Honestly, we could have it like do reinforcement learning where every time it makes updates that are better it can be like "yes"! and it will reward itself by doing reinforcement learning for that series, and we do this in parallel and the ones that work win.<p>So the benefit would be for safety sensitive scenarios, having an ai that can truly understand and inspect what weights mean and what they are for, and ability to edit them for precise purpose. This would prevent a surgery robot, for example, from having neurons left over poorly set from bad training cutting too much because it saw a video in pretraining about a butcher shop.<p>The other benefit is that it could intelligently do what our brains do - create "skip" connections from early layers to later layers enhancing efficiency.<p>It could also lead to enhanced efficiency where it only makes a few connections that are necessary. It could also choose data types intelligently using high precision floating points for areas that are sensitive and need it, and low precision elsewhere.<p>By training a network to be able to inspect and make networks, we can get much closer to guaranteeing that networks don't have rogue neorons.<p>Since networks have billions of neurons, I would guess that it would need to do inspection of neurons at high levels and low levels bit by bit and a ton of work and experimentation on different sections and sort of create a plain text "database" of what sections refer to what, it could make indexes and stuff like that.<p>Eventually a neural network could be "self compiling" like a language where it doesn't even need a pretraining phase or backprop.