DSPROGLIB Telegram 6940
🎧 Как шпион на вечеринке: Independent Component Analysis (ICA)

Представьте: шумная вечеринка — десятки голосов, музыка, звон бокалов. Каждый микрофон записывает неразборчивую смесь всех звуков.
Но шпион, вооружённый Independent Component Analysis (ICA), извлекает из хаоса отдельные разговоры — как будто разделяет сигналы по смыслу.

Именно это делает ICA в данных: разделяет сложные многомерные сигналы на независимые компоненты.
Если PCA (Principal Component Analysis) ищет некоррелированные оси, то ICA идёт дальше — ищет статистически независимые источники.

Математически это выглядит так:
X = A * S


где,
🟰 X — наблюдаемые данные (смесь сигналов),
🟰 A — матрица смешивания,
🟰 S — исходные независимые компоненты.

ICA пытается найти матрицу W, такую что:
S = W * X


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

Пример на Python:
STEP_SIZE = 1e-3
N_ITERATIONS = 50

X_centered = X - np.mean(X, axis=0)
pca = PCA(whiten=True)
X_whitened = pca.fit_transform(X_centered)

n, m = X_whitened.shape
w1 = rng.rand(m)
w1 /= np.linalg.norm(w1) + 1e-10

for i in range(N_ITERATIONS):
s = np.dot(X_whitened, w1)
gradient = 4 / n * np.dot(np.pow(s, 3), X_whitened)
w1 += STEP_SIZE * gradient
w1 /= np.linalg.norm(w1) + 1e-10


После нахождения первой компоненты выполняется deflation, чтобы следующая была независима:
X_deflated = X_whitened - np.outer(np.dot(X_whitened, w1), w1)


🟰 На практике: используйте FastICA — она оптимизирует все компоненты сразу и автоматически проводит whitening.

🗂 Подробная статья

🐸 Библиотека дата-сайентиста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63



tgoop.com/dsproglib/6940
Create:
Last Update:

🎧 Как шпион на вечеринке: Independent Component Analysis (ICA)

Представьте: шумная вечеринка — десятки голосов, музыка, звон бокалов. Каждый микрофон записывает неразборчивую смесь всех звуков.
Но шпион, вооружённый Independent Component Analysis (ICA), извлекает из хаоса отдельные разговоры — как будто разделяет сигналы по смыслу.

Именно это делает ICA в данных: разделяет сложные многомерные сигналы на независимые компоненты.
Если PCA (Principal Component Analysis) ищет некоррелированные оси, то ICA идёт дальше — ищет статистически независимые источники.

Математически это выглядит так:

X = A * S


где,
🟰 X — наблюдаемые данные (смесь сигналов),
🟰 A — матрица смешивания,
🟰 S — исходные независимые компоненты.

ICA пытается найти матрицу W, такую что:
S = W * X


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

Пример на Python:
STEP_SIZE = 1e-3
N_ITERATIONS = 50

X_centered = X - np.mean(X, axis=0)
pca = PCA(whiten=True)
X_whitened = pca.fit_transform(X_centered)

n, m = X_whitened.shape
w1 = rng.rand(m)
w1 /= np.linalg.norm(w1) + 1e-10

for i in range(N_ITERATIONS):
s = np.dot(X_whitened, w1)
gradient = 4 / n * np.dot(np.pow(s, 3), X_whitened)
w1 += STEP_SIZE * gradient
w1 /= np.linalg.norm(w1) + 1e-10


После нахождения первой компоненты выполняется deflation, чтобы следующая была независима:
X_deflated = X_whitened - np.outer(np.dot(X_whitened, w1), w1)


🟰 На практике: используйте FastICA — она оптимизирует все компоненты сразу и автоматически проводит whitening.

🗂 Подробная статья

🐸 Библиотека дата-сайентиста

#буст

BY Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение




Share with your friend now:
tgoop.com/dsproglib/6940

View MORE
Open in Telegram


Telegram News

Date: |

Telegram channels fall into two types: The court said the defendant had also incited people to commit public nuisance, with messages calling on them to take part in rallies and demonstrations including at Hong Kong International Airport, to block roads and to paralyse the public transportation system. Various forms of protest promoted on the messaging platform included general strikes, lunchtime protests and silent sit-ins. In the next window, choose the type of your channel. If you want your channel to be public, you need to develop a link for it. In the screenshot below, it’s ”/catmarketing.” If your selected link is unavailable, you’ll need to suggest another option. According to media reports, the privacy watchdog was considering “blacklisting” some online platforms that have repeatedly posted doxxing information, with sources saying most messages were shared on Telegram. Joined by Telegram's representative in Brazil, Alan Campos, Perekopsky noted the platform was unable to cater to some of the TSE requests due to the company's operational setup. But Perekopsky added that these requests could be studied for future implementation.
from us


Telegram Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
FROM American