たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

たにちゅーの思惑|谷口忠大Home Page(たにちゅー・どっと・こむ)

HOME  > Bayesian Rose Trees のメモ

Bayesian Rose Trees のメモ

2012-05-03 (thu)|カテゴリー:コメント:0

まぁ,とにかく 開いたら

image

が,目に飛び込んでくる Rose Treesの論文です.

1st author は Blundell さんですが, 2nd がノンパラベイズで大量に良い論文をかいておられる Yee Whye Tehさん

で 3rd が Heller さん.僕のなかでは IHHMM の論文が有名(無限階層の階層HMM ノンパラベイズ).

 

Rose Tree とか僕はしらないので, 「なんやそれ」と興味をひかれていたが,放置していました.

Teh さんが HPでrecommend していたので,面白いのだろうと思っていた.

 

要は 階層クラスタリングでベイズ的にやりたいのですが,既存のものは Binary tree (二分木)が多いので

一気に複数にわかれる事のできる階層クラスタリングを作りましょう.という話です.

 

K. A. Heller and Z. Ghahramani. Bayesian Hierarchical
Clustering. In ICML, volume 21, 2005.

の拡張になっている模様.

 

Tehさんがスライドまでオープンにしてくれていて分かりやすかった.

http://www.gatsby.ucl.ac.uk/~ywteh/research/npbayes/brt.pdf

ありがたい!

 

階層的分類を考える場合には 階層的な分割Partition の生成であり,その再帰的な定義が必要になる.

 

image

このあたりが,そう.

スライドの方で,分かりやすく書いてくれているので,わかると思う.

 

で,その確率をどう与えるかというと,

ここが 僕的には面白いポイントだとおもうんですが,

各階層のPartitionの混合 mixture として,あたえるんですね.

 

image

数式的にはこれ.

We interpret a rose tree T as a mixture over partitions
in P(T)
of the data points at its leaves D = leaves(T):

さらっと書いてあるけど,僕的にはこれがキモ.

次式もややこしそうだけど,ただの展開.

あとは,木の分かれ方で,混合率を与える.

 

で,推定はサンプリングで・・・・ といくのかとおもいきや,

それはcomplexity が高すぎて 無理とのことでGreedy 探索をします.

 

image

これが,Greedy 探索のための mergeの方法

ざくっというと

これらを適用してみて,尤度比が一番あがるやつを,適用していく

って感じみたい(だいたいの感じ)

 

Figure. 7 で GP mixture の話とかでてきてるけど,これはおまけ程度におもっておけばいい.

 

とにもかくにも,多分岐のツリーが作れるようになってバンザイ ということのようである.

 

ちなみに,先日書いた Pitman-Yor diffusion tree は,実数空間を前提にしたモデルだし,

それに比べると,空間や分布についての柔軟性はある.

# PYDT は面白いし好きなんですが.

 

Tree 関連 ノンパラ論文を nested CRP, PYDT, Rose Tree と読んでみたわけだが,

個人的には,Tree というものの 捉え方が まったくそれぞれ異なっていて,そのあたりが面白かった.

 

たにちゅー・谷口忠大・tanichuたにちゅー・谷口忠大・tanichu@tanichu

Bayesian Rose Trees だいたい分かった. Greedy search になってしまってるのが,Bayesian なわりに,悲しい感じもするが,パフォーマンスも良いようなのでいいのであろう.Tree を Partition のmixture と捉えるのおもしろい.

12:59 AM - 3 May 12 via TweetDeck · Details

たにちゅー・谷口忠大・tanichuたにちゅー・谷口忠大・tanichu@tanichu

"BRT and one version of BHC interpret trees as mixtures over partitions." これ,ポイントやな. > Bayesian Rose Trees

12:20 AM - 3 May 12 via TweetDeck · Details

たにちゅー・谷口忠大・tanichuたにちゅー・谷口忠大・tanichu@tanichu

なるほど, サーチは greedy サーチになっちゃうのか. hyperparameter は勾配でもとめるのか. 適宜そういう選択もするとっころはだいじやな.http://bit.ly/ITBWUK

12:17 AM - 3 May 12 via TweetDeck · Details

たにちゅー・谷口忠大・tanichuたにちゅー・谷口忠大・tanichu@tanichu

スライドを見て, A tree is treated as a mixture of partitions. の意味がちょっとわかった.... nested CRP に引き続き,tree を確率モデルとしてどう扱うか という事は なかなか 面白いところみたいな気がする.

12:00 AM - 3 May 12 via TweetDeck · Details

たにちゅー・谷口忠大・tanichuたにちゅー・谷口忠大・tanichu@tanichu

Bayesian Rose Trees の発表スライド http://bit.ly/ITBWUK

11:47 PM - 2 May 12 via TweetDeck · Details

The Infinite Partially Observable Markov Decision Process のメモ

2012-04-19 (thu)|カテゴリー:コメント:0

これまたTehさんの

Modern Bayesian Nonparametrics.

http://www.gatsby.ucl.ac.uk/~ywteh/teaching/npbayes.html

の影響で読んでみた.

The Infinite Partially Observable Markov Decision Process

F Doshi-Velez

NIPS2009 http://nips.cc/Conferences/2009/Program/event.php?ID=1643

ですね.

 

POMDPは 強化学習でよく仮定する MDPと違い,状態s_t が直接観測できないという仮定のもの.

歴史的にPOMDPと呼ばれるが,個人的にはHidden MDPとでも呼んでみたい気がしますが,

まぁ,そういうものです.

 

銅谷先生らのモジュール型強化学習などをイジっていた身としては,

Dirichlet Process mixture が出てきた段階から,まぁ,連続状態変数を隠れ状態からの出力分布でとらえて

その上で強化学習とかしたいよね.とか思っていたわけなんですが,

まぁ,そんな感じのモデルです.

 

まだ,Theoreticalな部分先行で実ロボットでどうこうという話ではない.

内容は基本的部分はシンプルで,

DPで隠れ状態 s_t が生成されると,

それらが,iHMMよろしくで, s,a の条件の下で DPから生成された多項分布(つまりは,遷移確率行列)で次の状態にトランジションする.

また,観測o ,報酬 r がそれぞれの s,a に対しての分布として生成されますよという生成過程

image

とってもagree な内容となっております.

 

で,このあたりはいいのですが,

やっぱり,ただでさえ,学習に時間がかかったりする強化学習さらにPOMDP.

Action Selectionの方が大変になっています.

 

実際には,belief を求めるのも, 複数のモデルをサンプルしてその上での信念分布を考えて

これの重ねあわせで考える. Q値も同様に考えるといった,近似を導入しています.

このあたりは,個人的には苦しそうな印象.

 

また,最適政策も求めにくいので,

 

Given a set of models, we apply a stochastic forward search in the model-space to choose an action.
The general idea behind forward search [14] is to use a forward-looking tree to compute the value
of each action.

 

ということで,フォワード探索で頑張って決めていきます.

 

実験では,ちゃんと動くぞ,というのを示していますが,

確かに状態数の推定はいいのですが,

image

 

そこからの強化学習としての方策生成まで,うまくつなげて綺麗な理論にするのは大変やなぁと思いました.

 

ただ,ノンパラベイズからの強化学習へのアプローチとしては,非常に素直だとおもうので,一読の価値はあるかと.

 

POMDPやんなきゃ感 カンジテル・・・・

 

※本 メモは大いに間違っている可能性もあるので,間違いに気づかれた方は,心優しくツッコんでください.

 

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

強化学習 Natural Actor-Critic が流行っていたあたり つまみ食いした以降は ちょっとサボっていました. 現状は どうなっているんでしょうね.

8:51 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

POMDPとSLAMの関係について.

8:49 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

しかしまあ,どんだけ tractable になっているかって話ですね. 不確実性のある実空間で行動意思決定するとなったら,教師なしのモデリングつかった 認識の話だけでなく やっぱ,強化学習は入れたくなるのが人情.ノンパラベイズ強化学習はやってる人はそんなにおおくないのかな.

8:41 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

Partially Observable Markov Decision Process ね POMDP . 昔は確定的な ちょいヒューリスティックっぽい話がおおかった気がしたけど,こんだけベイズがしっかりしてきたら,綺麗な話になってきているのね.

8:40 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

POMDPとか,久しぶりに読んでいる.

8:36 PM - 18 Apr 12 via TweetDeck · Details

Hierarchical Topic Models and the Nested Chinese Restaurant Process のメモ

2012-04-19 (thu)|カテゴリー:コメント:7

Tehさんの NIPS2011のチュートリアル

Modern Bayesian Nonparametrics.

http://www.gatsby.ucl.ac.uk/~ywteh/teaching/npbayes.html

で,Tree構造関係のノンパラベイズの方法で引用されていたので,

以前から読みたかったので読んでみた.

 

文章クラスタリングの手法であるLDAを階層化するという話.

http://books.nips.cc/papers/files/nips16/NIPS2003_AA03.pdf

 

最初,なんかよくわからなかったのですが,

僕が勝手にイメージしていた,階層のイメージと本論文の階層のイメージが 合わなかったで,

はじめ理解に苦労しました.

 

LDAはざくっといえば,文章はトピックの多項分布で,トピックは単語の多項分布ってことで

文章がbag-of-wordsとして出力されているという,さっぱりしたベイズの生成モデルのイイ例なのですが.

トピックの間に階層関係などはない.

 

hLDAはトピックにツリー構造を入れようとしている.

 

2003年だから,もう10年ほど前の話なんですね.

はい,不勉強ですみません・・・.

 

image

グラフィカルモデルはこんな感じ.

左のc_n がツリーのノードに対応している.

ちなみに,左からの矢印が繋がっていたり,つながってなかったりで,うん? と思うし,

c1 –> cLの path とかがよくわかんなくて,Bleiさんのこのグラフィカルモデル,これで間違いないのか

僕には自信がないです.(僕に自身がなくてもnips acceoptされてんだから,これでいいんだろうけど・・・)

 

でもって,c に対応する,トピックのノードが

image

Lレベルのツリー構造もっているんですね.

 

もちろん,ツリー構造も推定されます.

 

どういうモデルかというと,

まず,トピックにはtree構造があります.

で,文章は複数のトピックを持つのですが,

その複数の持ち方というのがトピックツリーのルートノードから,リーフへのpathとして表現されます.

つまり,

上の 2 なら beta1,beta2,beta5 をトピックのパラメータとしてもつ.

 

これらのmixtureから文章(単語の集合)が生成される と考える模様.

 

階層というか,

mixture っぽいんですよね.mixture component の選び方に,ツリー構造的な制約を入れた

という理解が正解な気がします.

Experimentでのsynthetic data での実験例が,それを端的に表しているように思う.

 

image

 

共通項~個別項という分け方での分解という感じなんでしょうね.

感覚的には,どれにでも出てくる, document frequency の高いワードがroot ノードに行くようで,

tf-idfみたいな文脈とかで使えたりするのかなぁ.と思ったりもしました.

 

前後してPitman-Yor diffusion tree とか読んだけど,木の生成モデルとしても大分違いますね.

はい.

 

 

ちなみに,上記は僕の勝手な解釈なので,絶賛間違い指摘募集中.

 

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

.@gavangavan @super_reader ルートノードのトピックは全文書上で共有されるので SN比を良くする用途にも使えそうな気がします.> nested CRP = hLDA

2:22 PM - 18 Apr 12 via TweetDeck · Details

 

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

nested CRPのグラフィカルモデルは なんか,これでホントにいいのかなぁ?http://bit.ly/IM7s9U ちょっとよくわからないや.

1:14 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

「階層」という言葉にもいろいろあるものよのう. Dirichlet/Pitman-yor diffusion tree とか Kingman’s coalescent とかも,同じような意味での買いそうなのだろうか?それとも違うのだろうか?不勉強だから勉強しないとだめね.

1:11 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

nested とかいっておられるが,寧ろ親子関係が 並列になっていて,そやつらが,mixtureを構成する用な感じか... 確かに,木構造の制約をいれたら,root nodeは 全ドキュメントに共有されるトピックになるわけで, たしかに,hierarchical っぽくはなる.

1:09 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

nested CRP って木のノード毎にトピックがあって,その混合でドキュメントを表すってことか????

1:06 PM - 18 Apr 12 via TweetDeck · Details

Pitman-Yor Diffusion Trees のメモ

2012-04-19 (thu)|カテゴリー:コメント:0

Tree 構造をつくるノンパラメトリックベイズということで,ちょっと読んでみた.

Pitman-Yor Diffusion Trees

http://arxiv.org/abs/1106.2494

http://mlg.eng.cam.ac.uk/dave/knowles2011uai.pdf

 

個人的には結構おもしろかった.

ツリーを単純につくるというよりは,ユークリッド空間上のガウス過程を考えてあげて

それが,分岐していく という過程の生成モデルになっている.

 

image

branching の部分がPitman-Yor っぽくて,

dt時間の間に別れるポイントが決定する確率があって,

分かれるときには,既存のルートにいくか,あらたなルートにいくかが

Pitman-Yor  つまり CRPの式で決定する.

 

その結果,各パスがサンプル点に到達する.

それが,hidden な tree structure になっているというお話.

 

inferenceは各パスをblocked gibbs sampler することで,求められるんだね.

LSI –> LDA の流れなど

文章分類などでもベイズといえば,直感的なユークリッド空間上での構成から離れていく

イメージがあったが,ツリーを作るのに,ワザワザ高次元空間上の確率過程を考えるというのが

おもしろかった.

 

Dirichlet Diffusion Tree (DDT)の拡張になっているというお話もあったが,

良い感じに拡張になっているらしい.

image

こういうtreeの生成モデルでは branching するときに 二分することが多いらしいんですが,

ちゃんと,二分以上 可変数個の分木を生成できるわけで,

僕は,好きだなぁ. と思いました.

 

どっかで,使えたら使いましょうかと...

 

でもTree structure 使いたいのって,むしろユークリッド空間じゃない事がおおいんだよなぁ.(´・ω・`)

 

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

nested CRP と PY diffusion tree じゃ対象が大分ちがうわけですね.

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

Pitman-Yor Diffusion Tree だいたい分かった.

4:42 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

なるほど.分岐の時にexisting な branch からCRPっぽく選択するのか・・・・.そこで分岐数が可変(潜在的に∞)とできるわけですね. > PYDT

3:47 PM - 18 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

へー.このgenerative process なかなか おもしろいなぁ. なんか,いろいろなトコロでありそう.あるある,なかんじ. PYDT

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

Pitman-Yor Di usion Treesよむ

2:13 PM - 18 Apr 12 via TweetDeck · Details

Monte Carlo POMDPs のメモ

2012-04-19 (thu)|カテゴリー:コメント:0

NIPS1999らしいです.

SLAM読んでいると POMDPとの関係が気になるのが,人情.

ちゃんとThrun 氏がこのあたりの提案をされていたのですね.

 

基本的にはParticle filter でPOMDPにおける状態の信念分布を構成しましょう

というお話.

 

もう,10年以上前の話なので,ごめんなさいという感じなのですが,

このあと,どのように展開しているのかちょっと調べないとな,と思いました.

 

 

@InProceedings{Thrun99h,
  author         = {S. Thrun},
  title          = {Monte Carlo {POMDP}s},
  booktitle      = {Advances in Neural Information Processing Systems 12},
  pages          = {1064--1070},
  year           = {2000},
  editor         = {S.A.~Solla and T.K.~Leen and K.-R.~M{\"u}ller},
  publisher      = {MIT Press}
}

 


たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu


.@po____ こんなんありましたわ. > Monte Carlo POMDP - ftp://ftp.irisa.fr/local/as/campillo/micr/bib/thrun1999b.pdf



9:07 PM - 18 Apr 12 via TweetDeck · Details


たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu


POMDPとSLAMの関係について.



8:49 PM - 18 Apr 12 via TweetDeck · Details

Sequence Memoizer のメモ

2012-04-19 (thu)|カテゴリー:コメント:0

Sequence Memoizer は Wood や Tehらによって提案された,∞gramモデル.

∞グラムモデルっていうのは,まぁ,Nグラムモデルなんですが,要はコンテクスト長がノンパラメトリックということ.

持橋さんの論文曰く,当時最高性能の Kneser-Neyスムージングがその近似となっている言語モデル

Hierarchical Pitman-Yor Language Model ですが.

そのN-gram長はgivenだった.

これを,コンテクスト長可変にしようというのが,∞グラムモデルといえるだろう.

 

“可変”という視点から,比較的自然につくられているのが,持橋さんの VPYLM もしくは IMMなわけですが,

 

Pitman-Yor 過程に基づく可変長n-gram言語モデル

http://chasen.org/~daiti-m/paper/nl178vpylm.pdf

 

これは,Beta分布からdrawした通過確率をつかって

Suffix tree を伸ばしていくという,まさに,可変長な視点からの∞グラムモデル.

これは,我々も,メロディ生成に利用させてもらったりしている.

岩手フォーリンラブ by VPYLMを用いた自動メロディ生成

 

Sequence Memoizer はコンセプト的には大分違って,

「全部覚えておいてやろう」というアプローチ

これは文章長をTとするとO(T^2) のメモリで,なんとかなるといえば,なんとかなるのだが,

実際にはでかすぎる.

 

彼らのcontributionは Pitman 1999, Ho 2006 の結果

を使えば,実は,結構カットできて,O(T)におさまるよ.という話.

 

ここで,HPYLMのCoagulationとFragmentationというプロセスが出てくる.

 

ここで,仮定しないといけないのは 集中度パラメータ c=0 ということ.

c=0 を満たせば,かんたんになる.

 

わかるのだが,実装が難しそうだなぁ,とは思う.

ただ,実装は

http://www.sequencememoizer.com/

がオープンにしているので,利用時は使わせていただこうかと...

 

ちなみに,持橋さんが,一昨年の日記にかかれていて,類似研究からの視点が伺えて面白い.

http://chasen.org/~daiti-m/diary/?200908#200908200

 

 

こんなところで

 

"A Stochastic Memoizer for Sequence Data"
http://www.gatsby.ucl.ac.uk/~ywteh/research/compling/WooArcGas2009a.pdf

"The Sequence Memoizer"
http://delivery.acm.org/10.1145/1900000/1897842/p91-wood.pdf?key1=1897842&key2=9039199921&coll=DL&dl=ACM&ip=133.19.33.3&CFID=12084269&CFTOKEN=64151334

 

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

Coagulation と fragmentation 大体わかった. でも,Pitman 1999 と Ho 2006 の証明は追ってない. ここは深追いせずに,認めておこうか. 応用数学はどこまで基礎を深追いするかは,判断むずかしいね.

11:37 PM - 17 Apr 12 via TweetDeck · Details

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

Coagulation: GEMから生成されたパーティションがatomが別のGEMから生成されたパーティションとatomが共有されるよ,という理由で くっつくプロセスとか,そういうことか?

たにちゅー+Rやで(谷口忠大)たにちゅー+Rやで(谷口忠大)@tanichu

1年半前のもちはしさんのSequence Memoizer についてのコメント.一年半遅れで勉強中・・・.集中度パラメータ 0 は妥当っぽいのか・・.ふむふむ. > mots quotidiens. http://bit.ly/HOOQar

12:22 PM - 17 Apr 12 via chrome-share · Details

メモ:ギブスサンプリングはメトロポリス・ヘイスティングス法の特殊な場合.

2012-03-21 (wed)|カテゴリー:コメント:0

ちらちら見ていたこの事実をあまりちゃんと納得していなかった.

最近メトロポリス・ヘイスティングス法を使う事がでてきたので

抑えておかねばと.

 

メトロポリス・ヘイスティングス法

は上記 wikipediaでご理解いただくとして,

提案分布

\displaystyle Q(x'; x^t )

を用いて現在のサンプルから,次のサンプルを提案していく.

サンプルの確率が増大すれば,サンプルを採択し,また,低下すると下式右辺の確率で


\alpha < \frac{P(x')Q(x^t|x')}{P(x^t)Q(x'|x^t)} \,\!

採択するというもの.(αは [0,1]一様乱数からサンプルすればよい)

 

ギブスサンプリングは,一変数以外を固定して,その一変数のための事後確率分布を用いて

サンプリングしていくものだが,特に採択とかそういうことがない.

 

なんとなく,腑に落ちていなかってほったらかしていたんですが(ごめんなさい)

 

ちょっと調べたらわかった.

http://www.phontron.com/ja/notes/word.php?id=89

(↑一部 受理確率の式に誤記があるので注意)

提案分布Qに 対象の変数の事後確率分布を用いると,綺麗に式がキャンセルされて,

1になるんですね.

ですから,αによらず,常に採択されるというロジックらしいです.

なるほど.

 

まさに,特殊な場合ですね.

 

MCMC歴2年.初学者モードですみません・・・・.(^_^)

memo: cpplapack_plusの導入 ubuntu11.10ですんなり行かなかったよ のメモ

2012-02-01 (wed)|カテゴリー:コメント:1

谷口の過去の資産プログラムでつかっている cpplapack

c++でのclapackのラッパーです.

これで,僕が自分の仕事をやりやすいように,付加的な関数とか

ベイズ推定するのに ガウス分布や多項分布,ディリクレ分布など おまけをくっつけて

ラッパしている酷いソースコードが cpplapack_plus << PD時代からのためこみ.今や情報系教員なので酷いソースコードは見ないで 的な状況.

 

まぁ,いいとして,

久しぶりに新環境にいれようとしたら手こずってしまったので.メモまで.

 

cpplapack_plus @ github

https://github.com/tanichu/cpplapack_plus

 

まず, 入ってなかったら

synapticとかapt-get で

lapackとblas のライブラリが入っているか確認.入っていなかったら入れる.

 

次にcpplapackを入れる.

CPPLAPACKの導入法 (ohnaka version)

基本的には上記の内容でいけるかとおもいますがー.

基本的には cpplapackをsourceforgeからとってきてパスが通るところにおいておけばいい.

 

コンパイル時は

-llapack –lblas

を忘れずに.

 

ここで,エラーが出てしまいまして

 

In file included from /usr/include/cpplapack.h:170:0,
                 from test.cpp:1:
/usr/include/_dsymatrix-/_dsymatrix.hpp:9:23: error: reference ‘m’ cannot be declared ‘mutable’ [-fpermissive]
In file included from /usr/include/cpplapack.h:172:0,
                 from test.cpp:1:
/usr/include/_dssmatrix-/_dssmatrix.hpp:9:23: error: reference ‘m’ cannot be declared ‘mutable’ [-fpermissive]
In file included from /usr/include/cpplapack.h:186:0,
                 from test.cpp:1:
/usr/include/_zhematrix-/_zhematrix.hpp:9:23: error: reference ‘m’ cannot be declared ‘mutable’ [-fpermissive]
In file included from /usr/include/cpplapack.h:188:0,
                 from test.cpp:1:
/usr/include/_zhsmatrix-/_zhsmatrix.hpp:9:18: error: reference ‘m’ cannot be declared ‘mutable’ [-fpermissive]

的な事を言われました. mutable は参照 reference の宣言では使えませんよー.とのこと.

いろいろ調べて見ると,mutable は参照では意味がない.とのこと. gccのバージョンで禁じられるようになったりしたのかな?

よくわからんが不要とのことで削除します.

 

それぞれ ファイルに行くと上の方に

mutable つけて &m を宣言しているところがあるので,

機械的に mutable を消していきます.

 

でもって,cpplapackのフォルダの内容を まるごとリンクが通るようにおいてあげます.

また cpplapack.h は includeが通るパスに入れてあげましょう.

 

これで,コンパイルすると通るようになりました.

 

次に,randlibcを入れる必要があります.

乱数演算のためです.

*randlib
http://www.mlab.ice.uec.ac.jp/~ej-sib/numerical/numerical_random.html

 


% cd randlibc
% g++ -O2 -c ./source/randlib.c/src/linpack.c
% g++ -O2 -c ./source/randlib.c/src/com.c
% g++ -O2 -c ./source/randlib.c/src/randlib.c
% ar cr librandlibc.a linpack.o com.o randlib.o
% ranlib librandlibc.a

ということで,準備できて,librandlibc.a はまた,リンクの通るところにおいてあげます.


及び randlib.h もinclude できるパスにおいてあげます.


 


次に便利な c++のライブラリ clxライブラリの導入です.


http://clx.cielquis.net/


こっから持ってきて,これまたinclude パスが通るところにおいてあげてください.


# clxはヘッダファイル群なので,特にコンパイルは不要


 


これで


準備完了です.


githubから  cpplapack_plus を落として来てくださいませ.


https://github.com/tanichu/cpplapack_plus


 


あ,gitからは


//github


//cloneをローカルに取得する.


git clone git://github.com/tanichu/cpplapack_plus.git


でいいのかな.


 


g++ -c cpplapack_plus.cpp -llapack -lblas –lrandlibc


で cpplapack_plus.o を作りましょう.


 


でもって,


 


g++ hogehoge.cpp cpplapack_plus.o -llapack -lblas –lrandlibc


 


とかして使ってください.


基本的には cpplapack_plus.h をincludeすればいけるはず.


 


サンプルソースは git で main.cpp にあります.


 


便利なのは


ウィシャート分布のサンプルとか


ガウス分布,多項分布のクラスなどを用意している点.


あとは,過去の遺物の堆積でしかないです.www (´・ω・`)


 


あくまで自分のメモまで~.

「コミュニケーション場のメカニズムデザイン」@知能システムシンポジウム 講演募集!!!!

2012-01-13 (fri)|カテゴリー:コメント:0

下記の要領で,

計測自動制御学会 知能システムシンポジウム で

http://www.sice.or.jp/~i-sys/is39/cfp.html

OS「コミュニケーション場のメカニズムデザイン」を開催します.

興味を持っていただけたら是非ご参加ください.

講演申し込み締切り 2012/1/19

原稿締め切り 2012/2/10

です.

http://www.sice.or.jp/bukai_web_appli/cgi-bin/bukai_step2.cgi?eventvalue=sice_web_appli\\\1\\\isys39.txt

こちらから,

申込みセッション で 「コミュニケーション場のメカニズムデザイン」をご選択ください.

よろしくおねがいします.

 

お問い合わせは twitter で @tanichu までお気軽に!

メールは tadahroあっとtanichu.com です.

—————–
OS提案「コミュニケーション場のメカニズムデザイン」

近年,知識社会の高まりもあり,企業や大学といった公式な組織から
地域やオープンネットワークといった非公式な組織において,如何に
知識共有や情報処理,発想支援や創造的活動を行うかという事が
本質的に重要となってきている.
また,組織には目に見える集団としての組織のみならず,ウェブ社会の中で
会ったことも無い人とのコラボレーションによって新たな知的創造を
行うオープンコラボレーション活動が注目され,リアルタイムウェブの
進展と共に可能性を広げている.

このような知識社会における相互作用,記号過程を促進するために,
様々な情報技術が用いられて来たが,モノとしての支援だけでは,
失敗に終わる事が多く報告されてきた.

そこで本セッションでは設計対象をモノからコミュニケーションの場や
それを支えるメカニズム(制度)などのコトに変更し,
新たな知的相互作用の支援や人間集団における情報処理のあり方,
それを支える場やメカニズムについて議論したい.

キーワード
コミュニケーション支援,制度設計,会議の経済学
サイエンスコミュニケーション,予測市場,マスコラボレーション
ビブリオバトル,ネットワーク科学,メディア論,知識創造支援 など

「立命館が考える2020年のエネルギーの地産地消」開催のご案内

以下のようなものが開催されます.

パネルディスカッションに登場しますので,良かったらお越しください~.( ・∀・)

【PDF】立命館が考える2020年のエネルギー_ページ_1

続きを読む

 Page 2 of 6 « 1  2  3  4  5 » ...  Last » 

インフォメーション



tanichuの著作

copyright © Tadahiro Taniguchi All Right Reserved.