スロベニアに行ってきた話をする

自然言語処理データセット系の国際会議LRECに参加してきた。 立ち位置は微妙な会議なのだが、データセット(コーパス)という視点で見ると、間違いなく世界最大である。 自然言語処理という立ち位置で見ると、上から6番目くらいの会議だろうか。 (個人的に…

このブログの使い方をメモっておく

結論として、このブログはポエムを書くブログにすることにした。 元々は技術ブログとして始めたのだが、その立ち位置はすでにQiitaに移ってしまっている。 ぼくもQiitaのほうが使いやすいし、他の人への役立ち度もQiitaのほうが大きい。 では、はてなブログ…

キモオタがやってみるデータサイエンス〜その3:ミスコン支援アプリを作ってしまった話〜

きょうはこんなこと書くよ ミスコン出場者の相関関係がわかるアプリつくったよ ついでだから、Mr用にも作ってやったよ。 みんな投票してね♡ テクニカルにはこんな内容だよ 文書データを次元圧縮して、相関図にした話 python/bokehを使って、簡単にインタラク…

キモオタがやってみるデータサイエンス〜その2:RBMでミスコンっぽい顔を知る〜

この記事ではこんなこと書くお RBMで特徴量の学習をしてみる pylearn2を本格的に使ってみる 記事の本文だお どうも、キモヲタです。 さて、前回はDeepLearningで共通顔画像の抽出と題してやってみましたが、あまりうまくいきませんでした。*1 さて、前回はCh…

キモオタがやってみるデータサイエンス〜その1:DeepLearningでミスコンっぽい顔を知る〜

注:この記事はキモヲタがキモヲタ同業者のために書いたとぉってもきも〜い記事です。それ以外の方は吐血するかもしれないので気をつけてくださいね♩ こんばんは。キモオタです。ブヒブヒ さて、10月になりましたね。10月といえば、そろそろ学園祭のシー…

クラスの内部で並列処理を利用したメソッドを利用する

やりたいこと pythonクラスで、並列処理を利用したメソッドを実装したい。 つまり、classの中で、multiprocessing.Pool を利用したい。 しかし、普通のやり方ではできない。そこで、ちょっとした工夫が必要になる。 ※ ただし、multiprocessing.Process なら…

Rスクリプトの実行パスを取得する

R

やりたいこと Rスクリプトでスクリプトファイルが存在しているパスを取得したい。 pythonでいうとこの__file__を実現したい。 もうちょい踏み込んだ説明 なんでかっていうと、コマンドラインインターフェースだけ独立させて存在させたいわけですよ。 私、分…

プリキュアとセーラームーンはどちらの方がサザエさんに近いのか?

この記事ではこんなことを書くよ テキストマイニング的に次元削減とプロットする話 t-SNEとかいうイケてる名前のアルゴリズム プリキュアとセーラームーンはどっちの方がいいか はじめに 計算機分野に所属する人たちは時々、本当に間抜けなことを真面目に取…

SPARQLで人類の知にアクセスしよう

NLP

やりたいこと DBpediaにアクセスして、人類の英知を我が物にしたい。 どうやって解決するか? SPARQLをマスターする。 DBpediaはRDFモデル(正確にはOWL)で記述されているデータである。 データの実体はXMLで記述されるが、データを効率良く取得するには、ク…

Dockerで処理をまとめておく

やりたいこと 処理をまとめて簡単に動かせるようにしておきたい。 環境設定とか毎回するの面倒なので、コマンド一発で動かせるくらいにしておきたい。 解決策 Docker使う。 ソースコードを動かせる状態にしておいて、Dockerの仮想環境の中で稼働させる。 そ…

文書分類タスクでよく利用されるfeature selection

"Bias Analysis in Text Classification for Highly Skewed Data"(Lei and Huan)を読んでいて、「文書分類タスクでよく使われるfeature selectionは4つある。Information GainとChi-squared testとOdds ratioとBi-Normal Separationだ」みたいなことが書い…

MacでKH coderを動かす

やりたいこと MacでKH coderを利用可能な状態にしたい MacはOS X Yosemite 解決法 Macをやめる もう少し噛み砕いて言うと、Windowsの仮想マシンを立ち上げて、Windows内でKH coderを利用する やるべきこと 1 Virtual Boxを利用できる状態にする 特に詳しい説…

ggplot2で日本語入りのグラフが入ったhtmlレポートメールをサーバーから送る

R

やりたいこと ggplot2で日本語を利用できるようにする 前提 サーバーでRを実行している レポートhtmlを作成している レポートのグラフ中に日本語が含まれる ggplot2ではデフォルトの設定では日本語はサポートされていないので、フォントの指定が必要。 でも…

早く、簡単に共起語ペアの頻度を数える

やりたいこと 共起語ペアのカウントを取りたい。 単に基礎集計をやりたいだけなので、matrixを作る必要はない。 解決策 タプルで共起語ペアを作って、カウントする 手順は 共起語のタプルを作って、リストに放り込んでいく collection::Counter.most_common(…

MeCabの制約付き解析モードを利用する

MeCabの制約付き解析モードを利用する やりたいこと 標準の辞書だけだと、どうしても不要な単語まで分割してしまう。 かといって、辞書ファイルの内容をいじるのは割と手間がかかる作業だ。 そこで、「制約つき解析モード」を利用することにした。工藤さんに…

USERS 顧客主義の終焉と企業の命運を左右する7つの戦略 を読んだ

「USERS 顧客主義の終焉と企業の命運を左右する7つの戦略」を読んだ USERS 顧客主義の終焉と企業の命運を左右する7つの戦略作者: アーロン・シャピロ,萩原雅之,梶原健司,伊藤富雄出版社/メーカー: 翔泳社発売日: 2013/09/03メディア: 単行本(ソフトカバー)…

nltkでタプルのbigramカウントをする

やりたいこと (word, POS)のタプルの状態でbi-gramのカウントを取りたい 解決法 nltkで普通にできた。 import nltk list_input = [('I', 'Noun'), ('feel', 'Verb'), ('happy', 'Adj'), ('You', 'Noun'), ('feel', 'Verb'), ('happy', 'Adj')] corpus = nltk…

スゴいと噂のsparkを動かしてみる

やりたいこと sparkとかいう分散処理系の何かがスゴいらしいので、とりあえず動かしてみたい sparkって何ができるの?? 一言「分散処理」 ただ、分散処理でも、Hadoopと違って、ストレージに保存せずにon memoryで分散処理を実行できる いちいちストレージ…

sbtでプロジェクト管理をする話

やりたいこと scalaのプロジェクトを管理したい。 (なんだかよくわからないけど、みんながsbtを使っているので、自分も使ってみたい。) やってみたこと sbtのインストール macなら、 brew install sbt まあ、公式マニュアルの通りなんですけどね。 sbtで管…

macでtreeコマンドを使う

やりたいこと macのコマンドラインでtreeコマンドを使う 解決策 まずはbrewでtreeをインストール % brew install tree 特定の階層数で制限をつけて表示するときは、--dirsfirstと-L 階層数のオプションをつけて実行する。 % tree -d --dirsfirst -L 2 試しに…

マダガスカルという国に行ってきたーその4(マダガスカルという国とマダガスカル人という人々)

滞在中に見たり、聞いたりしたマダガスカルという国とマダガスカル人という人々について書いていこうと思う。 ただし、あくまで個人的な見解であり、いわば何の根拠もないクソ以下の感想も混じっている。 なので、クソみたいな雑記と解釈しながら読んでいた…

マダガスカルという国に行ってきたーその3(郊外の自然公園)

やはりマダガスカルというと、イメージするのは、野生動物と豊かな自然だろう。 ということで、郊外の公園にも行ってきたことも書いておく。 もともとの目的地だったところ 本当ならば、友人と「ムルンタヴァ」という街に行く予定だった。 しかし、当日の朝…

nltkでbigramを共起語カウントする

やり方を忘れてたので、復習にやってみた。 入力はリスト In [49]: tokens = ['I', 'am', 'a', 'stupid', '.', 'You', 'are', 'a', 'stupid', '.', 'he', 'is', 'a', 'stupid', '.'] In [50]: corpus = nltk.Text(tokens) bigramクラスのインスタンスができ…

マダガスカルという国に行ってきたーその2(首都アンタナナリボ)

現地で行った場所を、つらつらと述べていく。 アンタナナリボ 首都アンタナナリボ 通称"Tana"(タナ)と言われ、現地の人も"Tana"と呼んでいる。 レミューパーク タナの郊外にある。 その名の通り、レミューが飼育されている公園。 フランス人と日本人の夫妻…

マダガスカルという国に行ってきたーその1

マダガスカルという国に行ってきた。 良い国だったので、良さを少しでも知ってもらうため、記事を書くことにした。 準備編 旅行日程について 休みを2015年2月3日から2月13日まで確保できたので、この期間で旅行に行くことにした。 後述もするが、結…

はてなブログに戻した

記事を投稿する先をはてなブログに戻した。 しばらくレンタルサーバーを借りて、movable typeでブログを作成していたんだけど、はてなブログを超えるメリットをあまり感じなくって、戻した感じです。 movable typeで作成していた記事はexportが簡単にできた…

scalaでmapを連結する方法

やりたいこと mutable.Mapが複数あるとして、このMapを連結してしまいたい。 PythonでいうところのUpdateメソッドを利用したい。 書き方 ++=メソッドを利用する。 val Map1 = mutable.Map\[String, Int]() val Map2 = mutable.Map\[String, Int]() Map1 += (…

scalaの命名規則

あるとき、ふと「そういえば、scalaの命名規則ってどうなっているんだろう?」と思ったので、調べてみた。 すると、割りと簡単に見つかった。「キャメルケースを使いなさい」とのことだ。 原文をここからもってくると、 Scalaは「キャメルケース」命名規約を…

scalaのクラスを別ファイルに分離

やりたいこと コードを別ファイルに分離したい。 pythonでいうところの、モジュール化を行ないたい。 どうやって解決するか クラスをパッケージ内に定義して、別ファイルに分離する。 別ファイルに定義したクラスの書き方 package パッケージ名 class クラス…

Witten-Bell smoothingのおぼえ書き

NLP

witten-bell smoothingを実装することがあったのだが、「えっ、何するんだっけ?」となってしまったので、忘れないうちに書いておく。 そもそもスムージングとは? 確率的言語モデルを使うときに役に立つ便利道具。 もっともベーシックな言語モデルは学習コ…