|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Пусть у нас есть N+1 векторов: вектор Y и вектора X1..Xn, и нам нужно построить линейную регрессию первого вектора на остальные Y = A•X + R = Сумма(Аi*Xi) +R -- где A = [A1..Аn] -- набор коэффициентов. Здесь я значком "•" обозначаю векторное произведение, а "*" -- обычное, поэлементное. И мы почему-то не можем (или не хотим) "обращать матрицу", а вместо этого производим такой "первый шаг" нашей будущей (см. дальше) итерационной процедуры: 1) вычисляем Ci= Correlation(Y, Xi) и берём первое приближение А(1) равным С (поэлементно Ai(1) = Ci) 2) вычисляем невязку Z = Y - A(1)•X = Y - Сумма(Аi(1)*Xi) = Y - Сумма(Ci*Xi) Понятно, что соотношение Y = A(1)•X + Z, вообще говоря, не является искомой нами регрессией (Y = A•X + R), потому что Z, вообще говоря, не "независимо" (в смысле корреляции) от X, а R должно быть независимо. Однако мы можем на следующем шаге повторить описанную процедуру "удаления корреляций" уже для Z, а не для Y... ________________________________ Иными словами, введём в рассмотрение Z(0)=Y и A(0)=0 (нулевой вектор). Тогда мы можем записать тождество: Y = Z(0) и даже Y = A(0)•X + Z(0) -- это "нулевой шаг" нашей итерационной процедуры. Её первый шаг, как написано выше: Y = A(1)•X + Z(1) --здесь я только добавил индекс "(1)" к Z. Укажу также, что поэлементно Ai(1) = Correlation(Zi(0), Xi) -- потому что Z(0) есть просто введенное нами обозначение для Y. Введу также обозначение для операции "коллективной корреляции" С = CORR(Z,X) -- то есть вычисления всех коэффициентов корреляции (чисел Сi) вектора Z с каждым из векторов Xi. Тогда, ещё раз: Y = A(0)•X + Z(0) , где A(0)=0 -- нулевой шаг; Y = (A(0)+A(1))•X + Z(1) , где A(1) = CORR(Z(0),X) -- её первый шаг. Я имею право вписать сюда "A(0)+", потому что A(0) это просто нули. Если мы -- по индукции -- вычислим A(2) = CORR(Z(1),X) и введём в рассмотрение следующую невязку Z(2) = Z(1) - A(2)•X, то, подставив отсюда Z(1) в уравнение "первого шага", получим: Y = (A(0)+A(1))•X + A(2)•X + Z(2) = (A(0)+A(1)+A(2))•X + Z(2) -- второй шаг итерационной процедуры. Y = (A(0)+A(1)+A(2)+A(3))•X + Z(3) -- третий шаг (где A(3) = CORR(Z(2),X)) и в общем виде: Y = Сумма{A(j)}•X + Z(K) -- где сумма берётся по j = 0..K -- K-й шаг итерационной процедуры. И A(j) = CORR(Z(j-1),X) . ____________________________ Внимание, вопрос: будет ли Сумма{A(j)} сходится к ("истинным") коэффициентам регрессии Y на X, а Z(K), соответственно, сходиться к ошибке этой регрессии (R в самой первой формуле)? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 12:16 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Ну вы загнули ... Ответа не будет, зуб даю. Могу порассуждать. Обычно о регрессии говорят для временной последовательности. Векторным произведением я всегда считал что-то другое, а здесь похоже на матричное. А - матрица? Ak - вектор? N=n - ? Dim Xk > = < N -? Вообще же неясно. Ci= Correlation(Y, Xi) по определению число. Приближение Ai(1) = Ci, т.о.тоже число. Что ж тогда А за объект? Желаемый в начале рез-т больше похож на разложение в проекции по векторам {Xk}. Ну да, они м.б. взаимно не ортогональны. Вообще, существует процедура ортогонализации, чем-то даже схожая (Якоби ??). Но к-т корреляции отличается от косинуса тем, что считает для центрированных векторов. Эту процедуру можно даже сравнить с алгоритмом Евклида для деления. Геометрически она прозрачна. Можно сравнить для интереса. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 19:00 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Эта схема мне кое что ещё напомнила, но я не нашёл у себе электронных книг. У меня только бумажные. в (Электро) Хардле В. Прикладная непараметрическа регрессия, похожая схема названа говорящим названием "Регрессия целенаправленного проектирования", или RPR. Однако сообщается, что метод не проходит в достаточно простых случаях, напр. Y=x1*x2. в (Бум) Шурыгин АМ, Матем-ские методы прогнозирования. Тама похожее называется Редукционная регрессия. Чуть ли не буквально также за существенными замечаниями! Не просто корреляция, а ищется "устойчивая регрессия отклика на одну переменную", потом вектор остатка - на другую переменную и т.д. Предварительно все Х сортируют по убыванию модуля корреляции с У. В этом порядке и работают. По ходу (проверкой спец. критерия) Х классифицируются на информационные и малоинф-нные. По ходу же рекомендуется проверять каждую редукцию на предме того, что это всё же линейная регрессия. То есть не утверждается, что автоматом всё получится линейно (но и ищется не просто проекция, а устойчивая регрессия остатка). Так что похоже, что подобные схемы не гарантируют необходимой итоговой линейной регрессии. Так что вам решать. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 21:09 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
exp98 Обычно о регрессии говорят для временной последовательности НаЗабореНаписаноЛинейная регрессия (англ. Linear regression) — используемая в статистике регрессионная модель зависимости одной (объясняемой, зависимой) переменной y от другой или нескольких других переменных (факторов, регрессоров, независимых переменных) x с линейной функцией зависимости ( https://ru.wikipedia.org/wiki/Линейная_регрессия ) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 21:43 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
exp98 Векторным произведением я всегда считал что-то другое -- да, матричное, хорошо. Просто матрицы в моём изложении всегда вырожденные, а именно -- вектора. Вектор это ведь тоже матрица. Y = A•X означает, что если А есть [1, 2, 3], а Х есть [4, 5, 6], то Y получится [1*4, 2*5, 3*6] ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 21:50 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
exp98 А - матрица? Ak - вектор? Иван FXS -- где A = [A1..Аn] -- набор коэффициентов. У меня там только буква Х в формуле Иван FXS Y = A•X + R = Сумма(Аi*Xi) +R Соответственно "A•X" это матричное умножение вектора А на матрицу Х. Именно поэтому оно и расписывается следом как "Сумма(Аi*Xi)" -- то есть (векторная) сумма векторов Хi, каждый из которых умножен на свой коэффициент Аi. __________________ exp98 Ci= Correlation(Y, Xi) по определению число. Приближение Ai(1) = Ci, т.о.тоже число. Что ж тогда А за объект? Номера итераций -- (0), (1), (2) и т.д -- специально взяты в скобки, чтобы не смешивать их с индексами компонент векторов -- 1, n, i в A1, An, Ai. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 22:10 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
exp98 Не просто корреляция, а ищется "устойчивая регрессия отклика на одну переменную", потом вектор остатка - на другую переменную и т.д. Предварительно все Х сортируют по убыванию модуля корреляции с У. В этом порядке и работают. -- да, в классическом пакете SPSS реализована такая процедура -- построение (линейной) регрессии путём пошагового -- по одной --добавления в неё независимых переменных. В вашем описании есть кое-какие неточности, но сейчас не буду придираться. Я делаю похожее, но другое: сразу запихиваю все переменные в "псевдорегрессию" -- которая сама по себе оказывается плохой реализацией регрессии (поэтому "псевдо-"), и потом делаю (многократно) то же самое с невязками, возникающими в этом итеративном ряду псевдорегрессий на каждой итерации. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 22:29 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Иван FXS Пусть у нас есть N+1 векторов: вектор Y и вектора X1..Xn, и нам нужно построить линейную регрессию первого вектора на остальные Для этой задачи все итерации и пр. - нафиг не нужны. Просто расписываете систему линейных уравнений и решаете наименьшими квадратами. Все. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 22:31 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Соколинский Борис, "из векторов {Xi} сделать {Y}" -- это и есть регрессия Y на (или "к") {Xi}. Слово "регрессия" означает "сведение к". Я понимаю, что линейная регрессия разрешается путём диагонализации матрицы (в школе все учились, и я тоже). Но иногда это бывает тяжело, а иногда у людей бывает (извращенное) любопытство. И посчитать N корреляций векторов всё-таки заметно легче, чем диагонализировать матрицу. Особенно если второе измерение всего этого зоопарка (ни разу не озвученное в исходном посте, а только подразумеваемое словом "вектор") -- например, десятки тысяч... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2021, 22:42 |
|
Вопрос о сходимости "псевдорегрессии"
|
|||
---|---|---|---|
#18+
Иван FXS ...В вашем описании есть кое-какие неточности, но сейчас не буду придираться. Я делаю похожее, но другое: сразу запихиваю все переменные в "псевдорегрессию" -- которая сама по себе оказывается плохой реализацией регрессии (поэтому "псевдо-")..... Процесс может осцилировать, расходиься и пр. В упомянутых методах выше меры предусмотрены. Какие нужны меры? В другой формулировке: что обеспечит требуемую сходимость? ответ: вера в удачу. А должён быть объективный показатель -->0 монотонно (к примеру как k-means в кластеризации). Опять же, какой степени коррелированности остатка достаточно добиться. Ищите ето. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2021, 17:21 |
|
|
start [/forum/topic.php?fid=16&fpage=3&tid=1339690]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 303ms |
total: | 440ms |
0 / 0 |