Рубрика «математика для программистов»

Всё началось довольно тихо — без шоу-программ и футуристичных роботов на сцене. В 2017-м исследователи Google опубликовали статью с до смешного скромным названием: Attention is All You Need. Тогда мало кто понял, что именно в этот момент случилось новое «деление эпох»: теперь у ИИ было чёткое «до» и «после».

Сегодня почти весь генеративный ИИ — от ChatGPT до Midjourney, от Gemini до Claude — внутри себя основан на трансформерах. А фундамент всей этой революции оказался… ну прямо скажем, совсем не похожим на научную фантастику. Просто скалярное произведение двух векторов — действие из школьной линейной алгебры

Читать полностью »

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

Я начала разработку интерактивного интерфейса для своего проекта «Florist». Центральным элементом сайта должен был стать интерактивный макет — с его помощью пользователь мог бы визуализировать различные цветочные дизайны, располагая в ячейках макета цветы из каталога. Я создала прототип, внедрила его в сайт и доработала окончательный дизайн до такой картинки:

Читать полностью »

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

Сперва приведем реальный пример, демонстрацию способа уточнения МНК. Летом 2024 года я вычислил курс доллара в Казахстане на полгода вперед. И написал об этом статью здесь же - https://habr.com/ru/articles/823852/ (все даты реальные, я не хакер, Хабр взломать не смогу:)).

Этот прогноз сбылся, вот график курса тенге за второе полугодие 2024 года:

Читать полностью »

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

Первые шаги

Читать полностью »

Термины

  • NS (СС) — Numeral System (Система Счисления)

Перевод из десятичной NS в двоичную

Существует два способа перевести из десятичной NS в двоичную. Далее будут разобраны оба алгоритма.

Алгоритм №1

Мы можем перевести число n_{10} из десятичной NS в двоичную, следуя следующему алгоритму:
Для этого необходимо выполнить следующие действия:

  1. Делим Читать полностью »

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

Сначала вспомним главное определение:

Множество — это коллекция элементов, обладающих общим свойством, которые рассматриваются как единое целое. Элементы множества могут быть любыми: числами, объектами, символами и т.д.

1. Множество целых чисел: {1, 2, 3, 4}

2. Множество гласных букв русского алфавита: {А, Е, И, О, У, Ы, Э, Ю, Я}

Читать полностью »

Настоящая статья продолжает тему предыдущей работы (https://habr.com/ru/post/560266/Читать полностью »

Итак, очередная статья из цикла «математика на пальцах». Сегодня мы продолжим разговор о методах наименьших квадратов, но на сей раз с точки зрения программиста. Это очередная статья в серии, но она стоит особняком, так как вообще не требует никаких знаний математики. Статья задумывалась как введение в теорию, поэтому из базовых навыков она требует умения включить компьютер и написать пять строк кода. Разумеется, на этой статье я не остановлюсь, и в ближайшее же время опубликую продолжение. Если сумею найти достаточно времени, то напишу книгу из этого материала. Целевая публика — программисты, так что хабр подходящее место для обкатки. Я в целом не люблю писать формулы, и я очень люблю учиться на примерах, мне кажется, что это очень важно — не просто смотреть на закорючки на школьной доске, но всё пробовать на зуб.

Итак, начнём. Давайте представим, что у меня есть триангулированная поверхность со сканом моего лица (на картинке слева). Что мне нужно сделать, чтобы усилить характерные черты, превратив эту поверхность в гротескную маску?

Методы наименьших квадратов без слёз и боли - 1

В данном конкретном случае я решаю эллиптическое дифференциальное уравнение, носящее имя Симеона Деми Пуассона. Товарищи программисты, давайте сыграем в игру: прикиньте, сколько строк в C++ коде, его решающем? Сторонние библиотеки вызывать нельзя, у нас в распоряжении только голый компилятор. Ответ под катом.

Читать полностью »

Полтора года назад я опубликовал статью «Математика на пальцах: методы наименьших квадратов», которая получила весьма приличный отклик, который, в том числе, заключался в том, что я предложил нарисовать сову. Ну, раз сова, значит, нужно объяснять ещё раз. Через неделю ровно на эту тему я начну читать несколько лекций студентам-геологам; пользуюсь случаем, излагаю тут (адаптированные) основные тезисы в качестве черновика. Моей основной целью не является дать готовый рецепт из книги о вкусной и здоровой пищи, но рассказать, почему он таков и что ещё находится в соответствующем разделе, ведь связи между разными разделами математики — это самое интересное!

На данный момент я предполагаю разбить текст на три статьи:

  • 1. Ликбез по теории вероятностей и как она связана с методами наименьших квадратов
  • 2. Наименьшие квадраты, простейший случай, и как их программировать
  • 3. Нелинейные задачи

Я зайду к наименьшим квадратам чуть сбоку, через принцип максимума правдоподобности, а он требует минимального ориентирования в теории вероятностей. Данный текст рассчитан на третий курс нашего факультета геологии, что означает, (с точки зрения задействованного матаппарата!) что заинтересованный старшеклассник при соответствующем усердии должен суметь в нём разобраться.

Насколько обоснован теорвер или верите ли вы в теорию эволюции?

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

В трёх статьях о наименьших квадратах: ликбез по теории вероятностей - 1
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js