(جميع) الاتجاهات المتعامدة مع المستوى الزائد من خلال نقاط البيانات p

StackOverflow https://stackoverflow.com/questions/1622419

  •  06-07-2019
  •  | 
  •  

سؤال

لدي سؤال بسيط:نظرًا لنقاط p (غير خطية متداخلة) في R^p أجد أن الطائرة الفائقة تمر بهذه النقاط (للمساعدة في توضيح كل شيء في R):

p<-2
x<-matrix(rnorm(p^2),p,p)
b<-solve(crossprod(cbind(1,x[,-2])))%*%crossprod(cbind(1,x[,-2]),x[,2])

ثم، بالنظر إلى نقاط p+1^th ليست على خط واحد مع نقاط p الأولى، أجد الاتجاه عموديًا على b:

x2<-matrix(rnorm(p),p,1)
b2<-solve(c(-b[-1],1)%*%t(c(-b[-1],1))+x2%*%t(x2))%*%x2

وهذا يعني أن b2 يحدد مستوى فائق الأبعاد p متعامدًا مع b ويمر بـ x2.والآن أسئلتي هي:

الصيغة تأتي من تفسيري لمدخل ويكيبيديا هذا ("حل (A)" هو أمر R لـ A^-1).لماذا لا يعمل هذا مع p>2 ؟ما الخطأ الذي افعله ؟

ملاحظة:لقد رأيت هذا المنشور (في تعديل Stakeoverflow: آسف لا أستطيع نشر أكثر من رابط واحد) ولكن بطريقة ما لا يساعدني.

شكرا لك مقدما،

لدي مشكلة في تنفيذ/فهم حل Liu عندما يكون p>2:

ألا ينبغي أن يكون المنتج النقطي بين تحلل qr للمصفوفة التي تم مسحها واتجاه المستوى الزائد 0؟(أي.إذا كانت متجهات qr متعامدة مع المستوى الزائد)

أي عندما يكون p=2 هذا

c(-b[2:p],1)%*%c(a1)

يعطي 0.عندما يكون p>2 لا يحدث ذلك.


هذه هي محاولتي لتنفيذ حل فيكتور ليو.

أ) نظرا لملاحظات مستقلة خطيا في R^p:

p<-2;x<-matrix(rnorm(p^2),p,p);x
      [,1]       [,2]
[1,] -0.4634923 -0.2978151
[2,]  1.0284040 -0.3165424

ب) ضعهم في مصفوفة واطرح الصف الأول:

a0<-sweep(x,2,x[1,],FUN="-");a0
        [,1]        [,2]
[1,] 0.000000  0.00000000
[2,] 1.491896 -0.01872726

ج) إجراء تحليل QR للمصفوفة a0.المتجه الموجود في الفراغ الفارغ هو الاتجاه الذي أبحث عنه:

qr(a0)
          [,1]       [,2]
[1,] -1.491896 0.01872726
[2,]  1.000000 0.00000000

بالفعل؛هذا الاتجاه هو نفس الاتجاه المعطى من خلال تطبيق الصيغة من ويكيبيديا (باستخدام x2=(0.4965321,0.6373157)):

       [,1]
[1,]  2.04694853
[2,] -0.02569464

...مع ميزة أنه يعمل في أبعاد أعلى.

لدي سؤال أخير:ما معنى الآخر p-1 (أي(1,0) هنا) متجه QR عندما يكون p>2 ؟-شكرا لك مقدما،

هل كانت مفيدة؟

المحلول

يتم تعريف المستوى الفائق الأبعاد p-1 بواسطة متجه عادي ونقطة يمر عبرها المستوى:

n.(x-x0) = 0

أين n هو المتجه الطبيعي للطول ص، x0 هي النقطة التي يمر من خلالها الطائرة الفائقة، . هو منتج نقطي، ويجب تحقيق المعادلة لأي نقطة x على متن الطائرة.يمكننا أيضًا كتابة هذا كـ

n.x = p

أين p = n.x0 هو مجرد رقم.هذا تمثيل أكثر إحكاما للطائرة المفرطة، والتي يتم تحديد معلماتها بواسطة (n,p).للعثور على المستوى الفائق الخاص بك، لنفترض أن نقاطك هي x1، ...، xp.قم بتكوين مصفوفة A مع صفوف p-1 وأعمدة p كما يلي.صفوف p هي xi-x1، موضوعة على شكل صفوف متجهة، لجميع i>1 (لا يوجد سوى p-1 منها).إذا لم تكن نقاط p الخاصة بك "خطية على خط واحد" كما تقول (يجب أن تكون مستقلة بشكل نسبي)، فستكون للمصفوفة A رتبة p-1، وبُعد مسافة خالية يساوي 1.المتجه الوحيد الموجود في الفضاء الفارغ هو المتجه العادي للمستوى الزائد.بمجرد العثور عليه (أطلق عليه n)، إذن p = n.x1.من أجل العثور على الفضاء الفارغ للمصفوفة، يمكنك استخدام تحليل QR (انظر هنا للتفاصيل).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top