Analytics Cloudを活用したPOSデータ分析：商品売上予測①(ビジュアライゼーションの拡張分析機能)

# 利用環境 #

データベース：Oracle Autonomous Data Warehouse　容量(1OPCU)

BIサービス：Oracle Analytics Cloud  機能セット(Enterprise Analytics) 、容量(２OPCU)



# 用意したデータについて #

アパレル事業の店舗POS売上明細データ：　ID付きPOSデータなので、会員ID付きの売上データです。商品属性（カラーコード、サイズ）、ブランドなどは、連結済み

会員マスタデータ：会員の基本属性データですが、ポイント増減に関する情報も、連結済みのデータ





# Analytics Cloudを活用したPOSデータ分析：商品売上予測①(ビジュアライゼーションの拡張分析機能

商品の売れ行きを予測することは、商品の生産や仕入れ、在庫計画、商品配分などを考える上で、重要なことです。今回は、Analytics Cloudに備わっている機械学習機能を使って、商品の売上予測を行う方法についご紹介したいと思います。Analytics Cloudにおける機械学習機能は、ビジュアライゼーションの拡張分析機能として、オートマチックに利用する方法と、関数として提供される機械学習アルゴリズムを利用して計算式を自分で組む方法などがありますが、今回は、前者のビジュアライゼーションの拡張分析機能を使った方法をご紹介します。

商品の売上を予測する手法は様々なアプローチがありますが、今回は時系列予測を使ってみます。アパレルはリテール業の中でも、売上に季節との相関性がかなりあると思われるので、POS売上データに時系列予測をかけるだけで、ある程度のマクロな傾向は予測がつくのではないかと期待できます。



完成形イメージ
**商品売上予測グラフ（特定店舗における直3年間のジャケット売上を元にした、向こう12か月の売上(着数)予測）**
![003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/52767db8-44aa-7209-39af-bf9eb9a8b0aa.jpeg)

# ベースの商品売上レポート(グラフ)を作成する　



値に”数量(商品売上枚数）”、カテゴリに”商品CD購入日付(月)を配置した棒グラフ作成します。そしてフィルター領域に任意のフィルターを配置します。

商品アイテムは、”ジャケット”で、店舗は”405”で絞り込んでいます。購入日付は[相対時間フィルター](https://qiita.com/Nakayamasan/items/ad356dcf98e1a09ff739)を使って、直近3年に絞り込んでいます。

![002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/ceda5b15-1251-d253-8211-f814008650e2.jpeg)


画面左側の黒いメニュバー上部のアイコンの一番右のループの形をした”分析”アイコンをクリックすると、ビジュアライズの拡張分析のリストが表示されます。

![0000.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/154ebb8c-739b-8bd4-c7b6-1cc53f855c09.jpeg)


# 予測アルゴリズムの追加



”強調表示”から予測を選択して。キャンバス上の棒グラフの空いたスペースにドラッグ＆ドロップします。ドロップする場所は、かなりアバウトでも大丈夫です。

![0061.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/4a9ec26b-d260-6730-9d23-19ff837481b9.jpeg)


画面左側のメニュバーの下部に表示されている棒グラフのプロパティで、予測のパラメータを変更することが出来ます。予測する将来期間や、予測モデルを指定することが出来ます、例えば、月別のグラフの場合は、12と入力すると、むこう12か月の期間の予測値を計算してくれます。予測モデルは、ARIMA(自己回帰移動平均)、季節性ARIMA、ETS(指数平滑法)の中から選択することが出来ます。

今回は、予測モデルはARIMAを、期間には12を入力してみます。

![005.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/f1736366-4104-4583-ade8-bd7f307db472.jpeg)


プロパティで任意の値を指定すると、棒グラフ上に、予測値が追加されます。この値は、特定の店舗における、過去3年間のジャケットの実売のデータを元に計算された予測値です。このように、POS売上明細データに対して、非常に簡単な操作で予測アルゴリズムを適用することが出来ました。



**ARIMAモデルを適用した将来予測結果**
![003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/0d7de353-6e0e-2bd0-0527-a94780928ec5.jpeg)

予測モデルを変更すると、入力した値に応じて、ビジュアライズが再描画されます。ETS(指数平滑法)を適用してみると、ARIMAモデルを適用した時と比べると、だいぶ予測結果が異なります。指数平滑法は、直近のデータほど重視されるので、このような結果になったのかもしれませんね。



**ETS(指数平滑法)を適用した将来予測結果**
![0062.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/093e2772-57b1-c8f6-63cd-6afcc73a6ca5.jpeg)







時系列のアルゴリズムは、前述のとおり、季節性ARIMA、ARIMA、ETS(指数平滑法)の中から選択することが出来ますが、それぞれのモデルの違い、特長については、ここでは割愛します。時系列予測について、[よくまとまっている記事](https://qiita.com/sotoattanito/items/b885ef2dd3fe11cb817d)を見つけたので、ご参考までに。



Analytics Cloudのビジュアライゼーションの拡張分析機能に備わっている時系列予測機能を使ってみて感じることは、すごく簡単に、時系列予測が行えるのは良いことですが、予測値をデータとして保持したい場合には、ちょっと不便なところがあります。あくまで予測を行った結果をビジュアライズとして簡単かつ迅速に確認することが出来るところにこの機能の価値がありそうです。

次回は、Analytics Cloudの関数として提供されている予測関数を使った方法についてもご紹介したいと思います。





# まとめ

- ビジュアライゼーションの拡張分析機能として、時系列を利用できる。棒グラフや折れグラフなどの時系列トレンドグラフに適用することで、簡単に予測値を算出してビジュアライズ上で結果を確認することが出来る