FANCOMI Ad-Tech Blog

株式会社ファンコミュニケーションズ nend・新規事業のエンジニア・技術ブログ

k_oomori

『ユーザの平均継続期間が「1/解約率」』であるための十分条件について

こんにちは、サービス開発部情報科学技術研究所所属のk_oomoriです。先日、 migi.hatenablog.com というブログが公開され、アドテク界隈で話題になったようです。私も読ませていただきましたが、平易に書かれていてとても良い記事だと思いました。僭越ながら…

アクセスログの残しかた ~ Aerospike×DynamoDB

こんにちは、k_oomoriです。突然ですが、アクセスログを記録するにあたり、以下の要件を満たすデータベースが必要になりました。 ユーザを区別するID(uid)、アクセス時刻、アクセスURL、その他必要に応じて追加される属性を記録する 特定のuidに対して過去の…

一歩Matrix Factorization、二歩Factorization Machines、三歩Field-aware Factorization Machines…『分解、三段突き!!』

こんにちは、k_oomoriです。最近、機械学習の分野でFactorization Machines (FM)という手法があることを知りました。Matrix Factorization (MF)は知っていたのですが、共にfactorizationという単語を含んでいるため、何か関係があるのだろうか?と気になり調…

breezing NumPy-bration

k_oomoriであります!これまで数値計算といえばPythonのNumPy一択かなと思っていたのですが、Scalaでも似たようなライブラリはないものかと調べてみたところ、ありました、breezeが。ここではベクトルや行列の演算について性能を調べてみたいと思います。な…

RDBとグラフDBは使いよう ~ MariaDB様がみてる vs. InnoDBさんとNeo4jさん

ごきげんよう。k_oomoriです。業務でデータノード間の関連性を追いかけるようなクエリが投げたくなったので、グラフデータベースについて調べてみました。ここではネイティブなグラフDBであるNeo4j、本来はRDBであるMariaDBのグラフ計算用エンジンとして開発…

Scala(スカラ)の紹介

こんにちは、k_oomoriです。今回は、タイトルの通りプログラミング言語Scalaについて書いてみたいと思います。 1/俯瞰風景 早速ですが、Scalaの特徴を俯瞰していきましょう。 ・オブジェクト指向と関数型のハイブリッド言語である Scalaは、関数型言語とオ…

ラプラシアンの中に1人以上、ゼロ固有値がいる!

Introduction こんにちは、k_oomoriです。前回は、非負値行列因子分解という手法によって実際の広告配信結果から関連性があると思われる広告キャンペーンのペアたちを抽出する方法を紹介しました。しかし、そこに現れるキャンペーンは全てが互いに関連し合っ…

非負ッ値行列・ファクトリゼーション ~ 半群じゃないから難しくないもん!

Introduction こんにちは、k_oomoriです。今回は非負値行列因子分解 (Non-negative Matrix Factorization, 略してNMF) を用いたデータの解析について触れてみたいと思います。 まず最初に用語の定義として、「非負値行列」とは全ての要素が非負値(0以上の実…

とあるオープンソースの分散処理基盤 -Hadoop(ハドゥープ)-

Introduction - Hadoopとは? こんにちは、k_oomoriです。今回は、オープンソースミドルウェアのApache Hadoopを取り上げたいと思います。 コンピュータの性能は日々進化しているとはいえ、1台のマシンの性能にはおのずと限界があります。また、その時々で常…

PHPでもforkがしたい!

Introduction はじめまして、ADN事業部所属エンジニアのk_oomoriと申します。業務ではアドネットワークサービスnend(ネンド)においてPHPやJavaScriptのプログラミングからサーバソフトウェアあたりまでの領域を担当させていただいております。 さて最初の…