>> 30 Виталий, спасибо за комментарий. Действительно – в тексте присутствовала описка, никак не искажающая вывод в целом, но абсурдная с точки зрения синтаксиса. Удивительно, что никто её до этого не заметил. Ещё раз – спасибо за наблюдательность: комментарии читателей помогают сделать блог лучше.
Статья действительно очень полезна, и дала понимание с дефференцированием по вектора, но есть неточность в формуле, а именно в раскрыто виде суммы матриц А+А^т, ведь там должна быть прямоугольная матрица состоящая из элементов между которыми стоит плюс, а не матрица столбец, из сумм.
Спасибо, данная статья помогла лучше разобраться с дифференцированием по вектору. Однако, мне кажется, в выкладках имеется неточность, в последней выкладке перед выведением первой формулы ( (А+А.Т)х ), над словами ("Осталось заметить, что левый множитель представляет собой специфическое суммирование элементов матрицы") записано произведение векторов, которое не даст нам получить заветную формулы. Должно быть произведение матрицы (а именно матрицы А+А.Т) на вектор.
Александр, очень рад, что нашел Вашу статью! Спасибо огромное за разъяснение, были трудности с пониманием формул, но после подробных выкладок, всё встало на свои места и материал стал понятен! Ещё раз благодарю за Ваш труд!
>> 22
Rustam, в ближайшее время я выложу детальный вывод формул. Ваш комментарий окончательно убедил меня в необходимости данной заметки (у читателей возникает много вопросов по данной теме). Отвечаю на Ваш вопрос: это нормально, что оператор (в данном случае, дифференцирования) может возвращать одно и то же значение (функцию) для разных аргументов. Например, если рассмотреть функции f1(x) = (10x) и f2(x) = (10x - 8) - производные по x совпадают (10), хоть сами функции не эквивалентны. Подобным свойством могут обладать и функции: например, в квадратичной зависимости двум разным аргументам может соответствовать одно и то же значение функции.
>> 19 Да, пожалуй, использовать подобные конструкции не комильфо. Во-первых, они выглядят алогично, застряв на стыке между абстракцией и её аппаратной реализацией. Во-вторых, переносимость такого решения зависит от полноты поддержки стандарта (о портировании подобного кода или использовании его фрагментов, в том числе, с новыми типами данных - страшно подумать). В-третьих, думается, грамотно спроектированный алгоритм должен обнаруживать угрозу получения NaN.
Тем не менее, о подобных фокусах неплохо знать, как о шалостях типа 42[x].
Матчасть раскрыта, но как это применять на практике?
Чтобы проверить на NaN, в языках есть специальные функции. Полагаю, это лучше, чем использовать такие неочевидные методы, способные запутать читающего.
>> 16 Да, судя по-всему, механизм эпизоотии эмулируется отравлением в совокупности с трофаллаксисом.
Цитата - М. Твен «Как я редактировал сельскозяйственную газету» (здесь - на сайте - упоминал в обзоре на "Жизнь и смерть академии не Жуковского").
И, конечно же, инсектицид не может вызвать инфекционные заболевания. Если в упаковке со средством скрываются возбудители инфекции, то магазином и производителем заинтересуются компетентные органы.
В-общем, маркетолухи как всегда, лишь бы что написать.
Как говорил кто-то из классиков, "Первый раз слышу, что чтобы работать редактором, нужно что-то знать"
Какая-то корявая формулировка задачи, перечитал изначальное условие несколько раз — ничерта не понял. Автор изложил всё так, как понятно ему, не обратил внимание на, как ему казалось, "очевидные" вещи, и на том и успокоился. Вообще, это, к сожалению, норма для школьных учебников, так как их толком никто не проверяет, как во времена СССР (зато выпускают новые издания со скоростью пулемёта — деньги-то надо за них получать). Ещё хуже бывает, когда авторы задачи "забывают" уточнить что-то важное, и в результате задача усложняется в разы либо просто становится нерешаемой. Особенно здорово, когда это на ЕГЭ происходит. Ходи потом апелляции подавай и доказывай, что не верблюд.
Спасибо! Возник ровно ваш вопрос в связи с этой https://habrahabr.ru/post/307004/ статьей на хабре (Вы ведь тоже линейную регрессию разбирали?), а поскольку в математике я полный нуб, самостоятельно решить вряд ли получилось бы.
>> 8 Ну, в первую очередь, это теоретическая попытка. Из практических примеров на ум приходит экран монитора, на который с некоторым FPS натягивается текстура, являющая собой результат рендера мира с позиции и ориентации камеры наблюдения.
При отсутствии в движке другого инструментария, несколько слоёв полупрозрачных квадов (трёхмерных примитивов, составленных из двух полигонов-треугольников, и представляющих собой плоский прямоугольник с нулевой толщиной) с динамически меняющейся текстурой позволяют реализовать полноэкранный blur эффект. Текстура, аналогично первому примеру, получается путём рендера мира. Если перед наблюдателем N пронумерованных в сторону "от наблюдателя" квадов, то в момент времени T: на 1-ом кваде содержится изображение мира в момент времени T, на втором - (T-dt), на третьем - (T-dt*2), и т.д.
Rustam, в ближайшее время я выложу детальный вывод формул. Ваш комментарий окончательно убедил меня в необходимости данной заметки (у читателей возникает много вопросов по данной теме). Отвечаю на Ваш вопрос: это нормально, что оператор (в данном случае, дифференцирования) может возвращать одно и то же значение (функцию) для разных аргументов. Например, если рассмотреть функции f1(x) = (10x) и f2(x) = (10x - 8) - производные по x совпадают (10), хоть сами функции не эквивалентны. Подобным свойством могут обладать и функции: например, в квадратичной зависимости двум разным аргументам может соответствовать одно и то же значение функции.
http://nerdist.com/behold-the-worlds-oldest-known-d20/
Тем не менее, о подобных фокусах неплохо знать, как о шалостях типа 42[x].
Чтобы проверить на NaN, в языках есть специальные функции. Полагаю, это лучше, чем использовать такие неочевидные методы, способные запутать читающего.
Цитата - М. Твен «Как я редактировал сельскозяйственную газету» (здесь - на сайте - упоминал в обзоре на "Жизнь и смерть академии не Жуковского").
В-общем, маркетолухи как всегда, лишь бы что написать.
Как говорил кто-то из классиков, "Первый раз слышу, что чтобы работать редактором, нужно что-то знать"
Верно ! В общем случае там справа получим: (A+Aтранспонированное)*x.
Ahahah! Ahahahah! No.
При отсутствии в движке другого инструментария, несколько слоёв полупрозрачных квадов (трёхмерных примитивов, составленных из двух полигонов-треугольников, и представляющих собой плоский прямоугольник с нулевой толщиной) с динамически меняющейся текстурой позволяют реализовать полноэкранный blur эффект. Текстура, аналогично первому примеру, получается путём рендера мира. Если перед наблюдателем N пронумерованных в сторону "от наблюдателя" квадов, то в момент времени T: на 1-ом кваде содержится изображение мира в момент времени T, на втором - (T-dt), на третьем - (T-dt*2), и т.д.
Так точно. Стена, сэр!