Книга безусловно хорошая. И, вероятно, даже очень нужная для молодого поколения. Мы то, советские школьники 1970-1980 годов уже в 5-том классе познавали понятие «функция», а в 7-м классе понятие «производная». Понятие «частная производная», как производная по одной из координат для функций многих переменных изучались в 1-м семестре 1-го курса института в рамках курса «Математического анализа» и уже очень широко использовалось в других естественно-научных и математических курсах: от «Строения вещества», кафедра «Общей и физической химии» – стационарное и нестационарное уравнение Эрвина Шрёдингера с 3D оператором Гамильтониана, до уравнений «Математической физики», уравнений Максвелла, ТОЭ и т.п. Вероятно современных школьников и студентов, по крайней мере на родине автора (Сет Вейдман – он вообще откуда, я не понял) ничему этому не учат. Поэтому первые главы восполняют этот пробел, как принято теперь писать в авторефератах к кандидатской диссертации. Ну уже хорошо. Действительно, без понимания «функций» и их «производных» в теории и практике нейронных сетей и нейросетевых алгоритмов нечего делать. Хоть здесь выучат наконец. Очень хорошо.
Примеры приведены на новомодном языке программирования Python (Питон), который агрессивно набирает популярность. Можно сказать грубее и правдивее – агрессивно навязывается молодому поколению «программистов с улицы». Мы, старые профи, которые получали качественное советское высшее образование в 1980-х годах и застали ещё FORTRAN, C, Assembler, Бейсик, Focal (на советской домашней ПЭВМ «БК0010» – программы для курсовых писал) и программируемые калькуляторы МК52 и МК61 (сколько лабораторных на нём просчитано и не перечесть – 100 шагов на встроенном ассемблере и 16 ячеек памяти каждая на вещественное число с плавающей точкой), уже пережили нашествие Delphy, Builder, Java, C#.
Теперь вот пришёл Python. Очень смешной язык. В котором для облегчения понимания программистов с улицы убраны такие фундаментальные основы настоящих языков программирования (например, C, C++), как типизация данных, структуры данных, зато добавлено понятие «словари» для массивов литералов. Типа, молодые программисты, в отличии от старых, уже не поймут, что массив литералов это тоже массив, такой же как и массив чисел, поэтому необходимо для молодых программистов ввести новое курьёзное понятие «словарь» – то есть массив литералов. Компьютеру-то всё равно: литералы или числа. Компьютер всё это так и так переведёт в комбинации "0" и "1". Но это для молодых программистов с улицы уже совсем недоступная для понимания сложность. Ну тоже годится. Уж кто вырос, на тех и рассчитываем.
Правда, чудес не бывает. Python язык не компилируемый, а интерпретируемый. Поэтому тексты на Python это не программы для компиляции и линкования, а скрипты, которые интерпретируются в момент выполнения. И выполняются эти тексты, поэтому, медленно.
Поэтому тексты на Python, рано или поздно придётся переписывать на нормальный компилируемый язык, то есть на C/С++. Ну это уж для тех, кто доживет до 2040-х годов. Как сейчас переписываются на нормальный C/С++ проекты, написанные второпях на Delphy в 1990-е годы, тогда, может быть, и эти примеры с Python через 20 лет перепишут на нормальный язык профессионального промышленного программирования С. Тем более, что библиотеки для Python сразу пишут умные профессионалы на С.
В общем эта книжка – очень интересный опыт на тему: «Как хорошего, доброго, но безграмотного человека с улицы обучить нейросетевым алгоритмам и превратить в гуру глубокого обучения». Интересно, интересно.
После изучения книги и проработки примеров получится такой сверхузкий специалист, который раньше вообще ничего не знал, в том числе, про математику и программирование (это разные дисциплины!!!), а теперь будет что-то знать про начала алгебры и анализа, нейросетевые алгоритмы как часть численных методов прикладной математики, и даже будет иметь начальные понятия о программировании в части смешного интерпретируемого языка Python.
Запасаемся попкорном, смотрим, и, на всякий случай, перестаём пользоваться современной техникой, а то мало ли что там эти программисты с улицы напрограммируют.
«Глубокое обучение: легкая разработка проектов на Python» kitobiga sharhlar