Screaming Loud

日々是精進

2012-01-01から1年間の記事一覧

Pythonで実装する類似度計算

A = {"みかん":5,"りんご":8,"ぶどう":2} B = {"みかん":5,"なし":8,"ぶどう":2,"もも":1} 辞書の要素は{単語:その出現頻度}という構成です.この2つのベクトルの類似度を計算する尺度を紹介する. PMIなど共起についての尺度は使わず,単純なベクトルの比較…

set型とlist型のイテレーション速度

set型とlist型のイテレーションによるスピードの違いを調べてみた. setiter = set(range(100000000)) listiter = list(setiter) test = "" import time #set型のかかった時間 start = time.clock() for a in setiter: test = a print time.clock() - start …

pythonでoptionを関数へ

pythonでコードを書く時,メインモジュールを使っていると思う. 自分はいつもそのメインモジュールの中にoption系を全部書いていた. option系って勝手に言ってるけど,要はコマンドラインでoptionをつけるモジュール. →15.4. argparse — コマンドラインオ…

ビタビアルゴリズムをpythonで実装してみた

ビタビアルゴリズムを理解も兼ねて実装してみました. # -*- coding:utf-8 -*- states = ("rainy","sunny") observations = ("walk","shop","clean","shop","walk") start_prob = {"rainy":0.6,"sunny":0.4} transit_prob = {"rainy":{"rainy":0.7,"sunny":0…

研究・コーディングを加速させる

研究・コーディングをしていて何をすればいいのか分からなくなってしまう時がある.そういう時ってのは,大体頭の中が整理できていない.複雑な問題の場合,頭の中だけだと片方を考えているともう片方が薄れるのでどっちがどっちかわからなくなる.頭の良い…

extbodyにおける文字化けの対処

extbody -- Blog&News本文領域抽出ツール手軽な本文抽出ツールなのですが,Unicodeにしっかり直しているのに文字化けしてしまう問題について.ソースを少し直すと大体直ります.ダウンロードしたソースのディレクトリに入り emacs ./extbody/extbody/PageInf…

GibbsLDA++-0.2のmakeのエラーについて

GibbsLDA++を使おうと思ってmakeしたら以下のようなメッセージが utils.cpp: In static member function ‘static int utils::parse_args(int, char**, model*)’: utils.cpp:69: error: ‘atof’ was not declared in this scope utils.cpp:72: error: ‘atof’ w…

mecabへの辞書追加(left-id.def でのエラー)

今回はmecabへの辞書追加でハマったのでそのメモとして残します.ほとんどhttp://fukushimu.blog.shinobi.jp/Entry/76/を参照しました. /usr/local/libexec/mecab/mecab-dict-index -d /usr/local/lib/mecab/dic/ipadic -u wikipedia.dic -f utf8 -t utf8 w…

現実に目を向ける

最近企業が求めるものにコミュニケーション能力が必ずと言っていいほど上位に上がってくる. http://sankei.jp.msn.com/economy/news/120730/biz12073014090006-n1.htm 経団連が30日発表した2012年4月入社の新卒採用に関するアンケート結果によると、…

カラオケでのシャウトについて

みなさんはカラオケに行くでしょうか? 私はカラオケが好きで,昔から色んな洋楽ROCKを中心に歌っていました.そこで壁にぶち当たったのはシャウト系の歌い方でした. 邦楽では,シャウト系はあまりメジャーではないのかそのような歌い方に関する記述が見当…

富士山に登ってきました

必要なもの ・雨具 山は天気が変わりやすいので必須です.濡れるとかなり体力を削がれるので. ・トレッキングシューズ 一応スニーカーでもいけますが,岩場が多いので滑り止めがあるトレッキングシューズ推薦です. ・杖 下りは邪魔ですが上りはかなり助か…

読書体験のもたらす意味

「読書をすることがいい」よくそう言われることがある. しかし,実際何がいいのか,よくわからない場合がある. それを自分なりに少し考えてみた.まず,知識を詰め込むよりも色々な体験をした方がいいとよく言われる. それは細かい知識に偏りすぎて,体験…

Tex/YaTex環境の作成 -Mac編-

Macportsをインストールする. MacportsはXcodeが必要なので,無い人はまずXcodeから.Macportsがインストールできたら とりあえずportをアップデートしておきましょう. sudo port selfupdate sudo port upgrade outdatedそこからは以下のページを参照し,…

Facebook

Facebook,自分はこれを自己顕示欲を顕在化したものだと認識している。 人間は少なくとも自己顕示欲があるので体裁のいいものをアップロードする。 それが,意見であったり何かの結果であったり. また特に多い写真の役割はこんなに交友関係があるぞ,という…

リスト内の最大値を見つける

最大の値を見つけるのは簡単だが,そのindexを取るのはそういえばどうやるんだっけ? と思い,少し調べて速度比較してみた. from itertools import count from operator import itemgetter from time import clock import random def func1(x): return x.in…

K-means

今回は"k-means"(k-平均法)を実装してみました. k-meansに関してはネット上でたくさん説明されています. 簡単に説明すると, 前提:クラスタ数は与えられている 1,適当に各データ点をクラスに割り振る. 2,各クラスタの重心を求める 3,各データ点を…

英語・読書の大切だとおもう理由

英語を勉強するのはすごい大切だと思う. 特に理系は. なぜか? それは最先端の技術というのはほとんど英語で記述されているからである. もはやそれは国としての言語ではなく,技術分野共通の言語として使われている. 逆に文系は世界にプロダクトを売ると…

Windowsのフォントは嫌だ!

自分はMacとWindowsを併用しているのですが,Windowsを使うたびにフォントの汚さに嫌気がさしていました, そんな中少し調べてみるとWindowsフォントを簡単にLinuxのように変えることが出来ました.特にputty上でフォントサイズを小さくしたときのフォントが…

KNPのインストールでつまずいたあなたに

KNP4.0のインストールにつまずいていた一人です. 原因はたくさんありました. CRFのlibtool関係でエラーが出る. これに関しては最新版のCRF++5.7を入れることにより解決します. TinyCDBが認識されない. aptでtinycdbをいれていると発生します. これは一…

言語処理で覚えるべきコマンドまとめ

man まずはこれ! 分からなかったらとりあえずmanで確認. grep,egrep 正規表現で指定した行を取得. egrepはextend-grepであるため,いろいろ出来る. head,tail これは頭から何行か,もしくは最後から何行かだけを取ってくるコマンド. 全部いらないからと…

辞書型におけるsetdefaultのTips

通常の辞書 dict.setdefault()は単純に値を返すだけかと思っていたら, 辞書の辞書みたいな使い方もできるんですねー. >>> dict = {} >>> dict.setdefault('a',{}).setdefault('b',3) 3 >>> dict {'a': {'b': 3}} 辞書の中にリスト,タプルなども可能です.…

msgpack-pythonのインストール

jsonよりも速いmsgpackのインストールでのメモ. msgpack-python0.1.12のインストールでのエラー msgpack-python0.1.12のインストールで以下のようなエラーが出てました. gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-protot…

コメントのススメ

プログラミングをするときにコメントアウトしてコードの可読性を上げるのは常識ですね. Pythonのコメントは「#」ですが,実は"""hogehoge"""で書いたほうが良いことを知りました. 今まで知らなかったことが,恥ずかしい話なのですが・・・.ではどうして""…

twitterとPython (tweepy)

pythonからtwitterに投稿するためのモジュールは2つある. python-twitterとtweepyだ. python-twitterが主流だが,使い始めた当時python-twitterのOAuth認証のドキュメントがなくてtweepyを利用していた. そこでtweepyの紹介をする. TLから取得 まずは簡…

多重配列における評価(min,max)

多重配列のソートはみんな色々やっている. 例えば sorted(x,key=lambda x:x[0]) #もしくは sorted(x,key=lambda x:x[0],reverse=True) と書けば配列の一つ目でソートが出来る.これはソートだけに限るものではなかった. >>x = [(50,taro),(43,jiro),(85,ha…

パーセプトロンをPythonでかいてみた.

機械学習の初歩ということでパーセプトロンを実装してみました. パーセプトロンとは2値識別器です.クラスは1イテレーションを表しています. 2次元以上でも計算できるようにしました. import sys from optparse import OptionParser import matplotlib …

自然言語処理を勉強するいいサイト

今回は自然言語処理を勉強するいいサイトを紹介してもらったので,書いておきます. 自分も始めたのですが,うまくヤル気を出させるような構成になっており,少なくとも学びたいと思えば長続きするのではないかと思えます. Coursera.org構成はどのようにな…

KNPの係り受け関係について

KNPを使ったときのまとめをメモ %juman | knp -tab # こっちがdefault %juman | knp -tab -dpnd'-dpnd'を付けたときの係り受け先の見方が分からなかったのでメモ. '-dpnd'をつけた場合,格関係の解析*1 を行わない. 係り受け関係の見方 KNP独自の基本句と…

勉強会は開催するべき

研究室で何かと忙しいと思います. しかし研究室で勉強会を開くことはメリットがあります. 質問力が鍛えられる. 質問するにはそれなりに理解が必要であり,さらに的を得ていなければいけません. 発表力がつく 勉強会で自分が発表者側にたてば,どうやれば…

subprocessとコマンドラインとリダイレクト

コマンドをPythonから入力するやり方. 基本 ls -lこんなコマンドは以下の二通り. import subprocess subprocess.call("ls -l",shell=True) とても単純.シェルを介してコマンドを実行している. もう一つはシェルを介さない場合. import subprocess subpr…