Регресія PLS спирається на ітеративні алгоритми (наприклад, NIPALS, SIMPLS). Ваш опис основних ідей правильний: ми шукаємо один (PLS1, одна змінна відповідь / кілька предикторів) або два (PLS2, з різними режимами, множинні змінні відповіді / декілька предикторів) вектор (и) ваг, (і ) , скажімо, для формування лінійних комбінацій (-ів) вихідної змінної (-ів) такої, що коваріація між Xu та Y (Yv, для PLS2) максимальна. Зосередимось на витягуванні першої пари ваг, пов'язаних з першим компонентом. Формально критерій оптимізації читає
У вашому випадку є універсальним, тому він становить максимізацію
uv
maxcov(Xu,Yv).(1)
Ycov(Xu,y)≡Var(Xu)1/2×cor(Xu,y)×Var(y)1/2,st.∥u∥=1.
Оскільки не залежить від , ми максимізуємо . Розглянемо , де дані стандартизовані індивідуально (я спочатку помилився з масштабуванням вашої лінійної комбінації замість та окремо!), Так що ; однак і залежить від . На закінчення,
максимальне співвідношення між латентною складовою та змінною відповіді не дасть однакових результатівVar(y)uVar(Xu)1/2×cor(Xu,y)X=[x_1;x_2]
x1x2Var(x1)=Var(x2)=1Var(Xu)≠1u.
Я повинен подякувати Артуру Тененхаузу, який вказав на мене в правильному напрямку.
Використання одиничних векторів ваги не є обмежуючим, і деякі пакети ( pls. regression
у plsgenomics , засновані на коді з попереднього пакета Wehrens pls.pcr
) повертають нестандартні вектори ваги (але з прихованими компонентами, які все ще є нормою 1), якщо це вимагається. Але більшість пакетів PLS поверне стандартизовані , включаючи той, який ви використовували, зокрема ті, що реалізують алгоритм SIMPLS або NIPALS; Я знайшов хороший огляд обох підходів у презентації Баррі М. Уайза, регрес властивостей часткових найменших квадратів (PLS) та відмінності між алгоритмами , але хіміометрієюuвіньєтка також пропонує хорошу дискусію (с. 26-29). Особливо важливим є також той факт, що більшість підпрограм PLS (принаймні тієї, яку я знаю в R) передбачають, що ви надаєте нестандартні змінні, оскільки центрирування та / або масштабування обробляються внутрішньо (це особливо важливо при перехресній валідації, наприклад, ).
Враховуючи обмеження , вектор виявляєтьсяu′u=1u
u=X′y∥X′y∥.
Використовуючи невелике моделювання, його можна отримати наступним чином:
set.seed(101)
X <- replicate(2, rnorm(100))
y <- 0.6*X[,1] + 0.7*X[,2] + rnorm(100)
X <- apply(X, 2, scale)
y <- scale(y)
# NIPALS (PLS1)
u <- crossprod(X, y)
u <- u/drop(sqrt(crossprod(u))) # X weights
t <- X%*%u
p <- crossprod(X, t)/drop(crossprod(t)) # X loadings
Ви можете порівняти вищезазначені результати ( u=[0.5792043;0.8151824]
зокрема) з тим, що давали б R-пакети. Наприклад, з допомогою NIPALS з хемометрика пакета (інша реалізація , який я знаю , що можна знайти в mixOmics пакеті), ми отримаємо:
library(chemometrics)
pls1_nipals(X, y, 1)$W # X weights [0.5792043;0.8151824]
pls1_nipals(X, y, 1)$P # X loadings
Аналогічні результати будуть отримані з plsr
алгоритмом PLS ядра за замовчуванням:
> library(pls)
> as.numeric(loading.weights(plsr(y ~ X, ncomp=1)))
[1] 0.5792043 0.8151824
У всіх випадках ми можемо перевірити, що має довжину 1.u
За умови, що ви зміните свою функцію, щоб оптимізувати функцію, яка читається
f <- function(u) cov(y, X%*%(u/sqrt(crossprod(u))))
і нормалізуючись u
згодом ( u <- u/sqrt(crossprod(u))
), ви повинні бути ближче до вищевказаного рішення.
Вказане : Оскільки критерій (1) еквівалентний
може бути знайдений як лівий сингулярний вектор від SVD відповідає найбільшому власному значенню:
maxu′X′Yv,
uX′Y
svd(crossprod(X, y))$u
У більш загальному випадку (PLS2) спосіб узагальнити вищесказане - сказати, що перші канонічні вектори PLS є найкращим наближенням матриці коваріації X і Y в обох напрямках.
Список літератури
- Тененхаус, М (1999). L'approche PLS . Резюме аплікації статистики , 47 (2), 5-40.
- ter Braak, CJF та de Jong, S (1993). Об'єктивна функція часткової регресії найменших квадратів . Журнал хіміометрії , 12, 41–54.
- Абді, Н (2010). Часткова найменша регресія квадратів та проекція на латентну регресію структури (PLS Regression) . Міждисциплінарні огляди Вілі: обчислювальна статистика , 2, 97-106.
- Boulesteix, AL та Strimmer, K (2007). Часткові найменші квадрати: універсальний інструмент для аналізу великомірних геномних даних . Брифінги з біоінформатики , 8 (1), 32-44.
pls
цьому документі JSS є хороший огляд пакету та регресії PLS .