# Load the weights into memory
weights_dict = np.load('./weight-path/bvlc_alexnet.npy', encoding='bytes').item()
# Loop over all layer names stored in the weights dict
for op_name in weights_dict:
# Check if layer should be trained from scratch
if op_name not in self.SKIP_LAYER:
with tf.variable_scope(op_name, reuse=True):
# Assign weights/biases to their corresponding tf variable
for data in weights_dict[op_name]:
# Biases
if len(data.shape) == 1:
var = tf.get_variable('biases', trainable=False)
session.run(var.assign(data))
# Weights
else:
var = tf.get_variable('weights', trainable=False)
session.run(var.assign(data))
5条答案
按热度按时间pinkon5k1#
我不知道有没有现成的converter to import Caffe models into tensorflow,但是有人写了一个converter to import Caffe models into tensorflow,你可以找到pre-trained Alexnet models for Caffe(也可以看the BVLC Model-Zoo),我不能保证它一定能工作,但是你很可能把这两个粘在一起得到你想要的。
yqhsw0fo2#
是的,有AlexNet预训练权重可用于Tensorflow,您可以下载here
要将它们加载到项目中,可以使用以下代码(改编自here)
izj3ouym3#
http://www.cs.toronto.edu/~guerzhoy/tf_alexnet/的权重是AlexNet上训练过的权重的numpy数组。您可以在TensorFlow中使用这些权重。
nmpmafwu4#
不,基准测试文件只是实现,您必须进行培训和评估
mklgxw1f5#
Eduardo Rivas-Posada的This github repository为Tensorflow/Keras提供了AlexNet权重。这些不是原始的AlexNet权重,而是在相同的模型架构上重新创建的。