データ分析エンジニアのブログ

日常のことからプログラミングや機械学習まで@六本木

データ分析

シリコンバレーのIT企業が利用しているA/Bテスト手法まとめ

いま注目すべきシリコンバレーの有名なIT企業は新規のデザインや機能が有効かどうかを検証するためにA/Bテストを行っています。 その一方で、日本の企業も含め、A/Bテストを本番環境で導入している企業は非常に少ないです。 加えて、日本で言われているA/Bテ…

デモグラフィック属性(性別・年齢)を予測する論文を読んだ

読んだ論文 Demographic Prediction Based on User’s Browsing Behavior Microsoftの論文(WWW2007) 引用数は145(2016/03/20時点) Abstract ウェブサイトの閲覧データからユーザーの年齢と性別を推定する 提案手法は次の3つのステップから成る デモグラ既…

オンライン学習とPassiveAggressiveアルゴリズム

今回はオンライン学習と呼ばれる機械学習の学習方法についてです。 PassiveAggressiveというオンライン学習のアルゴリズム(以下PAアルゴリズム)はGmailの優先トレイにも使われているのですが、2006年に発表された比較的新しい手法だからでしょうか、、ネッ…

ネットワークの中心性の話

久々のブログ更新です。 最近は、卒論と機械学習やアドテク周りの勉強をやっていて中々ブログを書く時間が取れていませんでした。 卒論ではTwitterにおける情報拡散の研究をしているので、 基本的なネットワークの特徴量である、中心性の話をしたいと思いま…

PythonでScrapyを使ってクローリングをしてみる

前回はurllib2というモジュールを使った簡単なスクレイピングの方法を紹介しました。 今日はScrapyというクローリング+スクレイピングのフレームワークを使って、 ウェブから情報を取ってくる方法をご紹介します。 フレームワークな分、以前紹介した手法よ…

【Python】urllib2とElementTreeで簡単スクレイピング

こんばんは! 今回はurllib2とElementTreeというモジュールを使った、 Pythonでの簡単なスクレイピングの方法について書いてみようと思います。 クローリングのような大規模なものになると、 scrapyやBeautifulSoup、Mechanize等のモジュールを使った方が楽…

AICとBICについて

最近、重回帰分析やx-means法について調べていて、 AICとBICという指標について気になったので、メモ代わりに。 簡潔に言うと、この2つの値はモデルの当てはまりの良さを表すために使われています。 定義としては以下の式で表されます。 AIC = T * log(s^2) …

ログアウトしてもジョブを継続する方法

こんにちは。 研究などで時間のかかるプログラムをサーバーなどで 実行しておきたいときがあると思います。 そんなときに普通にssh接続してプログラムをコンパイルしてログアウトすると プログラムは終了してしまいます。 これを解決するためにはLinuxのnohu…

PythonでURLのプロトコル(http://,https://)を消す方法

こんにちは。 最近はPythonを使ってツイートの分析をしています。 具体的にはクラスタリングやtf-idfなどの手法を使って、クラスタリングした後に そのクラスターの特徴語を抜き出すということをやっています。 tf-idfの結果を見ると、 ところどころhttpやコ…

Python/Numpyでベクトルのユークリッド距離を求める

PythonのNumpyを使えば、次元によらずに ベクトル同士のユークリッド距離が簡単に求められます。 方法1 >>> import numpy as np >>> np.linalg.norm(a-b) 方法2 >>> import numpy as np >>> np.sqrt(numpy.power(a-b, 2).sum()) おまけでScipyを使ってコサイ…

Google Big Queryについて調べてみた

最近話題となっている低価格で大量のデータに高速にクエリを 実行することができる、Google Big Queryについて調べてみました。 特徴、導入方法、使用方法、価格について簡単にまとめています。 特徴 特徴としては、クエリを非同期でバックグラウンドで実行…

Pythonの実行結果をブラウザに表示する(MAMP)

今日、CGIスクリプトとして PythonをWebサーバ上で動かすということをやってみました。 MAMPのローカル環境で作業しています。 ・まずはMAMPのapacheの設定apacheの設定ファイルでCGIを有効化し、.py拡張子を追加する /Applications/MAMP/conf/apache/httpd.…

ビッグデータの正体

結構前から話題になっていて、ずっと読みたいなと思っていた本。 研究でそれっぽいことをやるので、まず技術を学ぶより、 外観をざっとつかんだ方が良いと思い購入してみました。 まず一言感想を述べるとやっぱり読んでよかった。 この本では、ビッグデータ…

tf-idf法で単語の重み付けをやってみる!

前回Macにmecabを入れることができたので、 tf-idf法という手法を使って文章内の単語の重み付けをやってみました。 ソースコードはgithubに公開しています。 https://github.com/junishitsuka/python/blob/master/tf-idf.py こちらの式を参考にtf-idfについ…

macにmecabを入れてpythonから使えるようにするまで

今日は形態素解析によく使われるmecabをMacでインストールしました。 homebrewでのインストール手順ですが、 今日やった手順を残しておきたいと思います。 1. まずは検索 $ brew search mecab => mecab mecab-ipadic mecab-unidic 2. mecabのインストール $ …

Pythonを始めて1週間でやったこと

こんばんは。 研究のため、1週間ほど前にPythonを始めたものです。 参考程度にこの1週間でやってきたことを軽くまとめていきます。 1. ドットインストールのPython入門 (全24回)で全体像をつかむ 僕は新しい言語や技術を学ぶとき、 必ずと言っていいほどドッ…

研究室の配属が決まりました!

実際に決まったのは1ヶ月くらい前なんですが、研究室の配属が決定しました。 就職も決まっていて、それほど研究に身を入れるつもりもなかったので 記事には書かなかったのですが、少し研究を頑張ってみようと決意したので... ほんとは4月から内定先でアルバ…