天天看點

keras tensorflow session

擷取keras已經建立的session:

from keras import backend as K
sess = K.get_session()
           

給keras設定傳遞一個建立好的session:

K.set_session(sess)
           

參考:

https://stackoverflow.com/questions/53653303/where-is-the-tensorflow-session-in-keras

正常使用keras建立好的session:

傳遞給compile的**kwargs将會被傳遞給session:

from tensorflow.core.protobuf import config_pb2
with session.Session() as sess:
    sess.run(c, options=config_pb2.RunOptions(
        report_tensor_allocations_upon_oom=True))
           

可以被寫成: 

import tensorflow as tf
run_opts = tf.RunOptions(report_tensor_allocations_upon_oom = True)

model.compile(loss = "...", optimizer = "...", metrics = "..", options = run_opts)
           

參考:https://github.com/tensorflow/tensorflow/issues/17076

https://stackoverflow.com/questions/49665757/how-to-add-report-tensor-allocations-upon-oom-to-runoptions-in-keras

繼續閱讀