LuckyOceanのブログ

新米技術士の成長ブログ

QCA分析は論理演算で因果関係を解明する。

はじめに
今日は、データマイングの5回目だ。残すところはあと2回か。早いなあ。今まではRを使ったデータ分析が多かったが、今日はRではなく、QCAだった。QCAの狙いは、因果関係を解明することだ。しかし、本当に因果関係を解明することができるのだろうか。

QCA分析とは
日本語では、質的比較分析だ。英語なら「Qualitative Comparative Analysis」だ。論理和論理積などのブール代数を用いてデータの因果関係を解明しようとする手法だ。
f:id:hiroshi-kizaki:20191210221853p:plain
 出典:https://mm-lab.jp/statistical/find_causal_relationships_qca/

スモールデータ
大量のデータを分析することが注目されている。いわゆるビッグデータ分析だ。IoTの進展に伴って超大量のデータを収集できるので、それを分析することでお宝を探す手法だ。しかし、膨大なデータを収集できないケースもある。サンプル数が数十とか数百だとダメなのか。そんな規模のスモールデータでも論理的な演算をすることで因果関係を分析しようというのがQCA分析の狙いだ。

カリフォルニア大学のチャールズ・レイガン教授
森大輔熊本大学教授や、田村正紀神戸大学名誉教授、豊田裕貴法政大学教授がQCAを研究している。UCLAのチャールズ・レイガン教授が論文に発表して広がった。日本語で読むならどの本が良いのだろう。アマゾンでは田村名誉教授の著書が出てくる。
f:id:hiroshi-kizaki:20191210223327p:plain
 出典:amazon

ダウンロードの方法
Rでも使えるようだが、今日は専用のアプリが紹介された。ダウンロード方法は簡単だ。Googleで「fsqca socsci」と検索すると、下のような画面にたどり着くので、WindowsMacのソフトをダウンロードするだけだ。
f:id:hiroshi-kizaki:20191210223558p:plain
 出典:fs/QCA Software

csQCAとfsQCA
QCAには2種類ある。今日習ったのは二値を取り扱うcsQCAだ。csとはクリスプ集合の略だ。一般にQCAというとcsQCAを指す。一方、二値ではなく、連続数を対象とする場合にはfsQCAを用いる。fsはファジー集合の略だ。それぞれの事例のデータはファジー集合のメンバーシップ度として取り扱われる。応用範囲はこちらの方が広そうだけど、流石に今日の授業ではそこまでは踏み込まなかった。

コンピュータは意味がわからない
AIによる深層学習が注目を浴びている。特に、産業面では深層学習の技術を応用した商品がさらに普及するだろう。しかし、深層学習ではそのロジックがブラックボックスだ。自販機の前に立った人に最適なメニューが表示されるが、それが正解かどうかはわからない。もしかしたら間違っているかもしれない。現在の深層学習はそんな間違いを許容できる用途で使われるだろう。

ストーリーを作るのは人間
このブラックボックスの見えるかも研究されているが、実用化はまだ先だ。QCAでは、0か1かの共起関係や連続数の相関関係に加えて、因果関係を分析できる。しかし、そのためには解釈方法の定義を前提条件として設定してあげる必要がある。この辺りはまだまだ開発途上と言える。

まとめ
現状のQCAは、手作り感はあるにしても、因果関係を調べられるのはすごいと思う。まだまだ使いこなせないけど、そんなことができるんだと思うだけでまずは成果と思おう。できれば色々と試してみたい。

以上

最後まで読んでいただきありがとうございました。