Оскільки обчислення Тензора складають графіки, то краще їх інтерпретувати в термінах графіків.
Візьмемо для прикладу просту лінійну регресію
WX+B=Y
де W
і B
стоять для ваг та зміщення, а також X
для даних спостережень та Y
результатів спостережень.
Очевидно X
і Y
мають однаковий характер (маніфестні змінні), які відрізняються від W
та B
(латентні змінні). X
і Y
є значеннями зразків (спостережень), а значить, потрібно заповнити місце , в той час як W
і B
ваги та зміщення, Змінні (попередні значення впливають на останні) на графіку, які слід навчати, використовуючи різні X
та Y
пари. Ми розміщуємо різні зразки до заповнювачів, щоб тренувати змінні .
Нам потрібно тільки , щоб зберегти або відновити ті змінні (на контрольно - пропускних пунктах) , щоб зберегти або відновити граф з кодом.
Заповнювачі , в основному власники для різних наборів даних (наприклад навчальних даних або даних випробувань). Однак Змінні проходять підготовку в навчальному процесі для конкретних завдань, тобто передбачати результат введення або відображати введення даних на потрібні мітки. Вони залишаються тими ж, доки ви не перекваліфікуєте та не доопрацюєте модель, використовуючи різні чи однакові зразки, які часто заповнюються в заповнювачі через дикт. Наприклад:
session.run(a_graph, dict = {a_placeholder_name : sample_values})
Заполнители також передаються як параметри для встановлення моделей.
Якщо ви зміните заповнювачі (додайте, видаліть, змініть форму тощо) моделі в середині тренування, ви все одно можете перезавантажити контрольну точку без будь-яких інших модифікацій. Але якщо змінні збереженої моделі будуть змінені, слід відповідним чином відрегулювати контрольну точку, щоб перезавантажити її та продовжити навчання (всі змінні, визначені у графі, повинні бути доступними у контрольній точці).
Підводячи підсумок, якщо значення є зразками (спостереження, які ви вже маєте), ви безпечно зробите заповнювач для їх утримання, тоді як, якщо вам потрібен параметр, щоб бути навченим, використовуйте змінну (просто кажучи, встановіть змінні для потрібних значень автоматично використовувати TF).
У деяких цікавих моделях, як, наприклад, модель передачі стилів , пікселі введення будуть оптимізовані, а нормально називані змінні моделі будуть виправлені, тоді ми повинні зробити введення (як правило, ініціалізовані випадковим чином) у вигляді змінної, що реалізована в цьому посиланні.
Для отримання додаткової інформації, будь ласка, зробіть висновок про цей простий і ілюстративний документ .
Variable
s, але неplaceholder
s (значення яких завжди потрібно надати).