[掲示板へもどる]
一括表示

  [No.1912] 対応分析のプロット図に軸について 投稿者:永井  投稿日:2014/12/27(Sat) 18:25:35

前回はご回答ありがとうございました。
無事に学会発表も終わり、現在研究をブラッシュアップをしております。

さて、前回はデータ量がKhcoderの処理量を超えているとの指摘をいただきまして、今は、Khcoderで文書×単語のクロス表を出力してRで対応分析を行なっております。

対応分析の結果の布置図についてですが、
Khcoderでは、単語とH1で行うとそれぞれの座標(x,y)を同じ軸の尺度に配置していると解釈しています。
Rを使用したテキストマイニングの書籍では、それぞれの座標に正準相関係数をかけ、対象解として布置する方法が用いられていました。
図を解釈しやすくするためと。

現在、論文投稿を考えておりまして、この点が気になりました。

参考までに、Khcoderの対応分析で対象解を使用しない理由をご教示いただければ幸いです。


  [No.1913] Re: 対応分析のプロット図に軸について 投稿者:HIGUCHI Koichi  投稿日:2014/12/27(Sat) 22:17:20

こんにちは、樋口です。書き込みありがとうございます。


# 最近、私が立て込んでいてお返事できない間に、ユーザーの方が質問に答え
# て下さったケースがいくつかありました。「これぞ本来のユーザー・フォー
# ラム!」と非常に喜んでおります。ご回答くださった皆さま、本当にありが
# とうございました。お答え下さった方もそうでない方も、ぜひ、今後の質問
# に対するあなたのアイデアをご投稿なさって下さい。「正解」でなくても、
# アイデアがいくつか出れば、文殊の知恵に近づくでしょう。躊躇やご遠慮な
# さらずに、是非よろしくお願いいたします。


さて、

> 前回はご回答ありがとうございました。
> 無事に学会発表も終わり、現在研究をブラッシュアップをしております。

それは良かったです。ぜひ「研究事例リスト」ページに掲載できればと存じま
すので、書誌情報をお知らせいただけますでしょうか。

> さて、前回はデータ量がKhcoderの処理量を超えているとの指摘をいただき
> まして、今は、Khcoderで文書×単語のクロス表を出力してRで対応分析を行
> なっております。

ケース数を10万件程度に抑えるのがお勧めですが、2.b.31c(2014 08/11)で
処理内容を見直しています。これによって、解析内容にもよりますが、64bit
版Windows & 32GB RAMのPCでは、120万件の多変量解析に成功しています。

よって、十分にメモリを積んだPCで、最新版のKH Coderをお使いになれば、も
しかするとKH Coderのコマンドでの分析も行えるかもしれません。

> Rを使用したテキストマイニングの書籍では、それぞれの座標に正準相関係
> 数をかけ、対象解として布置する方法が用いられていました。
> 図を解釈しやすくするためと。

どのように、図が解釈しやすくなるのでしょうか?

Rをお使いとのことですから、正準相関係数をかけた場合と、そうでない場合
の図をお手元で作成できようかと思います。実際のところ、比べてみて、解釈
しやすくなりましたでしょうか? また、解釈しやすくなったとしたら、それ
はどのような変化によって、何を読み取りやすくなったのでしょうか?


  [No.1917] Re: 対応分析のプロット図に軸について 投稿者:永井  投稿日:2014/12/29(Mon) 17:55:12

お忙しい中ご回答ありがとうございます。

>khcoderでの処理
ありがとうございます。
再度ダウンロードしてkhcoderでも同様に分析してみます。

>解釈しやすさ
この点についてはどちらでもさほど変わらないように感じています。
(あくまでも個人的な印象です)


質問の仕方が悪かったようです。
参照したテキストには、対象解でプロットする方法自体に「議論がある」と一言だけ書いてありました。
そういった議論を踏まえて、khcoderは対象解でのプロットを採用していないのかなと疑問に思ったので質問させていただきました。


追記
先ほど確認しましたが、学会発表はすでに「KH Coderを用いた研究事例」に掲載されておりました。


  [No.1918] Re: 対応分析のプロット図に軸について 投稿者:HIGUCHI Koichi  投稿日:2014/12/30(Tue) 02:08:07

こんにちは、樋口です。書き込みありがとうございます。

> 「議論がある」

「こういう理由でこうした方が良いという見解があるようだけど?」と、内容
を明確にご説明いただければ、それに対する樋口の考えをお答えいたします。

そうした「議論」について1からの解説をする準備はありませんが、上記のよう
な対話は歓迎します。せっかくですから、調べてみてご説明いただければ、よ
りいっそうの確信をお持ちいただけるでしょうし、なおかつ皆さまのご参考に
もなって、良いのではないでしょうか。


  [No.1923] Re: 対応分析のプロット図に軸について 投稿者:HIGUCHI Koichi  投稿日:2015/01/06(Tue) 17:50:07

Re: 対応分析のプロット図に軸について (画像サイズ: 642×1897 27kB)

こんにちは、樋口です。

何をおたずねなのかという内容に確信が持てませんので的外れとなるかもしれ
ませんが、1週間ほど経ったようですし、以下、私なりにお答えさせていただ
きます。

■(1)標準化スコア
添付画像の(1)は、Rのcorresp()関数が出力する標準化スコアをそのままプロ
ットしたものです。標準化されていますので、各成分のスコアは(対応分析な
らではの方法で計算すると)平均が0、分散が1となります。

■(2)標準化スコア×固有値の平方根
それに対して(2)では、各成分の標準化スコアに、各成分の特異値(正準相関
係数)をかけてからプロットしています。おっしゃっている「それぞれの座標
に正準相関係数をかけ」というのは、この形のことかと思います。

では特異値をかけることで、何が起こっているでしょうか? 図形としてみる
と、横に少し引き延ばされていることが分かるでしょう。特異値というのは固
有値の平方根ですから、固有値が大きい方の軸が、図形としては少し引き延ば
されるというか、拡大されるのです。つまり(1)をもとにして、各成分の固有
値に応じて、縦と横とを伸び縮みさせたものが(2)です。

■(3)枠いっぱいに拡大
これに対して(3)KH Coderでは、固有値ではなく、描画領域の枠を基準にして
引き延ばしています。(1)をもとにして、縦横ともに枠いっぱいに広げている
のです。

これはスコアに手を加えるのではなくて、プロットの軸を可変にすることで引
き延ばしています。(1)と(2)では、X軸の1cmと、Y軸の1cmは、同じ大きさのス
コアの変化をあらわしていました。しかし(3)では、軸の目盛りを見るとわか
るように、X軸の1の方が広い幅をとっています。このように拡大する場合は、
標準化スコアを使っても、[標準化スコア×固有値の平方根]を使っても、プ
ロットの図形としてはまったく同じになります。変わるのは軸の目盛りだけで
す。なお現在のKH Coderでは標準化スコアを使っています。

■メリット・デメリット
(2)のプロットでは、語Aと語Bの距離よりも、語Aと語Cの距離の方が近いとい
った、距離の解釈を正確に行ないやすいというメリットがあります。プロット
上の距離が、プロファイル間のカイ二乗距離(の近似)を反映していると私は
理解しています。また、慣例としても、この形のプロットが多く利用されてき
ました。(と言いつつ、SPSSにはこの形のプロットを作成する機能がなかった
りしますが…)

一方で(3)のプロットには、スペースを有効に使って、ラベルを表示しやすく
なるという利点があります。ラベル同士が重なって、読み取れなくなってしま
うようなケースが減るという利点です。計量テキスト分析の場合には、アンケ
ートの選択肢型設問を扱う場合より、多くの語/ラベルを布置したいことが多
いでしょう。そうした多くの語を表示しやすいように、KH Coderでは(3)の形
でプロットを行なっています。

なお(3)のプロットでは、語と語の距離、変数の値と値の距離を正確に読み取
ることはいくらか難しくなります。しかし、原点からの方向や距離にもとづく
解釈は十分可能です。※原点からの方向や距離にもとづく解釈の例としては、
チュートリアルスライドの21ページをご覧ください。
http://www.slideshare.net/khcoder/kh-coder-28776074


以上が、KH Coderで行なっているプロットの説明と、その形式を選んだ理由で
す。必要でしたら、R上で(2)の形にカスタマイズしていただけます。また、こ
れまではなかったのですが、もし(2)も選べるようにして欲しいというご要望
が寄せられれば、また検討させていただきます。

p.s.
このトピックの詳細については、次の文献が比較的分かりやすいと思います。
Chapter 9, 10, 13およびEpilogue冒頭あたりです。

> Correspondence Analysis in Practice, Second Ed.
> http://amzn.to/1s0Fu3v


  [No.1925] Re: 対応分析のプロット図に軸について 投稿者:永井  投稿日:2015/01/07(Wed) 17:57:51

ご回答ありがとうございます。

樋口さんの前回のコメントを受けていろいろと調べている間に時間が経ってしまいました。
お返事遅くなり申し分けありません。

ご回答いただいた内容で、KHcoderでのプロット時の処理内容と、解釈する上でのメリット・デメリットは理解することができました。

また次のコメントでご指摘していただいた通り質問の仕方が悪く申し分けなく思っております。


調べる過程で自分なりに整理できましたので、再度書かせていただきます。


・(2)標準化スコア×固有値の平方根を用いて解釈することについて
「正準相関係数をかける」という点は、固有値の平方根をかけるで間違いありません。


・知りたかった点
参照した書籍には、(2)の表示について
「この布置を対象解と呼ぶ。ただし、この工夫は、布置を『見やすく』はするが、解の表示としてはふさわしくないとする議論もある」
とだけ書いてありました。
※Rのbiplotの関数を使用した際の解説

この「ふさわしくない」とする理由(議論)を探しておりました。


私の見解では、解釈をする過程では問題はないが、「解の表示」をするという際の統計的な処置が「ふさわしくない」とする議論があるのだろうと考えました。

対応分析を解説したサイトをあたりましたが、この点について書かれているものには出会いませんでした。
※統計の専門書にはあたれていません。

Khcoderのマニュアルや過去の掲示板にも、この点について書かれていないようでしたのでの質問いたしました。


・関連しそうなサイト
主成分分析のほうでも調べてみたところ、次のような解説を見かけました。
http://cis-jp.blogspot.jp/2012/09/blog-post_9.html

こちらサイトに書かれている「重ねあわせ方についてはいくつかの主張」が、「ふさわしくないとする議論」に近いのではないかと考えております。

お恥ずかしいながら、こちらサイトがどのような解説をしているのかが雰囲気でしかわからない状況です。


もし自分が気にしている点が、対応分析を用いた研究において重要でない(統計学としては重要だが)のであれば、深入りしすぎた議論になるかと思います。


以上、再度整理した内容になりますが、このように自分でもわからないことが多いなかで質問してしまい大変申し訳ありません。

次回からは、もう少し理解をすすめてから質問するようにいたします。
貴重な時間を割いていただいたことに感謝いたします。


  [No.1926] Re: 対応分析のプロット図に軸について 投稿者:HIGUCHI Koichi  投稿日:2015/01/07(Wed) 22:10:23

Re: 対応分析のプロット図に軸について (画像サイズ: 800×600 104kB)

こんにちは、樋口です。書き込みありがとうございます。

また、質問の仕方についても、ご配慮いただき感謝申し上げます。格段にお答
えしやすくなりました。(理解せずに質問することはあまり問題ではありませ
ん。ただ、どのように理解を試みて、どこまで理解できているかを、できるだ
け詳しくお書きいただきたいのです)

> ・知りたかった点
> 参照した書籍には、(2)の表示について
> 「この布置を対象解と呼ぶ。ただし、この工夫は、布置を『見やすく』はす
> るが、解の表示としてはふさわしくないとする議論もある」
> とだけ書いてありました。
> ※Rのbiplotの関数を使用した際の解説
>
> この「ふさわしくない」とする理由(議論)を探しておりました。

■誤解を誘いかねない点

例によってどんな「議論」のことか確信を持てませんが、ここは大胆に(無謀
に?)樋口の考えを書こうと思います。

先の投稿(No.1923)で示した(1)〜(3)のすべてに当てはまることですが、語
と変数(または見出し)との距離が「近い」「遠い」と解釈することは数学的
には正しくありません。語と語、変数と変数なら「近い」「遠い」と言える/
言いやすいのですが、語と変数はダメです。語と変数とは、厳密には、同じ尺
度上にあるとは言えないためです。したがって、布置された場所が近いかどう
かではなく、原点からの方向や距離にもとづいて解釈するのが正しい方法とな
ります。

例えば、漱石『こころ』チュートリアルの対応分析をご覧下さい。このスライ
ドの21枚目です。(当該の1枚を画像としてこの投稿に添付しています)
http://www.slideshare.net/khcoder/kh-coder-28776074

この図の左上の方に「上_先生と私」という見出しがあり、「先生」という語
があります。ここから「上_先生と私」には「先生」という語が特徴的に(特
に多く)出現していたことが分かります。ただし、解釈のしかた、書き方とし
ては、「布置された場所が近いかどうか」ではなく「原点からの方向や距離」
に注目するのが正しいのです。

> ×「上」の近くに「先生」があるので、「先生」は「上」に特徴的
>
> ○原点から見て「上」の方向、それも原点から大きく離れた位置にあるので、
>  「先生」は「上」に特徴的

この「○」の解釈ならよいのですが、「×」の方は数学的には正しくないので
す。近いか遠いかを見るなら、「持つ」だって「先生」と同じくらい「上」に
近い(ように見える)わけですが、原点から離れている「先生」の方が、「上」
に特徴的なのです。

この「×」の解釈のような、言わば誤解を誘いかねないという理由で、「ふさ
わしくない」云々の議論があるものと私は考えています。

■ではどうするのか

1つは、「上」「中」「下」のような変数だけのプロットと、「先生」「持つ」
のような語だけのプロットの2枚に分けるという方法があります。※ただ、誤
解を避けるためだけにわざわざ余分にスペースをとるのかという気もします。

また、先の投稿(No.1923)で示した(1)〜(3)はすべて、変数にも語にも(行
スコアにも列スコアにも)同じ操作を加えるという点で、「対称的」なプロッ
トです。それに対して、別々の操作を加えるような非対称的なプロットを作る
ことで、この問題に対処するという考え方もあるようです。※これを行なうと、
語か変数のどちらかが原点付近に集まってしまい、読み取りにくくなります。

上記いずれの方法も完全な解決法とは言えませんし、結局は、これまでも多用
されてきた対称的なプロットで良いのではないかということです(少なくとも
デフォルトで利用するプロットとしては)(Greenacre 2007: 267,
http://amzn.to/1s0Fu3v )。ですから、上記の「×」ではなく「○」の解釈
をするようにさえ注意すれば、安心して対称的なプロットをお使いいただける
でしょう。

■おことわり

ずいぶん前ですが、統計数理研究所の名誉教授でいらっしゃる大隅昇先生に、
対応分析について教えていただいたことがあります。そのご恩を世の中に還元
せねばというような気持ちもあって、今回はお答えさせていただきました。

ただ今後、統計についてなんだって答えるか/答えられるかというと、そうも
いかないと思います。あらかじめご了承下さい。また、私の記述に誤りがあっ
たとすれば、それはすべて私一人の責任によるものです。


  [No.1929] Re: 対応分析のプロット図に軸について 投稿者:永井  投稿日:2015/01/09(Fri) 15:55:17

解答ありがとうございます。

ご説明していただいた内容で解釈の仕方が理解できました。
ありがとうございます。

論文の掲載が決まりましたら、あらためてご連絡いたします。
今後ともよろしくお願いいたします。


  [No.1935] Re: 対応分析のプロット図の軸について(biplot関数についての補足) 投稿者:HIGUCHI Koichi  投稿日:2015/01/11(Sun) 15:20:03

Re: 対応分析のプロット図の軸について(biplot関数についての補足) (画像サイズ: 652×1242 13kB)

こんにちは、樋口です。

先の投稿では、Rのbiplot()関数については触れませんでしたので、少しだけ
補足しておきます。

この投稿に添付したファイルでは、上のNo.1923でも出てきた「(2)標準化スコ
ア×固有値の平方根」のプロットと、biplot()関数を比べています。

ちなみに、もとのデータはチュートリアルでも使っている漱石の「こころ」で
す。赤の四角形は「上」「中」「下」といった変数の位置を、グリーンのドッ
トは語の位置をあらわしています。

■biplot関数(デフォルト)の特徴

添付画像を見ると、biplot()関数では、変数は変数で枠いっぱいに広げ、語は
語で枠いっぱいに広げていることが分かるでしょう。変数(行スコア)と語(
列スコア)とで、図形としての扱い(拡大率)を変えて、それぞれを枠いっぱ
いに広げているのです。(※したがって、これはもう「対称的なプロット」と
は言えないように思います)

上のNo.1923に出てきた(1)〜(3)までに関しては、プロットを全体として縦横
に引き延ばすというだけの違いでした。それに対してbiplot()では、変数と語
との、相対的な位置関係まで変化していることがわかるでしょう。

■メリット・デメリット

変数と語とを別々に枠いっぱいに広げることで、スペースを有効に利用できる
可能性が高まるように思います。一方で、伝統的に多用されてきた(2)と比べ
ると、けっこう印象が変わることもあってか、このbiplotの方式をよしとしな
い方もいらっしゃるようです。

ただ、原点からの方向と距離を見るという、上のNo.1926で述べた正しい解釈
のしかたであれば、(2)からでも(4)からでも、まったく同じ分析結果を読み取
ることができるはずです。

■まとめ

正しい解釈のしかたならば同じ結果を読み取れますから、個人的にはbiplot()
の方式に問題があるとは考えていません。ただ、以前から多用されてきた方式
とは異なることを知っておいても良いかもしれません。

ということで、いくつかのプロット方式がありますが、正しい解釈のしかたさ
え知っていれば、実用上はあまり気にしなくてよいように思っています。


  [No.1942] Re: 対応分析のプロット図の軸について(biplot関数についての補足) 投稿者:永井  投稿日:2015/01/14(Wed) 17:19:57

樋口さん

さらに解説していただきありがとうございます。
大変勉強になりました。

統計の知識を出来る限り学ぶ必要性を強く認識しました。
他の方の質問も目を通して理解を深めようと思います。
今後ともよろしくお願いいたします。


  [No.1944] Re: 免許があれば… 投稿者:HIGUCHI Koichi  投稿日:2015/01/14(Wed) 17:56:09

こんにちは、樋口です。
ご丁寧にご返信いただいてありがとうございます。

> 統計の知識を出来る限り学ぶ必要性を強く認識しました。

えっと、余計なお世話かなという気もしますが、私自身は、運転免許があれば
車は十分運転できると思っています。車・エンジン・変速機といったものの仕
組みにそれほど詳しくなくても、です。

たとえば車の自動変速機が、6段階(6速AT)であれ無段変速(CVT)であれ、
おそらく、運転のしかたはそんなに変わらないと思います。「変速機をデュア
ルクラッチ方式にすることで変速がなめらかに」とか、そういうことを車好き
の方が議論するのは楽しいでしょう。ただ、すべてのドライバーにそういった
知識が必須かというと、いささか疑問です。

対応分析の場合であれば、上で述べた正しい解釈の仕方(すなわち免許取得に
必要な事柄)を知っていれば十分かなと、私自身は考えています。ですから、
車の仕組みに必要以上に深入りするよりも、実際の運転に力を入れて、目的地
に接近されることが個人的にはお勧めです。

※確かに、どの程度までが「免許取得に必要な事柄」かを確認するためには、
ある程度勉強する必要があるかもしれません。このあたりは、良い先達に恵ま
れると楽という面もありますが、今は良い本・資料も増えていようかと。

# すみません、車かバイクの免許をお持ちでないと、まったく伝わらない例か
# もしれませんね…。


  [No.1924] Re: 質問の仕方について 投稿者:HIGUCHI Koichi  投稿日:2015/01/06(Tue) 18:17:12

これは一般論として皆さま念のためにご確認いただければと存じますが、掲示
板にご質問を投稿していただく際には、どうかある程度までは、ご自身でもお
調べになり、お考えになってください。そして、お調べになったこと、お考え
になったことを書き込むようになさってください。

調べるというのは、必ずしも何か文献にあたらなければいけないということで
はなく、ソフトを実際に操作してみて結果を詳しく見ていただくということで
十分な場合が多いでしょう。たとえば、プロットを実際に数種類作成してみて、
違いを詳しく見るといったことです。

調べたこと考えたことをお書きいただけないと、どのような内容を期待されて
いるのか、どこから解説を始めてよいのか、どのレヴェルで書くべきかといっ
たことが、判断しにくいのです。すなわち、お答えするのが少し難しいのです。

しかも、その結果として、答えを書いたとしても、的外れな答えになってしま
うかもしれません。尋ねる側からしても、調べたこと考えたことを書けば、的
外れでない、適切な答えが得られる可能性が高まります。

つまり質問の際に、自分なりに調べ考えてその内容を書いていただくことは、
尋ねる側・答える側の双方にとって有益なのです。


なお、決して安価でない有償のコンサルティングでしたら、「1から10まで解
説して」というご要望も歓迎です(笑。しかし、その場合でも、ご自身で調べ
考えていただいた方が、費用対効果はきっと良いでしょう。