logo

仮説検定を理解する

仮説検定には、サンプル統計に基づいて母集団パラメータに関する仮説を立て、経験的証拠に照らしてこれらの仮説を厳密に評価することが含まれます。この記事では、仮説検証の重要性とそのプロセスに含まれる重要な手順について説明します。

仮説検定とは何ですか?

仮説検定は、実験データを使用して統計的な決定を行うために使用される統計的手法です。仮説検定は基本的に、母集団パラメータについて行う仮定です。これは、母集団に関する 2 つの相互に排他的なステートメントを評価して、どのステートメントがサンプル データによって最もよくサポートされるかを決定します。



例: クラスの平均身長は 30 歳、または男子の方が女子より背が高いと言います。これらはすべて私たちが想定している仮定であり、これらを証明するには統計的な方法が必要です。私たちが真実であると仮定しているものは何であれ、何らかの数学的結論が必要です。

仮説の定義

  • 帰無仮説 (H 0 ): 統計学において、帰無仮説は、2 つの測定されたケース間に関係がない、またはグループ間に関係がないという一般的なステートメントまたはデフォルトの立場です。言い換えれば、それは基本的な仮定、または問題の知識に基づいて作成されたものです。
    : 企業の平均生産量は 1 日あたり 50 個です0: mu= 50。
  • 対立仮説 (H 1 ): 対立仮説は、帰無仮説に反する仮説検定で使用される仮説です。
    例: 会社の生産量は 1 日あたり 50 ユニットに等しくありません。つまり、H1: mu 
五十。

仮説検定の重要な用語

  • 重要度 : 帰無仮説を受け入れるか拒否するかの重要度を指します。仮説を受け入れるには 100% の精度は不可能であるため、通常は 5% の有意水準を選択します。これは通常、次のように表されます。 アルファ一般に、これは 0.05 または 5% であり、これは、各サンプルで同様の結果が得られる出力の確信度が 95% であることを意味します。
  • P値: P値 、または計算された確率は、研究で与えられた問題の帰無仮説 (H0) が真である場合に、観察された/極端な結果が見つかる確率です。 P 値が選択した有意水準より小さい場合は、帰無仮説を棄却します。つまり、サンプルが対立仮説を支持すると主張していることを受け入れます。
  • テスト統計: 検定統計量は、仮説検定中にサンプル データから計算された数値であり、帰無仮説を棄却するかどうかを決定するために使用されます。観察された結果の統計的有意性について決定するために、臨界値または p 値と比較されます。
  • クリティカル値 : 統計における臨界値は、仮説検定で帰無仮説を棄却するかどうかを決定するために使用されるしきい値またはカットオフ点です。
  • 自由度: 自由度は、パラメーターを推定する際の変動性または自由度に関連付けられます。自由度はサンプル サイズに関係し、形状を決定します。

なぜ仮説検定を使用するのでしょうか?

仮説検定は統計における重要な手順です。仮説検定では、相互に排他的な 2 つの母集団ステートメントを評価して、どのステートメントがサンプル データによって最も裏付けられているかを判断します。仮説検定のおかげで、結果が統計的に有意であると言う場合。

片側検定と両側検定

片側検定は、指定された値より大きいか小さいかのいずれかの方向に焦点を当てます。事前の知識または理論に基づいて明確な方向性が期待される場合、片側検定を使用します。臨界領域は分布曲線の片側のみに位置します。サンプルがこの重要な領域に該当する場合、帰無仮説は棄却され、対立仮説が優先されます。



片側検定

片側検定には 2 つのタイプがあります。

  • 左尾 (左側) テスト: 対立仮説は、真のパラメーター値が帰無仮説より小さいと主張します。例:H0 mu geq 50とH1:
  • とH1: mu>50分></li></ul><h3><span>両側検定</span></h3><p dir=両側検定では、指定された値より大きいか小さいかの両方の方向が考慮されます。特定の方向の期待がなく、有意な差を検出したい場合に両側検定を使用します。

    例:H0: in =50とH1: mu 
eq 50



    仮説検定におけるタイプ 1 およびタイプ 2 のエラーとは何ですか?

    仮説検証では、 タイプ I およびタイプ II エラー 研究者がデータのサンプルに基づいて母集団について結論を導く際に犯す可能性のある 2 つの間違いは次のとおりです。これらのエラーは、帰無仮説と対立仮説に関して行われた決定に関連しています。

    • タイプ I エラー: 帰無仮説が真であったにもかかわらず、帰無仮説を棄却した場合。タイプ I エラーは alpha( アルファ)。
    • タイプ II エラー: 帰無仮説を受け入れますが、それが偽である場合。タイプ II エラーは beta( ベータ)。


    帰無仮説は正しい

    帰無仮説は誤りです

    帰無仮説は真です (受け入れる)

    正しい判断

    タイプ II エラー (偽陰性)

    対立仮説は真です (拒否)

    タイプ I エラー (誤検知)

    正しい判断

    仮説検定はどのように機能するのでしょうか?

    ステップ 1: 帰無仮説と対立仮説を定義する

    帰無仮説を述べます( H_0) は効果がないことを表し、対立仮説 ( H_1)、効果や違いを示唆しています。

    グライバッハ正規形

    まず、仮定が互いに矛盾していることに留意しながら、仮定したい問題を特定します。 通常分散されたデータ。

    ステップ 2 – 有意水準を選択する

    有意水準を選択します ( アルファ)、通常は 0.05 で、帰無仮説を棄却するためのしきい値を決定します。これにより仮説テストに妥当性がもたらされ、主張を裏付ける十分なデータがあることが保証されます。通常、テストの前に有意水準を決定します。の p値 重要度の値を計算するために使用される基準です。

    ステップ3 データを収集して分析します。

    観察や実験を通じて関連データを収集します。適切な統計手法を使用してデータを分析し、検定統計を取得します。

    ステップ 4 - テスト統計量の計算

    このステップでは、テストのデータが評価され、データの特性に基づいてさまざまなスコアが求められます。検定統計量の選択は、実行される仮説検定の種類によって異なります。

    さまざまな仮説検定があり、それぞれが検定を計算するためのさまざまな目標に適しています。これは、 Z検定 カイ二乗 T検定 、 等々。

    1. Z検定 : 母集団の平均と標準偏差がわかっている場合。 Z 統計が一般的に使用されます。
    2. t検定 : 母集団の標準偏差が不明な場合。サンプルサイズが t 検定よりも小さい場合、統計量の方が適切です。
    3. カイ二乗検定 : カイ二乗検定は、カテゴリデータまたは分割表の独立性を検定するために使用されます。
    4. F 検定 : F 検定は、分散を比較したり、複数のグループにわたる平均の同等性を検定したりするために、分散分析 (ANOVA) でよく使用されます。

    データセットが小さいため、仮説をテストするには T 検定の方が適切です。

    Javaのインスタンス

    T 統計量は、各グループ内のばらつきに対する 2 つのグループの平均間の差の尺度です。これは、サンプル平均間の差を差の標準誤差で割ったものとして計算されます。これは、t 値または t スコアとも呼ばれます。

    ステップ 5 – テスト統計の比較:

    この段階では、どこで帰無仮説を受け入れるか、どこで帰無仮説を棄却するかを決定します。帰無仮説をどこで受け入れるか拒否するかを決定するには 2 つの方法があります。

    方法 A: クリティカル値を使用する

    テスト統計と表にまとめられた臨界値を比較すると、

    • 検定統計量> 臨界値の場合: 帰無仮説を棄却します。
    • 検定統計量≤臨界値の場合: 帰無仮説を棄却できません。

    注記: 臨界値は、仮説検定で決定を下すために使用される事前に設定されたしきい値です。 決定する 臨界値 仮説検定の場合、通常、正規分布や t 分布テーブルなどの統計分布テーブルを参照します。

    方法 B: P 値の使用

    p 値を使用して結論を​​出すこともできます。

    • p 値が有意水準以下の場合、つまり ( pleqalpha)、帰無仮説を棄却します。これは、観察された結果が偶然単独で発生した可能性が低いことを示し、対立仮説を支持する証拠を提供します。
    • p 値が有意水準より大きい場合、つまり ( pgeq alpha)、帰無仮説を棄却できません。これは、観察された結果が帰無仮説の下で予想される結果と一致していることを示唆しています。

    注記 : p 値は、帰無仮説が真であると仮定した場合に、サンプルで観察されたものと同じかそれよりも極端な検定統計量が得られる確率です。決定する p値 仮説検定の場合、通常、正規分布や t 分布テーブルなどの統計分布テーブルを参照します。

    ステップ 7 - 結果を解釈する

    最後に、方法 A または B を使用して実験を終了します。

    検定統計量の計算

    使用する母集団パラメータに関する仮説を検証するために 統計関数 。 Z スコア、p 値、および有意水準 (アルファ) を使用して、次の仮説の証拠を作成します。 正規分布データ

    1. Z 統計:

    母集団の平均と標準偏差がわかっている場合。

    z = frac{ar{x} - mu}{frac{sigma}{sqrt{n}}}

    どこ、

    • ar{x}は標本の平均値、
    • μ は母平均を表し、
    • σ は標準偏差です
    • n はサンプルのサイズです。

    2. T 統計

    T 検定は n<30 の場合に使用されます。

    t 統計量の計算は次のようになります。

    t=frac{x̄-Μ}{s/sqrt{n}}

    どこ、

    • t = t スコア、
    • x̄ = サンプル平均
    • μ = 母集団平均、
    • s = サンプルの標準偏差、
    • n = サンプルサイズ

    3. カイ二乗検定

    以下を使用した独立カテゴリデータ (非正規分布) のカイ二乗検定:

    chi^2 = sum frac{(O_{ij} - E_{ij})^2}{E_{ij}}

    どこ、

    • O_{ij}セル内で観測された周波数です {ij}
    • i、j はそれぞれ行と列のインデックスです。
    • E_{ij}セル内で予想される周波数です {ij}、次のように計算されます。
      frac{{	ext{{行合計}} 	imes 	ext{{列合計}}}}{{	ext{{観測結果の合計}}}}

    実際の仮説検証の例

    2 つの実際の状況を使用して仮説検定を検討してみましょう。

    ケースA: D 新薬は血圧に影響を与えるか?

    製薬会社が高血圧患者の血圧を効果的に下げることができると考えられる新薬を開発したと想像してください。この薬を市場に出す前に、血圧に対するその影響を評価するための研究を実施する必要があります。

    データ:

    • 治療前:120、122、118、130、125、128、115、121、123、119
    • 治療後:115、120、112、128、122、125、110、117、119、114

    ステップ1 : 仮説を定義する

    • 帰無仮説 :(H0)その新薬は血圧に影響を与えません。
    • 代替仮説 :(H1)その新薬は血圧に影響を与えます。

    ステップ2: 有意水準を定義する

    帰無仮説の棄却を示す 0.05 の有意水準を考えてみましょう。

    証拠が、ランダムな変動により結果が観察される確率が 5% 未満であることを示唆している場合。

    ステップ3 : 検定統計量を計算します。

    使用する 対応のある T 検定 データを分析して検定統計量と p 値を取得します。

    検査統計量 (T 統計量など) は、治療前後の血圧測定値の差に基づいて計算されます。

    t = m/(s/√n)

    どこ:

    • メートル = 差の平均、つまり バツ 後、 バツ 前に
    • s = 差の標準偏差 (d) つまり d = バツ 後、 バツ 前に、
    • n = サンプルサイズ、

    この場合、m= -3.9、s= 1.8、n= 10

    対応のある t 検定の式に基づいて、T 統計量 = -9 を計算します。

    ステップ 4: p 値を求める

    計算された t 統計量は -9 であり、自由度は DF = 9 の場合、統計ソフトウェアまたは t 分布表を使用して p 値を見つけることができます。

    したがって、p 値 = 8.538051223166285e-06

    ステップ 5: 結果

    • p 値が 0.05 以下の場合、研究者は帰無仮説を棄却します。
    • p 値が 0.05 より大きい場合、帰無仮説を棄却できません。

    結論: p 値 (8.538051223166285e-06) が有意水準 (0.05) より小さいため、研究者は帰無仮説を棄却します。新薬による治療の前後で平均血圧が異なるという統計的に有意な証拠があります。

    JavaScript グローバル変数

    仮説検定の Python 実装

    Python を使用して、新薬が血圧に影響を与えるかどうかをテストする仮説検定を作成してみましょう。この例では、対応のある T 検定を使用します。使用します scipy.stats> T 検定用のライブラリ。

    最初の実生活の問題を Python 経由で実装します。

    Python3

    import> numpy as np> from> scipy>import> stats> # Data> before_treatment>=> np.array([>120>,>122>,>118>,>130>,>125>,>128>,>115>,>121>,>123>,>119>])> after_treatment>=> np.array([>115>,>120>,>112>,>128>,>122>,>125>,>110>,>117>,>119>,>114>])> # Step 1: Null and Alternate Hypotheses> # Null Hypothesis: The new drug has no effect on blood pressure.> # Alternate Hypothesis: The new drug has an effect on blood pressure.> null_hypothesis>=> 'The new drug has no effect on blood pressure.'> alternate_hypothesis>=> 'The new drug has an effect on blood pressure.'> # Step 2: Significance Level> alpha>=> 0.05> # Step 3: Paired T-test> t_statistic, p_value>=> stats.ttest_rel(after_treatment, before_treatment)> # Step 4: Calculate T-statistic manually> m>=> np.mean(after_treatment>-> before_treatment)> s>=> np.std(after_treatment>-> before_treatment, ddof>=>1>)># using ddof=1 for sample standard deviation> n>=> len>(before_treatment)> t_statistic_manual>=> m>/> (s>/> np.sqrt(n))> # Step 5: Decision> if> p_value <>=> alpha:> >decision>=> 'Reject'> else>:> >decision>=> 'Fail to reject'> # Conclusion> if> decision>=>=> 'Reject'>:> >conclusion>=> 'There is statistically significant evidence that the average blood pressure before and after treatment with the new drug is different.'> else>:> >conclusion>=> 'There is insufficient evidence to claim a significant difference in average blood pressure before and after treatment with the new drug.'> # Display results> print>(>'T-statistic (from scipy):'>, t_statistic)> print>(>'P-value (from scipy):'>, p_value)> print>(>'T-statistic (calculated manually):'>, t_statistic_manual)> print>(f>'Decision: {decision} the null hypothesis at alpha={alpha}.'>)> print>(>'Conclusion:'>, conclusion)>
    >
    >

    出力:

    T-statistic (from scipy): -9.0 P-value (from scipy): 8.538051223166285e-06 T-statistic (calculated manually): -9.0 Decision: Reject the null hypothesis at alpha=0.05. Conclusion: There is statistically significant evidence that the average blood pressure before and after treatment with the new drug is different.>

    上の例では、T 統計量が約 -9 で p 値が非常に小さいため、結果は有意水準 0.05 で帰無仮説を棄却する強力なケースを示しています。

    • この結果は、新しい薬、治療法、または介入が血圧を下げるのに大きな効果があることを示唆しています。
    • 負の T 統計量は、治療後の平均血圧が治療前の推定母平均よりも大幅に低いことを示します。

    ケースB : 集団内のコレステロール値

    データ: 25人のサンプルが採取され、コレステロール値が測定されます。

    コレステロール値 (mg/dL): 205、198、210、190、215、205、200、192、198、205、198、202、208、200、205、198、205、210、192、205、198、 205、210、192、205。

    母集団の平均 = 200

    母集団標準偏差 (σ): 5 mg/dL (この問題に対して与えられた)

    ステップ1: 仮説を定義する

    • 帰無仮説 (H 0 ): 集団内の平均コレステロール値は 200 mg/dL です。
    • 代替仮説 (H 1 ): 集団内の平均コレステロール値は 200 mg/dL とは異なります。

    ステップ2: 有意水準を定義する

    偏差の方向が指定されていないため、両側検定を仮定し、正規分布表に基づいて、有意水準 0.05 (両側) の臨界値を次の方法で計算できます。 Zテーブル およそ -1.96 と 1.96 です。

    ステップ3 : 検定統計量を計算します。

    検定統計量は、z 式を使用して計算されます。 = (203.8 - 200) / (5 div sqrt{25})それに応じて、 =2.039999999999992。

    ステップ 4: 結果

    検定統計量の絶対値 (2.04) が臨界値 (1.96) より大きいため、帰無仮説を棄却します。そして、集団の平均コレステロール値が 200 mg/dL とは異なるという統計的に有意な証拠があると結論付けます。

    仮説検定の Python 実装

    Python3

    import> scipy.stats as stats> import> math> import> numpy as np> # Given data> sample_data>=> np.array(> >[>205>,>198>,>210>,>190>,>215>,>205>,>200>,>192>,>198>,>205>,>198>,>202>,>208>,>200>,>205>,>198>,>205>,>210>,>192>,>205>,>198>,>205>,>210>,>192>,>205>])> population_std_dev>=> 5> population_mean>=> 200> sample_size>=> len>(sample_data)> # Step 1: Define the Hypotheses> # Null Hypothesis (H0): The average cholesterol level in a population is 200 mg/dL.> # Alternate Hypothesis (H1): The average cholesterol level in a population is different from 200 mg/dL.> # Step 2: Define the Significance Level> alpha>=> 0.05> # Two-tailed test> # Critical values for a significance level of 0.05 (two-tailed)> critical_value_left>=> stats.norm.ppf(alpha>/>2>)> critical_value_right>=> ->critical_value_left> # Step 3: Compute the test statistic> sample_mean>=> sample_data.mean()> z_score>=> (sample_mean>-> population_mean)>/> > >(population_std_dev>/> math.sqrt(sample_size))> # Step 4: Result> # Check if the absolute value of the test statistic is greater than the critical values> if> abs>(z_score)>>>max>(>abs>(critical_value_left),>abs>(critical_value_right)):> >print>(>'Reject the null hypothesis.'>)> >print>(>'There is statistically significant evidence that the average cholesterol level in the population is different from 200 mg/dL.'>)> else>:> >print>(>'Fail to reject the null hypothesis.'>)> >print>(>'There is not enough evidence to conclude that the average cholesterol level in the population is different from 200 mg/dL.'>)>
    >
    >

    出力:

    Reject the null hypothesis. There is statistically significant evidence that the average cholesterol level in the population is different from 200 mg/dL.>

    仮説検定の限界

    • 仮説検定は便利な手法ではありますが、研究対象のトピックを包括的に把握することはできません。現象の複雑さや全体的な背景を完全に反映することなく、特定の仮説や統計的有意性に焦点を当てています。
    • 仮説検証の結果の正確さは、利用可能なデータの品質と使用される統計手法の適切さに左右されます。不正確なデータや不十分に定式化された仮説は、誤った結論につながる可能性があります。
    • 仮説テストのみに依存すると、分析者はテスト対象の特定の仮説では捉えられないデータ内の重要なパターンや関係を見落とす可能性があります。この制限は、仮説テストを他の分析アプローチで補完することの重要性を強調しています。

    結論

    仮説検証は統計分析の基礎として機能し、データ サイエンティストが不確実性を回避し、サンプル データから信頼できる推論を引き出すことを可能にします。帰無仮説と対立仮説を体系的に定義し、有意水準を選択し、統計検定を活用することで、研究者は仮説の妥当性を評価できます。この記事では、タイプ I エラーとタイプ II エラーの重要な違いについても説明し、仮説検証に特有の微妙な意思決定プロセスについての包括的な理解を提供します。対応のある T 検定を使用して新薬の血圧に対する効果をテストする実際の例は、これらの原則の実際の応用を示しており、データ主導の意思決定における統計的厳密性の重要性を強調しています。

    よくある質問 (FAQ)

    1. 3種類の仮説検定とは何ですか?

    仮説検定には、右尾検定、左尾検定、両側検定の 3 種類があります。右裾検定はパラメータが大きいかどうかを評価し、左裾検定はパラメータが小さいかどうかを評価します。両側検定は、多かれ少なかれ、方向性のない差異をチェックします。

    2.仮説検証の 4 つの要素とは何ですか?

    帰無仮説 ( ほー): 効果や違いはありません。

    対立仮説 ( H_1): 効果や差異が存在します。

    Javaの条件演算子

    重要なレベル ( アルファ): 帰無仮説が正しい場合にそれを棄却するリスク (タイプ I エラー)。

    検定統計量: 帰無仮説に対する観察された証拠を表す数値。

    3.ML における仮説テストとは何ですか?

    機械学習モデルのパフォーマンスと妥当性を評価するための統計的手法。特徴が予測に影響を与えるかどうか、モデルが目に見えないデータに対して適切に一般化できるかどうかなど、モデルの動作に関する特定の仮説をテストします。

    4.PythonのPytestと仮説の違いは何ですか?

    Pytest は Python コードの一般的なテスト フレームワークを目的としていますが、Hypothesis は Python のプロパティベースのテスト フレームワークであり、コードの指定されたプロパティに基づいてテスト ケースを生成することに重点を置いています。