تحليل QR

في الجبر الخطي ، يُعرف تحليل QR ، أو تحليل QR أو تحليل QU ، بأنه تحليل للمصفوفة A إلى حاصل ضرب A = QR لمصفوفة متعامدة Q ومصفوفة مثلثية علوية R. يُستخدم تحليل QR غالبًا لحل مسألة المربعات الصغرى الخطية (LLS) وهو أساس خوارزمية القيم الذاتية الخاصة ، خوارزمية QR .  

الحالات والتعريفات

مصفوفة مربعة

يمكن تحليل أي مصفوفة مربعة حقيقية A إلى:

أ=سؤالR،{\displaystyle A=QR,}

حيث Q هي مصفوفة متعامدة (أعمدتها عبارة عن متجهات وحدة متعامدة بمعنىسؤالتي=سؤال-1{\displaystyle Q^{\textsf {T}}=Q^{-1}}و R مصفوفة مثلثية علوية (تُسمى أيضًا مصفوفة مثلثية يمنى). إذا كانت A قابلة للعكس ، فإن التحليل يكون فريدًا إذا اشترطنا أن تكون عناصر القطر الرئيسي لـ R موجبة .

أما إذا كانت A مصفوفة مربعة مركبة، فإنه يوجد تحليل A = QR حيث Q مصفوفة وحدوية (وبالتالي منقولة المرافق).سؤال=سؤال-1{\displaystyle Q^{\dagger }=Q^{-1}}).

إذا كانت المصفوفة A تحتوي على n عمودًا مستقلًا خطيًا ، فإن أول n عمودًا من Q تُشكّل أساسًا متعامدًا لفضاء أعمدة A. وبشكل أعم، تُشكّل أول k عمودًا من Q أساسًا متعامدًا للفضاء الممتد لأول k عمودًا من A لأي عدد صحيح موجب 1 ≤ kn . [ 1 ] إن حقيقة أن أي عمود k من A يعتمد فقط على أول k عمودًا من Q تُقابل الشكل المثلثي لـ R. [ 1 ] 

التفسير الهندسي لتحليل QR في بعدين، موضحًا تحويلًا مثلثيًا علويًا متبوعًا بتحويل متعامد.

المصفوفة المستطيلة

بشكل عام، يمكننا تحليل مصفوفة معقدة من الرتبة m × A ، حيث mn ، إلى حاصل ضرب مصفوفة وحدوية من الرتبة m × m ، ومصفوفة مثلثية علوية من الرتبة m × R. وبما أن الصفوف ( mn ) السفلية من مصفوفة مثلثية علوية من الرتبة m × n تتكون بالكامل من أصفار، فإنه من المفيد غالبًا تقسيم R ، أو كل من R و Q :

أ=سؤالR=سؤال[R10]=[سؤال1سؤال2][R10]=سؤال1R1،{\displaystyle A=QR=Q{\begin{bmatrix}R_{1}\\0\end{bmatrix}}={\begin{bmatrix}Q_{1}&Q_{2}\end{bmatrix}}{\begin{bmatrix}R_{1}\\0\end{bmatrix}}=Q_{1}R_{1},}

حيث R 1 هي مصفوفة مثلثية علوية من الرتبة n × n ، و 0 هي مصفوفة صفرية من الرتبة ( mn ) × n ، و Q 1 هي من الرتبة m × n ، و Q 2 هي من الرتبة m × ( mn ) ، و Q 1 و Q 2 كلاهما لهما أعمدة متعامدة.

يُطلق غولوب وفان لون (1996 ، §5.2) على Q1R1 اسم تحليل QR الرقيق للمصفوفة A ؛ ويُطلق عليه تريفثن وباو اسم تحليل QR المُختزل . [ 1 ] إذا كانت A من الرتبة n الكاملة ، واشترطنا أن تكون العناصر القطرية لـ R1 موجبة، فإن R1 وQ1 يكونان وحيدين، ولكن Q2 ليس كذلك بشكل عام . عندئذٍ ، يكون R1 مساويًا للعامل المثلثي العلوي لتحليل تشوليسكي للمصفوفة A * A ( أي ATA إذا كانت A حقيقية ) . 

تحليلات QL و RQ و LQ

وبالمثل، يمكننا تعريف تحليلات QL و RQ و LQ، حيث L عبارة عن مصفوفة مثلثية سفلية .

حساب تحليل QR

توجد عدة طرق لحساب تحليل QR، مثل عملية غرام-شميدت ، وتحويلات هاوسهولدر ، أو دورانات جيفنز . ولكل منها عدد من المزايا والعيوب.

باستخدام عملية غرام-شميدت

لنفترض تطبيق عملية غرام-شميدت على أعمدة مصفوفة الرتبة العمودية الكاملةأ=[أ1أن]{\displaystyle A={\begin{bmatrix}\mathbf {a} _{1}&\cdots &\mathbf {a} _{n}\end{bmatrix}}}، مع المنتج الداخليv،w=vتيw{\displaystyle \langle \mathbf {v} ,\mathbf {w} \rangle =\mathbf {v} ^{\textsf {T}}\mathbf {w} }(أوv،w=vw{\displaystyle \langle \mathbf {v} ,\mathbf {w} \rangle =\mathbf {v} ^{\dagger }\mathbf {w} }(للحالات المعقدة).

حدد الإسقاط :

مشروعuأ=u،أu،uu{\displaystyle \operatorname {proj} _{\mathbf {u} }\mathbf {a} ={\frac {\left\langle \mathbf {u} ,\mathbf {a} \right\rangle }{\left\langle \mathbf {u} ,\mathbf {u} \right\rangle }}{\mathbf {u} }}

ثم:

u1=أ1،هـ1=u1u1u2=أ2-مشروعu1أ2،هـ2=u2u2u3=أ3-مشروعu1أ3-مشروعu2أ3،هـ3=u3u3uك=أك-ج=1ك-1مشروعuجأك،هـك=uكuك{\displaystyle {\begin{aligned}\mathbf {u} _{1}&=\mathbf {a} _{1},&\mathbf {e} _{1}&={\frac {\mathbf {u} _{1}}{\|\mathbf {u} _{1}\|}}\\\mathbf {u} _{2}&=\mathbf {a} _{2}-\operatorname {proj} _{\mathbf {u} _{1}}\mathbf {a} _{2},&\mathbf {e} _{2}&={\frac {\mathbf {u} _{2}}{\|\mathbf {u} _{2}\|}}\\\mathbf {u} _{3}&=\mathbf {a} _{3}-\operatorname {proj} _{\mathbf {u} _{1}}\mathbf {a} _{3}-\operatorname {proj} _{\mathbf {u} _{2}}\mathbf {a} _{3},&\mathbf {e} _{3}&={\frac {\mathbf {u} _{3}}{\|\mathbf {u} _{3}\|}}\\&\;\;\vdots &&\;\;\vdots \\\mathbf {u} _{k}&=\mathbf {a} _{k}-\sum _{j=1}^{k-1}\operatorname {proj} _{\mathbf {u} _{j}}\mathbf {a} _{k},&\mathbf {e} _{k}&={\frac {\mathbf {u} _{k}}{\|\mathbf {u} _{k}\|}}\end{aligned}}}

يمكننا الآن التعبير عنأأنا{\displaystyle \mathbf {a} _{i}}s على أساسنا المتعامد المحسوب حديثًا:

أ1=هـ1،أ1هـ1أ2=هـ1،أ2هـ1+هـ2،أ2هـ2أ3=هـ1،أ3هـ1+هـ2،أ3هـ2+هـ3،أ3هـ3أك=ج=1كهـج،أكهـج{\displaystyle {\begin{aligned}\mathbf {a} _{1}&=\left\langle \mathbf {e} _{1},\mathbf {a} _{1}\right\rangle \mathbf {e} _{1}\\\mathbf {a} _{2}&=\left\langle \mathbf {e} _{1},\mathbf {a} _{2}\right\rangle \mathbf {e} _{1}+\left\langle \mathbf {e} _{2},\mathbf {a} _{2}\right\rangle \mathbf {e} _{2}\\\mathbf {a} _{3}&=\left\langle \mathbf {e} _{1},\mathbf {a} _{3}\right\rangle \mathbf {e} _{1}+\left\langle \mathbf {e} _{2},\mathbf {a} _{3}\right\rangle \mathbf {e} _{2}+\left\langle \mathbf {e} _{3},\mathbf {a} _{3}\right\rangle \mathbf {e} _{3}\\&\;\;\vdots \\\mathbf {a} _{k}&=\sum _{j=1}^{k}\left\langle \mathbf {e} _{j},\mathbf {a} _{k}\right\rangle \mathbf {e} _{j}\end{aligned}}}

أينهـأنا،أأنا=uأنا{\displaystyle \left\langle \mathbf {e} _{i},\mathbf {a} _{i}\right\rangle =\left\|\mathbf {u} _{i}\right\|}يمكن كتابة ذلك في شكل مصفوفة :

أ=سؤالR{\displaystyle A=QR}

أين:

سؤال=[هـ1هـن]{\displaystyle Q={\begin{bmatrix}\mathbf {e} _{1}&\cdots &\mathbf {e} _{n}\end{bmatrix}}}

و

R=[هـ1،أ1هـ1،أ2هـ1،أ3هـ1،أن0هـ2،أ2هـ2،أ3هـ2،أن00هـ3،أ3هـ3،أن000هـن،أن].{\displaystyle R={\begin{bmatrix}\langle \mathbf {e} _{1},\mathbf {a} _{1}\rangle &\langle \mathbf {e} _{1},\mathbf {a} _{2}\rangle &\langle \mathbf {e} _{1},\mathbf {a} _{3}\rangle &\cdots &\langle \mathbf {e} _{1},\mathbf {a} _{n}\rangle \\0&\langle \mathbf {e} _{2},\mathbf {a} _{2}\rangle &\langle \mathbf {e} _{2},\mathbf {a} _{3}\rangle &\cdots &\langle \mathbf {e} _{2},\mathbf {a} _{n}\rangle \\0&0&\langle \mathbf {e} _{3},\mathbf {a} _{3}\rangle &\cdots &\langle \mathbf {e} _{3},\mathbf {a} _{n}\rangle \\\vdots &\vdots &\vdots &\ddots &\vdots \\0&0&0&\cdots &\langle \mathbf {e} _{n},\mathbf {a} _{n}\rangle \\\end{bmatrix}}.}

مثال

التفسير الهندسي لتحليل QR في ثلاثة أبعاد، موضحًا بنية التحليل كتحويل مثلثي علوي متبوعًا بتحويل متعامد.

ضع في اعتبارك تفكيك

أ=[12-5146167-68-424-41].{\displaystyle A={\begin{bmatrix}12&-51&4\\6&167&-68\\-4&24&-41\end{bmatrix}}.}

تذكر أن المصفوفة المتعامدةسؤال{\displaystyle Q}يمتلك العقارسؤالتيسؤال=أنا{\displaystyle Q^{\textsf {T}}Q=I}.

بعد ذلك، يمكننا حسابسؤال{\displaystyle Q}عن طريق غرام-شميدت على النحو التالي:

يو=[u1u2u3]=[12-69-58/561586/5-430-33]؛سؤال=[u1u1u2u2u3u3]=[6/7-69/175-58/1753/7158/1756/175-2/76/35-33/35].{\displaystyle {\begin{aligned}U={\begin{bmatrix}\mathbf {u} _{1}&\mathbf {u} _{2}&\mathbf {u} _{3}\end{bmatrix}}&={\begin{bmatrix}12&-69&-58/5\\6&158&6/5\\-4&30&-33\end{bmatrix}};\\Q={\begin{bmatrix}{\frac {\mathbf {u} _{1}}{\|\mathbf {u} _{1}\|}}&{\frac {\mathbf {u} _{2}}{\|\mathbf {u} _{2}\|}}&{\frac {\mathbf {u} _{3}}{\|\mathbf {u} _{3}\|}}\end{bmatrix}}&={\begin{bmatrix}6/7&-69/175&-58/175\\3/7&158/175&6/175\\-2/7&6/35&-33/35\end{bmatrix}}.\end{aligned}}}

وهكذا، لدينا

سؤالتيأ=سؤالتيسؤالR=R؛R=سؤالتيأ=[1421-140175-700035].{\displaystyle {\begin{aligned}Q^{\textsf {T}}A&=Q^{\textsf {T}}Q\,R=R;\\R&=Q^{\textsf {T}}A={\begin{bmatrix}14&21&-14\\0&175&-70\\0&0&35\end{bmatrix}}.\end{aligned}}}

العلاقة بتحليل RQ

يحوّل تحليل RQ المصفوفة A إلى حاصل ضرب مصفوفة مثلثية علوية R (تُعرف أيضًا بالمصفوفة المثلثية القائمة) ومصفوفة متعامدة Q. والفرق الوحيد عن تحليل QR هو ترتيب هذه المصفوفات.

تحليل QR هو عملية تعامد غرام-شميدت لأعمدة A ، بدءًا من العمود الأول.

تحليل RQ هو عملية تعامد غرام-شميدت لصفوف A ، بدءًا من الصف الأخير.

المزايا والعيوب

تُعدّ عملية غرام-شميدت غير مستقرة عدديًا بطبيعتها. ورغم أن تطبيق الإسقاطات يُشابه التعامد هندسيًا، إلا أن التعامد نفسه عُرضة للخطأ العددي . ومن أهم مزاياها سهولة تطبيقها.

استخدام انعكاسات هاوسهولدر

انعكاس هاوسهولدر لتحليل QR: الهدف هو إيجاد تحويل خطي يغير المتجهx{\displaystyle \mathbf {x} }إلى متجه بنفس الطول ويكون على استقامة واحدة معهـ1{\displaystyle \mathbf {e} _{1}}يمكننا استخدام إسقاط متعامد (غرام-شميدت)، لكن هذا سيكون غير مستقر عدديًا إذا كانت المتجهاتx{\displaystyle \mathbf {x} }وهـ1{\displaystyle \mathbf {e} _{1}}تكون قريبة من التعامد. بدلاً من ذلك، ينعكس انعكاس هاوسهولدر عبر الخط المنقط (المختار لتقسيم الزاوية بينx{\displaystyle \mathbf {x} }وهـ1{\displaystyle \mathbf {e} _{1}}). تبلغ الزاوية القصوى مع هذا التحويل 45 درجة.

انعكاس هاوسهولدر (أو تحويل هاوسهولدر ) هو تحويل يأخذ متجهًا ويعكسه حول مستوى أو مستوى فائق . يمكننا استخدام هذه العملية لحساب تحليل QR لمصفوفة من الرتبة m × nأ{\displaystyle A}حيث mn .

يمكن استخدام Q لعكس متجه بطريقة تجعل جميع الإحداثيات تختفي باستثناء إحداثية واحدة.

يتركx{\displaystyle \mathbf {x} }ليكن متجه عمودي حقيقي عشوائي ذو m بُعدأ{\displaystyle A}بحيثx=|α|{\displaystyle \|\mathbf {x} \|=|\alpha |}بالنسبة للقيمة العددية α ، يجب أن تأخذ α نفس إشارةك{\displaystyle k}الإحداثي رقم - منx{\displaystyle \mathbf {x} }، أينxك{\displaystyle x_{k}}يُفترض أن تكون إحداثية المحور التي بعدها تصبح جميع المدخلات أصفارًا في الشكل المثلثي العلوي النهائي للمصفوفة A. إذا تم تنفيذ الخوارزمية باستخدام حسابات الفاصلة العائمة ، فيجب أن تأخذ α الإشارة المعاكسة لتجنب فقدان الدلالة (على سبيل المثال، عندماx{\displaystyle \mathbf {x} }يكاد يكون على خط مستقيم واحد معهـ1{\displaystyle \mathbf {e} _{1}}،u{\displaystyle \|\mathbf {u} \|}يصبح "صغيراً" وu/u{\displaystyle \mathbf {u} /\|\mathbf {u} \|}غير مستقر عدديًا؛ الحالة القصوى هيu=0{\displaystyle \|\mathbf {u} \|=0}مما يؤدي إلى أن ينتج عن القسمة السابقة قيمة NaN ).

في الحالة المعقدة، المجموعة [ 2 ]

α=-هـأناargxكx{\displaystyle \alpha =-e^{i\arg x_{k}}\|\mathbf {x} \|}

واستبدل التبديل بالتبديل المرافق في بناء Q أدناه.

ثم أينهـ1{\displaystyle \mathbf {e} _{1}}المتجه [1 0 ⋯ 0] T ، و || · || هو المعيار الإقليدي وأنا{\displaystyle I}هي مصفوفة وحدة من الرتبة m × m ، مجموعة

u=x-αهـ1،v=uu،سؤال=أنا-2vvتي.{\displaystyle {\begin{aligned}\mathbf {u} &=\mathbf {x} -\alpha \mathbf {e} _{1},\\\mathbf {v} &={\frac {\mathbf {u} }{\|\mathbf {u} \|}},\\Q&=I-2\mathbf {v} \mathbf {v} ^{\textsf {T}}.\end{aligned}}}

أو إذاأ{\displaystyle A}الأمر معقد

سؤال=أنا-2vv.{\displaystyle Q=I-2\mathbf {v} \mathbf {v} ^{\dagger }.}

سؤال{\displaystyle Q}هي مصفوفة هاوسهولدر من الرتبة m × m ، وهي متناظرة ومتعامدة (هيرميتية ووحدوية في الحالة المركبة)، و

سؤالx=[α00].{\displaystyle Q\mathbf {x} ={\begin{bmatrix}\alpha \\0\\\vdots \\0\end{bmatrix}}.}

يمكن استخدام هذه الطريقة لتحويل مصفوفة A ذات الأبعاد m × n تدريجيًا إلى شكل مثلثي علوي. أولًا ، نضرب A بمصفوفة هاوسهولدر Q₁ التي نحصل عليها باختيار العمود الأول للمصفوفة x . ينتج عن ذلك مصفوفة Q₁A تحتوي على أصفار في العمود الأيسر (باستثناء الصف الأول).

سؤال1أ=[α10أ0]{\displaystyle Q_{1}A={\begin{bmatrix}\alpha _{1}&\star &\cdots &\star \\0&&&\\\vdots &&A'&\\0&&&\end{bmatrix}}}

يمكن تكرار هذه العملية للمصفوفة A (المُستخرجة من Q1A بحذف الصف الأول والعمود الأول)، مما ينتج عنه مصفوفة هاوسهولدر Q′2 . لاحظ أن Q′2 أصغر من Q1 . ولأننا نريد تطبيق العملية على Q1A بدلاً من A ، نحتاج إلى توسيعها إلى الزاوية العلوية اليسرى، بإضافة الرقم 1، أو بشكل عام :

سؤالك=[أناك-100سؤالك].{\displaystyle Q_{k}={\begin{bmatrix}I_{k-1}&0\\0&Q_{k}'\end{bmatrix}}.}

بعدت{\displaystyle t}تكرارات هذه العملية،ت=مين(م-1،ن){\displaystyle t=\min(m-1,n)}،

R=سؤالتسؤال2سؤال1أ{\displaystyle R=Q_{t}\cdots Q_{2}Q_{1}A}

هي مصفوفة مثلثية علوية. لذا، مع

سؤالتي=سؤالتسؤال2سؤال1،سؤال=سؤال1تيسؤال2تيسؤالتتي{\displaystyle {\begin{aligned}Q^{\textsf {T}}&=Q_{t}\cdots Q_{2}Q_{1},\\Q&=Q_{1}^{\textsf {T}}Q_{2}^{\textsf {T}}\cdots Q_{t}^{\textsf {T}}\end{aligned}}}

أ=سؤالR{\displaystyle A=QR}هو تحليل QR لـأ{\displaystyle A}.

تتمتع هذه الطريقة بثبات عددي أكبر من طريقة غرام-شميدت المذكورة أعلاه.

في الاختبارات العددية، العوامل المحسوبةسؤالج{\displaystyle Q_{c}}وRج{\displaystyle R_{c}}مُرضٍ سؤالR-سؤالجRجأ=يا(ε){\displaystyle {\frac {\|QR-Q_{c}R_{c}\|_{\infty }}{\|A\|_{\infty }}}=O(\varepsilon )} بدقة الآلة. كما يتم الحفاظ على التعامد:سؤالجتيسؤالج-أنا=يا(ε){\displaystyle \|Q_{c}^{\mathsf {T}}Q_{c}-I\|_{\infty }=O(\varepsilon )}ومع ذلك، فإن دقةسؤالج{\displaystyle Q_{c}}وRج{\displaystyle R_{c}}يتناقص مع رقم الحالة: سؤال-سؤالج=يا(εκ(أ))،R-RجR=يا(εκ(أ)).{\displaystyle \|Q-Q_{c}\|_{\infty }=O(\varepsilon \,\kappa _{\infty }(A)),\quad {\frac {\|R-R_{c}\|_{\infty }}{\|R\|_{\infty }}}=O(\varepsilon \,\kappa _{\infty }(A)).}

لمثال جيد التكييف (ن=4000{\displaystyle n=4000}،κ(أ)3×103{\displaystyle \kappa _{\infty }(A)\approx 3\times 10^{3}}): سؤالR-سؤالجRجأ1.6×10-15،{\displaystyle {\frac {\|QR-Q_{c}R_{c}\|_{\infty }}{\|A\|_{\infty }}}\approx 1.6\times 10^{-15},}سؤال-سؤالج1.6×10-15،{\displaystyle \|Q-Q_{c}\|_{\infty }\approx 1.6\times 10^{-15},}R-RجR4.3×10-14،{\displaystyle {\frac {\|R-R_{c}\|_{\infty }}{\|R\|_{\infty }}}\approx 4.3\times 10^{-14},}سؤالجتيسؤالج-أنا1.1×10-13.{\displaystyle \|Q_{c}^{\mathsf {T}}Q_{c}-I\|_{\infty }\approx 1.1\times 10^{-13}.}

في اختبار سيئ التكييف (ن=4000{\displaystyle n=4000}،κ(أ)4×1018{\displaystyle \kappa _{\infty }(A)\approx 4\times 10^{18}}): سؤالR-سؤالجRجأ1.3×10-15،{\displaystyle {\frac {\|QR-Q_{c}R_{c}\|_{\infty }}{\|A\|_{\infty }}}\approx 1.3\times 10^{-15},}سؤال-سؤالج5.2×10-4،{\displaystyle \|Q-Q_{c}\|_{\infty }\approx 5.2\times 10^{-4},}R-RجR1.2×10-4،{\displaystyle {\frac {\|R-R_{c}\|_{\infty }}{\|R\|_{\infty }}}\approx 1.2\times 10^{-4},}سؤالجتيسؤالج-أنا1.1×10-13.{\displaystyle \|Q_{c}^{\mathsf {T}}Q_{c}-I\|_{\infty }\approx 1.1\times 10^{-13}.}[ 3 ]

يوضح الجدول التالي عدد العمليات في الخطوة k من عملية تحليل QR بواسطة تحويل هاوسهولدر، بافتراض مصفوفة مربعة بحجم n .

عمليةعدد العمليات في الخطوة رقم k
الضرب2(ن-ك+1)2{\displaystyle 2(n-k+1)^{2}}
إضافات(ن-ك+1)2+(ن-ك+1)(ن-ك)+2{\displaystyle (n-k+1)^{2}+(n-k+1)(n-k)+2}
قسم1{\displaystyle 1}
الجذر التربيعي1{\displaystyle 1}

بجمع هذه الأرقام على مدى n − 1 خطوة (لمصفوفة مربعة من الحجم n )، فإن تعقيد الخوارزمية (من حيث عمليات ضرب الأعداد العشرية) يُعطى بالصيغة التالية:

23ن3+ن2+13ن-2=يا(ن3).{\displaystyle {\frac {2}{3}}n^{3}+n^{2}+{\frac {1}{3}}n-2=O\left(n^{3}\right).}

مثال

لنحسب تفكيك

أ=[12-5146167-68-424-41].{\displaystyle A={\begin{bmatrix}12&-51&4\\6&167&-68\\-4&24&-41\end{bmatrix}}.}

أولاً، نحتاج إلى إيجاد انعكاس يحول العمود الأول من المصفوفة A ، المتجهأ1=[126-4]تي{\displaystyle \mathbf {a} _{1}={\begin{bmatrix}12&6&-4\end{bmatrix}}^{\textsf {T}}}، داخلأ1هـ1=[α00]تي{\displaystyle \left\|\mathbf {a} _{1}\right\|\mathbf {e} _{1}={\begin{bmatrix}\alpha &0&0\end{bmatrix}}^{\textsf {T}}}.

الآن،

u=x-αهـ1،{\displaystyle \mathbf {u} =\mathbf {x} -\alpha \mathbf {e} _{1},}

و

v=uu.{\displaystyle \mathbf {v} ={\frac {\mathbf {u} }{\|\mathbf {u} \|}}.}

هنا،

α=14{\displaystyle \alpha =14}وx=أ1=[126-4]تي{\displaystyle \mathbf {x} =\mathbf {a} _{1}={\begin{bmatrix}12&6&-4\end{bmatrix}}^{\textsf {T}}}

لذلك

u=[-26-4]تي=2[-13-2]تي{\displaystyle \mathbf {u} ={\begin{bmatrix}-2&6&-4\end{bmatrix}}^{\textsf {T}}=2{\begin{bmatrix}-1&3&-2\end{bmatrix}}^{\textsf {T}}}وv=114[-13-2]تي{\displaystyle \mathbf {v} ={\frac {1}{\sqrt {14}}}{\begin{bmatrix}-1&3&-2\end{bmatrix}}^{\textsf {T}}}، وثم
سؤال1=أنا-21414[-13-2][-13-2]=أنا-17[1-32-39-62-64]=[6/73/7-2/73/7-2/76/7-2/76/73/7].{\displaystyle {\begin{aligned}Q_{1}={}&I-{\frac {2}{{\sqrt {14}}{\sqrt {14}}}}{\begin{bmatrix}-1\\3\\-2\end{bmatrix}}{\begin{bmatrix}-1&3&-2\end{bmatrix}}\\={}&I-{\frac {1}{7}}{\begin{bmatrix}1&-3&2\\-3&9&-6\\2&-6&4\end{bmatrix}}\\={}&{\begin{bmatrix}6/7&3/7&-2/7\\3/7&-2/7&6/7\\-2/7&6/7&3/7\\\end{bmatrix}}.\end{aligned}}}

والآن لاحظ:

سؤال1أ=[1421-140-49-140168-77]،{\displaystyle Q_{1}A={\begin{bmatrix}14&21&-14\\0&-49&-14\\0&168&-77\end{bmatrix}},}

إذن لدينا بالفعل مصفوفة شبه مثلثية. كل ما نحتاجه هو تصفير العنصر (3، 2).

خذ المجموعة الصغرى (1، 1) ، ثم طبق العملية مرة أخرى على

أ=م11=[-49-14168-77].{\displaystyle A'=M_{11}={\begin{bmatrix}-49&-14\\168&-77\end{bmatrix}}.}

وبنفس الطريقة المذكورة أعلاه، نحصل على مصفوفة تحويل هاوسهولدر

سؤال2=[1000-7/2524/25024/257/25]{\displaystyle Q_{2}={\begin{bmatrix}1&0&0\\0&-7/25&24/25\\0&24/25&7/25\end{bmatrix}}}

بعد إجراء عملية جمع مباشر مع 1 للتأكد من أن الخطوة التالية في العملية تعمل بشكل صحيح.

والآن، نجد

سؤال=سؤال1تيسؤال2تي=[6/7-69/17558/1753/7158/175-6/175-2/76/3533/35].{\displaystyle Q=Q_{1}^{\textsf {T}}Q_{2}^{\textsf {T}}={\begin{bmatrix}6/7&-69/175&58/175\\3/7&158/175&-6/175\\-2/7&6/35&33/35\end{bmatrix}}.}

أو، إلى أربعة أرقام عشرية،

سؤال=سؤال1تيسؤال2تي=[0.8571-0.39430.33140.42860.9029-0.0343-0.28570.17140.9429]R=سؤال2سؤال1أ=سؤالتيأ=[1421-140175-7000-35].{\displaystyle {\begin{aligned}Q&=Q_{1}^{\textsf {T}}Q_{2}^{\textsf {T}}={\begin{bmatrix}0.8571&-0.3943&0.3314\\0.4286&0.9029&-0.0343\\-0.2857&0.1714&0.9429\end{bmatrix}}\\R&=Q_{2}Q_{1}A=Q^{\textsf {T}}A={\begin{bmatrix}14&21&-14\\0&175&-70\\0&0&-35\end{bmatrix}}.\end{aligned}}}

المصفوفة Q متعامدة و R مثلثية علوية، لذا فإن A = QR هو تحليل QR المطلوب.

المزايا والعيوب

يُعد استخدام تحويلات هاوسهولدر أبسط خوارزميات تحليل QR المستقرة عدديًا، وذلك لاعتمادها على الانعكاسات كآلية لإنتاج الأصفار في مصفوفة R. مع ذلك، تستهلك خوارزمية انعكاس هاوسهولدر نطاقًا تردديًا كبيرًا ويصعب موازاتها، إذ أن كل انعكاس ينتج عنه عنصر صفري جديد يُغير مصفوفتي Q و R بالكامل.

التنفيذ المتوازي لرمز الاستجابة السريعة لأصحاب المنازل

يمكن تطبيق طريقة هاوسهولدر QR بالتوازي مع خوارزميات أخرى مثل خوارزمية TSQR (اختصارًا لـ Tall Skinny QR ). تُستخدم هذه الخوارزمية عندما تكون أبعاد المصفوفة A أكبر بكثير من أبعاد n . [ 4 ] تستخدم هذه الخوارزمية شجرة اختزال ثنائية لحساب تحليل هاوسهولدر QR المحلي عند كل عقدة في عملية التمرير الأمامي، ثم إعادة بناء مصفوفة Q في عملية التمرير العكسي. يهدف هيكل الشجرة الثنائية إلى تقليل حجم الاتصال بين المعالجات لزيادة الأداء.

استخدام دورانات جيفنز

يمكن أيضًا حساب تحليلات QR باستخدام سلسلة من دورانات جيفنز . كل دوران يُصفّر عنصرًا في القطر الفرعي للمصفوفة، مُشكِّلًا بذلك مصفوفة R. ويُشكِّل دمج جميع دورانات جيفنز مصفوفة Q المتعامدة .

عمليًا، لا تُجرى عمليات تدوير جيفنز فعليًا عن طريق بناء مصفوفة كاملة وإجراء عملية ضرب المصفوفات. بل يُستخدم إجراء تدوير جيفنز الذي يُعادل عملية ضرب مصفوفات جيفنز المتفرقة، دون الحاجة إلى معالجة العناصر المتفرقة. يُعد إجراء تدوير جيفنز مفيدًا في الحالات التي تتطلب تصفير عدد قليل نسبيًا من العناصر غير القطرية، كما أنه أسهل في التنفيذ المتوازي من تحويلات هاوسهولدر .

مثال

لنحسب تفكيك

أ=[12-5146167-68-424-41].{\displaystyle A={\begin{bmatrix}12&-51&4\\6&167&-68\\-4&24&-41\end{bmatrix}}.}

أولاً، نحتاج إلى تكوين مصفوفة دوران تجعل العنصر السفلي الأيسر يساوي الصفر.أ31=-4{\displaystyle a_{31}=-4}نُشكّل هذه المصفوفة باستخدام طريقة دوران جيفنز ، ونُسمّي المصفوفةجي1{\displaystyle G_{1}}سنقوم أولاً بتدوير المتجه[12-4]{\displaystyle {\begin{bmatrix}12&-4\end{bmatrix}}}، ليشير على طول المحور السيني . هذا المتجه له زاويةθ=دالة الظل العكسي(-(-4)12){\textstyle \theta =\arctan \left({\frac {-(-4)}{12}}\right)} نقوم بإنشاء مصفوفة دوران جيفنز المتعامدة ،جي1{\displaystyle G_{1}}:

جي1=[كوس(θ)0-الخطيئة(θ)010الخطيئة(θ)0كوس(θ)][0.948680-0.316220100.3162200.94868]{\displaystyle {\begin{aligned}G_{1}&={\begin{bmatrix}\cos(\theta )&0&-\sin(\theta )\\0&1&0\\\sin(\theta )&0&\cos(\theta )\end{bmatrix}}\\&\approx {\begin{bmatrix}0.94868&0&-0.31622\\0&1&0\\0.31622&0&0.94868\end{bmatrix}}\end{aligned}}}

ونتيجة ذلكجي1أ{\displaystyle G_{1}A}الآن لديه صفر فيأ31{\displaystyle a_{31}}عنصر.

جي1أ[12.64911-55.9723116.760076167-6806.64078-37.6311]{\displaystyle G_{1}A\approx {\begin{bmatrix}12.64911&-55.97231&16.76007\\6&167&-68\\0&6.64078&-37.6311\end{bmatrix}}}

يمكننا بالمثل تكوين مصفوفات جيفنزجي2{\displaystyle G_{2}}وجي3{\displaystyle G_{3}}، مما سيؤدي إلى تصفير عناصر القطر الفرعيأ21{\displaystyle a_{21}}وأ32{\displaystyle a_{32}}، لتشكيل مصفوفة مثلثةR{\displaystyle R}المصفوفة المتعامدةسؤالتي{\displaystyle Q^{\textsf {T}}}يتم تكوينها من حاصل ضرب جميع مصفوفات جيفنزسؤالتي=جي3جي2جي1{\displaystyle Q^{\textsf {T}}=G_{3}G_{2}G_{1}}وبالتالي ، لديناجي3جي2جي1أ=سؤالتيأ=R{\displaystyle G_{3}G_{2}G_{1}A=Q^{\textsf {T}}A=R}، وتفكيك QR هوأ=سؤالR{\displaystyle A=QR}.

المزايا والعيوب

يُعدّ تحليل QR باستخدام دورانات جيفنز الأكثر تعقيدًا من حيث التنفيذ، إذ أن ترتيب الصفوف اللازم لاستغلال الخوارزمية بشكل كامل ليس بالأمر البسيط. ومع ذلك، فإنه يتميز بميزة هامة تتمثل في أن كل عنصر صفري جديدأأناج{\displaystyle a_{ij}}يؤثر فقط على الصف الذي يحتوي على العنصر المراد تصفيره ( i ) والصف الذي يليه ( j ). وهذا يجعل خوارزمية تدوير جيفنز أكثر كفاءة في استخدام النطاق الترددي وقابلية للتوازي من تقنية انعكاس هاوسهولدر.

استخدام الضرب السريع للمصفوفات

من الممكن حساب تحليل QR بسرعة باستخدام خوارزميات ضرب المصفوفات السريعة في وقتيا(نω){\displaystyle O({n^{\omega }})}ل 2.37ω<3{\displaystyle ~2.37\leq \omega <3}[ 5 ] [ 6 ]

الارتباط بمحدد أو حاصل ضرب القيم الذاتية

يمكننا استخدام تحليل QR لإيجاد محدد المصفوفة المربعة. لنفترض أن المصفوفة تُحلل على النحو التالي:أ=سؤالR{\displaystyle A=QR}ثم لدينا المحققأ=المحققسؤالالمحققR.{\displaystyle \det A=\det Q\det R.}

سؤال{\displaystyle Q}يمكن اختيارها بحيثالمحققسؤال=1{\displaystyle \det Q=1}. هكذا، المحققأ=المحققR=أنارأناأنا{\displaystyle \det A=\det R=\prod _{i}r_{ii}}

حيثرأناأنا{\displaystyle r_{ii}}هي المدخلات الموجودة على قطرR{\displaystyle R}علاوة على ذلك، ولأن المحدد يساوي حاصل ضرب القيم الذاتية، فإننا نحصل على أنارأناأنا=أناλأنا{\displaystyle \prod _{i}r_{ii}=\prod _{i}\lambda _{i}}

حيثλأنا{\displaystyle \lambda _{i}}هي القيم الذاتية لـأ{\displaystyle A}.

يمكننا تعميم الخصائص المذكورة أعلاه على مصفوفة مركبة غير مربعةأ{\displaystyle A}من خلال تقديم تعريف تحليل QR للمصفوفات المعقدة غير المربعة واستبدال القيم الذاتية بالقيم المفردة.

ابدأ بتحليل QR لمصفوفة غير مربعة A :

أ=سؤال[R0]،سؤالسؤال=أنا{\displaystyle A=Q{\begin{bmatrix}R\\0\end{bmatrix}},\qquad Q^{\dagger }Q=I}

أين0{\displaystyle 0}يرمز إلى المصفوفة الصفرية وسؤال{\displaystyle Q}هي مصفوفة وحدوية.

انطلاقاً من خصائص تحليل القيم المفردة (SVD) ومحدد المصفوفة، لدينا

|أنارأناأنا|=أناσأنا،{\displaystyle {\Big |}\prod _{i}r_{ii}{\Big |}=\prod _{i}\sigma _{i},}

حيثσأنا{\displaystyle \sigma _{i}}هي القيم المفردة لـأ{\displaystyle A}.

لاحظ أن القيم المفردة لـأ{\displaystyle A}وR{\displaystyle R}تكون متطابقة، على الرغم من أن قيمها الذاتية المركبة قد تختلف. ومع ذلك، إذا كانت المصفوفة A مربعة، فإن

أناσأنا=|أناλأنا|.{\displaystyle {\prod _{i}\sigma _{i}}={\Big |}\prod _{i}\lambda _{i}{\Big |}.}

ويترتب على ذلك أنه يمكن استخدام تحليل QR لحساب ناتج القيم الذاتية أو القيم المفردة للمصفوفة بكفاءة.

محور العمود

يختلف تحليل QR المحوري عن تحليل Gram-Schmidt العادي في أنه يأخذ أكبر عمود متبقٍ في بداية كل خطوة جديدة - محور العمود - [ 7 ] وبالتالي يُدخل مصفوفة تبديل P :

أP=سؤالRأ=سؤالRPتي{\displaystyle AP=QR\quad \iff \quad A=QRP^{\textsf {T}}}

يُعدّ التمحور العمودي مفيدًا عندما تكون المصفوفة A ناقصة الرتبة (أو شبه ناقصة) ، أو يُشتبه في كونها كذلك. كما يُمكنه تحسين الدقة العددية. عادةً ما يتم اختيار P بحيث تكون عناصر القطر الرئيسي للمصفوفة R غير متزايدة.|ر11||ر22||رنن|{\displaystyle \left|r_{11}\right|\geq \left|r_{22}\right|\geq \cdots \geq \left|r_{nn}\right|}. يمكن استخدام هذا لإيجاد الرتبة (العددية) لـ A بتكلفة حسابية أقل من تحليل القيمة المفردة ، مما يشكل أساس ما يسمى بخوارزميات QR للكشف عن الرتبة .

يُستخدم لحل مسائل المعكوس الخطي

بالمقارنة مع معكوس المصفوفة المباشر، فإن الحلول العكسية باستخدام تحليل QR أكثر استقرارًا عدديًا كما يتضح من انخفاض أرقام الحالة الخاصة بها . [ 8 ]

لحل المسألة غير المحددة (م<ن{\displaystyle m<n}) مسألة خطيةأx=ب{\displaystyle A\mathbf {x} =\mathbf {b} }حيث المصفوفةأ{\displaystyle A}له أبعادم×ن{\displaystyle m\times n}والرتبةم{\displaystyle m}، أولاً، أوجد تحليل QR للمُنَقَّلأ{\displaystyle A}:أتي=سؤالR{\displaystyle A^{\textsf {T}}=QR}حيث Q هي مصفوفة متعامدة ( أيسؤالتي=سؤال-1{\displaystyle Q^{\textsf {T}}=Q^{-1}} ولـ R شكل خاص:R=[R10]{\displaystyle R=\left[{\begin{smallmatrix}R_{1}\\0\end{smallmatrix}}\right]}. هناR1{\displaystyle R_{1}}مربعم×م{\displaystyle m\times m}مصفوفة مثلثية قائمة، والمصفوفة الصفرية لها بُعد(ن-م)×م{\displaystyle (n-m)\times m}بعد إجراء بعض العمليات الجبرية ، يمكن إثبات أن حل المسألة العكسية يمكن التعبير عنه على النحو التالي:x=سؤال[(R1تي)-1ب0]{\displaystyle \mathbf {x} =Q\left[{\begin{smallmatrix}\left(R_{1}^{\textsf {T}}\right)^{-1}\mathbf {b} \\0\end{smallmatrix}}\right]}حيث يمكن للمرء أن يجدR1-1{\displaystyle R_{1}^{-1}}عن طريق الحذف الغاوسي أو الحساب(R1تي)-1ب{\displaystyle \left(R_{1}^{\textsf {T}}\right)^{-1}\mathbf {b} }مباشرةً عن طريق الاستبدال الأمامي . تتميز هذه التقنية الأخيرة بدقة عددية أكبر وحسابات أقل.

لإيجاد حلx^{\displaystyle {\hat {\mathbf {x} }}}إلى المحدد بشكل مفرط (من{\displaystyle m\geq n}) مشكلةأx=ب{\displaystyle A\mathbf {x} =\mathbf {b} }مما يقلل من المعيارأx^-ب{\displaystyle \left\|A{\hat {\mathbf {x} }}-\mathbf {b} \right\|}، أولاً، أوجد تحليل QR لـأ{\displaystyle A}:أ=سؤالR{\displaystyle A=QR}ويمكن التعبير عن الحل على النحو التالي :x^=R1-1(سؤال1تيب){\displaystyle {\hat {\mathbf {x} }}=R_{1}^{-1}\left(Q_{1}^{\textsf {T}}\mathbf {b} \right)}، أينسؤال1{\displaystyle Q_{1}}هوم×ن{\displaystyle m\times n}المصفوفة التي تحتوي على الأولن{\displaystyle n}أعمدة الأساس المتعامد الكاملسؤال{\displaystyle Q}وأينR1{\displaystyle R_{1}}كما في السابق. وكما هو الحال في الحالة غير المحددة، يمكن استخدام التعويض العكسي لإيجاد هذا بسرعة ودقة.x^{\displaystyle {\hat {\mathbf {x} }}}دون عكس صريحR1{\displaystyle R_{1}}. (سؤال1{\displaystyle Q_{1}}وR1{\displaystyle R_{1}}غالباً ما توفرها المكتبات الرقمية كتحليل "اقتصادي" لـ QR.

التعميمات

يعمم تحليل إيواساوا تحليل QR إلى مجموعات لي شبه البسيطة.

انظر أيضاً

مراجع

  1. 1 2 3 تريفثين، لويد ن .؛ باو، ديفيد الثالث (1997). الجبر الخطي العددي . فيلادلفيا، بنسلفانيا: جمعية الرياضيات الصناعية والتطبيقية . ISBN 978-0-898713-61-9.
  2. ستوير، جوزيف ؛ بوليرش، رولاند (2002)، مقدمة في التحليل العددي ( الطبعة الثالثة)، سبرينغر، ص 225، ISBN   0-387-95452-X
  3. هولمز، مارك هـ. (2023). مقدمة في الحوسبة العلمية وتحليل البيانات، الطبعة الثانية . سبرينغر. ISBN 978-3-031-22429-4.
  4. ديميل، جيمس ؛ غريغوري، لورا (12 يونيو 2008). "تحليلات QR وLU المتوازية والمتسلسلة المثلى للاتصالات: النظرية والتطبيق". arXiv : 0806.2159 [ cs.NA ].
  5. ^ شونهاج، أ. (1972). "وحدة التحول الأكبر في ماتريزين". الرياضيات الرقمية . 20 : 409 – 41. دوى : 10.1007 / BF01402563 .
  6. نايت، ب. (1995). "الضرب السريع للمصفوفات المستطيلة وتحليل QR". الجبر الخطي وتطبيقاته . 221 : 69-81 . doi : 10.1016/0024-3795(93)00230-W .
  7. سترانج، جيلبرت (2019). الجبر الخطي والتعلم من البيانات ( الطبعة الأولى). ويليسلي: مطبعة ويليسلي كامبريدج. ص 143. ISBN   978-0-692-19638-0.
  8. باركر، روبرت ل. (1994). نظرية المعكوس الجيوفيزيائي . برينستون، نيوجيرسي: مطبعة جامعة برينستون. القسم 1.13. ISBN 978-0-691-20683-7. OCLC 1134769155 . 

للمزيد من القراءة

  • حاسبة المصفوفات عبر الإنترنت تقوم بتحليل المصفوفات باستخدام خوارزمية QR.
  • يُقدّم دليل مستخدمي LAPACK تفاصيل الإجراءات الفرعية لحساب تحليل QR
  • يقدم دليل مستخدمي برنامج Mathematica تفاصيل وأمثلة على إجراءات حساب تحليل QR
  • يتضمن ALGLIB منفذًا جزئيًا لـ LAPACK إلى C++ و C# و Delphi وما إلى ذلك.
  • تتضمن مكتبة Eigen::QR تطبيقًا بلغة C++ لتحليل رمز الاستجابة السريعة (QR).