渋谷ランチ初めまして、ファンコミュニケーションズさんで5日間のインターンでお世話になった澤祐斗です。データ分析でのインターンということで、ビッグデータに触れられる機会を楽しみにしていました。今回自分が行ったのは、広告のCTRが時間経過に伴ってどのような変化をするのか、その予測モデルを立てる分析です。CTRを時系列モデルで分析するか?CTRは時間によって周期的かつトレンドを持って変動しており、そこを正確にトレース出来る予測モデルを立てることで異常なCTRが得られた際の早い反応や、何か施策を行った時のABテスト的な評価軸にもなると考えられるからである。今回一番頭を悩ませたのがこのデータ抽出だった。データベースにある広告に関するログから一時間当たりのインプレッション数、クリック数をを集計し一時間当たりの平均CTRを算出するのだが、後々の回帰分析で用いる説明変数の取り扱いは難しかった。名義尺度などのカテゴリカルな値は、通常の機械学習で用いる際にはOneHotEncodingなどで特微量抽出するのだろうが、今回は一時間当たりで集計するため分散が小さくなったり意味のある特微量抽出が難しくなったりと、その特微量抽出法に苦戦した。countや横持ち変換によって出来るだけ意味を失わないように特微量を抽出できた。今回最終的に抽出した特微量は以下の通りである。notebook上でHiveを使ってTreasureDataから抽出した。今回は7月1日から7月25日までのデータを一時間ごとにまとめて取得したが、Hiveの特性を活かしきれてなかったからか、一回の抽出に30分ほどかかった。打ち間違い等で実行後に誤りを見つけた時は抽出のし直しが面倒だった。notebook上でdataframe形式で受け取ったデータはそのままpythonでpandasでcsv変換し保存し、それをRstudioで読み込んでR上でのデータ加工をした。Rでは時系列データを簡単に扱うためのデータ型であるxts型(ts型の改良?版)があり、読み込んだデータをxts型に変換した。プロットしたものが以下である。CTRは特徴は?ggtsdisplay関数によりCTRの自己相関を調べた。左の図より24時間の周期性があり、右の図より一次の自己相関が確認できた。次にCTRがどのような分布になっているか確認した。歪んで見えたので、対数変換することにシャピロ・ウィルクテストにより比較すると対数変換後の方が正規分布に近いことが確認できた。packageを使って状態空間モデルでモデリングした。データを約二週間ずつ訓練データとテストデータに分けておいた。訓練データを用いて作成したモデルで予測系列を作り、それとテストデータとのRMSE(二乗平均平方誤差)により評価した。映えある優勝者は、説明変数による回帰成分(事前分布の緩和あり)、24時間周期成分、ローカル線形トレンドモデルから構成されるモデルだった。その予測結果は以下の図である。(赤色が予測系列)まあだいたい追えてるんじゃないかな?RMSEはCTRがだいたいわかってしまうので書けないが、予測値と実値の比より誤差の絶対値をパーセントで計算すると誤差の平均は5.3%程度だった。誤差は最大で20%くらい。誤差の標準偏差が4%くらいだったので、95%くらいの確率で誤差比13%以内にはあるとわかった。すると、誤差比が15〜20%を超えてくると、異常値として何かCTRに異変が起きているかもしれないと通報を受けデータベースのパトロールに迎うことができる。他にも、何か施策を行った時もこの水準を超えれば有意な差があると判断できるだろう。packageでは、説明変数の回帰を含んだモデルに対し各特微量の係数を表示できる。白帯は正の係数で、黒帯は負の係数である。wifiでの接続数だったり、広告の形態だったりとまあ予想通りな結果も含みつつ、男女比やiOSでの接続数など意外なものもあった。状態空間モデルは理論やアルゴリズムの難しさの割に簡単に実装できた。実データを用いた分析は面白かった。職場の雰囲気は比較的静かで集中できた。勉強の日が浅くわからないことも多かったですが、メンターの片桐さん及び片桐さんが書いた記事(Rについて調べたら結構たどり着く)に助けていただきなんとかやり遂げることが出来ました。毎日お昼ご飯にも連れて行ってくれ、色んな話も出来て楽しかったです。ありがとうございました。中華多めの渋谷ランチでした。ファンコミュニケーションズは割と定期的にインターン生を迎えていることもあってインターン生も居心地よく作業できる環境が整っています。実データに触れて分析がしてみたいなど考えている学生の方にはオススメだと思います。最後に、5日間という短い間ですが初日にお昼ご飯に連れて行ってくださった皆さん、卓球サークルでお世話になった皆さん、インターン生の全体的なサポートをしてくださった長田さん、内田さん、ありがとうございました。Word2Vec)こんにちは!5日間インターンに参加させて頂いた中島です。昨...2018-09-07アドテクの会社でCTR予測をしてみた。Are青山のアドテク会社。アドネットワークやDSPを開発・運用。サーバを止めてみたよ。インターン:実業務体験編インターンでCTR予測をしましたSearchArchiveスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。