機械学習ツール Altair Knowledge Studio を用いた重回帰分析の予測精度

機械学習ツール Altair Knowledge Studio で、R のようにコードを書かずにクリック & ドロップのマウス操作だけでデータ分析や機械学習を行うことができます。しかし、その正確さに疑問に持つ方もいるかもしれません。

この記事では、総合の消費者物価指数を目的関数とした重回帰分析をしてみます。
データは「消費者物価指数 2020年基準消費者物価指数 」を基に作成し、総合(全ての財およびサービスの価格等を総合したもの)、米類、マグロ、卵、キャベツ、家賃、乗用車の消費者物価指数の値を 734 行取り出しました。

まずは R でやってみたいと思います。以下に、コードと出力を表示します。
hr <- read.csv(“CPIdata.csv”)
データを読み込みます。

hr
読み込んだデータを確認します。

うまく読み込めました。

データの代表値を確認します。
summary(hr)

各データの最小値、最大値、中央値、平均値、四分位数を確認できます。

次に、各データの相関係数を計算します。
cor(hr)

卵とキャベツはあまり総合の指数と高い相関を示していませんね。

それでは、重回帰分析を実行します。
Model <- lm(Main ~ Rice + Tuna + Egg + Cabbage + Rent +Car, data = hr)

結果を確認します。
summary(Model)

以上のような結果となりました。切片、各係数、F 値や P 値、決定係数などが確認できます。
回帰式は
Main=-18.539248-0.042238*Rice+0.090275*Tuna+0.043070*Egg+0.003331*Cabbage+0.675730*Rent+0.401212*Car
となります。

標準偏回帰係数も表示します。

続いて機械学習ツール Knowledge Studio を用いて分析してみます。

まずは Knowledge Studio を起動します。

“File Import” のノードをキャンパスにドラッグ、そしてノードを右クリックして Modify を押します。

Source file name からデータを選択して取り込みます。
Next を押していき Run を実行します。

データ (CPIdata) が読み込まれました。

データ ノードをダブルクリックするとデータの中身を確認できます。
Data タブで全体のデータを表示すると、こちらも無事にデータが取り込まれているようです。

Dataset Chart では様々な形でデータを可視化できます。

Overview Report タブで Calculate all を押すと各種統計量を確認できます。
最小値、最大値、中央値、平均値などが確認できました。これらの値は R で実行したときと同じ値ですね。

Correlations タブでは相関係数を表示できます。表示したいデータを選び、OK を押すと相関係数を見ることもできます。

こちらも R で出力した相関係数の表と一致しています。

次に、Knowledge Studio でも重回帰分析を実行してみましょう。
Model 内の ”Linear Regression” をキャンバスにドロップして CPIdata と矢印で繋げます。
そして右クリックで Modify します。

Dependent variable を目的変数の Main にして、他の変数をすべて説明変数に選択します。
そして Run をクリックして、分析を実行します。

実行結果が以下のようになります。Sequence タブを選択すると各種値が確認できます。
回帰式は、
[Main]=−18.539247576045312-0.042238346289426014*[Rice]+0.09027503469042521*[Tuna]+0.04306971292235803*[Egg]+0.0033305752535969196*[Cabbage]+0.6757303492592891*[Rent]+0.4012121076014391*[Car] となり、R での計算結果とも一致しました。
その他、F 値や P 値、決定係数 (調整済みも含む)、標準偏回帰係数の値も R での計算結果と同じであることを確認できました。

*本記事は、アルテアエンジニアリング株式会社が提供している以下の記事から抜粋・転載したものです。

Knowledge Studio を用いた重回帰分析の予測精度