巨人の肩の上に登る

先人の積み重ねた発見に基づいて、なにかを発見しようとすることを指す。

Python

CaboChaをPythonで使う(Mac OS X)

忘れるのでメモ。 基本的に、公式サイト通り。 CaboChaのインストール ここから、該当するソースをダウンドロード。 事前に下記三点をインストールしている必要があります。 CRF++ (0.55以降) MeCab (0.993以降) mecab-ipadic, mecab-jumandic, unidic のい…

Python で word2vec を使ってみる

画像の出典 word2vecとは 単語のベクトル表現を獲得する一つの手法です。 word2vecの特徴としては、意味的な計算が可能な表現であるということです。 例えば次の式のように、kingのベクトルからmanのベクトルを差し引いたベクトルにwomanのベクトルを足し合…

MavericksでPythonからMariaDBを使ってみる

Mac OS X Mavericksで、MariaDBを使ってみた。 MariaDBとは MariaDBは、MySQLから派生したOSSなリレーショナルデータベースです。 細かい話は下記の記事を参照されたい。 MariaDB - Wikipedia MySQLとMariaDBの違い一覧 - 技術メモ置き場 MariaDBのinstall …

PythonとFlaskでメール送信と簡易SMTP Server

flask-mailでメールの送信 Flask extensionのflask-mailを使うと、簡易に実装できます。 インストール $ sudo pip install Flask-Mail 使い方 まずは、Mailのインスタンスを作成。 from flask import Flask from flaskext.mail import Mail app = Flask(__na…

PythonでN-gram

大学の課題で出たので,簡易に実装してみた. N-gramとは 自然言語処理の素性として良く使われる数量. 1-gram(uni-gram)だと,単語の頻度.2-gram(bi-gram)だと連続する二つの単語の出現頻度,3-gram(tri-gram)だと連続する三つの単語の出現頻度である. We…

遺伝的アルゴリズムをやってみた

遺伝的アルゴリズムを Cython で実装してみたGithub. 遺伝的アルゴリズムとは ざっくりと説明すると, 初期値として,N個の個体を無作為に生成する 評価関数を用いて,上位のM個の個体を選ぶ(エリート主義) 一定の確率に従い,交差や突然変異を行い,N個…

Python で Stanford Parser を用いた構文解析

【13/10/05】 追記 relwellさんのforkのが良さそう. multi-threade で,安定してる気がする. Stanford のページに,多言語のラッパーが記載されています. 基本的に,Github のREADME通りで問題ないのですが,一応メモ. Stanford Parser の Python ラッパ…

Pythonにおける配列生成の速度比較

序論|配列生成における生成速度 n 個の x からなるベクトル,あるいは,連続する整数 x | 0, 1 .... , n に対して、f(x) の値から配列を生成したいというケースが多々発生する. このとき,内包表記,map関数,などどういう手法をとればよいのかを検討して…

Pythonにおける2重ループとitertoolsの速度比較

バブルソート 今回はバブルソートを用いて比較を行った. まず,バブルソートのアルゴリズムを以下に示す. リストの先頭から順に n 番目と n+1 番目の要素を比較する. 要素の順序が逆であれば,入れ替える. この操作をデータ数 - 1 回繰り返す. 最悪計算…

Python でワンライナー

Python でワンライナーをやってみる. c オプションを用いて,テキストを渡すことで実行できる. $python -c "print 'Hello World'" $Hello World 今回は,以下のようなテキストファイルから数値を取り出し, その数値を2倍する処理を実装することを試みま…

Python Docstring の書き方

Python では,関数のはじめに docstring を3重クオートを用いて記述する. いつも,引数・戻り値などの書き方を悩むのですが,良さそうなものがあったのでメモ. Dive Into Python 3 からの引用 def approximate_size(size, a_kilobyte_is_1024_bytes=True)…

視線移動の予測ツールを作ってみた

現在,視線移動予測の研究をしてるんですが,応用の1例として,インターフェースやデザインの視線分析というものを開発しています. 提案しているモデルでは計算量が大きすぎるので,α版として,ベーシックな顕著性マップを web tool 化してみました. (最…

Django

Django のチュートリアルを試してみた. Django ドキュメント1.4(和訳) Django の名前の由来は,Django Reinhardt というベルギーのギタリストだそうです. 有名な「開発のプロが教える標準Django完全解説」の表紙の人みたいですね. チュートリアル通りや…

任意の範囲に正規化

画像処理系のプログラムを書いてるときに,計算結果を表示するために良く使うのですが,毎度アルゴリズムを忘れてしまうのでメモ. 仕様 1)begin ~ end の範囲に2次元配列を正規化 2)値が一様なときは,(begin + end) / 2 の値を持つ一様な2次元配列を…