About connecting the dots.

data science related trivial things

PySpark で書き出しデータのパーティション数を調節する

小ネタなんですが,なかなかググっても見つからず,あれこれと試行錯誤してしまったので,メモがわりに.要するに,gzip 圧縮してあるデータを読み出して,年月ごとにデータをパーティション分けして,結果を parquet 形式の 1 ファイルで書き出す,みたいな…

AWS の Deep Learning AMI で MXNet のバージョンをあげる

最近 AWS で Deep Learning 周りのモデルを試してみたりしています.Deep Learning AMI があるので,自分で CUDA や cuDNN や各種フレームワークを入れる必要がないというのが一番大きいです*1.10 分もあれば,P2 インスタンス上で Jupyter notebook 使って…

RStudio + sparklyr on EMRでスケーラブル機械学習

前回に引き続き分析環境ネタ第2弾*1.今回はEMRでRStudioを立ててみます. RStudioの構築 やり方自体は,AWS Big Data Blogにまとまっているので,別に難しくはなかったり.RStudioとか関連コンポーネントは,例のごとくS3に便利スクリプトがあるので,これ…

Spark on EMRでZeppelinを使ってML Pipelineを試してみる

Sparkの最新状況をアップデートする意味も含めて,EMRで一通りの挙動を試してみたので,備忘録的にまとめておきます.慣れると簡単で便利なんですけど,それまでは結構ハマりどころが多いんですよねぇ,このあたり. Zeppelinにアクセスするまで AWS Big Dat…

Spark2.0でジョブのアウトプットを高速にS3に書き出す

ここのところEMRでSparkを触ってます.まぁやってるのは,主にデータのparquet+snappyへの変換処理なんですけどね.EMRといえばHDFSではなく,EMRFS経由でS3に書き出すのがモダンなやり方,ということでそれを試してます.で,いろいろ試してて以下の2点の問…

書評: StanとRでベイズ統計モデリング

今回は書評エントリです.日本のStan界隈の顔である @berobero11 さんが統計モデリング本を出版し,ありがたいことに献本いただきました*1.ようやっと一通り読み終えた*2ので,感想がてら本の魅力について述べていきたいと思います*3.StanとRでベイズ統計…

Fitbitから取得した心拍データで時系列の異常検知を試してみる

井出先生の「異常検知と変化検知」を読んで,自分でも試してみたいと思ったんですが,あいにくちょうどいい時系列データが手元にないなーと思ってました.そんな折,データサイエンスLT祭りの発表の中に,Fitbitデータを可視化するものがあって*1,これはち…

Ansible経由でDockerイメージを作ってみる

これまで仮想化とかクラウドとか,そんなにお仕事で触ってなかったこともあって割と放置気味だったのだけど,さすがに少しは使えないとねということでちょいと試してみましたというお話.以前に依頼を受けてWebアプリを作ったことがあって,これを1年くらい…

Fundamental Models for Forecasting Elections から考える,日本の選挙における当選者予測方法

参議院選挙が終わったと思ったら今度は都知事選と,まさに選挙の夏ですね.選挙といえば,20時の投票〆切と同時に発表される,マスメディア各社の当選者予測が風物詩です.開票率0%で当確が続々打たれる様は,まさに統計学+社会調査の面目躍如という感じがし…

マーケットデザインと受入保留アルゴリズム

最近,ブログエントリを書くときの枕が読んだ本のことが多いですが,今回も御多分に洩れずであります*1. 現実の中でのマーケットデザイン つい先日まで,以下の本を読んでました.マーケットデザインという分野を過分にしてしらなかったんですが,大元はゲ…

上司をマネジメントする (Managing your boss)

先日のETLの記事の中でも軽く触れたんですが,ホントの意味でデータが組織で活用されるためには,組織全体がデータを使って意思決定をする組織構成になっていないといけない,というのが最近強く感じることです.キンボール先生の本では,このあたりビジネス…

ビッグデータの成熟期に改めて見直したいETL

Hadoopが出てきてから10年,ビッグデータという言葉が流行り始めてからでも5年以上が経ち,2016年現在では,Hadoopエコシステムを使ったデータ活用が当たり前のものとしてあります.とはいえ巷に出回っているビッグデータ活用事例というのは,綺麗な上澄みだ…

optim()で階層構造を持った多変数の最適化をしてみる

最適化周りの処理について実装する必要が出たので,optim() を調べて使ってみましたよ,という話.optim() って関数の形で表わせさえすれば,結構なんでも自由にできるっぽくて便利です.特に,階層的な構造を持ったデータの最適化もできるのは大きいです. …

glmnetで正則化を試してみる

タイトルの通り,よく考えたら今までL1/L2正則化を知識としては知ってるけど,実際に試したことはなかったことに気がついたので試してみましたよという話.L1/L2正則化にの理屈については,TJOさんのエントリとか,unnounnoさんのエントリとかをみてもらえれ…

RStudio Serverの更新とロケール設定

RStudio Serverを久しぶりに使おうと思ってアクセスしたら,なんかバージョンが古すぎてggplot2もdplyrもtidyrも入れられない有様だったので,アップデートをしましたよの備忘録.元バージョンはR3.1.0にRStudio0.97あたり.OSはCentOS6.5でした.Rについて…

データビジネスに関して2015年に読んだ本

気がつけば2015年も大晦日で,早い一年でした.ということで,恒例の今年読んだ本紹介をしておきたいと思います.ちなみに昨年と一昨年のはこちら.各セグメント毎に,個人的に参考になった順,面白かった順に並べています.マーケティングとマネジメントが…

HiveでISO8601形式の時刻データを扱う

連日イカに潜っているため,すっかりご無沙汰になっている当ブログです.今回は小ネタ.HDFS上に保存しているデータの日付カラムがISO8601形式だったりすることがよくあるんですけど,これってHiveのtimestamp型で読み込めないんですね.蜂初心者なので全く…

勾配ブースティングについてざっくりと説明する

最近xgboostがだいぶ流行っているわけですけど,これはGradient Boosting(勾配ブースティング)の高速なC++実装です.従来使われてたgbtより10倍高速らしいです.そんなxgboostを使うにあたって,はてどういう理屈で動いているものだろうと思っていろいろ文…

Optimizelyのstats engineによる逐次A/Bテスト

ABテストといえば,だいぶ前に有意とか検定とかそのあたりで,データ系の界隈がいろいろと盛り上がっていたのが記憶に残っているトピックなわけですが,今年の1月にABテストの大手Optimizelyのエンジンがリニューアルされてました.これがなかなか興味深いん…

stackingを試してみた

つい先日,stackingについての以下の記事が話題になっていました.ランダムフォレストと他の機械学習(or統計)を組み合わせて使う - じじいのプログラミングこのあたり,私自身は試したことがなかったので,実際に試してみましたよというお話. コード Rで…

CaffeのImageNetで特徴量抽出器を動かすまで

前回でCaffeがインストールできたので,とりあえず今回はImageNetの特徴量抽出器を使うまで.Yahoo! JAPAN Tech blogの記事を参考にやってみたら,ハマりどころがたくさんあったので,そのあたりを共有しましょうの会です.ハマりどころを抜けるのに参考にし…

HBase徹底入門

ClouderaさまよりHBase徹底入門を献本いただいたの*1で,だいぶ遅くなりましたが感想をまとめておきたいと思います.HBase徹底入門 Hadoopクラスタによる高速データベースの実現作者: 株式会社サイバーエージェント鈴木俊裕,梅田永介,柿島大貴出版社/メーカ…

実装して理解するオンライン学習器(2) - Confidence-Weighted

前回からだいぶ間が空きましたが,その間なんもやってなかったので,いい加減まとめてエントリにしておきます.本当はSCWまでやってからにしたかったんですが,あきらめてCWだけで...実装して理解するオンライン学習器(1) - PassiveAggresive - About connec…

Mac OS X 10.10にCaffeをインストールするまで

メモ代わりに手順まとめておきます.基本は install_caffe_osx10.10.md と CaffeをOS X 10.10 にインストールした // ichyo.jpを参考に,細かい修正を幾つか,という感じです.マシンはmac mini late 2012(core i7 2.3GHz quad core)です. CUDA CUDAとドラ…

「熊とワルツを」のリスクシミュレーションをRで実装した

最近「熊とワルツを」というプロジェクトにおけるリスク管理についての本を読みました.本の中にでてくるリスク管理シミュレーションをR実装しました,という話です.熊とワルツを - リスクを愉しむプロジェクト管理作者: トム・デマルコ,ティモシー・リスタ…

dplyrを使ったdata.frameの前処理を関数化する

表題の通り,dplyr使って前処理する際に,それを関数化する方法のメモ.ユースケースとしては,ちょっとだけ条件変えてデータフレーム自体を何度か出し直すってとき用. 関数 まるっとフィルタ用のconditionと,select用のvariablesを引数で渡します*1.ポイ…

BW変換(Burrows Wheeler Transform)を書いた

「高速文字列解析の世界」を読んでて,BW変換のところがよくわからなかったので,実際に書いてみました.高速文字列解析の世界――データ圧縮・全文検索・テキストマイニング (確率と情報の科学)作者: 岡野原大輔出版社/メーカー: 岩波書店発売日: 2012/12/27…

データビジネス・分析・開発に関して2014年に読んだ本

年末なのでぼちぼち今年の振り返りをします.ちなみに去年のはこちら.データビジネス・分析・開発に関して2013年に読んだ本 - About connecting the dots.データブジネス,データ分析,ソフトウェア開発の3カテゴリに分けて,それぞれについて上から読んで…

PythonのnimfaでNMFを試す

PythonでNMFやるには,nimfaというパッケージを使えばよいらしいです.とりあえず使うだけなら,適当なnumpy行列vecを用意して,以下のように関数に投げてあげます. factor = nimfa.mf(vec, seed='random_vcol', method='nmf', rank='5', max_iter=10) res …

マンションポエムで新築マンションをクラスタリング

今回は自然言語処理の話です.それも若干不自然な言語のマンションポエムが対象になります.マンションポエムというのは,工場萌え*1の著者大山さんが提唱している,マンション広告に入っている詩的なコピーのことです*2.具体的にはこんな感じのやつです*3…