Emacs:org-modeとhowmを一緒に使う

・インストール org-modeは最近の(emacs24)は標準で付属している.howmは以下でインストール(/usr/share/emacs/site-lisp/howm以下に入る) $ wget http://howm.sourceforge.jp/a/howm-1.4.2.tar.gz $ tar howm-1.4.2.tar.gz $ cd howm-1.4.2 $ ./configure…

Rのigraphでグラフ処理

BOOST Graph Libraryにチャレンジするもコンパイルエラーが読みにくくて挫折. Cからも叩けるということでigraphを使う.1.インストールの準備 CRANに入っているのでinstall.packageでplyrと依存関係があるが,2015/10/20現在だとUbuntu14.04のRはバージョ…

データ解析の前準備 in R

平均やばらつきをみたり,何か解析手法を適用する前にデータ自体をある程度把握しておきたい. 難しそうで,かっこいい手法やるよりも,まずはしっかりと基本的な特徴を眺めてみることも重要. そこで,一般的にやることをRでさくっとやるためのテンプレート…

主成分分析(PCA)

一般事項 ・多変量解析において,もともとの説明変数(X)では現象が捉えにくい時に,説明変数を変換して新たな軸(説明変数Z)で事象を捉えようとする方法. ・新たな説明変数は元の説明変数の1次結合として表現される.(Z1=a1x1+a2x2+...anxn). ・寄与率…

EMアルゴリズム

# 何をするものか? 最尤推定のアルゴリズム,特に潜在変数Zを含むようなモデルを仮定した場合の逐次漸近的に最尤推定を行うアルゴリズム. 大まかにはパラメタθを固定して,その固定したθの場合に対して潜在変数Zを最適化(Eステップ),次にZを最適化した…

Rubyでのスクレイピング

Nokogiriを使ってのWebスクレイピングの流れ.open-uriでページを取ってくるパタン require 'open-uri' require 'nokogiri' url = 'http://www.yahoo.co.jp' charset = nil # 文字コードも読み込み時にセットする # URIをファイルのように扱える # 閉じ忘れ…

ボルツマンマシン

・無向グラフなニューラルネットワークで,確率的に発火する,というのがボルツマンマシンみたいだ. ・制限付きボルツマンマシン(RBN)ではユニットを幾つかのグループに分けて,グループ内での接続はしない形態.例えば2つのグループに分けると2部グラフ…

線形代数のメモ

よく使うけど,よく忘れるので要点を適時メモ.絶対に忘れちゃダメなこと 一般事項 ・A≠0,B≠0の時でも,AB=0になり得る.行列が写像であることを考えると,Aである軸に関して潰して,Bで別の軸に関して潰してBA合わせて0に潰す,みたいなイメージ. ・…

幸福論メモ

幸福論,人生訓などの自分の咀嚼.パラパラ読んだ時にその都度メモ.一言まとめ 今,幸せだという認識を持ち,意識的な笑顔で,今やれる得意なことをやり,人を不幸にしない. アラン ・幸福な状態でいることが幸福への道.幸福な状態への機械的に入る方法と…

線形回帰,線形モデル

# 一般メモ 一次式の回帰を線形回帰というのではない.基底関数の線形結合で回帰されるモデル一般が線形モデル.だから関数自体は非線形になりうる. 最小二乗法による回帰係数の最小化は,各点の誤差の分散を最小化することを意味する(らしい).よって,…

ベイズ関連

ベイズ的な考え方がよくわからない.学習のメモ# 一般メモ ベイジアン的手法っていうのは,データにしたがって逐次確率を更新していくという手法だと思う.ベイズだとちょっとずつ回帰式が変化するのでまるで学習しているように見えるけど,最終的には一つの…

Eigenメモ

1.インストール ヘッダの入ったディレクトリをg++の標準検索パスに入れるだけ $ wget http://bitbucket.org/eigen/eigen/get/3.2.5.tar.gz ./tmp $ cd tmp $ tar xvzf 3.2.5.tar.gz $ sudo cp -r eigen-*/Eigen /usr/local/include/ 2.使い方のメモ チュ…

ガウス過程(ノンパラメトリック回帰)

ベイズ最適化などでは回帰式としてガウス過程(GP)を用いる場合が多いようだ.ということで勉強. パラメトリック回帰ではモデル式を仮定して,モデルが最もフィットするようにモデルのパラメタを推定する.”最もフィットする”は実際には最小二乗誤差や最尤…

c++メモ

usingは消せないのでヘッダには基本的に書かない.(ヘッダをインクルードしたファイルでもusingが有効になるから) メンバ関数(の末尾)にconstを付けると,そのメンバ関数はメンバ変数を変更しないことをコンパイラに伝える. ファイル末尾まで一気に読み…

乱数生成

c++の場合 ・要点 ・rand()は使わない.理由は(1)周期が短い,(2)偏りがあること ・代わりに,c++11で追加されたを使う. 乱数生成方法が色々あるが,基本は(1)HW乱数生成器でシードを作って, (2)それをメルセンヌツイスターのシードに与え,(…

強化学習

一般メモ 大枠は動学的最適化,つまり,目的関数がある関数の積分形式(または総和)で与えられ,目的関数を最大化する関数を求める問題の解法だと思われる. 強化学習の特徴として試行性(試行をしながら学習すること.探索と利用のトレードオフの話など.…

ディープニューラルネットワーク

過学習対策 ・重みのノルムを目的関数に入れることで重みが小さくなるようにする. オンライン学習のパーセプトロンと同様に,L1ノルムだと疎な解に落ちやすくなり, より有効な場合が多い. ・重みの上限を制約として加える ・ドロップアウトと呼ばれる方法…

多重共線性のメモ

意味 説明変数間に高い相関がある場合に,それら相関の高い説明変数群で 作られる回帰モデルの構築に問題が発生すること.具体的な問題は? 具体的な問題点 ・係数の符号の理解が困難になる.つまり,一つ一つの説明変数として 意味を考えることの合理性が弱…

オンライン学習

オンライン学習全般 ・データを保持しなくて良いという性質が有効なシーンがある. →(1)セキュリティ,プライバシーの問題上データを保持することができない場合 (2)データが多いために保持することが困難な場合 ・汎化性能の評価などが比較的容易(リ…

gnuplot memo

インストール gnuplotだけだとx11で描画されないので注意 $ sudo apt-get install gnuplot gnuplot-x11 テンプレート set title "y=sin(x)" # グラフタイトル set grid # grid表示 set size ratio 0.5 # x:y = 1:0.5 set xl "x-axis name" # x軸名 set xl "x…

SDL memo

インストール $ sudo apt-get install libsdl2-deb libsdl2-dbg libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev libsdl2-net-dev

Cmakeメモ

使い方 カレントディレクトリにCmakeLists.txtを用意して,下記コマンドを実行. $ cmake . # "."はビルドディレクトリ.これでMakefileが生成される $ make makeを実行しても何も出力されないのはMakefileに$(VERBOSE).SILENTが指定されているから. 実行過…

最適化(導関数がない,求める事が困難,かつ,制約が無い場合)

導関数がない場合 ・滑降シンプレックス法(アメーバ法,Nelder-Mead法とも呼ばれる)を使う. (線形計画問題のシンプレックス法とは違う) アルゴリズム概要を理解することは容易.ただ,なんでこれでうまく行くのかの理解は難しそう. というか,これでう…

最適化(微分可能な解析式があって制約が無い場合)

微分可能な解析式がある場合(制約なし) →1階微分と2階微分が0になる点を探せばいい ・そんな点って?N変量ならN個の偏微分で得られる連立方程式を解けばいい. →線形な場合は解けるよね? →いやいや.制約ないならそもそも解が無い. →非線形な場合は? →…

フーリエ変換とウェーブレット変換

フーリエ変換 ・フーリエ変換は時間的に変化する信号を周波数領域の表現に変換する. ・フーリエ級数展開は周期性が必須だが,フーリエ変換では必須ではない ・無限の周期を仮定する. ・(↑が理由?)定常性を持った信号への適用には適するが,非定常な信号…

多変量分布に従う乱数の生成

1.多変量正規分布に従う乱数の生成 パラメタは期待値ベクトルΛと共分散行列∑の2つ. 作り方のイメージは,一旦N(0,1)に従う独立な標準正規分布の乱数を生成して, それを,線形変換して期待値ベクトルΛと共分散行列∑に従う乱数に変換する. そして,そん…

Rtips1

コマンドラインからの実行方法 ・Rscriptを使う.(R --vanilla hoge.Rはコマンドライン引数の扱いが直感的じゃない) ・コマンドライン引数はcommandArgs(T)で一旦とって,適時使う.ARGVは1始まり. 例)$ Rscript --vanilla hoge.R hoge.txt 3 argv = com…

Wekaのサンプル集

Weka全般に関して CSVも読込み可能だけれど,Weka標準のARFF形式に変換して入れておくほうが良い. 理由はCSVだとincrementalなreadができないこと,カテゴリ変数の全カテゴリがテストセットに出現することが保証されないこと. Convert CSV to ARFF online…

単回帰・重回帰

回帰式の評価指標 ・決定係数R^2 モデルが実測値をどのくらい説明しているのか?を表す. R2=(実測)^2和/(予測値)^2和 →1に近いほど説明している,0に近いほど説明できてない. *重回帰の場合,説明変数が多くなると,(意味は無くとも)決定係数が大…

R memo

Emacs設定 (setq load-path (cons "/usr/share/emacs/site-lisp/ess" load-path)) (when (locate-library "ess-site") (require 'ess-site)) (setq auto-mode-alist (cons (cons "\\.[rR]$" 'R-mode) auto-mode-alist)) (autoload 'R-mode "ess-site" "Emacs…

to study list

勉強することの大枠 ・最適化手法 連続,離散,組合せ(グラフ的手法,メタヒューリスティクスも),制約の有無で整理 ・数理モデリング GLM,カーネル,ベイズ的な逐次更新型 ・基本的な道具として 線形代数,関数解析 いきなり完璧を求めずに徐々にでも成…