こんにちは、メディア広告部門(MDH)の大江です。

花粉症の方にはつらい季節となってまいりました。
今日は花粉症がしんどいなーと思いきや風邪だったというサイクルを毎年経験しています。

さて隔週で開催している技術者のスキルや知識共有のための勉強会「LT Thursday」ですが、今回で15回目を迎えました。
各プロジェクトから5名のエンジニアが直近のリリースや学生時代の研究に関してプレゼンしました。

 

1. 外れ値検出のアルゴリズム (大澤)
1画像

1人目は外れ値検出アルゴリズムに関して、大澤が発表しました。
外れ値検出とは、他の値と比べて大きく外れた値を検出するものです。
記事広告の読了率を調べる際、滞在時間等のログから異常なものを弾きたいため外れ値検知に関して色々調査したとのことです。
今回は多変量正規分布を仮定して、推定した分布上で生起確率が低いものを弾くことで外れ値を検出します。

最尤推定で求められた楕円は異常値の方向に引っ張られてしまいますが、MCDを用いた場合はコンパクトに収束することができ、また統計的な根拠にもとづいて異常値検出が可能になります。
しかし、使用するログが多変量正規分布という仮定を満たさなかったことから今回MCDの導入は断念したとのことです。

 

2. vCPM入札対応 (中川)
006

続きまして、中川が広告配信システムにvCPM入札を導入した際の変更に関して発表しました。
スライドは内容の都合上、非公開となっております。ご了承ください。

vCPMとは「Inview Cost per Mille」の略で1000inviewあたりの広告単価になります。

配信を設定する際は1000inview単位ですが、コスト計上は1inview毎に積み上げるため、1000をかけたり割ったりと言った処理が必要になります。
システム側でどう処理したかといった内容でした。

 

3. Google Apps Scriptの話 (岸)
009

3人目は、フロントエンジニアの岸がGoogle Apps Scriptに関して発表しました。
Google Apps Scriptは、GoogleドキュメントやGMailといったGoogleのサービスを
Javascriptベースで操作することが可能なスクリプト環境です。

jsdocのようなコメントを残せば補完するポップアップも出力され、トリガーを使えば独自関数でも書き込み系の処理が可能となります。
関数さえ用意すればビジネスの方でも簡単にガントチャート等作ることができそうです。

 

4. サンプル画像提示による自動配色法 (塩島)
012

続いて動画広告を開発している塩島さんが学生時代の研究に関して発表しました。こちらもスライドは非公開です。
研究テーマだった自動配色法は、デザイナーでなくても調和のとれた配色ができることを目的とし、サンプルの写真を使って自動配色させるものとなっています。

K-Meansを用いた減色と、色面積の比率を用いて配色することでバランスの取れた色彩にすることが可能です。

 

5. CircuitBreakerの適用 (林)
015

最後にランキングロジックを開発している林の発表です。
特定のAPIサーバがダウンしたことに伴い、リクエスト元がタイムアウトで詰まるなど、障害が連鎖することによりシステム全体が止まるといった事象はよく聞く話ではあります。

そこでリクエスト元におけるCircuitBreakerの導入により、ダウンしたサーバに執拗にアクセスを送らないことで、全体に障害の余波を与えないことを目的としたシステム設計が可能になります。
逐次的にHealthCheckを叩いて、リクエスト先が生きているかどうかを確認することができます。

そもそも欲しいレスポンスは取れなくなるため、エラーレスポンスの代替となるようなものを返す障害時のハンドリングが必要になります。

以上、第15回LT Thursdayレポートでした。

 

▼メディア広告部門(MDH)
Ameba Ownd:https://ameba-ad-pr.amebaownd.com/
Facebook:https://www.facebook.com/AmebaAds.CyberAgent/
Twitter:https://twitter.com/amebaads_pr