プロが教える店舗&オフィスのセキュリティ対策術

以前類似した概念で質問しましたが、一部考え方が変わりましたので、再度質問させていただきます。お許しください。

N=8000ほどの母集団が存在し、50ほどのグループに分かれています。
そしてN=8000に対して30000種類ほどの特徴の有無が0, 1表記されています。
例えば、以下の具合です。

特徴1 特徴2 特徴3 ・・・・・ 特徴30000まで
00001 1 0 0
00002 0 0 0
00003 0 1 0
00004 1 0 1
00005 0 1 1
00006 1 1 1
~N=8000まで

更に00001~00203番まではグループA、00204~00303まではグループB
といった具合で、特徴1-3000にはないある決定的な要因でグループわけがされています。
人種に例えていただくとわかりやすいかと思いますが、グループAがアメリカ、Bが日本で、00001などが個人個人、特徴が身長・目の色などと考えていただくといいと思います。
特徴1と2にはまずは相関関係は全くないと想定して話を進めます。

やりたいとこととしては、
①新しい8001が入ってきたときにどのグループに配属されるかを決定すること(できれば確率も出したいです。例えばグループAの確率が30%、グループBは5%など)。
②特徴が30000種類ありますが、この中でグループ配属に関わる特徴のみを抽出したいと考えています。

どのような検定・解析方法が考えられますでしょうか?
御教示いただけると大変助かります。

A 回答 (3件)

>当方統計学は素人ですが、ソフトを使えば簡単にできますでしょうか?


とりあえず試してみたいということでしたら、「R」という統計解析の分野でよく使われているソフト(フリー)を使うのがよいかなと思います。
kernlibというパッケージを使うのが一番手軽だと思います。
http://qiita.com/kokumura/items/64eefc8594995b1d …

理論を勉強したいということなら、最近でた
http://www.amazon.co.jp/dp/4061529064/
はどうでしょうか。かなり丁寧に書かれていると思います。
    • good
    • 0

前回の回答で納得いかないということで、私はお呼びではないのかもしれませんが。


質問のような状況は、機械学習の「識別(分類)問題」というものの典型的な枠組みにドンピシャではまっているので、まず少し機械学習という分野について勉強されてみたらどうでしょうか。
有名なビショップ先生の本(この世界では「ビショップ本」とか「PRML]とか呼ばれてほぼ皆が読んで(積んであるだけ?)います)など。
http://www.amazon.co.jp/%E3%83%91%E3%82%BF%E3%83 …

あるいは、
http://breakbee.hatenablog.jp/entry/2014/08/16/0 …
なんかから分かりやすそうな本を読むなり。

個人的には、前回も書きましたが、それくらいの特徴の数とデータ数であれば、まずは、サポートベクターマシン(SVM)を試されることをお勧めします。
    • good
    • 1
この回答へのお礼

ものすごい参考になっていますが、
前回と質問内容を変えましたので再度聞かせていただきました。
当方統計学は素人ですが、ソフトを使えば簡単にできますでしょうか?
研究で、どうしても取り入れたい概念です。
個人的にもう少しやり取りしたいです。

お礼日時:2016/02/05 19:52

特徴1~3000 が、それぞれ独立で意味のある「特性値」であるとすれば、簡易的には下記のような「機械的判定方法」は考えられます。

それがどのような意味を持つのかは、何とも言えませんが。

(1)特徴1~3000 それぞれに対し、全体の「平均」を取る。
(2)各グループに分割した固体の特徴1~3000 それぞれの「平均値」を求め、(1)の全体平均からの「偏差」を求める。
(3)これにより、グループNの特徴を、
  f(N) = (偏差N/0001)× g(0001) + (偏差N/0002)× g(0002) + (偏差N/0003)× g(0003) + ・・・ + (偏差N/3000)× g(3000)
によって表現する。g(X) (X=1~3000)をどのようなものにするのかは、工夫を要すると思います。
 すべて異なる関数としてもよいし、似たような特性をグループにまとめて共通の関数にしてもよいし、優先順位順に並べるための関数でもよいし、重みづけのための関数(たとえば g(0001) = 1000 * g(0002) とか)でもよいし。

(4)あらたに出現した固体に対しては、
  f(8001)= (偏差8001/0001)× g(0001) + (偏差8001/0002)× g(0002) + (偏差8001/0003)× g(0003) + ・・・ + (偏差8001/3000)× g(3000)
を計算して、(3)によって計算した最も近い f(N) を特定して「グループ N に最も近い」と判定する。

 ここでは、とにかく(3)の評価式をどのように作るか、ということがキーポイントとであることがお分かりかと思います。
 例えば「人種」についていえば、「肌の色」の特徴項目が大きな決定要因になることは間違いなく、そういった「これが一致すれば確実に該当」というものと、「これが違ったら確実にあり得ない」というような「決定的要因」と、例えば「手の指の本数」のように全く関係しない「無駄要因」をどのように切り分けるか、というのが(3)のポイントかと思います。
 さらに蛇足ですが、「人種」ではなく「どこの国民か?」というような問題だと、同じアメリカ人にも「白人、黒人、日系人、帰化人、難民」もいる(日本国民には、日本人と結婚した白人もいる)、というような事態をどう評価するのか、「人間は2足歩行、動物は4本足」に「障碍者をどう考えるか」という応用問題も存在することをよく認識することも必要かと思います。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!