2024-05-08 12:06:46 发布
网友
我正在考虑创建一个定制的神经网络。基本结构与通常相同,但我想截断层之间的连接。例如,如果我构建了一个具有两个隐藏层的网络,我希望删除一些权重并保留其他权重,如下所示:
这不是传统的{}(以避免过度装配),因为应指定并固定剩余重量(连接)
python中有什么方法可以做到这一点吗?Tensorflow、pytorch、theano或任何其他模块
是的,你可以在tensorflow中这样做
在tensorflow代码中会有这样的层:
m = tf.Variable( [width,height] , dtype=tf.float32 )) b = tf.Variable( [height] , dtype=tf.float32 )) h = tf.sigmoid( tf.matmul( x,m ) + b )
你想要的是一些新的矩阵,让我们称之为kill的k。它将杀死特定的神经连接。神经连接在m中定义。这将是您的新配置
k = tf.Constant( kill_matrix , dtype=tf.float32 ) m = tf.Variable( [width,height] , dtype=tf.float32 ) b = tf.Variable( [height] , dtype=tf.float32 ) h = tf.sigmoid( tf.matmul( x, tf.multiply(m,k) ) + b )
你的kill_矩阵是由1和0组成的矩阵。为每个你想保持的神经连接插入1,为每个你想杀死的神经连接插入0
是的,你可以在tensorflow中这样做
在tensorflow代码中会有这样的层:
你想要的是一些新的矩阵,让我们称之为kill的k。它将杀死特定的神经连接。神经连接在m中定义。这将是您的新配置
你的kill_矩阵是由1和0组成的矩阵。为每个你想保持的神经连接插入1,为每个你想杀死的神经连接插入0
相关问题 更多 >
编程相关推荐