読者です 読者をやめる 読者になる 読者になる

仕事やプライベートで調べたことのメモ書きなど(@札幌)

仕事やプライベートで調べたこと、興味ある事のメモ書きです。2016年4月から札幌で働いてます。※このブログは個人によるもので、団体を代表するものではありません。

「Oracle Cloud Developers Meetup@北海道 - 機械学習でお客様が他にも買いそうな商品を予測しようじゃないか。 」に行ってきた。(2016/11/17@札幌)

データベース 札幌

前回も参加したのですが、Oracle主催のハンズオンに行ってきました。
oracleclouddevelopersh.doorkeeper.jp

前回の参加メモはこちら。
takumats.hatenablog.com

やはり実際に手を動かしてのハンズオンは楽しい♪
今回のチュートリアルの内容はこちら。資料を公開してくれているのも、後でできるのでうれしい。
qiita.com

ハンズオン時は以下のようなOracle Application Expressというのに接続できるようになっている。
f:id:takumats:20161117191543p:plain

ツールとして、Oracle SQL Developerというのを使います。
http://www.oracle.com/technetwork/jp/developer-tools/sql-developer/downloads/index.html

まぁ基本は言われた通りにポチポチやっていくだけなのですが、
このような手順でいろんなことができる、というのはとても新鮮。
たったい2時間だし、こまごまとした説明とか、進捗遅い人を待っているのをふまえると、実質30分くらいか。

以下、メモ。

データ分析は大きく以下の流れで作業する。

  • 対象のテーブルの特定
  • データを加工(data preparation):欠損値補完、テーブル結合、など
  • 分析の手法を選択

テーブルの特定

バスケット分析で必要になる情報:Transaction ID、Item ID
まずは分析対象のテーブルを特定することが重要。
今回は二つのテーブルを選んだ。

データの加工

今回は結合(inner join)のみ。

分析手法を選ぶ

今回はアソシエーション。
この分析を選ぶところが、ノウハウがいるところ。
今回のようなフレームワークを使うとドラッグ&ドロップでいろいろできるが、やれることは限られる。
凝ったことをするには、やはり言語系の何かが必要だろう。

余談だが、分類、を使うと、どんなお客が買ってくれるか、みたいなことを分析できる。

f:id:takumats:20161117201201p:plain

そして実行すると

緑のポチがつく。
f:id:takumats:20161117201657p:plain

これを分析

  • 確信度:その事象(先行情報→結果)が起こる確率
  • サポート値:全体の母数に占める割合(サポート値が低いと信頼に足らないのでは?という情報)
  • リフト値:1未満だと信用できない

bdm.change-jp.com

そして、この結果をおすすめ商品を表示するところに記載してあげる。

最後に頭の体操

これが自動車会社だったらどんな分析をするべき?

どのような塊をトランザクションとするか、そこがデータサイエンティストの仕事で腕の見せどころでもある。

おまけ

ちなみに、12月に以下のようなイベントをするそうです。
Oracle Cloud Day Sapporo 2016
http://www.oracle.com/goto/cloudday_sapporo2016

機械学習と統計分析の違いがいまいちよくわからなくなってきた・・・・。
tjo.hatenablog.com