значения. Ниже показано определение функции, а также результаты
ее вызова с помощью инструкции среднее (2,4) и инструкции сред
нее
( 2 0 0 , 3 0 1 )
с большими значениями. Поэкспериментируйте само
стоятельно, вызывая функцию с различными входными значениями.
Возможно, вы обратили внимание на то, что в коде функции сред
нее двух значений находится путем деления не на 2, а на 2,0. Почему
мы так поступили? Это
особенность Python, которая мне самому не
нравится. Если бы мы делили на 2, то результат был бы округлен
до ближайшего целого в меньшую сторону, поскольку Python рас
сматривал бы 2 просто как целое число. Это не изменило бы резуль
тат вызова
среднее
( 2 , 4 ) ,
поскольку 6 /2 равно 3, т.е. целому числу.
Однако в случае вызова среднее
( 2 0 0 , 3 0 1 )
среднее значение, равное
501/2, т.е. 250,5, было бы округлено до значения 250.
Я считаю это
неразумным, но об этом стоит помнить, если ваш код ведет себя не
совсем так, как ожидается. Деление же на 2,0 сообщает Python, что
в наши намерения действительно входит работа с числами,
которые
могут иметь дробную часть, и мы не хотим, чтобы они округлялись.
Немного передохнем и поздравим себя. Мы определили повторно
используемую функцию — один из наиболее важных и мощных эле
ментов как математики, так и компьютерного программирования.
Простое введение в Python
143
Мы будем применять повторно используемые функции при написа
нии кода собственной нейронной сети.
Например, имеет смысл создать
повторно используемую функцию, которая реализовала бы вычисления
с помощью сигмоиды, чтобы ее можно было вызывать много раз.
Массивы
Массивы — это не более чем таблицы значений, и они действи
тельно оказываются очень кстати. Как и в случае таблиц, вы може
те ссылаться на конкретные ячейки по номерам строк и столбцов.
Наверное,
вам известно, что именно таким способом можно ссылать
ся на ячейки в электронных таблицах (например, В1 или С5) и про
изводить над ними вычисления (например, C3+D7).
Когда дело дойдет до написания кода нашей нейронной сети, мы
используем массивы для представления матриц входных сигналов,
весовых коэффициентов и выходных сигналов. Но не только этих,
а
также матриц, представляющих сигналы внутри нейронной сети
и их распространение в прямом направлении, и матриц, представля
ющих обратное распространение ошибок. Поэтому давайте познако
мимся с массивами. Введите и выполните следующий код:
import пшпру
Что делает этот код? Команда
i m p o r t
сообщает Python о необхо
димости привлечения дополнительных вычислительных ресурсов из
другого источника для расширения круга имеющихся инструментов.
Do'stlaringiz bilan baham: