С чего начать работу с нейронными сетями?

Рекомендуется ознакомительная книга « Программирование нейронных сетей на Python ». Оценка Дубана 9,2.

Если вы можете складывать, вычитать, умножать и делить, то вы можете создать свою собственную нейронную сеть. Самой сложной операцией, которую мы используем, является градиентное исчисление, однако мы проиллюстрируем эту концепцию, чтобы как можно больше читателей могли ее понять.

В этой книге мы отправимся в плавание , построим нейронную сеть и распознаем рукописные цифры.

Мы начнем с очень простых предсказательных нейронов и постепенно улучшаем их, пока не достигнем их предела. По пути мы сделаем несколько коротких остановок и изучим некоторые математические понятия. Нам нужны эти математические концепции, чтобы понять, как нейронные сети обучаются и предсказывают решения проблем.

Мы рассмотрим математические идеи, такие как функции, простые линейные классификаторы , итеративное уточнение, умножение матриц , градиентное исчисление, оптимизацию с помощью градиентного спуска и даже геометрическое вращение. Тем не менее, все эти математические концепции объясняются очень элегантно и ясно, и читателю не требуются какие-либо предварительные знания или технические знания, кроме простой математики средней школы.

Как только мы успешно создадим нашу первую нейронную сеть, мы возьмем эту идею с собой и будем использовать ее по-разному. Например, мы можем использовать обработку изображений для улучшения машинного обучения, не прибегая к дополнительным обучающим данным. Мы взглянем на мозг нейронной сети и посмотрим, раскрывает ли он какие-либо глубокие идеи — во многих книгах не показано, как работает нейронная сеть.

По мере того, как мы шаг за шагом будем создавать нейронные сети, мы также будем изучать Python, очень простой, полезный и популярный язык программирования . Опять же, вам не нужен предыдущий опыт программирования.

Эта книга раскрывает концепции нейронных сетей и показывает, как их реализовать в Python. Вся книга разделена на 3 главы и два приложения. Глава 1 знакомит с математическими идеями, используемыми в нейронных сетях. Глава 2 знакомит с использованием Python для реализации нейронных сетей, распознавания рукописных цифр и тестирования производительности нейронных сетей. В главе 3 читатели узнают больше о простых нейронных сетях, заглянут внутрь обученных нейронных сетей, попытаются еще больше улучшить производительность нейронных сетей и углубить свое понимание связанных с ними знаний. В приложении представлены необходимые знания исчисления и знания Raspberry Pi соответственно.

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


Математические знания «Программирование нейронных сетей на Python»: введение в исчисление

А.1 Прямая линия

Во-первых, давайте начнем с очень простого сценария.

Представьте себе автомобиль, движущийся с постоянной скоростью 30 миль в час. Не быстро, не медленно, всего 30 миль в час.

Скорость автомобиля в различные моменты времени показана в таблице ниже, измеряется каждые полминуты.

время/минута Скорость (миль/ч)
0 30
0,5 30
1,0 30
1,5 30
2.0 30
2,5 30
3.0 30

На рисунке ниже визуализирована скорость в эти моменты времени.

Видно, что скорость не меняется со временем, поэтому это горизонтальная линия. Линия не имеет наклона вверх (ускорение) или вниз (замедление), и скорость автомобиля остается равной 30 милям в час.

Математическое выражение для скорости, которое мы называем s :

Теперь, если кто-то спросит, как скорость меняется со временем, мы ответим, что скорость не меняется со временем. Скорость изменения равна 0. Другими словами, скорость не зависит от времени, корреляция равна 0.

Мы только что закончили вычисления!

Исчисление — это установление взаимосвязей, чтобы показать, как меняется одна вещь по мере изменения других вещей. Здесь мы думаем о том, как скорость изменяется во времени.

У нас есть математический способ выразить эту связь.

Что это за символы? Думайте об этом обозначении как о значении «как скорость изменяется при изменении времени» или «как s связано с t».

Таким образом, это выражение говорит о том, что скорость не меняется со временем, и это ловкий способ, которым пользуются математики. Или, другими словами, скорость не меняется со временем. Зависимость скорости от времени равна 0. Вот что означает 0 в выражении. Они совершенно не связаны.

На самом деле вы можете найти эту некорреляцию , если еще раз посмотрите на выражение для скорости s = 30. В этом выражении время вообще не упоминается. То есть в этом выражении нет скрытого времени t . Следовательно, нам не нужно делать никаких сложных вычислений, чтобы понять, что ∂s / ∂t = 0, мы можем просто наблюдать за выражением, чтобы прийти к такому выводу. Математики называют это «методом наблюдения».

Такое выражение, как ∂s/∂t, которое определяет скорость изменения, называется производной. Для наших целей нам не нужно знать это, однако вы можете встретить этот термин в другом месте.

Теперь, если мы нажмем на педаль газа, посмотрим, что произойдет. Это так захватывающе!

A.2 Косая черта

Только представьте, что та же машина едет со скоростью 30 миль в час. Мы слегка нажали на педаль газа, и машина ускорилась. Мы держали педаль газа нажатой и следили за шкалой на приборной доске, записывая скорость каждые 30 секунд.

Через 30 секунд машина двигалась со скоростью 35 миль в час. Через 1 минуту автомобиль двигался со скоростью 40 миль в час. Через 90 секунд машина разгонялась до 45 миль в час. Через 2 минуты машина достигла скорости 50 миль в час. Ускорение автомобиля составляет 10 миль в минуту.

В таблице ниже приведена та же информация.

время/минута Скорость (миль/ч)
0,0 30
0,5 35
1,0 40
1,5 45
2.0 50
2,5 55
3.0 60

Давайте визуализируем это снова.

Вы можете видеть, что скорость автомобиля увеличивается с 30 миль в час до 60 миль в час с постоянной скоростью. Поскольку приращение скорости одинаково каждые полминуты, график зависимости скорости от времени представляет собой прямую линию, и скорость можно увидеть.

Какое выражение для скорости? В момент времени 0 скорость равна 30. После этого скорость увеличивается на 10 миль в час в минуту. Следовательно, выражение для скорости выглядит следующим образом.

Или используйте обозначения следующим образом:

Здесь можно увидеть константу 30. А также см. (10 x t), что означает увеличение скорости на 10 миль в час в минуту. Вы быстро поймете, что 10 — это наклон нарисованной нами линии . Помните, что общая форма прямой линии такова: y  = a x  + b, где a — наклон или градиент.

Итак, как же выглядит выражение для зависимости скорости от времени? Ну, это мы уже обсуждали, скорость увеличивается на 10 миль в минуту.

Это выражение говорит о том, что, поскольку ∂s / ∂t отлично от нуля, действительно существует корреляция между скоростью и временем.

Помните,  наклон линии y  = a x + b равен a, и мы можем узнать, что наклон s = 30 + 10t равен 10, с помощью «метода наблюдения».

отличная работа! Мы рассмотрели многие основы исчисления, которые совсем не сложны. А теперь давим педаль газа!

А.3 Кривая

Представьте, что я завожу машину с места и сильно нажимаю на педаль газа, не отпуская ее. Поскольку с самого начала мы не двигаемся, начальная скорость равна 0.

Только представьте, что мы очень сильно нажимаем на педаль газа, а машина не набирает скорость с постоянной скоростью. Вместо этого машина быстрее набирает скорость. Это означает, что вместо того, чтобы увеличиваться на 10 миль в час в минуту, ускорение самого автомобиля увеличивается по мере того, как педаль газа удерживается нажатой дольше.

Для этого примера представьте, что мы измеряем скорость каждую минуту, как указано в таблице ниже.

время/минута Скорость (миль/ч)
0 0
1 1
2 4
3 9
4 16
5 25
6 36
7 49
8 64

Если вы посмотрите внимательно, то увидите, что я решил сделать скорость квадратом времени в минутах. То есть, когда время равно 2 минутам, скорость равна 22 = 4, когда время равно 3 минутам, скорость 32 = 9, когда время равно 4 минутам, скорость равна 42 = 16 и так далее.

Теперь это выражение также легко записать.

Хотя я знаю, что скорость автомобиля в этом примере указана намеренно, это хорошая иллюстрация того, как мы проводим расчеты.

Давайте визуализируем это выражение, чтобы понять, как меняется скорость во времени.

Видно, что скорость меняется все быстрее и быстрее. В настоящее время график больше не является прямой линией. Можно предположить, что скорость резко возрастает до очень больших чисел. Через 20 минут скорость будет 400 миль в час, через 100 минут скорость будет 10 000 миль в час!

Интересный вопрос - как выглядит скорость изменения скорости во времени? То есть как изменится скорость во времени?

Это не тот же вопрос, что и реальная скорость в конкретный момент времени. У нас уже есть выражение s = t2, поэтому значение уже известно.

Мы спрашиваем: какова скорость изменения скорости в любой момент времени? В этом примере означает ли это предложение, где изгибается график?

Если вы помните два предыдущих примера, скорость изменения — это наклон кривой зависимости скорости от времени. Когда автомобиль движется с постоянной скоростью 30 миль в час, скорость не меняется, поэтому скорость изменения равна 0. Когда автомобиль постоянно ускоряется, скорость изменения скорости составляет 10 миль в час. В любой момент времени 10 миль в час — это нормально. За 2 минуты скорость изменения составляет 10 миль в минуту. Для 4 минут это верно для 100 минут.

Можем ли мы применить ту же идею к графикам? Конечно, можно, но здесь будем считать это само собой разумеющимся.

A.4 Рисованное исчисление

Давайте подробнее рассмотрим, что происходит, когда время равно 3 минутам.

Через 3 минуты скорость будет 9 км/ч. Мы знаем, что через 3 минуты скорость станет быстрее. Давайте сравним это с тем, что происходит на 6-й минуте. Через 6 минут скорость составила 36 миль в час. Через 6 минут скорость станет быстрее.

Однако мы также знаем, что скорость увеличения скорости больше в момент через 6 минут, чем в момент через 3 минуты. Это реальная разница между тем, что происходит через 3 и 6 минут.

Давайте визуализируем этот контраст, как показано на изображении ниже.

Видно, что наклон на 6-й минуте больше, чем на 3-й минуте. Наклон — это скорость изменения, которую мы хотим. Это важное осознание, повторим еще раз. Скорость изменения в любой точке кривой представляет собой наклон кривой в этой точке.

Но как измерить наклон кривой? Для прямой легко измерить наклон.Для кривой можно провести прямую линию, называемую касательной.Касательная должна быть как можно ближе к наклону кривой в точке, чтобы наклон кривой в этой точке можно было оценить по наклону касательной. На самом деле именно так люди измеряли наклон кривой до того, как появились другие измерения.

Чтобы дать читателю представление об этом подходе, давайте попробуем этот грубый метод. На рисунке ниже показан график кривой скорости, через 6 минут мы получаем касательную только с одной точкой пересечения с кривой скорости.

Из математики средней школы мы знаем, что для расчета уклона или градиента нужно разделить высоту уклона на ширину. На приведенной выше диаграмме высота (скорость) равна Δs, а ширина (время) — Δt. Символ Δ называется «приращением», то есть малым изменением. Таким образом, Δt представляет собой небольшое изменение t.

Наклон равен Δs/Δt. Для скоса выберите треугольник любого размера и с помощью линейки измерьте высоту и ширину. По результатам измерений у меня получился ровно треугольник с Δs 9,6 и Δt 0,8. Таким образом, результирующий наклон выглядит следующим образом:

Мы получили важный результат! В 6 минут скорость изменения скорости составила 12,0 миль в минуту.

Вы должны понимать, что полагаться на линейку, делать все, что в ваших силах, или даже пытаться рисовать касательные вручную, не будет особенно точно. Итак, давайте немного усложним задачу.

A.5 Исчисление не от руки

Внимательно посмотрите на изображение ниже, на этом изображении есть новая выделенная линия. Прямая пересекает кривую в двух точках, поэтому она не является касательной. Однако кажется, что линия каким-то образом сосредоточена вокруг временной точки 3 минуты.

На самом деле эта линия относится к моменту времени 3 минуты. Момент времени, который мы выбираем, — это момент времени t = 3 минуты выше и ниже интересующего нас момента времени. Здесь мы выбрали 2 минуты выше и ниже точки времени t = 3 минуты, то есть t = 1 минута и t = 5 минут.

Используя математическую запись, мы можем сказать, что Δx равно 2 минутам. Мы выбираем моменты времени x-Δx и x+Δx. Помните, что символ Δ просто означает «небольшое изменение», поэтому Δx — это небольшое изменение координаты x.

Зачем ты это делаешь? Читатели скоро поймут, давайте сначала подогреем аппетит читателя.

Если вы посмотрите на скорости в моменты времени x-Δx и x+Δx и проведете прямую линию между этими двумя точками, вы получите линию, наклон которой примерно равен наклону касательной в средней точке x. Посмотрите на график выше еще раз и посмотрите на эту прямую линию. Конечно, наклон этой линии не совпадает с истинным наклоном касательной в точке x, но мы внесем поправку на это.

Давайте посчитаем градиент (наклон) этой линии. Как и в предыдущем методе, мы делим высоту скоса на ширину, чтобы получить градиент. На изображении ниже более четко показаны высота и ширина скоса.

Высота — это разница между скоростями в двух точках x-Δx и x + Δx, то есть разница между двумя скоростями в 1 минуту и ​​5 минут. Мы знаем, что в этих двух точках скорости равны 12 = 1 и 52 = 25 миль в час, поэтому разница в скорости составляет 24. Ширину очень легко рассчитать, это расстояние между x-Δx и x+Δx, то есть расстояние между 1 и 5, то есть 4. Таким образом, мы получаем:

Градиент линии приближается к градиенту касательной в t = 3 минуты при скорости 6 миль в минуту.

Давайте остановимся на мгновение и посмотрим, что было сделано. Сначала мы попытались вычислить наклон кривой, используя касательную от руки. Этот метод никогда не будет точным и не может быть использован снова и снова, так как мы люди и скучаем, скучаем и делаем ошибки. Следующий метод не требует касательных от руки, но вместо этого создает другую линию, имеющую примерно такой же наклон, как и правильная. Второй метод может выполняться автоматически с помощью компьютера, и, поскольку он не требует участия человека, его можно выполнять много раз, а скорость очень высока.

Это очень хорошо, но все же недостаточно!

Второй метод дает только приближение . Как можно улучшить это значение, чтобы оно стало точным? Наша цель — выяснить, как все меняется точным математическим способом, чтобы получить значение градиента.

Вот где происходит волшебство! Математики разработали очень легкий и острый инструмент и получают от него массу удовольствия.

Что произойдет, если вы уменьшите ширину? Другими словами, что произойдет, если вы уменьшите Δx? На рисунке ниже показаны несколько линий аппроксимации или линий наклона, которые получаются по мере постепенного уменьшения Δx.

 

Мы провели линии для Δx = 2,0, Δx = 1,0, Δx = 0,5 и Δx = 0,1. Вы можете видеть, что линия все ближе и ближе к нашей точке интереса, точка на 3 минуты. Вы можете себе представить, что по мере того, как мы продолжаем уменьшать значение Δx, прямая будет все ближе и ближе приближаться к истинной касательной через 3 минуты.

Когда Δx становится бесконечно малым, прямая бесконечно близка к истинной касательной. Это так круто!

Идея улучшения аппроксимации, приближения к решению за счет уменьшения и уменьшения смещения просто слишком сильна. Математики используют извилистые пути для решения задач, которые трудно решить напрямую. Это как подкрадываться сбоку, а не атаковать спереди.

A.6 Расчет без диаграмм

Ранее мы говорили, что исчисление связано с пониманием того, как вещи изменяются точным математическим способом. Давайте посмотрим, сможем ли мы применить эту идею постепенного сокращения Δx к математическим выражениям, которые определяют эти вещи — например, кривую скорости автомобиля.

Мы знаем, что скорость есть функция времени, т. е. s = t2. Мы хотим знать, как изменяется скорость в зависимости от времени. Мы видели, что это наклон s при построении кривой относительно t.

Однако скорость изменения ∂s / ∂t равна высоте, деленной на ширину построенной нами линии, где Δx бесконечно мало.

Какова высота? Как мы видели ранее, это (t + ∆x)2 - (t - ∆x)2. То есть по формуле s = t2, где t — вертикальное смещение Δx точки интереса, вычисляется и вычитается соответствующее s.

Какова ширина? Как мы видели ранее, простыми словами, это просто расстояние между (t + Δx) и (t - Δx), равное 2Δx.

Мы почти там,

Расширим и упростим выражение

На самом деле нам повезло, что сама алгебра была довольно аккуратно упрощена.

Мы достигли нашей цели! Математически точная скорость изменения равна ∂s / ∂t = 2t. Это означает, что для любого момента времени t мы знаем, что скорость изменения скорости равна ∂s / ∂t = 2t.

При t = 3 минуты имеем ∂s / ∂t = 2t = 6. Мы фактически подтвердили это значение, прежде чем использовать метод аппроксимации. При t = 6 минут ∂s / ∂t = 2t = 12, что очень точно соответствует значению, которое мы нашли ранее.

Чему равно это значение при t = 100 минут? ∂s / ∂t = 2t = 200 миль в минуту. Это означает, что через 100 минут автомобиль разгоняется до 200 миль в час.

Давайте на минутку задумаемся о том, как важно и круто то, что мы только что сделали! У нас есть математическое выражение, которое позволяет нам точно знать скорость изменения скорости автомобиля в любой момент времени. Из предыдущего обсуждения мы видим, что скорость изменений меняется со временем.

Нам повезло, что алгебраическое упрощение изящно, но простое s = t2 не дает нам возможности целенаправленно уменьшить Δx. Итак, попробуйте другой пример, где скорость автомобиля немного сложнее.

Теперь, какая высота? Это разница в s, рассчитанная при t+∆x и t-∆x.

То есть высота равна (t + Δx)2 + 2(t + Δx) — (t — Δx)2 — 2(t — Δx).

Какова ширина? Это расстояние между (t + Δx) и (t - Δx), снова 2Δx.

расширять и упрощать выражения

Это важный результат! К сожалению, алгебра снова упрощает это слишком легко. Здесь есть шаблон, о котором мы поговорим позже, так что мы получим результат, не вспотев.

Давайте попробуем другой пример, не слишком сложный. Примем скорость автомобиля за куб времени.

расширять и упрощать выражения

Теперь все становится интереснее! Мы получаем результат, который включает Δx, а до этого Δx в выражении компенсировали друг друга.

Имейте в виду, что градиент является правильным только в том случае, если Δx становится меньше и бесконечно меньше.

Это самое крутое место! Что происходит с Δx в выражении ∂s / ∂t = 3t2 + Δx2, когда Δx становится все меньше и меньше? это прошло! Если это звучит для вас неожиданно, представьте Δx как очень маленькое значение. Вы можете попытаться думать о меньшем значении, а затем о меньшем значении... вы можете продолжать и продолжать, так что Δx будет все ближе и ближе к нулю. Так что давайте просто будем относиться к нему как к 0 и избежим всех этих неприятностей.

Это дает математически точный ответ, который я искал:

Это замечательный результат, на этот раз мы используем мощные математические инструменты для вычислений, и это совсем не сложно.

А.7 Режим

Мы берем дельты как Δx, делаем дельты все меньше и меньше, смотрим, что происходит, вычисляем производные, и радость в том, что мы можем напрямую вычислять производные, не выполняя всю эту работу.

Взгляните на вычисленные производные, чтобы увидеть, можно ли наблюдать какие-либо закономерности:

Можно видеть, что производная функции от t такая же, за исключением того, что степень t уменьшена на 1. Таким образом, t4 становится t3, t7 становится t6 и так далее. Это довольно легко! t равно t1, следовательно, производная от t равна t0, которая равна 1.

Поскольку константы, такие как 3, 4, 5 (постоянные переменные, мы могли бы назвать их a, b, c), не имеют скорости изменения, константы просто исчезают. Вот почему они называются константами.

Но подождите, обратите внимание, что t2 становится 2t вместо t, а t3 становится 3t2, а не t2. Здесь есть еще один шаг, показатель степени используется в качестве множителя перед уменьшением степени. Следовательно, прежде чем показатель степени 2t5 вычтется из 1, следует использовать показатель степени 5 в качестве множителя, таким образом, 5 × 2t4 = 10t4.

Ниже приводится краткое описание этого правила мощности, используемого при выполнении вычислительных операций.

Давайте попробуем эту новую технику на других примерах.

Таким образом, это правило допускает большую дифференциацию, и для большинства целей это все, что нам нужно. Это правило применяется только к полиномам , то есть к выражениям, состоящим из степеней различных переменных, таких как y  = a x 3 + b x 2 + c x  + d, но не к таким выражениям, как sin x или cos x . Поскольку исчисление с правилом мощности имеет множество применений, это не является огромным недостатком.

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

A.8 Функции функций

Представьте себе функцию

где y также является функцией

Мы могли бы также написать f  = ( x3  +  x )2, если бы захотели.

Как меняется f при изменении y ? То есть что такое ∂f  /∂y ? Просто примените только что полученное правило мощности, умножьте показатель степени и вычтите 1 из показателя степени, тогда этот расчет очень прост, и вы можете получить ∂ f /  ∂ y = 2 y .

Еще один интересный вопрос — как меняется f при изменении x ? Выражение f  = ( x3x )2 можно расширить и применить те же правила. Вы не можете просто подстроить правила так, чтобы ( x 3 +  x )2 стало 2 ( x 3 +  x ), не задумываясь.

Если, как и прежде, мы решим это выражение долгим и трудным путем с постепенно уменьшающимися дельтами, то с удивлением обнаружим, что здесь присутствует другой набор закономерностей. Перейдем сразу к ответу.

Шаблон выглядит следующим образом:

Это очень важный результат, который мы называем цепным правилом .

Как видите, этот режим позволяет нам вычислять производную слой за слоем, подобно очистке лука, распутывая составные слои слой за слоем. Чтобы вычислить ∂f /  ∂x , может показаться , что проще сначала вычислить ∂f /  ∂y , а затем ∂y /  ∂x . Если бы это было проще, мы могли бы вычислять кажущиеся невозможными выражения. Цепное правило позволяет нам разбить проблему, разделив ее на более мелкие и простые задачи.

Снова взгляните на этот пример, применяя цепное правило:

Теперь вычисление дает более простые условия. Первый член равен (∂ f  / ∂ y ) = 2 y , а второй член равен (∂ y  / ∂ x ) = 3 x 2 + 1. Тогда, используя цепное правило, объединяя эти слагаемые, получаем:

Мы знаем, что y  =  x 3 +  x , поэтому мы получаем выражение только для x :

Какой волшебный момент стать свидетелем!

Вы можете задаться вопросом, зачем это делается, почему бы сначала не разложить f по x , затем применить правило простой степени и выполнить вычисления с полученным полиномом. Конечно, это можно было бы сделать, но если бы это было так, то не было бы определено цепное правило, которое решает многие более сложные проблемы.

Давайте посмотрим на последний пример, он демонстрирует, как работать с несколькими независимыми переменными.

Если получить функцию

где x , y , и z переменные, которые не зависят друг от друга. Что мы подразумеваем под неактуальным? Мы имеем в виду, что x, y и z могут принимать любые значения и не заботятся о значениях других переменных — они не влияют друг на друга. Это отличается от предыдущего примера y = x 3 +  x , где y связано с x .

Что такое ∂f /  ∂x ? Давайте посмотрим на каждый член этого длинного выражения. Первый член равен 2 xy , поэтому производная равна 2 y . Почему это так просто? Поскольку y не имеет ничего общего с x , это довольно просто. Когда мы говорим ∂f  /∂x , мы говорим о том , как изменяется f при изменении x . Если у не зависит от х , то его можно рассматривать как константу. То есть y также может быть другим числом, например 2, 3 или 10.

Идем дальше, следующий член 3 x 2 z . Можно применить правило степени, в результате чего получится 2×3 xz или 6 xz . Поскольку x не имеет ничего общего с z , мы рассматриваем z как скучную константу, такую ​​как 2, 4 или 100. Изменение z не влияет на x .

Последний член равен 4 z , x в этом терме не существует . Это полностью исчезает, поскольку мы рассматриваем его как обычную константу, такую ​​как 2 или 4.

Окончательный ответ

В последнем примере важно, чтобы у вас была уверенность в том, что вы можете игнорировать переменные, о которых известно, что они не имеют значения . Это делает очень простым вычисление довольно сложных выражений. Такое понимание очень необходимо при рассмотрении нейронных сетей.

Вы умеете считать!

Если ты зашел так далеко, ты молодец!

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

Мы изучили два метода, правило степени и правило цепочки, которые позволили нам выполнить много вычислений, в том числе понять, как и почему работают нейронные сети.

Наслаждайтесь своими новыми способностями!

дальнейшее чтение

Алгоритмы искусственного интеллекта (том 3): глубокое обучение и нейронные сети

Эта книга продемонстрирует нейронные сети в различных реальных задачах, таких как распознавание изображений и наука о данных. Мы изучаем современные методы нейронных сетей, включая активацию ReLU, стохастический градиентный спуск, кросс-энтропию , регуляризацию, отсев и визуализацию.

Эта книга подходит в качестве справочника для начинающих читателей по искусственному интеллекту и читателей, интересующихся алгоритмами искусственного интеллекта.

рекомендация

отblog.csdn.net/epubit17/article/details/131421277
рекомендация