Оптимизация нейронной сети с алгоритмом geneti c - оптимизация слоев и весов - PullRequest
0 голосов
• 1000 Алгоритм 1007 * в python Я изучил много руководств по этому поводу, но я не нашел никаких материалов, обсуждающих, как его реализовать
любая помощь может быть оценена

Ответы [ 2 ]

1 голос
/ 05 мая 2020

Изначально я думаю, что лучше
- Исправить архитектуру модели,
- Знать, сколько обучаемых параметров есть и их формат,
- Создать случайную совокупность обучаемых параметров,
- Определить целевую функцию для оптимизации,
- Реализует операцию GA (воспроизведение, кроссовер, мутация и т. Д. c),
- Измените размер этой совокупности весов и смещений в правильный формат,
- Затем запустите ML модель с этими весами и смещениями,
- Получить потерю и обновить популяцию и,
- Повторить описанный выше процесс несколько эпох / с критериями остановки

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

0 голосов
/ 05 мая 2020

Если вы новичок в машинном обучении, я бы не рекомендовал использовать алгоритмы c geneti для оптимизации ваших весов. Вы уже скомпилировали свою модель с помощью «Адама», который является отличным оптимизатором на основе градиентного спуска, который сделает всю работу за вас, и вы должны использовать его вместо этого.

Ознакомьтесь с кратким руководством по Tensorflow руководство для получения дополнительной информации https://www.tensorflow.org/tutorials/quickstart/beginner

Вот пример того, как реализовать алгоритмы geneti c из поиска Google ... https://towardsdatascience.com/introduction-to-genetic-algorithms-including-example-code-e396e98d8bf3

Если вы хотите выполнить гипертюнинг с помощью алгоритмов c geneti, вы можете закодировать гиперпараметры сети (количество слоев, нейронов) в качестве своих генов. Оценка пригодности будет очень дорогостоящей, поскольку потребует обучения сети для выполнения данной задачи, чтобы получить окончательную потерю теста.

Если вы хотите выполнить оптимизацию с помощью алгоритмов geneti c, вы можете кодировать веса модели как гены, и приспособленность будет напрямую связана с потерей сети.

...