Ваше ожидание / понимание цели шаблона декоратора может быть немного не таким. Шаблон декоратора предназначен для обертывания существующего набора функциональных возможностей, чтобы предложить некоторые новые функциональные возможности в дополнение к функциональности, которая уже существует.
Лучшим примером пиццы было бы взять урок пиццы, который может выполнять следующие действия:
и затем пытается добавить функциональность, которая может служить салаты. Таким образом, упрощенная версия этого класса пиццы может выглядеть следующим образом:
public class Pizzeria {
public String orderPizza() {
System.out.println("you ordered a pizza");
}
public String orderSoftDrink() {
System.out.println("you ordered a soft drink");
}
}
Чтобы реализовать здесь шаблон декоратора, мы оборачиваем существующий класс Pizzeria
, а затем добавляем некоторую новую функцию public String orderPizza () { System.out.println («Вы заказали пиццу»); } public String orderSoftDrink () {System.out.println («Вы заказали безалкогольный напиток»); } ality:
public class NewPizzeria {
private Pizzeria pizzeria;
public NewPizzeria() {
pizzeria = new Pizzeria();
}
public String orderPizza() {
pizzeria.orderPizza();
}
public String orderSoftDrink() {
pizzeria.orderSoftDrink();
}
public String orderSalad() {
System.out.println("you ordered a salad");
}
}
Ключевым моментом здесь является то, что класс NewPizzeria
«владеет» своим собственным объектом Pizzeria
. По большей части, он просто отражает ту же функциональность, которая уже есть у Pizzeria
. Но он также добавляет некоторые новые функции.
Шаблон проектирования декоратора полезен в тех случаях, когда класс уже существует, который в основном соответствует вашим потребностям, но вам нужно что-то еще и , вы также не можете переписать этот класс (например, потому что он является частью некоторой библиотеки) , В этом случае перенос этого класса и использование шаблона декоратора - один из хороших вариантов.
Существует вполне обширная серия курсов, доступных при Исследовании Heaton. Курс для C# (Avaliable также для Java) однако, он объясняет понятия подробно, таким образом, я предлагаю, чтобы Вы смотрели на него, даже если Вы кодируете в Python сами.
Курсы находятся в формате видео, однако большинство важных понятий также записано вниз.
Посмотрите ниже трех ссылок для Нейронных сетей с помощью Python:
Сотките нейронную сеть с Python
Нейронные сети в пиротехническом средстве
Ron Stephens
"Программирование коллективного разума" Toby Segaran имеет главу о NN и также некоторых примерах в Python.
У Наркомана AI есть очень хорошее интуитивное учебное руководство о нейронных сетях. Сайт разработан для уменьшения необходимой математики так, чтобы учебное руководство было доступно.
Я в настоящее время использую этот сайт как краткую информацию - не Python, но хороший пример сети канала вперед и довольно простой для следования.
В то же время я читал Сущность Нейронных сетей Robert Callan (ISBN 0-13-908732-X), который имеет широкий спектр сетевых архитектур и приложений и является легким чтением.
Так как Вы упоминаете Python, я должен направить Вас к этому сайту IBM, который я нашел очень полезным, и базовый код находится в Python здесь. Цитата должна перейти к Neil Schemenauer.
Я должен также упомянуть, что взял код Python и портировал его к numpy, потому что он работал очень медленно. Я был неудачен, но прежде чем я, мусор numpy, я должен сказать, что подозреваю свою реализацию, был не очень хорош и я уверен, что существует векторизованный способ сделать вперед передачи и обратные связи, я просто не нашел его.
То, что я закончил тем, что делал, реализует в Java простым портом кода Python. Это только заняло приблизительно один час, и он работает приблизительно в 100 раз быстрее. Я думаю, что это - больше доказательства, что я не знаю то, что я делаю с numpy, но если бы Вы запускаете с нуля, я подверг бы сомнению, является ли необработанный Python правильным языком для Вас. Можно лучше кодировать этот вид вещи в C или C++, если необходимо использовать Python.
Всего наилучшего.
Я думаю, у вас есть бит Python, покрытый приведенными выше ответами . Что касается «или даже просто теории», Рауль Рохас имеет здоровенную электронную книгу, которую вы можете скачать с его вики-страницы .