深度线性网络中的非线性计算

OpenAI Blog 论文

摘要

# 深度线性网络中的非线性计算 来源:[https://openai.com/index/nonlinear-computation-in-deep-linear-networks/](https://openai.com/index/nonlinear-computation-in-deep-linear-networks/) `` ``` 1x = tf.placeholder(dtype=tf.float32, shape=[batch_size,784]) 2y = tf.placeholder(dtype=tf.float32, shape=[batch_size,10]) 34w1 = tf.Variable(np.random.normal(scale=np.sqrt(2./784),size=[784,512]).astype(np.float32)) 5b1 = tf.Variable(np.zeros(512,dtype=np.float32)) 6w2 = tf.Variable(np.random

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/04/20 14:56

# 深层线性网络中的非线性计算 来源:https://openai.com/index/nonlinear-computation-in-deep-linear-networks/ `` `` 1x = tf.placeholder(dtype=tf.float32, shape=[batch_size,784])2y = tf.placeholder(dtype=tf.float32, shape=[batch_size,10])34w1 = tf.Variable(np.random.normal(scale=np.sqrt(2./784),size=[784,512]).astype(np.float32))5b1 = tf.Variable(np.zeros(512,dtype=np.float32))6w2 = tf.Variable(np.random.normal(scale=np.sqrt(2./512),size=[512,512]).astype(np.float32))7b2 = tf.Variable(np.zeros(512,dtype=np.float32))8w3 = tf.Variable(np.random.normal(scale=np.sqrt(2./512),size=[512,10]).astype(np.float32))9b3 = tf.Variable(np.zeros(10,dtype=np.float32))1011params = [w1,b1,w2,b2,w3,b3]12nr_params = sum([np.prod(p.get_shape().as_list()) for p in params])13scaling = 2**1251415def get_logits(par):16 h1 = tf.nn.bias_add(tf.matmul(x , par[0]), par[1]) / scaling17 h2 = tf.nn.bias_add(tf.matmul(h1, par[2]) , par[3] / scaling) 18 o = tf.nn.bias_add(tf.matmul(h2, par[4]), par[5]/ scaling)*scaling19return o ``

相似文章

线性表示是如何学习的?抽象动态过程的精确解

arXiv cs.LG

本文构建了一个框架,研究线性概念表示在神经网络训练过程中如何涌现,在线性网络中提供精确解,并分析非线性网络中的抽象动态过程。结果揭示了控制抽象的关键原则,并为可解释性和控制提供了启示。

重新思考神经非线性:门控机制

arXiv cs.LG

本文提出阈值门控(TG)作为神经非线性的统一原语,表明标准激活函数可以表示为TG的实例。作者通过将预训练模型在各种架构间转换而不进行重新训练来验证其方法,并讨论了硬件优势。