So-net無料ブログ作成

bayesmのcheeseを使ったモデリング、その4~階層ベイズを使った線形回帰モデル [確率・統計、データマイニング]

Rの bayesm というパッケージに入っている cheese というデータを使って、いろいろ分析していきたいと思います。

1. 通常の線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-07
2. RETAILER をフラグ化した線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-08
3. 機械学習のアプローチ ← 今回
  http://skellington.blog.so-net.ne.jp/2017-11-09
4. 階層ベイズを使った線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-10

目的変数:VOLUME(販売数量)
観測モデルの説明変数:DISP(陳列の有無), log_PRICE(販売価格のlog), 切片
階層モデル:切片のみ

RETAILERごとに説明変数のβ(係数)を求めることができます。

本当は、RETAILERに関する情報(土地情報, 店舗数)などを追加で用意できると、それらの特徴ごとに、βの傾向を把握することができます。
例えば、地方都市だと、陳列の有無が重要であるとか。

今回の cheese にはそのような情報が含まれていないので、切片のみのモデルとなっています。

【推定結果と実際の値の散布図】


続きを読む


nice!(7)  コメント(0) 
共通テーマ:学問

bayesmのcheeseを使ったモデリング、その3~機械学習のアプローチ [確率・統計、データマイニング]

Rの bayesm というパッケージに入っている cheese というデータを使って、いろいろ分析していきたいと思います。

1. 通常の線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-07
2. RETAILER をフラグ化した線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-08
3. 機械学習のアプローチ ← 今回
  http://skellington.blog.so-net.ne.jp/2017-11-09
4. 階層ベイズを使った線形回帰モデル

作成したモデルは、ニューラルネットワーク、決定木(CHAID)です。

通常の線形回帰モデル:0.098
フラグ化した線形回帰モデル:0.705
ニューラルネットワーク:0.816
決定木(CHAID):0.705

フラグ化した線形回帰モデルと決定木の精度が、ほぼ同等となりました。
ニューラルネットワークの精度が、頭一つ抜けていいますね。

決定木がどのように予測をしたか分析してみると、
第一階層は、RETAILERごとにざっくりと分類します。
第二階層以下は、DISPとlog_PRICEで切っていきます。

DISPは、{0, 1}のデータなので、問題ないのですが、
log_PRICEは、連続値のデータが入っています。

そのため、決定木でざっくりと切ってしまうと、その区切りの予測値は全部同じ値になってしまうため、細かい予測値を出すことができません。

このあたりが、ニューラルネットワークより精度が劣る一つの原因になっていると思われます。

nice!(8)  コメント(0) 
共通テーマ:学問

bayesmのcheeseを使ったモデリング、その2~RETAILERをフラグ化した線形回帰モデル [確率・統計、データマイニング]

Rの bayesm というパッケージに入っている cheese というデータを使って、いろいろ分析していきたいと思います。

1. 通常の線形回帰モデル
  http://skellington.blog.so-net.ne.jp/2017-11-07
2. RETAILER をフラグ化した線形回帰モデル ← 今回
3. 機械学習のアプローチ
4. 階層ベイズを使った線形回帰モデル

通常の線形回帰モデルでは、個々のRETAILERの特性を上手く吸収できずに、いまいちな結果に終わりました。

「個々のRETAILERごとに反応が変わるならば、RETAILERフラグを作ってはどうだろうか?」
ということでRETAILERをフラグ化してみます。

g

【推定結果と実際の値の散布図】


【推定結果と実際の値のピアソンの積率相関係数】
0.705
(通常の回帰モデルの場合は、0.098)

ということで、大幅に精度が上がりました。

RETAILERでフラグ化を行うということは、
説明変数
・切片 → RETAILERごとに異なる
・DISP → 共通の値
・log_PRICE → 共通の値
となっています。

階層ベイズを使った線形回帰モデルでは、切片だけでなくDISPやlog_PRICEもRETAILERごとに異質性を計算することができます。

nice!(9)  コメント(0) 
共通テーマ:学問

bayesmのcheeseを使ったモデリング、その1~通常の線形回帰モデル [確率・統計、データマイニング]

Rの bayesm というパッケージに入っている cheese というデータを使って、いろいろ分析していきたいと思います。

write.table(cheese, "cheese.txt", sep="\t", quote=F, col.names=T, row.names=F, append=F)

いったん、ローカルにテキストファイルとして吐き出して、いろいろなモデルを作っていきます。
モデルは、SPSS Modelerを使用。

cheese のデータ概要ですが、全部で5,555レコード。
IDとなる、RETAILER数は、88社で、RETAILERをIDとすると、同じRETAILERのデータが複数存在します。
階層ベイズを使って線形回帰モデルを行っていくのですが、同じRETAILERでデータが、だいたい60レコード存在します。


5,555レコードあるのですが、
モデル作成用:5,359レコード
モデル検証用:176レコード
にランダムに分けます。

モデル検証用として、RETAILER 88社から2レコードずつ、合計176レコード取っておきます。

まずは、階層ベイズを使わないで、普通に線形回帰をしたらどうなるか?

目的変数:VOLUME
説明変数:DISP, log_PRICE

もともとのデータは、PRICEが入っているのですが、ここではlog変換を行ってlog_PRICEを説明変数としています。

分析結果は、こんな感じ。


DSIP, log_PRICE ともに有意となっています。
DISP(陳列)した方が売れますし、PRICE(価格)が高くなると売れなくなります。

納得の結果ですね。

ただ、R2は、0.088とそれほど高くありません。
推定結果と実際の値を比較してみても、上手く予想できていないことがよくわかります。

【推定結果と実際の値の散布図】


【推定結果と実際の値のピアソンの積率相関係数】
0.098

ということで、ここから工夫をしていくわけですが、
1. 通常の線形回帰モデル ← 今、ココ
2. RETAILER をフラグ化した線形回帰モデル
3. 機械学習のアプローチ
4. 階層ベイズを使った線形回帰モデル
とモデリングしていきます。

nice!(7)  コメント(0) 
共通テーマ:学問

佐倉天然温泉 澄流(すみれ) [温泉・スーパー銭湯]

佐倉天然温泉 澄流(すみれ)
http://www.sakurasomeino-sumire.com

マザー牧場の帰りに寄りました。

熱いお風呂だけじゃなく、古いお風呂もあり、
また、黄ゆずといった替り湯もありました。

成田空港の近くなので、少し遠い気もしますが、なかなか良い温泉です。
中で食事もできるのですが、温泉の周りで食事できるところも多いのか中のレストランは空いていました。

近くに行くことあれば、また寄ってみたいです。

nice!(9)  コメント(0) 
共通テーマ:育児

芋ほり 2017 [ファミリー]

幼稚園の芋ほりでしたが、ちょうど風邪をひいてしまい参加できませんでした。

娘は、「芋ほり」を楽しみにしていたので、マザー牧場の芋ほりに行くことにしました。
ほとんど掘られてしまっていて、端っこのエリアが少し残っていました。

4株(一区画)500円で参加できます。
軍手は100円で購入可能。

マザー牧場人いわく、2kgくらい出てくるよ~ってことでしたが、実際に掘ってみるとそうとう大きなお芋がたくさん出てきました。
家に持って帰って測ってみると4.8kgありました!







nice!(3)  コメント(0) 
共通テーマ:育児

俺のイタリアン TOKYO [グルメ / クッキング]

俺のイタリアン TOKYO
http://www.oreno.co.jp/restaurant/俺のイタリアンtokyo/

俺のイタリアン TOKYO - 銀座一丁目/イタリアン [食べログ]
https://tabelog.com/tokyo/A1301/A130101/13173949/

娘の誕生日パーティーで行ってきました。

入口が分かりづらいのですが、エスカレーターで地下1階に降ります。
(エレベータではつながっていません。)
隣が「俺のフレンチ」です。

入ってみると、割とざわざわしていて、子連れでも特に気を使うことなく食事ができました。
安くはないけど、美味しい料理をコストパフォーマンス良く食べることができます。
一人でも入れそうな雰囲気でした。

誕生日のデザートプレートを頼んだら、生演奏時に、「happy birthday to you」の歌を歌ってくれました。
娘はちょっと照れていましたが、また行きたいみたいで、楽しいお誕生日会になったようです。

nice!(1)  コメント(0) 
共通テーマ:グルメ・料理