Есть ли способ или функция, с помощью которой с помощью отладки, средства ведения журнала или библиотеки я могу получитьPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ или функция, с помощью которой с помощью отладки, средства ведения журнала или библиотеки я могу получить

Сообщение Anonymous »

Я хочу понимать на каждом этапе, что модель делает для каждой из своих переменных, таких как веса, потери, смещения, от одного слоя к другому и даже на уровне партии.
Существует ли какая-либо заранее созданная библиотека или как я могу получить полную информацию об этом?
Ниже приведен мой текущий код, в котором я пытаюсь создать все пользовательские обратные вызовы, но хочу полностью избавиться от них и понять модель с самого базового уровня. этапа 0, где назначаются веса и т. д.
from keras.models import Sequential
from keras.layers import Dense
from keras.callbacks import Callback
import numpy as np

Шаг 1. Пользовательский обратный вызов, чтобы понять, как модель работает внутри
class DebuggingCallback(Callback):
def on_epoch_begin(self, epoch, logs=None):
print(f"\n--- Epoch {epoch + 1} Start ---")

def on_epoch_end(self, epoch, logs=None):
print(f"--- Epoch {epoch + 1} End ---")
for layer_index, layer in enumerate(self.model.layers):
weights, biases = layer.get_weights()
print(f"Layer {layer_index + 1}: Weights\n{weights}")
print(f"Layer {layer_index + 1}: Biases\n{biases}")

def on_batch_end(self, batch, logs=None):
loss = logs.get('loss')
accuracy = logs.get('accuracy')
print(f"Batch {batch + 1} - Loss: {loss:.4f}, Accuracy: {accuracy:.4f}")

Шаг 2. Определите модель ИНС
classifier = Sequential()
Определите ввод и первое скрытое Слой
classifier.add(Dense(units=3, input_dim=numFeatures, kernel_initializer='uniform', activation='relu'))

Определить второй скрытый слой
classifier.add(Dense(units=2, kernel_initializer='uniform', activation='relu'))

Определить выходной слой
classifier.add(Dense(units=1, kernel_initializer='uniform', activation='sigmoid'))

Скомпилируйте модель
classifier.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

Шаг 3. Подберите модель и используйте собственный обратный вызов
survivalANN_Model = classifier.fit(X_train, y_train,
batch_size=30,
epochs=5,
verbose=1,
callbacks=[DebuggingCallback()])

Шаг 4. Распечатайте окончательные веса после тренировки
print("\nFinal Weights After Training:")
for i, layer in enumerate(classifier.layers):
weights, biases = layer.get_weights()
print(f"Layer {i + 1}:")
print("Weights:", weights)
print("Biases:", biases)


Подробнее здесь: https://stackoverflow.com/questions/791 ... -library-i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»