НачатьНачать бесплатно

Определение модели и функции потерь

В этом упражнении вы обучите нейронную сеть предсказывать, допустит ли держатель кредитной карты дефолт. Признаки и целевые значения для обучения сети доступны в оболочке Python как borrower_features и default. Веса и смещения вы определили в предыдущем упражнении.

Обратите внимание, что слой predictions определяется как \(\sigma(layer1*w2+b2)\), где \(\sigma\) — функция активации сигмоид, layer1 — тензор узлов первого скрытого плотного слоя, w2 — тензор весов, а b2 — тензор смещений.

Обучаемые переменные: w1, b1, w2 и b2. Кроме того, для вас уже импортированы следующие операции: keras.activations.relu() и keras.layers.Dropout().

Это упражнение является частью курса

Введение в TensorFlow на Python

Посмотреть курс

Инструкции к упражнению

  • Примените функцию активации ReLU (выпрямленная линейная единица) к первому слою.
  • Примените dropout с коэффициентом 25% к слою layer1.
  • Передайте целевые значения targets и предсказанные значения predictions в функцию потерь на основе перекрёстной энтропии.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Define the model
def model(w1, b1, w2, b2, features = borrower_features):
	# Apply relu activation functions to layer 1
	layer1 = keras.activations.____(matmul(features, w1) + b1)
    # Apply dropout rate of 0.25
	dropout = keras.layers.Dropout(____)(____)
	return keras.activations.sigmoid(matmul(dropout, w2) + b2)

# Define the loss function
def loss_function(w1, b1, w2, b2, features = borrower_features, targets = default):
	predictions = model(w1, b1, w2, b2)
	# Pass targets and predictions to the cross entropy loss
	return keras.losses.binary_crossentropy(____, ____)
Редактировать и запускать код