カテゴリー: 一般向け自己紹介数学・統計学

線形代数とは何か?(中学生にもわかる解説)

[mathjax]

自己紹介

初めまして、marronと申します。相方のnonongaさんのように最初に自己紹介を書こうとあれこれ考えていたんですが、どうも面白い文章が書けなかったので、とりあえず数学の記事を書いてみることにしました。

記事を書こうと思ったきっかけ

最近は数学や統計学が、心理学や機械学習などいろいろな分野に応用さるようなり、数学を学びたいという方が増えてきたように思います。実際に社会人の方から統計学を教えてほしいという依頼を頂くこともあるのですが、その際に「線形代数が具体的にどのように役立つのかを知りたい」という意見を耳にします。確かに、ネットなどで情報を検索してみても「線形代数は機械学習や統計に必要です!」と書いてあるだけで、具体的に線形代数がどのように活躍するかがあまりわかりません。そこで本記事では、「線形代数がどのように役立つか」を中学生にもわかるように説明してみたいと思います。

行列とベクトル

線形代数の「線形」とは1次式のことです。これはy=3x+2のような1次関数が直線を表すことに由来しています。そして「代数」というのは古くは方程式について研究する数学の一分野でした。つまり、「線形代数」はもともと(連立)1次方程式の解き方を研究する学問です。連立方程式なら中学校でも習いますが、実は奥の深い分野なのです。さっそく、次のような方程式を考えてみましょう。
(){4x+7y=2x+2y=5
この方程式は、次のように書くこともできます。
()(4x+7yx+2y)=(25)
このように、いくつかの数をセットにして縦に並べたものをベクトルといいます。
また、
{4a+7b=2a+2b=5
という方程式は、()x,ya,bになっているだけなので、()と同じ方程式です。何が言いたいかというと、文字の部分は何でもよく、係数が重要ということです。そこで()の左辺を文字の部分と係数の部分に分けて、
()(4x+7yx+2y)=(4712)(xy)
と書くことにしましょう。(4712)にように、数字を縦横に並べたものを行列といいます(ベクトルも行列の一種です)。行というのは横の並び、列というのは縦の並びのことです。例えば上の行列の1行目は(4  7)で、1列目は(41)ということです。
この書きかたを使うと、()
(4712)(xy)=(25)
と書きなおせます。行列やベクトルも1つの数みたいなものだと思って、
A=(4712), x=(xy), a=(25)
とおいてやると(ベクトルを表す文字は上に矢印をつけて書くことが多いです)、上の方程式は
Ax=a
と書けます。さて、これを見ると両辺をAで割ってx=aAとしてみたくなりませんか…?

行列の計算

割り算をするために、行列同士の足し算や掛け算を定義しましょう。足し算については、対応する数同士を足して、
(abcd)+(pqrs)=(a+pb+qc+rd+s)
とすればよいでしょう。問題は掛け算です。掛け算についても同じでよいのでは?と思うかもしれませんが、実はそうすると先ほどの約束と整合性が取れなくなります。
さっきの式(★)を思い出すと、行列(abcd)とベクトル(xy)の積とは、
(abcd)(xy)=(ax+bycx+dy)
と定めるのでした。この新しいベクトルにさらに行列をかけてみると
(1234)(abcd)(xy)=(1234)(ax+bycx+dy)=(1(ax+by)+2(cx+dy)3(ax+by)+4(cx+dy))=((1a+2c)x+(1b+2d)y(3a+4c)x+(3b+4d)y)=(1a+2c1b+2d3a+4c3b+4d)(xy)
ちょっと長くなりましたが、使ったのは(★)だけです。この式の最初と最後を見比べてみると、
(1234)(abcd)=(1a+2c1b+2d3a+4c3b+4d)
となっていることがわかります。この式は何だか複雑に見えますが、左半分と右半分で分けて見てみると、
(1234)(ac)=(1a+2c3a+4c),  (1234)(bd)=(1b+2d3b+4d)
となっていて、これは最初の(★)式と全く同じです!
今はわかりやすいよう具体的な数字を使いましたが、すべて文字で書くと、
(pqrs)(abcd)=(pa+qcpb+qdra+scrc+sd)
が行列の掛け算です。この掛け算は、順番を変えると答えも変わることに注意してください。例えば、
(1100)(1010)=(2000),  (1010)(1100)=(1111)
で全然違う答えになっていますね。このため行列の掛け算では、「左から」かけるのか、「右から」かけるのかをきちんと言わなければなりません。

逆行列

さて、もともと解きたい方程式は
(4712)(xy)=(25)
というものでした。この式の両辺に(2714)という行列を「左から」かけてみましょう(この行列がどこから来たのかは今は気にしないでください)。すると、
(2714)(4712)(xy)=(2714)(25)
行列の掛け算を使って左辺を計算すると、
(1001)(xy)=(2714)(25)
さらに(★)式から、
(xy)=(3118)
となって、方程式を解くことができました。今出てきた(1001)という行列は、かけても何も影響がない行列で、数字の1みたいなものです。これは単位行列とよばれ、アルファベットのIで表します。そして今回は(4712)に左からうまい行列をかけて単位行列Iにすることにより、方程式が解けたのでした。
このように、行列Aに対して、BA=Iとなる行列BA逆行列といいます。Aにかけたら1になるようなものですから1Aみたいなものですが、行列の世界では分数は使わずに、Aの逆行列をA1と書きます(「Aインバース」と読みます)。つまり逆行列が求まれば、
Ax=a  A1Ax=A1a  Ix=A1a  x=A1a
というやり方で方程式が解けるわけです(これはまさに両辺をAで割っているということです)。

今後の話題

行列を用いることによって、連立方程式をAx=aという形に書くことができ、Aの逆行列A1が求まれば、両辺をAで「割る」ことによってx=A1aと求まるのでした。

このように行列を使って書くことのメリットは、文字の数がx,y,zのように増えていったとしても、同じようにAx=aという形で書くことができ(行列のサイズは大きくなるが)、逆行列の計算方法さえ分かっていれば同じように連立方程式が解けるということです。したがって線形代数ではまず行列の性質や、逆行列の計算方法などを学んでいくことになります。

さらに、行列計算の応用範囲は連立方程式を解くことだけではありません。次の記事では、行列計算を最小2乗法に応用する方法をご紹介します。

次の記事→https://etudepeople.com/linear-algebra-and-statistics/

+2

作成者:

数学科の学生で、確率論、統計学を専攻しています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です