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

こんにちは。
Altairでインターンをしている政治経済学部所属の中西です。

現在、私は大学でメディアと選挙の実証分析をテーマにしたゼミに入っています。ゼミにて統計、データ分析のためのプログラミング言語である「R」を用いての分析を勉強し始めました。

ところが文系の人間にとってはプログラミング言語を扱うのは難しく、参考書とエラーを睨めっこしながら日々唸っています。

どうやらアルテアの提供している機械学習ツールAltair Knowledge Studioは、Rのようにコードを書かずにクリック&ドロップのマウス操作だけでデータ分析、機械学習ができるようです。これを用いればデータサイエンスや機械学習の詳しい知識がない人でもデータ分析ができます。

しかし、本当に正確な結果が出ているのでしょうか?昨今の情報過多の社会の中で逞しく育ってきた私は疑念を抱いています。データを入れて出てきた結果を何の探りも入れずに受け入れてよいのでしょうか。そこで、同じ分析をRとKnowledge Studio両方で実行し、実際の手順を示しながら最終的に結果が一致するのか確かめてみようと思います。

データサイエンスや機会学習のツールに興味があるが、予測精度に疑問を持っている方などはぜひ参考にしてください。

今回は、総合の消費者物価指数を目的関数とした重回帰分析をしてみます。
データは「消費者物価指数 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
となります。

標準偏回帰係数も表示します。
lm.beta(Model)
標準偏回帰係数

続いて機械学習ツール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での計算結果と同じであることを確認できました。

以上、簡単な重回帰分析をRとKnowledge Studioでやってみました。
結果も無事一致したので、これから安心して使っていけますね。

実際にKnowledge Studioを使ってみると、クリックしていくだけで簡単に分析が実行できたので使いやすいなと感じました。分析に必要な値もしっかりと表示でき、可視化もクリックで細かく設定できるので、とても使い勝手がよかったです。
Rを使っていて、「ああ、あれを実行するにはどのコードを打つのだっけ」となる部分もKnowledge Studioではあらかじめ値を出していてくれたりするのも好感を持てました。

Rを使っても比較的簡単に重回帰分析は実行できますが、専門知識がない方やプログラミングに苦手意識がある方にはぜひKnowledge Studioを試してみていただきたいです。
加えて、Rを日常的に使用している方も、Knowledge StudioにはRのプログラムをワークフロー内で実行することができる機能があり、Rの分析をKnowledge Studioで補完、簡略化することや、Knowledge Studioの機能をRのコードで拡張することができるのでお試しください。

5 2 votes
Article Rating

カテゴリー: Tips, データアナリティクス

Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments