Hacker News Digest

Тег: #numpy

Постов: 2

Important machine learning equations (chizkidd.github.io) 🔥 Горячее

Байес

$$P(A|B)=\frac{P(B|A)P(A)}{P(B)}$$ Обновляем вероятность гипотезы при новых данных.

def bayes(p_d, p_t_d, p_t_nd):
    p_t = p_t_d*p_d + p_t_nd*(1-p_d)
    return p_t_d*p_d / p_t

Энтропия

$$H(X)=-\sum_x P(x)\log P(x)$$ Измеряем неопределённость распределения.

import numpy as np
H = lambda p: -np.sum(p*np.log(p, where=p>0))

KL-дивергенция

$$D_{\text{KL}}(P|Q)=\sum_x P(x)\log\frac{P(x)}{Q(x)}$$ Сколько бит «лишних» нужно, если вместо истинного распределения $P$ использовать $Q$.

Кросс-энтропия

$$H(P,Q)=-\sum_x P(x)\log Q(x)$$ Используется как лосс в классификации.

Линейная алгебра

Линейное преобразование

$$\mathbf{y}=A\mathbf{x}$$ Матрица $A$ переводит вектор $\mathbf{x}$ в пространство признаков.

Собственные значения и векторы

$$A\mathbf{v}=\lambda\mathbf{v}$$ Направления, вдоль которых преобразование лишь растягивает/сжимает.

SVD

$$A=U\Sigma V^\top$$ Разложение на ортогональные и диагональные матрицы; основа PCA и рекомендательных систем.

Оптимизация

Градиентный спуск

$$\theta_{t+1}=\theta_t-\eta\nabla_\theta J(\theta)$$ Шагаем против градиента, чтобы минимизировать функцию потерь $J$.

Backprop

$$\frac{\partial L}{\partial W^{(l)}}=\delta^{(l)}(a^{(l-1)})^\top$$ Цепное правило для обучения нейросетей.

Функции потерь

MSE

$$\text{MSE}=\frac{1}{n}\sum_i (y_i-\hat y_i)^2$$ Классика регрессии.

Кросс-энтропия

$$L=-\sum_i y_i\log \hat y_i$$ Стандарт для классификации.

Продвинутые темы

Диффузия

$$q(x_t|x_{t-1})=\mathcal N(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_t I)$$ Постепенное добавление шума и обратное восстановление.

Свертка

$$(f*g)[n]=\sum_m f[m]g[n-m]$$ Извлечение локальных паттернов в CNN.

Softmax

$$\text{softmax}(z_i)=\frac{e^{z_i}}{\sum_j e^{z_j}}$$ Превращает логиты в вероятности.

Attention

$$\text{Attention}(Q,K,V)=\text{softmax}\left(\frac{QK^\top}{\sqrt d_k}\right)V$$ Взвешенная сумма значений по релевантности запроса и ключей.


Краткий конспект ключевых уравнений ML: от вероятностей до трансформеров, с кодом и интуицией.

by sebg • 28 августа 2025 г. в 11:38 • 265 points

ОригиналHN

#machine-learning#python#numpy#linear-algebra#optimization#deep-learning#probability#statistics#transformers#convolutional-neural-networks

Комментарии (26)

  • @dkislyuk и @morleytj критикуют формат «списка формул» без связного объяснения и советуют читать оригинальную теорию Шеннона.
  • @cl3misch нашёл баг в коде энтропии из-за неинициализированных значений и несоответствие формулы кросс-энтропии.
  • @dawnofdusk и @cgadski хвалят полноту материала как удобную шпаргалку для быстрого погружения.
  • @bee_rider и @calebkaiser обсуждают применение сингулярных чисел и собственных значений в LLM и LoRA.

Line scan camera image processing for train photography (daniel.lawrence.lu) 🔥 Горячее

  • Камера – Alkeria Necta N4K2-7C, 4096×2 Bayer, 16-бит raw.
  • ROI – энергия ∂I/∂x / (0.1·max(I)+|∇I|); 99-й перцентиль по блокам, порог 1.5× минимума.
  • Скорость – сравниваем два зелёных канала Bayer-сдвигами ±7 px, подпиксельный пик методом итеративного Гаусса.
  • Ресэмплинг – интерполяция по скорости, чтобы не растянуть/сжать объект.
  • Демозаик – bilinear + коррекция полос.
  • Полосы – вычитаем медиану по строкам.
  • Шум – Gaussian + bilateral фильтр.
  • Косой кадр – Hough-прямые → угол → поворот.
  • Цвет – калибровка по чекеру X-Rite.
  • Код – Python + NumPy + OpenCV, «vibe-coding» в Cursor.

by dllu • 23 августа 2025 г. в 16:09 • 413 points

ОригиналHN

#python#numpy#opencv#image-processing#computer-vision#line-scan-camera#bayer-filter#gaussian-filter#bilinear-interpolation#hough-transform

Комментарии (66)

  • Пользователи делятся опытом: кто-то пробовал сканировать деревья дроном, кто-то делает slit-scan-анимации вручную, а кто-то вспоминает сканеры и старые цифровые спины.
  • Обсуждаются промышленные применения: сортировка продуктов на конвейере, фото-финиш, спутники и даже медицинская ОКТ.
  • Рассказывают, как почти любую камеру можно превратить в line-scan, выставив только одну строку пикселей и получив 60 000 FPS.
  • Показывают примеры снимков из окна поезда и спорят, насколько реально «отсканировать» часовую поездку целиком.
  • Отмечают художественный эффект: поезд застыл между полосами цвета, а движущиеся части искажаются, как у спортсменов на фото-финиша.