【初月無料キャンペーン中】gooドクター

男女数百人の集団がある、とします。
彼らの身長を測定し、棒グラフを作ります。
(男女が混在した棒グラフになりますね。)
質問は、この棒グラフから、男性のみと女性のみの二つの棒グラフを作る(分離する)ことができますか?
(私は、実際に作ろうというわけでなく、作れたらその方法の考え方がおもしいだろうな、と思っています)

A 回答 (22件中1~10件)

#13です。



実際に正解のあるデータを一旦ブラインド化し、そこから元のグラフがどれだけ再現できるかやってみました。

使用したデータはRのMASSライブラリにバインドされているアデレード大学の学生237人の性別と身長です。10代後半から20代の学生たちの実測値で単位はcmです。欠損値のあるものは取り除きましたので、実際のn数は208です。

一番上のヒストグラムは生データでこれを正解とします。赤が女性、青が男性です。
二番目のヒストグラムは性別をブラインド化し混合ガウス分布で識別した結果です。ただし、2群である、等分散ではない、という条件を付けました。
三番目のヒストグラムは各サンプルの帰属確率からル-レット選択をして再現したものです。完全には再現されませんし、実行するたびに(乱数を使っているので)形は微妙に変化します。

現在の統計科学では、ここまでは可能です。

続いて、Rのスクリプトを投稿します。
「男女が混在した身長の棒グラフから、男性の」の回答画像14
    • good
    • 1
この回答へのお礼

度々のご解答ありがとうございました。
結構良い再現ですね。

お礼日時:2021/09/01 15:34

No.22=20です。


 No.15さんの「, add = T」が男は女より背が高いを指定しています。


みやしさんとみのぶつさんおはようございます。
 『本日のタピオカです。』https://twitter.com/akikankeri/status/1174461341 …さんがあります。ご査収ください。仮説は教師無し分類ができないと思っている人が多い。です。検定するための確率は思うと思わないが0.5ずつです。50%以上であれば多いです。標本数は11です。そのうち9個が true です。9/11=0.8181…です。大体82%です。50%以上です。検定すると仮説は正しいです。教師無し分類ができないと思っている人が多いです。
        できない
標本番号    と思う:1
1  No.1さん   1
2  No.2さん  1
3  No.3さん  0
4  No.4さん  1
5  No.5さん  1
6  No.6さん  1
7  No.7さん  0
8  No.8さん  1
9  No.9さん  1
10 No.17さん  1
11 No.19    1
 No.8さんが標本が1つで日本企業全体がどの程度の高さか推測していて面白いです。No.18が理解できないです。母集団は情報科学者さんに仕事を頼むような人たちです。90%以上と設定していたら少ないが結果になります。
 多いの基準は幾つ以上に設定していましたか?

 どのくらい先に決めてどのくらい教師なしで分類しているのでしょうか?
 1.2つに分ける
 2.分けた山の頂上は1つ
 3.山の形は正規分布
 4.右の山が男
 5.二つに分けた後の標本数が同じ
 237個の標本があってその中の1個が150cmだとしてどのような標本の特徴が出てくるでしょうか?
 1個の標本に1個の値があります。平均値を出して背が高いか低いか程度の分け方があります。あとは元の山に似た2つの山に分けるです。各々の頻度を2等分するとできます。頂上が2個ある各々の山に分かれます。いい感じの頂上が1つの山2個に分けるのに algorithm がしているのは何でしょうか?
 身長が168.0~169.9の集団と他の2cm刻みの26個の集団に分けて各々のある特徴を抽象するのでしょうか?
    • good
    • 0
この回答へのお礼

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

お礼日時:2021/09/09 06:37

No17です。



何に感激したかどうか、ですが、

帰属確率が得られていることと、それをもとにルーレット選択をされたことの両方です。
    • good
    • 2
この回答へのお礼

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

お礼日時:2021/09/02 17:16

#19様



#18です。

ありがとうございます。

どちらの山が女性か、というのは、確かに恣意的ですね。おっしゃるとおりです。「分離できる」まででとどめておくべきでした。鋭いご指摘です。

凄みは、
重なり合いを許すっていう点は、そもそも混合ガウス分布の特徴だから、ズレて重なっているのは当然です。
それを帰属確率からルーレット選択をして作ったという点が、Qiitaネタ的だったのかもしれません。
もしくは、多くのMclustの解説には、帰属確率が出力されることまで書いてありませんから、そこかもしれません。
教師無し分類も最近の傾向ですしね。

興味深い応用例、ありがとうございます。
企業では、「納入された○○部品は2台の製造装置を使って増産対応している(一方は外注しているかもしれない)」「競合相手の〇〇製品の粉末はこれらの狙い値の粒径のものをこんな比率で混合している」など、ブラックボックスである敵情の分析に使います。


ところで・・・、
新納先生の「Rによるクラスタ解析」がネット上に転がっている件、もしかすると事故かもしれません。だから急いでダウンロードしましょうと言っているわけではありませんが。

http://barbra-coco.dyndns.org/eiyou/r/cluster-an …
    • good
    • 2
この回答へのお礼

ご解答ありがとうございました。
<ブラックボックスである敵情の分析に使います。>なのですか。興味深いですね。

お礼日時:2021/09/02 17:16

P櫃さんおはようございます。


 分けた後の二つの山をどちらが男性の山でどちらが女性の山か決めるのが難しいです。

みやしさんおはようございます。
 No12,13,14,15,16,18が良かったです。Fourier 級数展開と似ています。A型とAB型いずれかの人の山とO型とB型のいずれかの人の山に分けようと意図して同様のことをやっても同様の結果が出ます。数値が身長ではなくて貯金額だったりすると面白そうです。No.17さんがいうようにズレて重なってるところも分けられる点が凄いのでしょうか?それともNo.18で言うように教師無しなところが凄いのでしょうか?
    • good
    • 1
この回答へのお礼

ご解答ありがとうございました。
厳密に考えれば、男女の区別はわからないのですね。

お礼日時:2021/09/02 17:14

#17様、



ありがとうございます。
「教師無し分類」ができないと思っている人がこれだけ多いので、我々データサイエンティストの仕事はしばらくは無くならないと思います。
    • good
    • 0
この回答へのお礼

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

お礼日時:2021/09/01 15:36

素晴らしいです。


Mclustのclassificationではクラスター分析のように線引きされた結果しか出なかったので、これまで重なった分布は描けないと思っていました。
    • good
    • 1
この回答へのお礼

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

お礼日時:2021/09/01 15:35

確認したら、動かないケースがありました。



result <- Mclust(x$Height, G = 2, modelNames = "VII")

↓訂正させて下さい。

result <- Mclust(x$Height, G = 2, modelNames = "V")

トライされた方々へ、申し訳ありませんでした。
    • good
    • 1
この回答へのお礼

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

お礼日時:2021/09/01 20:57

#14です。



前の投稿の解析を行ったRスクリプトです。
一応動いていますが、どなたか間違いを発見したらご指摘下さい。

~~~~~~~~~~~~~~~~~~~~~~~~

# 教師無し分類 ~Mclust~
# アデレード大学の学生237人の身長を事例として

library(MASS)

x <- data.frame(survey)[, c(1, 10)]
x <- na.omit(x) # 欠損値除去

par(mfrow = c(3, 1))

bins <- seq(140, 210, by = 2)

hist(x$Height[x$Sex == "Female"], breaks = bins, col = "#FF000070", xlim = c(140, 210), ylim =c(0,20), main = "Real Data", xlab = "Height")
hist(x$Height[x$Sex == "Male"], breaks = bins, col = "#0000FF70", xlim = c(140, 210), ylim =c(0,20), add = T)


# ブラインド化したヒストグラムと識別結果

hist(x$Height, breaks = 20, xlim = c(140, 210), freq = F, main = "Blinded Data", xlab = "Height")

library(mclust)

result <- Mclust(x$Height, G = 2, modelNames = "VII")

summary(result)

r1 <- nrow(x)/sum(result$classification == 1)
r2 <- nrow(x)/sum(result$classification == 2)

xx <- seq(140, 210, length = 1001)
lines(xx,dnorm(xx,result$parameters$mean[1],sqrt(result$parameters$variance$sigmasq[1]))/r1, col = 2)
lines(xx,dnorm(xx,result$parameters$mean[2],sqrt(result$parameters$variance$sigmasq[2]))/r2, col = 4)


# 再現されたヒストグラム

x$GMMclass.fuz <- ifelse(result$z[, 1] > runif(nrow(x)), 1, 2)

hist(x$Height[x$GMMclass.fuz == 1], breaks = bins, col = "#FF000070", xlim = c(140, 210), ylim =c(0,20), main = "Reproduced Data", xlab = "Height")
hist(x$Height[x$GMMclass.fuz == 2], breaks = bins, col = "#0000FF70", xlim = c(140, 210), ylim =c(0,20), add = T)
    • good
    • 1
この回答へのお礼

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

お礼日時:2021/09/01 15:31

#7です。



コメント、ありがとうございます。
低レベルだと中傷され、気落ちしていたところです。
私個人でなく、日本の企業人全員に不愉快な思いをさせ、申し訳ない気持ちです。ただ、頑張って成果を出せば分かる人には認めてもらえると思いますので、日々の業務で頑張るしかないです。

話は変わって、実際の男女の身長のデータを使って、ブラインド化したのち、どのように分離が掛るかという実例をアップしますので、閉じずに待って頂けたらと思います。
ただし、各サンプルが男に帰属するか女に帰属するか、その確率しか分からないため、ルーレット選択で性別を決めるという手法を使います。
回答者の皆さんが想定されている各人の性別まで正確に判明する、ということではありません。あくまで、分布として分かれてくる、ということです。


さて、ご質問の件、
>もちろん、2つのグラフがある程度どうなるかは、わかっていなければならないのでしょうね。

いいえ、何も分かっていない状態すなわち1群の状態から出発します。
具体的には、何群に分かれるのか、数量の比率は同じなのか違うのか、等分散なのか違うのか、全て分かりません。
おっしゃるとおり、モデルの前提が無ければフィットできませんから、普通ならこの時点で破綻します。
これは、#9ありものがたりさんがご指摘された問題点です。

そのため、あらゆるパターンを想定して、全て調べる必要があります。#12にその話を書きました。
その中から最良のものを選びます。その指標にBIC(ベイズ情報量規準)を使います。


追伸、
今回のご質問のようないわゆる「層別=外的基準の無い選り分け」の問題は、機械学習では「教師なし分類」という問題となります。
特にソフトな境界で(あるいは互いに重なり合いを許す)分類を行うものには、混合ガウス分布の他に、非負値行列因子分解とかファジー・クラスタリングという方法があります。

これらが書いてある参考図書を挙げておきます。ネットでも読めます。ただし、一般人を基準にすると高レベルなのではないかと思います。

新納浩幸(2007)『Rで学ぶクラスタ解析』,オーム社,6章・8章・9章
    • good
    • 0
この回答へのお礼

度々のご回答ありがとうございました。

さすが専門家は面白い手法を駆使しているのだな、と仰天・感謝しております。

素人が、統計学について考えていることを書きます。
人より強い囲碁のAIでは、特に序盤については、この手を選べば勝率が〇〇という予測を立てるそうです。(すべての進行を読み切っている、というわけでなく) 一見あやふやな勝率を頼りに、手(進行)を決定しているようです。 
(しかし、終盤に近くにいくと、相手の手がどうなろうがすべてを読み切ってしるそうです)
統計においても、全ての可能性を考量して(囲碁の場合、完全に読み切りに相当する)今回の男女の棒グラフを作るほどではない、と思います。

お礼日時:2021/08/31 18:23

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング