Завдання: Створення Шару Нейронної Мережі
Окремий шар нейронної мережі
У базовій прямій нейронній мережі вихід нейрона в шарі обчислюється за допомогою зваженої суми його вхідних значень, пропущеної через функцію активації. Це можна представити так:
y=σ(W⋅x+b)
Де:
- y: вихід нейрона;
- W: матриця, що представляє ваги, пов’язані зі з’єднаннями до нейрона;
- x: стовпчикова матриця (або вектор), що представляє вхідні значення до нейрона;
- b: скалярне значення;
- σ: функція активації, така як сигмоїдна, ReLU або softmax функція.
Для досягнення найкращої продуктивності всі обчислення виконуються з використанням матриць. Ми будемо виконувати це завдання аналогічним чином.
Swipe to start coding
Маючи ваги, вхідні дані та зсув для одного шару нейрона, обчисліть його вихід за допомогою матричного множення та сигмоїдної активації. Розглядається шар із 3 входами та 2 нейронами, який приймає одну вибірку в пакеті.
-
Визначення форм:
- Форма вхідної матриці
I
повинна мати перший вимір, що відповідає кількості вибірок у пакеті. Для однієї вибірки з 3 входами її розмір буде1x3
; - Матриця ваг
W
повинна мати стовпці, які відповідають вагам входів для кожного нейрона. Для 2 нейронів із 3 входами очікувана форма —3x2
. Це не так, тому потрібно транспонувати матрицю ваг, щоб отримати потрібну форму.
- Форма вхідної матриці
-
Матричне множення:
- Коли матриці мають правильну форму, виконайте матричне множення;
- Нагадаємо, що при матричному множенні результат отримується як скалярний добуток кожного рядка першої матриці з кожним стовпцем другої матриці. Переконайтеся, що множите у правильному порядку.
-
Додавання зсуву:
- Просто виконайте покомпонентне додавання результату матричного множення із зсувом.
-
Застосування активації:
- Використайте сигмоїдну функцію активації до результату додавання зсуву, щоб отримати вихід нейрона;
- TensorFlow надає сигмоїдну функцію як
tf.sigmoid()
.
Примітка
Наприкінці курсу ми розглянемо реалізацію повної прямої нейронної мережі з використанням TensorFlow. Ця вправа закладає основу для цього.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain why we need to transpose the weight matrix?
What is the purpose of the bias in this calculation?
How does the sigmoid activation function affect the output?
Awesome!
Completion rate improved to 5.56
Завдання: Створення Шару Нейронної Мережі
Свайпніть щоб показати меню
Окремий шар нейронної мережі
У базовій прямій нейронній мережі вихід нейрона в шарі обчислюється за допомогою зваженої суми його вхідних значень, пропущеної через функцію активації. Це можна представити так:
y=σ(W⋅x+b)
Де:
- y: вихід нейрона;
- W: матриця, що представляє ваги, пов’язані зі з’єднаннями до нейрона;
- x: стовпчикова матриця (або вектор), що представляє вхідні значення до нейрона;
- b: скалярне значення;
- σ: функція активації, така як сигмоїдна, ReLU або softmax функція.
Для досягнення найкращої продуктивності всі обчислення виконуються з використанням матриць. Ми будемо виконувати це завдання аналогічним чином.
Swipe to start coding
Маючи ваги, вхідні дані та зсув для одного шару нейрона, обчисліть його вихід за допомогою матричного множення та сигмоїдної активації. Розглядається шар із 3 входами та 2 нейронами, який приймає одну вибірку в пакеті.
-
Визначення форм:
- Форма вхідної матриці
I
повинна мати перший вимір, що відповідає кількості вибірок у пакеті. Для однієї вибірки з 3 входами її розмір буде1x3
; - Матриця ваг
W
повинна мати стовпці, які відповідають вагам входів для кожного нейрона. Для 2 нейронів із 3 входами очікувана форма —3x2
. Це не так, тому потрібно транспонувати матрицю ваг, щоб отримати потрібну форму.
- Форма вхідної матриці
-
Матричне множення:
- Коли матриці мають правильну форму, виконайте матричне множення;
- Нагадаємо, що при матричному множенні результат отримується як скалярний добуток кожного рядка першої матриці з кожним стовпцем другої матриці. Переконайтеся, що множите у правильному порядку.
-
Додавання зсуву:
- Просто виконайте покомпонентне додавання результату матричного множення із зсувом.
-
Застосування активації:
- Використайте сигмоїдну функцію активації до результату додавання зсуву, щоб отримати вихід нейрона;
- TensorFlow надає сигмоїдну функцію як
tf.sigmoid()
.
Примітка
Наприкінці курсу ми розглянемо реалізацію повної прямої нейронної мережі з використанням TensorFlow. Ця вправа закладає основу для цього.
Рішення
Дякуємо за ваш відгук!
single