2016-09-09

GCP NEXT Tokyoとbq_sushiで弊社事例の紹介をしました

9月6日に開催されたGCP NEXT Tokyoの事例紹介セッション及びパネルディスカッションでの講演機会をいただいたので登壇してきました。一緒に出演されたメルカリ様、DeNA様はApp Engine Goをバリバリに使っている事例で、VOYAGE GROUPはBigQueryと、他社のサービスに無いプロダクトを全面にプッシュしていたのでわかりやすい話になったかなと。反省点は、資料に沿って話すのに精一杯で、まだまだ自分の言葉で話せなかった所ですかね。

そして、この事例で紹介した仕組みで動いている処理の一つが先日発表した不正クリック検出なわけで、GCPのデータセンタには足を向けて寝られません。

そのまま夜はbq_sushi #4で事例紹介の縮小版をやりました。異常検知で利用しているクエリを紹介しようとしたらスライドに貼りきれず失敗したので、Qiitaに全部貼りました……。

bq_sushiで使用した資料

GCPではじめるスモールスタートなデータ活用 // Speaker Deck

ETL処理とlambdaアーキテクチャ

今回のGCP NEXTとbq_sushiで目を引いたのはETL処理とlambdaアーキテクチャ。リアルタイム性と遅れてくるデータの扱いをどうすべきか、最近の悩みでもあったのでヒントになりました。SpotifyのオンプレからGCPへの移行ケースの話も極めて俺得でした。Spotifyといえばジョブパイプラインの制御にluigiを使ってますが、もしかしてluigiのGCPまわりの開発が加速されるのかなと、密かに期待。


このエントリーをはてなブックマークに追加

2016-09-05

不正クリック検出の歴史と実装について発表しました

第56回データマイニング+WEB@東京で不正クリック検出について発表してきました。参加者の三割ぐらいがネット広告業界のエンジニアだったため、釈迦に説法にならないか心配でしたが、配信業態が変われば相対している問題も異なるようで良かったです。

発表資料


個人的にはパブリッシャーのブラックリストを広告業界全体で共有するくらいの事はやっても良いのでは、と思っています。 今は圧倒的に防御側が利用できる情報が少なく不利な状況にあります。(そして自分が楽をしたい)

あとはつい先日、CAリワードから「DNN+オンライン学習で不正検出してます」というプレスが発表されて、どうやっているんだろうと気になってしょうがないのですが、CAの人に会える機会が無くもやもやとしております。

このエントリーをはてなブックマークに追加

2016-08-17

[論文] Combating online fraud attacks in mobile-based advertising (2016) 読んだ

Combating online fraud attacks in mobile-based advertising

要旨: Abstract

広告バナーに対して機械的にクリックを生成するAndroidアプリ(不正クリックbot)を実装して、実際のAdNetwork8社に対してbotによるクリックが有効かどうかを検証した。
検証結果から、不正クリックbot対策の提案を3つする。

実装: Implementation of online fraud attacks

CPC収益モデルの広告に対して、悪意のあるPublisherはクリックイベントを生成する事により自身の利益としている。それらは実にシンプルに生成されているが、実際のAdNetwork各社がそうやって生成されたクリックに対して今だに脆弱であるかは疑問があった。
これを検証するため、次の実装とした。

  • 独立したAndroidアプリとし、表示された広告に対して自動でクリックイベントを生成する
  • Publisher自身の端末でこれを動かすシナリオを想定
  • Android Debug Bridge (ADB) を利用してクリックイベントを端末に送信
  • Device ID (or android_id) がサーバーに送信されるため、これをランダムに書き換える

実験結果: Experiments

6つのAdNetworkは機械的に生成したクリックを防げなかった。2つのAdNetworkは自動生成クリックに対抗し、アカウントがブロックされた。

対抗手段: Countermeasures

1. Androidのアーキテクチャを変更し、物理的なタッチイベントについてトレース可能にする。イベントの生成元がわかれば、プログラムによって生成されたクリックイベントをフィルタする事ができる。
2. 人間には見えないバナーでbotを釣る
3. 異常なふるまいを検知する
----

感想

攻める側の視点とは珍しいなと思って読んでみたが、全く難しい事をしておらず拍子抜け。しかも6つのAdNetworkにはこれが有効という結果。しかしbotの運用期間が書いてなかったので、不正検知に引っかかる前に実験を終えた可能性もある。

AdNetworkによってはAdvertising IDでは無くAndroid IDを端末の識別子として利用しているという点は、2016年にもなってそんな事するか?? と疑問ポイント。使える物は便利に使ってる、というだけかもしれないが。


このエントリーをはてなブックマークに追加

2016-03-06

GCP ja night でCloud DatalabとBigQueryについて発表をしました

「AppEngine ja night」がいつの間にか名前が変わって「GCP ja night」になってました。今回は仕事でどうGCPを使っているかをネタにしました。


他の発表陣が軒並GKEを使ったシステム構成の話をする中で、自分だけGoogle Cloud Datalabでデータ解析チーム内での実験ノート共有手法の話をするという、非常に苦しい場ではありましたが何かの参考にしていただければ幸いです。一つ失敗したのは、Cloud Datalabの話をするのに、Cloud DatalabのベースとなっているJupyterの解説を飛ばしてしまった事ですかね。



このエントリーをはてなブックマークに追加

2015-12-15

自転車ポエム

このエントリはpyspa Advent Calendar 2015の15日目の記事です。pyspa Advent Calendarは「自分が好きなものや興味があるものをなんでもいいので書く」という事で、数年に一度あるか無いかのポエムです。

ロードバイクを入手してからの1年

2014年冬にCannondale SYNAPSE CARBON 5を購入、弱虫ペダルで言うと手嶋先輩が乗ってる奴。そして2015年は輪行を修得した事で行動範囲が一気に拡大した。輪行とは専用の袋に自転車をバラして格納して鉄道などの交通機関に乗る技である。
出張先での練習が可能に

2015年で印象に残った道

荒川サイクリングロード

自宅から5分でアクセスできたのもあり、一番良く走ったのがここ。葛西臨海公園と河口から40km付近の秋ケ瀬公園の間が普段の練習コース。
実際にはサイクリングロードでは無く緊急用河川敷道路として整備されているため舗装が良く幅員も広い。都内最強の平坦道ではなかろうか。左岸を堀切橋あたりから河口まで行くと片道10kmだが、途中にゲートが無く、ランナーとサイクリストしかいないためペースキープの練習にもってこい。日没後は闇に紛れた全身黒ずくめのランナーが出没するため危険。

江戸川自転車道

首都圏外郭放水路で有名な龍Q館に行くにはこの道が便利。江戸川の始点となる利根川も含めて都心まで100km走って関東平野の広大さを実感した。難点としては単調な道が続き景色に変化が無いため、10分で飽きる。いたる所で拡張工事がされているため、今後の整備に期待できそう。

「海まで127.5kmです」の看板、500m毎に立っていて親切?

渡良瀬川

利根川から入り群馬の市街地を経由して遡上して足尾銅山まで行った。観光地なので登りの練習をしながらも道の駅に寄ったり、渋い店構えの蕎麦屋で補給できる。わたらせ渓谷も美しい。足尾に差しかかった辺りからSIRENの舞台を彷彿とさせる昭和な世界が広がっており、味わいがあった。

あらゆる鉄が錆びている

三浦海岸

三浦海岸から三崎口へ抜けて城ケ崎公園へ。砂浜、キャベツ畑、風力発電機、魚屋と変化に富んだ牧歌的なコースで和む。幸運にも風が穏かな日に走れた。オススメのおみやげは鮪のみりん干し。

都民の森

その柔らかな響きとは裏腹に、斜度10%越えのつづら折りに殺されかけた難所。ヒルクライムの苦しさと共に楽しさに目覚めた場所でもある。

白馬 - 木崎湖周辺

北アルプス山麓グランフォンドの120kmコースに出場。生憎の雨でDNF(Don’t Finish)だったが、来年こそはゴールしたい。

自宅

新居に引っ越すと共に固定ローラーを導入、冬期の練習不足を解消するのが狙い。ただ、1歳の息子がチェーンを鷲づかみにするので運用は難しい……。分譲マンションだが、自転車を各住戸まで持っていく前提でエレベーターや共用スペースが設計されている物件なので気に入っている。

自転車レースを観戦しながら練習可能な夢の環境が実現

自転車の良さ

ペダルを踏めばどこまでも行ける、というシンプルな楽しさはもちろんあるが。自分の限界と否応無しに向き会わなければならない点も良い。無茶した所で巡航速度は上がらないし、速く走るためには練習するための時間、良いパーツを買うための収入が必要である。人生のリソース配分最適化を考える良い契機になった。

まとめ

みなさん自転車やりましょう。こちらからは以上です。

このエントリーをはてなブックマークに追加