Saltu al enhavo

Kerno (matrico)

El Vikipedio, la libera enciklopedio
(Alidirektita el Kerno (lineara algebro))

En lineara algebro, kerno de matrico A estas aro de ĉiuj vektoroj x por kiuj rezulto de la matrica multipliko egalas al la nula vektoro: Ax = 0 .

La kerno de matrico kun n kolumnoj estas lineara subspaco de n-dimensia eŭklida spaco.

La matrica ekvacio de difino de la kerno Ax = 0 estas ekvivalenta al homogena sistemo de linearaj ekvacioj:

...

Tiel, la kerno de A estas la samo kiel aro de solvaĵoj de la homogena sistemo de linearaj ekvacioj.

La kerno de matrico A estas akurate la samo kiel la kerno de la lineara surĵeto difinita per la matrico-vektora multipliko x → Ax , kio estas, la aro de vektoroj kiuj estas bildigataj al la nula vektoro.

La kerno de lineara transformo inter abstraktaj vektoraj spacoj estas iam nomata kiel la kerno de la transformo.

Estu matrico

La kerno de ĉi tiu matrico konsistas el ĉiuj vektoroj el R3 por kiu

Ĉi tio povas esti skribita kiel homogena sistemo de linearaj ekvacioj kun x, y, z:

2x + 3y + 5z = 0
-4x + 2y + 3z = 0

Per gaŭsa eliminado la sistemo povas esti prezentita en la ekvivalenta formo

x + 0y + 0,0625z = 0
0x + y + 1,625z = 0

x = -0,0625z
y = -1,625z

Nun oni povas skribi la kernon kun uzo de z kiel la libera variablo

Propraĵoj

[redakti | redakti fonton]

La kerno de m×n matrico estas subspaco de Rn. Tio estas ke ĝi havas jenajn tri propraĵojn:

  • ker(A) ĉiam enhavas la nulan vektoron 0, ĉar A0 = 0 .
  • Se x kaj y estas en ker(A), do x+y estas en ker(A), ĉar
    se Ax = 0 kaj Ay = 0 , do A(x + y) = Ax + Ay = 0 + 0 = 0 .
  • Se x estas en ker(A) kaj c estas skalaro, do cx estas en ker(A), ĉar
    se Ax = 0 kaj c estas skalaro, do A(cx) = c(Ax) = c0 = 0 .

La kerno de matrico estas ne influata per rudimentaj liniaj operacioj (kio estas aladicio de unu linio al la alia kaj multipliko de iu linio je ne-nula nombro). Tiel eblas per gaŭsa eliminado kalkuli bazon de la kerno:

Estu m×n matrico A. Oni uzu la rudimentajn liniajn operacioj kaj faru gaŭsan eliminadon de A. Tiam al ĉiu i-a kolumno de eliminigita matrico, en kiu estas nur unu valoro 1 kaj ĉiuj ceteraj estas 0, respektivas la dependa variablo xi; al ĉiu cetera kolumno respektivas la libera variablo xi.

Por ĉiu dependa variablo, el tiu linio de la matrico kie estas la valoro 1, estas formata ekvacio per preno de la eroj de la linio kiel koeficientoj ĉe la liberaj variabloj kun la kontraŭa sugno. La bazaj vektoroj povas esti ricevitaj per preno de unu libera variablo egala al 1 kaj la aliaj egalaj al 0, tiel kvanto de la bazaj vektoroj egalas al kvanto de la liberaj variabloj.

Ekzemple, supozu ke post gaŭsa eliminado rezultas matrcio

Tiam x3, x5, kaj x6 estas liberaj, kaj por la dependaj variabloj estas ekvacioj

kaj tri vektoroj , , estas bazo de la kerno de A.

Rilato al la linia spaco

[redakti | redakti fonton]

Estu m×n matrico A. La produto de A kaj la n-dimensia vektoro x povas esti skribita per la skalara produto de vektoroj:

Ĉi tie a1, ..., am estas la linioj de la matrico A. Tiel x estas en la kerno de A se kaj nur se x estas perpendikulara al ĉiu el la liniaj vektoroj de A (ĉar tio ke la skalara produto de du vektoroj estas egala al nulo estas difino de tio ke ili estas perpendikularaj).

La linia spaco de matrico A estas la lineara generaĵo de la liniaj vektoroj de A. Tiel la kerno de A estas la perpendikulara komplemento al la linia spaco. Tio estas ke vektoro x kuŝas en la kerno de A se kaj nur se ĝi estas perpendikulara al ĉiu vektoro en la linia spaco de A.

La dimensio de la linia spaco de A estas la rango de A.

La rango kaj la dimensio de kerno de A estas ligitaj kiel

rank(A) + dim(ker(A)) = n

La ekvacio pli supre estas sciata kiel la rango-kerna teoremo.

Maldekstra kerno

[redakti | redakti fonton]

La maldekstra kerno de matrico A konsistas el ĉiuj vektoroj x tia ke xTA = 0T. La maldekstra kerno de A estas la samo kiel la kerno de AT. La maldekstra kerno de A estas la perpendikulara komplemento al la kolumna spaco de A, kaj estas la kunkerno de la asociita lineara transformo. La kerno, la linia spaco, la kolumna spaco, kaj la maldekstra kerno de A estas la kvar fundamentaj subspacoj asociitaj kun la matrico A.

Cifereca kalkulado de kerno

[redakti | redakti fonton]

Algoritmoj bazitaj sur linia aŭ kolumna malpligrandiĝo, tio estas, gaŭsa eliminado, donataj pli supre, estas ne taŭgaj por praktika kalkulado de la kerno pro ciferecaj akuratecaj problemoj pro la de rondigaj eraroj. Ĉi tia kalkulado povas grande amplifi la rondigajn eraroj kaj tiel doni plene erarajn rezultojn. Pro ĉi tiu kaŭzo, oni devus uzi speciale konstruitajn algoritmojn, kiuj ne amplifas rondigajn erarojn nebezone.

Stato-de-arta maniero estas bazita sur singulara valora malkomponaĵo (ankaŭ nomata kiel singulara valora dekomponaĵo, SVD). Kalkulado de la SVD de matrico ĝenerale kostas proksimume kiel kelkaj matrico-matricaj multiplikoj de matricoj de la sama amplekso, se stato-de-arta realigo (preciza supren ĝis precizeco de rondigo) estas uzata. Ĉi tio estas vera eĉ malgraŭ tio ke la SVD ne povas esti komputita per finia kvanto de operacioj, do estas uzata ripeta maniero kun haltado je sia tolerema valoro bazita sur la rondiga precizeco. La kosto de la SVD estas kelkfoje pli granda ol kosto de komputado de la kerno per gaŭsa eliminado, sed ĝi devus esti akceptebla se esperindeco estas grava.

Eblas ankaŭ komputi la kernon per la QR-faktorigo, kun la ambaŭ cifereca stabileco kaj la kosto estantaj inter tiuj de la SVD kaj la gaŭsa eliminado.

SVD de matrico A komputas unitajn matricojn U kaj V kaj ortangulan diagonalan matricon S de la sama amplekso kiel A kun nenegativaj diagonalaj elementoj, tiaj ke

A=USV

Signifu la kolumnojn de V per

v1, ..., vn

kaj la diagonalajn elementojn de S per

s1, ..., smin(m,n)

kaj estu

smin(m, n)+1 = ... = smax(m, n) = 0

La nombroj si estas la singularaj valoroj de A. Tiam la kolumnoj v1 de V tiaj ke la respektiva si=0 formas ortonormalam bazon de la kerno de A.

En cifereca kalkulado, ĉiu el la singularaj valoroj si estas konsiderata kiel nulo se ĝi estas pli malgranda ol iu certa malgranda valoro de tolero. Ekzemple en MATLAB la valoro de tolero estas prenita al esti

max (m, n) max {si

kie ε estas la maŝina epsilono de la komputilo, kio estas, la plej malgranda nombro tia ke en la flosanta punkto, 1+ε>1. Por la IEEE 64-bita flosanta punkta aranĝo ε≈2,2·10−16.

Per QR-faktorigo

[redakti | redakti fonton]

Eblas komputi la kernon per la QR-faktorigo jene.

Estu A m×n matrico kun m≤n. Per la QR-faktorigo de A* kun elekto de kondukaj kolumnoj oni povas trovi matricojn P, Q, R tiajn ke

A*P=QR

kie P estas permuta matrico, Q estas n×n unita matrico kaj R estas n×m supra triangula matrico.

Eblas rearanĝi la formulon, konsiderante tion ke P−1=P* kaj Q−1=Q*:

Q−1A*P = R
Q*A*P = R
(AQ)*P = R
(AQ)* = RP−1
(AQ)* = RP*
AQ = (RP*)*
AQ = PR*

Se rango de A estas malpli granda ol n, la lastaj linioj de R estas tute nulaj. Tiam la lastaj kolumnoj de R* estas tute nulaj, kaj do iuj kolumnoj de PR* estas tute nulaj.

Se kaj do por ĉiu i=1...n, Aqi=bi

Tiel tiuj kolumnoj qi de Q kiuj respektivas al nulaj kolumnoj bi de PR* naskas la kernon de A.

Same kiel en okazo de SVD, en cifereca kalkulado, ĉiu el la bi estas konsiderata kiel nula se iu ĝia normo estas pli malgranda ol iu elektita malgranda valoro de tolero.

Vidu ankaŭ

[redakti | redakti fonton]

Eksteraj ligiloj

[redakti | redakti fonton]