質問

ある一つの変数に対するデータを数多く収集したとします.一人ひとりに一つづつ値がある身長などです.それを使って身長に関する確率密度を求めたいと思った場合,どのような操作手順になるでしょうか.例えば,最低身長を1mとして5cm刻みのレンジでその中に入る度数を調べて全数で除して,棒グラフみたいなものができたとします.そのグラフの縦軸は確率という次元(無次元)になります.横軸は身長ですね.そのようにしててきたグラフは実は確率密度ではないと思います.なぜなら,確率密度関数を横軸(身長)で積分したら確率になるのだから確率密度関数は身長の逆数の次元を持つ必要があります.そうしますと,例えば先に求めた5cmのレンジに対応して求まった確率をその刻み幅5cmで除す必要があるでしょうか.
このようなことが明記されているテキストがありましたら教えて頂きたいのですが.私の見る限りでは確率密度関数を実際のデータから求めるという演習が載っているものがなく,すべて確率密度関数が与えられているという前提での演習ばかりです.

よろしくお願いします.

通報する

回答 (7件)

>確率密度関数の定義を明確にすること
は,そのとおりです。
定義とともに,どのような仮定(前提)で話を進めるかが重要です。

確率や統計は,身近にあることが対象となりうるために,かえって定義が曖昧になっているような気がします。

かなり確率を学んでいる(私よりかも・・)ようなので,蛇足かもしれませんが,ビュッホン(Buffon) やベルトラン(Bertrand)の問題では,定義が不明確のため解答に混乱を招いてます。
(参考)
http://www.core.kochi-tech.ac.jp/m_inoue/work/ma …

>すなわち連続型の確率論が先に来るというのが正しいのでしょうか

先に来る,という意味が,はっきりしませんが,連続型で全て表せると考えてもいいでしょう。

確率論でデイラックδ関数を取り上げ,離散も連続も積分を使って一般的議論という解説もあります。古典力学と量子力学の橋渡し,ですね。

>レンジの確率密度関数でなく,その単位レンジの密度関数です。というのは確率密度関数の定義が既に先にある,ことを意味していると思います.

ここも微妙ですが,「 確率 」密度関数とまでは言っていません。その点,注意深く言ったつもりです。自分でも間違いやすいので・・・

棒グラフで止めれば,「離散密度関数」でしょうし,さらに,後半で話したように,曲線近似までもっていけば,「確率密度関数」です。

>確率・統計という学問は解析とか代数という数学分野とちょっと異なっているように思います。

全くそうですね。冒頭述べた,身近にある,ありすぎる点から,問題をややこしくしています。

>確率・統計については逆に実際に計算する手法が先にあってそれが定義であるかのように理解してしまう側面があるのではないでしょうか.

これも全く同意です。
例えば,
誰もが誤差分布の正規性を信じている。実験家は、数学的定理であると思っ ているからであり、数学家は、実験的事実と思っているからである。 (クラメール)
なんて言葉もあるくらいです。

また,統計の計算手法をめぐっては,ここの回答No1にも出てきたsanoriさんと真っ向から対立したくらいですから,
http://okwave.jp/qa/q6733154.html
計算,それが定義,という面はあると思います。


>数学的な厳密性に対して反乱することがほぼできません.
私も応用分野の人間ですから,そんなものですよ。

>私が挙げた箇条書きの計算手順で循環論になる部分があるとしたらどの部分でしょうか

2.各レンジの度数をレンジ幅で除したリスト(棒グラフ)を作成する.
3.そのリストを積分して値Sを求める.理屈から考えると総サンプル数になるが.

の部分です。各レンジは,総サンプル数が得られたからこそ決められます。例えば,あとからサンプルを加えて行けば,レンジが変わることもあるでしょう。

その決められたはずの総サンプル数に計算を施して,総サンプル数を求める,総サンプル数が求まったら,レンジを決める,決めたら総サンプル数を求める計算をする・・・

こういうことですか?
それなら,不要な計算です。

すみません,No4訂正です。

私の示した例では,
5 cm 当たり,でなく,10 cm 当たり(10cm幅)でした。

No4の図が、うまくUPできなかったようなので,ここに再掲です。

少々わかりづらい点があるのですが。。。

例えば,身長が
150cm以上160cm未満,10人
160cm以上170cm未満,10人
170cm以上180cm未満,10人
の合計30人いたとします。

それぞれの絶対度数10人を合計の30人で割って,相対度数を求めると
150cm以上160cm未満,1 / 3
160cm以上170cm未満,1 / 3
170cm以上180cm未満,1 / 3
となります。

人数を人数で割ったので,「無次元」と言っているのではないかと思いますが,いかがでしょうか?

もしそうなら,絶対度数とか相対度数(あるいは割合)という言葉を入れてください。
そうでないと分かりにくい。

もし以上の私の推察が正しければ(質問者の意図を誤解してなければ),以下の解説を参考にどうぞ。

回答No1のお礼に示した

2.各レンジの度数をレンジ幅で除したリスト(棒グラフ)を作成する.
3.そのリストを積分して値Sを求める.理屈から考えると総サンプル数になるが.
4.各リストをSで除した値(規格化)がそのレンジの確率密度関数となる.

は,間違いではありませんが,あまり良い方法でなく,また,循環論にもなっています。

例えば,
2.度数をレンジ幅で除するような2次操作をせずに,最初から,レンジ幅を調節(例えば,1cm)として,そこに落ちるデータ数を数えたほうが,生データをそのまま使えて正確です。

3.Sは,総サンプル数なのに,なぜ,わざわざ積分で求めるのでしょうか?

4.各リストをSで除した値(規格化)がそのレンジの確率密度関数.
変ですよ。2で,リストは,除されたレンジ幅(単位レンジ幅,例えば,1cmあたり)の度数となっています。だから,求めたのは,レンジの確率密度関数でなく,その単位レンジの密度関数です。

それなら,最初から単位レンジ幅を定め,その中のデータ数を求めて,そこから密度関数を割り出せば良いことです。

そもそも,問題が離散なのか連続なのか,混同した話になっています。

確率密度関数という用語は,通常,連続分布に使います。

上記のような離散分布の例では,確率質量関数(probability mass function)とか離散密度関数とか確率離散関数とか言われます。私も,このような離散と連続に対する用語の区別に賛成です。

それでは,まず,離散分布の場合。
上記例に示したように,離散密度関数は
1 / 3, 1 / 3, 1 / 3
となります。質問者が言うとおり,無単位(無次元と言うより,こちらのほうが良い)のように見えます。

その和は,
1 / 3 + 1 / 3 + 1 / 3 = 1
です。

しかし,これは無単位というわけではありません。「5cm当たりの確率」を示すからです。
あえて単位をつければ,1 / (5 cm) となります。
回答No1の指摘に近いものですが,私の推察どおりで,既に全数で割った話(つまり比率)なら,人 / (5 cm) のように「人」が付くことはありません。

通常は,このような,1 / (5 cm) は書かれていません。階級(この場合,5 cm)の逆数になるので,書かなくても分かるからです。

したがって,上記の和は,正確に書くと,それぞれ,
高さが,(1 / 3 )/ (5 cm)
幅が,5cmなので,
面積は,高さ*幅より,
(1 / 3 )/ (5 cm) *(5cm) + (1 / 3 )/ (5 cm) *(5cm)+ (1 / 3 )/ (5 cm) *(5cm)
= 1 / 3 + 1 / 3 + 1 / 3 = 1
となります。

ただしこれは,幅をcm (本例では,5cm)で表そうが,mm (本例では,50mm)で表そうが,m (本例では,0.5 m)で表そうが,
1 / 3 + 1 / 3 + 1 / 3 = 1
です。
つまり,x軸の単位に影響されません。いくつに区分するか(本例では,3)によって確率が変わります。

次に,連続分布の場合。
上述の離散分布に類似して,区間 150 cm ≦ x ≦180 cm で,一様確率密度関数を考えます。
すると,
f(x) = 1 / (180 - 150) = 1 / 30  (150 cm ≦ x ≦180 cm)
f(x) = 0  (その他のx)
となります。
添付図左です。当然,面積は,30 *(1 / 30) = 1です。

ここでも,図の縦軸に「単位」が示してあることに注意してください。
通常は,これも書かれていません。x軸単位の逆数になるので,書かなくても分かるからです。

そして,確率は無単位,という思い込みの落とし穴がここにあります。
左図の縦軸は,いわば「1cm当たり」の出現率を示しています。
さきほど述べた,「単位幅」に相当します。

ここで,単位をcmの代わりに,mとしてみましょう。

一様確率密度関数は,
f(x) = 1 / (1.8 – 1.5) = 1 / 0.3 = 1 0/ 3  (1.5 m ≦ x ≦1.8 m)
f(x) = 0  (その他のx)
となります。
添付図右です。これも,面積は,0.3 *(10 / 3) = 1です。
縦軸は,「1m当たり」の出現率を示しています。その値が,1を超えている点も注意しましょう。

両方とも,全体面積は1であり,10cm (0.1m)間隔で調べると,1/3 となります。
しかしながら,x軸の単位をどう取るかで,確率密度関数は異なってきます。

縦軸は,確率と呼ぶより,x軸に示された単位当たりの出現率を示しており,その関数が確率密度関数となります。

しかし,前述のとおり,それはx軸を見れば分かることなので,わざわざ「x軸に示された単位当たりの確率密度」と書かないで,せいぜい「確率密度」とか「相対頻度」などと書かれる程度です。

人口密度などという場合と同様に,確率密度というわけは,このように,ある単位あたりの出現割合を示すことから来ています。

離散分布の場合,離散密度関数をp(x)とすると
∑p(x) = 1
であり,
0 ≦ p(x) ≦ 1
です。
一方,連続分布の場合,確率密度関数をf(x)とすると,
∫f(x) = 1
ですが,
f(x) は,非負,つまり f(x) ≧ 0 というだけで,1を超えることもある点に注意しましょう。
これは上記でも説明したとおりです。

>確率密度関数が与えられている問題ばかり
ある意味当然のことです。

離散分布でも連続分布でも,事象の出現確率をどう関数で示す(近似する)か,という問題となります。したがって,既に知られた分布(例えば,ポアッソン分布とか正規分布とか)で近似できるかどうかという問題に帰着されるからです。もし,xを変数変換(例えば対数など)しても,既知のどの分布にも適合せす,新たに適合する密度関数を見つけられれば,それだけで優れた発見となるでしょう。

それでもなお,自分なりに密度関数を作ろうとすれば,
∑p(x) = 1 (0 ≦ p(x) ≦ 1)
または
∫f(x) = 1 (f(x) ≧ 0)
に合うように,p(x)なりf(x)を定めてやれば良いのです。
だから,質問者の考える方向性は誤っていません。

この回答へのお礼

大変示唆に富む回答を頂き,ありがとうございます.
現在,この回答を印刷して検討しているところです.また途中までしか読み通しておりませんが,前段部分までの内容について私の考えを述べたいと思います.

この一連の議論(私の元発言でも)において確率分布とか確率密度関数などの定義に触れられていないように思います.その部分が不明確のまま実例として確率密度関数の計算方法の手順をお尋ねしています.しかしながら一般的なテキストでは確率・統計では実例の方(サイコロとか宝くじとか)が先にあってそれらを元にして計算手順を示してからそのような物が確率密度関数である,という風な展開になっているように思います.
従って確率密度関数の定義を明確にすること,すなわち連続型の確率論が先に来るというのが正しいのでしょうか.

回答者さまのコメント:
>変ですよ。2で,リストは,<中略>となっています。だから,求めたのは,レンジの確率密度関数でなく,その単位レンジの密度関数です。

というのは確率密度関数の定義が既に先にある,ことを意味していると思います.

また,以下のコメント:
>3.Sは,総サンプル数なのに,なぜ,わざわざ積分で求めるのでしょうか?

箇条書きした私の計算手順の中にもまだ連続量的なことが何も定義されていないのにその手順の中に”積分”のなどと軽々しく言っているわけで定義とか計算手順がごちゃまぜになっています.

このあたりのことをしっかり整理したいと言う気持ちがあります.

以下,ちょっと大げさになるかも知れませんが,確率・統計という学問は解析とか代数という数学分野とちょっと異なっているように思います.
例えば力学現象は解析的に表現されており,それが厳密であることがとりあえず承認されています.それを離散的に近似してシミュレーションが行われていると思います.言わば学問的な教義の有り様が固定されているわけです.私が確率・統計に対してそのような理解が不足しているのでこのような質問が出てくるのだと思います.
確率・統計については逆に実際に計算する手法が先にあってそれが定義であるかのように理解してしまう側面があるのではないでしょうか.
”計算手順=定義”という混乱です.

私は先に述べた力学現象側の人間なので,数学的な厳密性に対して反乱することがほぼできません.しかし,確率・統計は具体例の方が優先されて理論が規定されていくのではないでしょうか.だから,確率・統計では発見者の名を冠した理論が多いように思います.

以上,大げさな展開となっておりますが,確率密度関数の根本的な定義についてお考えを頂ければと存じます.
また,私が挙げた箇条書きの計算手順で循環論になる部分があるとしたらどの部分でしょうか.どこかに”ある定義の中にその定義が含まれる”ということじゃないのかなと思いますが.

確率密度を推定する方法ならあります。

density estimationで調べれば、推定する方法がたくさん出てきますし、本もあります。
しかしながら、これらの方法は密度の形状を推定するものであって、関数形を特定するものではありません。

今後、統計学を学ばれれば分かることと思いますが、確率密度関数を推定したいなら、まず身長という確率変数が従っている分布にパラメトリックな分布(正規分布やガンマ分布などなど)を仮定し、最尤法で分布の形を特定することならできます。

そのとおりです。

ちょっと補足しますと、
区間を細切れにすると、それだけ関数の精度は上がるのですが、
サンプル数(人数)がそれほど多くないなどの理由で棒グラフ(というかヒストグラム)のてっぺんがぎざぎざになるようだと、当てはめた関数(多項式近似など)が適切なのかどうかが判定しづらくなります。

(工業の品質管理のQC七つ道具のテキストに、たしか、ヒストグラムの区間の刻み幅を簡単に最適化する方法が書かれていますが、昔勉強したことなので忘れてしまいました。)

こんにちは。

>>>横軸は身長ですね.

はい。そうです。

>>>そのグラフの縦軸は確率という次元(無次元)になります.

いいえ。 人/(5cm) という次元になります。
そして、棒の高さを全部5分の1に縮めると、人/cm になります。

しかるのち、総面積(総人数)が1(1人)になるように規格化すると、
縦軸の単位が 1/cm で、横軸の単位が cm の確率密度関数のグラフになります。

この回答へのお礼

ありがとうございます.箇条書きにすると以下のようでしょうか.
1.レンジ幅(5cmなどを決めて)その中に入る度数をカウントする.
2.各レンジの度数をレンジ幅で除したリスト(棒グラフ)を作成する.
3.そのリストを積分して値Sを求める.理屈から考えると総サンプル数になるが.
4.各リストをSで除した値(規格化)がそのレンジの確率密度関数となる.

このQ&Aは役に立ちましたか?1 件

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

新しく質問する

注目の記事

フリーアナウンサー長谷川豊氏の新コーナー「このニュースどう思います?」がスタート!

元フジテレビのフリーアナウンサー長谷川豊氏から気になるニュースについておしトピの皆さんに質問します! 皆さんの意見をもとに長谷川豊氏がコラムを執筆します! アプリリリース記念として最大1万分のアマゾンギフト券プレゼントキャンペーンも実施中!

このQ&Aを見た人が検索しているワード


新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ

べんりQ&A特集