Tensorflow-mathematical-foundations

提供:Dev Guides
移動先:案内検索

TensorFlow-数学的基礎

TensorFlowで基本的なアプリケーションを作成する前に、TensorFlowに必要な数学的概念を理解することが重要です。 数学は、機械学習アルゴリズムの中心と考えられています。 数学の中核概念の助けを借りて、特定の機械学習アルゴリズムのソリューションが定義されています。

ベクター

連続または離散の数値の配列は、ベクトルとして定義されます。 機械学習アルゴリズムは、出力生成を改善するために固定長のベクトルを処理します。

機械学習アルゴリズムは多次元データを処理するため、ベクトルが重要な役割を果たします。

ベクトル

ベクトルモデルの絵の表現は以下のとおりです-

ベクトルモデル

スカラー

スカラーは1次元ベクトルとして定義できます。 スカラーとは、大きさのみを含み、方向を含まないスカラーです。 スカラーでは、大きさのみが関係します。

スカラーの例には、子供の体重と身長のパラメーターが含まれます。

マトリックス

マトリックスは、行と列の形式で配置された多次元配列として定義できます。 行列のサイズは、行の長さと列の長さによって定義されます。 次の図は、指定されたマトリックスの表現を示しています。

多次元配列

前述の「m」行と「n」列のマトリックスを考えてみましょう。マトリックス表現は、マトリックスの長さも定義する「m *nマトリックス」として指定されます。

数学的計算

このセクションでは、TensorFlowのさまざまな数学計算について学習します。

行列の追加

マトリックスが同じ次元の場合、2つ以上のマトリックスの追加が可能です。 追加は、指定された位置ごとの各要素の追加を意味します。

行列の加算がどのように機能するかを理解するために、次の例を検討してください-

例:A = \ begin \ {bmatrix} 1&2 \\ 3&4 \ end \ {bmatrix} B = \ begin \ {bmatrix} 5&6 \\ 7&8 \ end \ {bmatrix} \: then \:A + B = \ begin \ {bmatrix} 1 + 5&2 + 6 \\ 3 + 7&4 + 8 \ end \ {bmatrix} = \ begin \ {bmatrix} 6&8 \\ 10&12 \ end \ {bmatrix}

行列の減算

行列の減算は、2つの行列の加算と同様の方法で動作します。 次元が等しい場合、ユーザーは2つの行列を減算できます。

例:A- \ begin \ {bmatrix} 1&2 \\ 3&4 \ end \ {bmatrix} B- \ begin \ {bmatrix} 5&6 \\ 7&8 \ end \ {bmatrix} \: then \:AB- \ begin \ {bmatrix} 1-5&2-6 \\ 3-7&4-8 \ end \ {bmatrix}-\ begin \ {bmatrix} -4&-4 \\-4& -4 \ end \ {bmatrix}

行列の乗算

2つの行列A m* nおよびB p * qを乗算可能にするには、 np と等しくなければなりません。 結果の行列は-

C m *q

A = \ begin \ {bmatrix} 1および2 \\ 3および4 \ end \ {bmatrix} B = \ begin \ {bmatrix} 5および6 \\ 7および8 \ end \ {bmatrix}

c _ \ {11} = \ begin \ {bmatrix} 1および2 \ end \ {bmatrix} \ begin \ {bmatrix} 5 \\ 7 \ end \ {bmatrix} = 1 \ times5 + 2 \ times7 = 19 \ :c _ \ {12} = \ begin \ {bmatrix} 1および2 \ end \ {bmatrix} \ begin \ {bmatrix} 6 \\ 8 \ end \ {bmatrix} = 1 \ times6 + 2 \ times8 = 22

c _ \ {21} = \ begin \ {bmatrix} 3および4 \ end \ {bmatrix} \ begin \ {bmatrix} 5 \\ 7 \ end \ {bmatrix} = 3 \ times5 + 4 \ times7 = 43 \ :c _ \ {22} = \ begin \ {bmatrix} 3および4 \ end \ {bmatrix} \ begin \ {bmatrix} 6 \\ 8 \ end \ {bmatrix} = 3 \ times6 + 4 \ times8 = 50

C = \ begin \ {bmatrix} c _ \ {11}&c _ \ {12} \\ c _ \ {21}&c _ \ {22} \ end \ {bmatrix} = \ begin \ {bmatrix} 19&22 \\ 43および50 \ end \ {bmatrix}

行列の転置

行列Aの転置m* nは、一般にAT(転置)n *mで表され、列ベクトルを行ベクトルとして転置することによって取得されます。

例:A = \ begin \ {bmatrix} 1&2 \\ 3&4 \ end \ {bmatrix} \:then \:A ^ \ {T} \ begin \ {bmatrix} 1&3 \\ 2& 4 \ end \ {bmatrix}

ベクトルのドット積

次元nの任意のベクトルは、行列v = R ^ n* 1として表すことができます。

v _ \ {1} = \ begin \ {bmatrix} v _ \ {11} \\ v _ \ {12} \\\ cdot \\\ cdot \\\ cdot \\ v _ \ {1n} \ end \ {bmatrix } v _ \ {2} = \ begin \ {bmatrix} v _ \ {21} \\ v _ \ {22} \\\ cdot \\\ cdot \\\ cdot \\ v _ \ {2n} \ end \ {bmatrix}

2つのベクトルのドット積は、対応するコンポーネントの積の合計です-同じ次元に沿ったコンポーネントであり、次のように表すことができます

v _ \ {1} \ cdot v _ \ {2} = v_1 ^ Tv _ \ {2} = v_2 ^ Tv _ \ {1} = v _ \ {11} v _ \ {21} + v _ \ {12} v _ \ { 22} + \ cdot \ cdot + v _ \ {1n} v _ \ {2n} = \ displaystyle \ sum \ limits _ \ {k = 1} ^ n v _ \ {1k} v _ \ {2k}

ベクトルの内積の例を以下に示します-

例:v _ \ {1} = \ begin \ {bmatrix} 1 \\ 2 \\ 3 \ end \ {bmatrix} v _ \ {2} = \ begin \ {bmatrix} 3 \\ 5 \\-1 \ end \ {bmatrix} v _ \ {1} \ cdot v _ \ {2} = v_1 ^ Tv _ \ {2} = 1 \ times3 + 2 \ times5-3 \ times1 = 10