Распечатать Keras Kernel

Вероятнее всего, проблема vsftpd, чем ftplib, поскольку вы упоминаете обновление до новейшей версии, исправила проблему.

Если вы не можете прикасаться к настройкам сервера, подкласс класса FTP_TLS может помочь решить проблему ваша проблема, хотя, на мой взгляд, это довольно HACK , ссылаясь на этот вопрос SO & amp; ответы Проблема подключения к FTP TLS Python . Вы также можете взглянуть на эту ошибку python bug issue 19500 :

". Разумно для сервера настаивать на том, что подключение к данным использует кешированный сеанс TLS. может быть кешем предыдущего подключения к данным или очищенного соединения управления. Если это является причиной отказа в передаче данных, тогда ответ «522» должен указывать на это.

Примечание: это имеет большое влияние на дизайн клиента, но позволяет серверам минимизировать циклы, используемые во время переговоров TLS, отказываясь выполнять полное согласование с ранее прошедшим проверку клиентом ».

Похоже, что сервер vsftpd реализован именно так, «повторное использование сеанса SSL между соединением управления и данными».

http://scarybeastsecurity.blogspot.com/2009/02/vsftpd-210-released.html

Глядя на источник базовой библиотеки Python ftplib.py, нет никакого отношения к идее повторного использования сеанса SSL между соединением передачи данных и контрольным соединением (исправьте меня, если я ошибаюсь здесь. Я пробовал FTP_TLS.transfercmd (cmd [, rest]) ¶, не работал).

Эта проблема хорошо документирована на других FTP-клиентах, поддерживающих FTPS, I.E. WinSCP: https://winscp.net/tracker/668

См. Файл тестового журнала. Сервер vsftpd с требованием «require_ssl_reuse», установленным в true в vsftpd.conf, выполнит трюк и может быть воспроизведен.

blockquote>

Надеюсь, что это поможет.

2
задан RolleRugu 17 January 2019 в 09:32
поделиться

1 ответ

Итак, мне повезло, и я нашел ответ в посте, не имеющем отношения к делу. Ответ довольно общий:

Для тензора, определенного как член класса пользовательского уровня, необходимо вызвать его метод оценки с правильным сеансом. То есть

import keras.backend as K

# Train your model...

sess = K.get_session()
print(model.get_layer("name_of_your_layer").your_tensor.eval(session=sess))

Например, для печати ядра плотного слоя после обучения это

import numpy as np
from keras.layers import Input, Dense
from keras.models import Model
import keras.backend as K

x = np.random.rand(10,3)

layer_1 = Input(shape=(x.shape[1],))
layer_2 = Dense(units=x.shape[1])(layer_1)

model = Model(inputs=layer_1, outputs=layer_2)
model.compile(optimizer="Adam", loss="MSE")
model.fit(x, x, epochs=5)

sess = K.get_session()
print(model.get_layer("dense_1").kernel.eval(session=sess))
0
ответ дан RolleRugu 17 January 2019 в 09:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: