質問: プログラムの信頼性 漠然とした質問で申し訳ありません。 ニューラルネットワークを用いたプログラム(アルゴリズム?)と 最小二乗法を用いたプログラムではどちらの方が信頼性が高いでしょうか? 理由含めご意見をお聞かせください。
回答: 最小二乗法は、連続的に滑らかに変化する物を計測or観測した複数の結果(例えばそれが一次関数なら3回以上計測or観測)を元にそれらによりフィットする式を導き出すものです。 例えば彗星の軌道計算には必須のものです。彗星の軌道計算の場合は観測機器の精度によって重み付きの最小二乗法での計算を行いますし、得られた曲線からあまりにも離れている観測結果は除外するなど何度も計算をやり直します。 このようなプログラムにはニューラルネットワークの出番は全くありません。 ニューラルネットワークは、複数の入力情報(それらは直接関わりが無くてもいい)から、それまでの学習を元にして計算で最も妥当だと思われる結果を導き出します。 例えば複数の食材名を入力したら最適な料理とそのレシピを出してくれるプログラムなどに向いているでしょう。 このようなプログラムには最小二乗法の出番は全くありません。 このようにそれぞれのアルゴリズムにはそれぞれに向いた用途があります。 この二つのアルゴリズムを直接比較する用途って何ですか? それと信頼性はアルゴリズムの問題ではなくプログラマーが作成したプログラムやそれを組み込んだ機器(ハードウェア)の問題です。 家電製品などの組み込みマイコンのプログラムだと何ヶ月も掛けた動作チェック(通常の操作手順だけでなく、普通はやらないであろうむちゃくちゃなスイッチ操作もします)を通って、製品に組み込む最終プログラムは複数の人の前でソースプログラムの全体をプログラマーがこと細かく説明し、皆に納得してもらって初めて製品として出荷されます。