zoukankan      html  css  js  c++  java
  • Keras & Theano 输出中间层结果

    Keras & Theano get output of an intermediate layer

    1.使用函数模型API,新建一个model,将输入和输出定义为原来的model的输入和想要的那一层的输出,然后重新进行predict.

    import seaborn as sbn
    import pylab as plt
    import theano
    from keras.models import Sequential
    from keras.layers import Dense,Activation
     
    from keras.models import Model
     
    model = Sequential()
    model.add(Dense(32, activation='relu', input_dim=100))
    model.add(Dense(16, activation='relu',name="Dense_1"))
    model.add(Dense(1, activation='sigmoid',name="Dense_2"))
    model.compile(optimizer='rmsprop',
                  loss='binary_crossentropy',
                  metrics=['accuracy'])
     
    # Generate dummy data
    import numpy as np
    #假设训练和测试使用同一组数据
    data = np.random.random((1000, 100))
    labels = np.random.randint(2, size=(1000, 1))
     
    # Train the model, iterating on the data in batches of 32 samples
    model.fit(data, labels, epochs=10, batch_size=32)
    #已有的model在load权重过后
    #取某一层的输出为输出新建为model,采用函数模型
    dense1_layer_model = Model(inputs=model.input,
                                         outputs=model.get_layer('Dense_1').output)
    #以这个model的预测值作为输出
    dense1_output = dense1_layer_model.predict(data)
     
    print(dense1_output.shape)
    print(dense1_output[0])
    2.因为我的后端是使用的theano,所以还可以考虑使用theano的函数:
    #这是一个theano的函数
    dense1 = theano.function([model.layers[0].input],model.layers[1].output,allow_input_downcast=True)
    dense1_output = dense1(data)  #visualize these images's FC-layer feature
    print(dense1_output[0])

    效果应该是一样的。

     
    来源:https://blog.csdn.net/hahajinbu/article/details/77982721
     
     
     
  • 相关阅读:
    网红面试题['1','2','3'].map(parseInt)解析
    微信小程序——评论点赞功能
    微信小程序背景音频播放在6.7.2微信版本兼容
    微信小程序之音频播放
    jquery判断是否为空
    自定义单选按钮
    AJAX防重复提交
    dedecms 开发问题总结及解决方案
    程序员面试被问到“三次握手,四次挥手”怎么办?
    问题:The project cannot be built until build path errors are resolved
  • 原文地址:https://www.cnblogs.com/jins-note/p/9767403.html
Copyright © 2011-2022 走看看