loss(誤差関数)は、自分の方法でモデルが出した「推測」値と正解の教師データと比べて、適合しなさ具合を表す数値を返します。
前のあやめデータのlossには’binaryCrossentropy’を指定していましたが、難しい関数なので、もう少し分かりやすい’meanSquaredError’について見ていきます。’meanSquaredError’は「3_1_2 モデルの作成」や「5_2_3 TensofFlow.jsのモデルの作成と訓練」で使用しています。
meanSquaredErrorは二乗和誤差と呼ばれる関数で、誤差を二乗したものを全部足したものを返します。
前の「最高気温とビールの売上数」をプロットした下のグラフで見ていきましょう。
オレンジ色の線はモデルが最初に「推測」した直線です。モデルは訓練用データから、y = ax + bのaとbに当たる値をこれくらいだろうかと推測したのです。誤差は、点aなら、その上にまっすぐ伸ばした直線との交点までの長さに当たります。これを二乗します。その値は誤差を一辺とする正方形(A)の面積になります。
ほかの点についても同じ計算を行い、正方形BとCの面積を算出します。そしてこれらを全部足します。二乗和誤差はこの値を返します。