<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>우당탕탕 IT 연구원</title>
    <link>https://want-real-rich.tistory.com/</link>
    <description>현업 AI 응용 연구 연구원의
AI 및 기초 통계학 개념 포스팅
Python 및 IT분야에서의 Error 해결 포스팅

</description>
    <language>ko</language>
    <pubDate>Tue, 23 Jun 2026 02:02:54 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>IT_LEE_BLOOMY</managingEditor>
    <item>
      <title>[머신러닝 기초] 1. Confusion Matrix 란?</title>
      <link>https://want-real-rich.tistory.com/3</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvvsVM/dJMcaihLcoG/5VPAGK1Lk3HDwXZlmjiDD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvvsVM/dJMcaihLcoG/5VPAGK1Lk3HDwXZlmjiDD1/img.png&quot; data-alt=&quot;confusion matrix&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvvsVM/dJMcaihLcoG/5VPAGK1Lk3HDwXZlmjiDD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvvsVM%2FdJMcaihLcoG%2F5VPAGK1Lk3HDwXZlmjiDD1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1536&quot; height=&quot;1024&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;confusion matrix&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-end=&quot;102&quot; data-start=&quot;0&quot; data-ke-size=&quot;size23&quot;&gt;1. confusion matrix란?&lt;/h3&gt;
&lt;p data-end=&quot;102&quot; data-start=&quot;0&quot; data-ke-size=&quot;size16&quot;&gt;오늘은 머신러닝의 예측 결과를 종합적으로 보여주는 confusion matrix에 대해 알아보려고 합니다.&lt;br /&gt;아래 그림은 confusion matrix의 기본적인 구조를 나타냅니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;327&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbP4d4/dJMcahQGCAw/O2q5fV7Ar37bm4cJLgByk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbP4d4/dJMcahQGCAw/O2q5fV7Ar37bm4cJLgByk0/img.png&quot; data-alt=&quot;confusion matrix&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbP4d4/dJMcahQGCAw/O2q5fV7Ar37bm4cJLgByk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbP4d4%2FdJMcahQGCAw%2FO2q5fV7Ar37bm4cJLgByk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;773&quot; height=&quot;327&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;327&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;confusion matrix&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-end=&quot;190&quot; data-start=&quot;104&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;190&quot; data-start=&quot;104&quot; data-ke-size=&quot;size16&quot;&gt;confusion matrix에서 row 방향은 머신러닝 모델이 예측한 클래스를 의미합니다.&lt;br /&gt;column 방향은 실제 데이터의 클래스를 의미합니다.&lt;/p&gt;
&lt;p data-end=&quot;343&quot; data-start=&quot;192&quot; data-ke-size=&quot;size16&quot;&gt;실제로 질환이 없다고 진단된 환자의 수는 A와 C의 합입니다.&lt;br /&gt;실제로 질환이 있다고 진단된 환자의 수는 B와 D의 합입니다.&lt;br /&gt;머신러닝이 질환이 없다고 예측한 환자의 수는 A와 B의 합입니다.&lt;br /&gt;머신러닝이 질환이 있다고 예측한 환자의 수는 C와 D의 합입니다.&lt;/p&gt;
&lt;p data-end=&quot;484&quot; data-start=&quot;345&quot; data-ke-size=&quot;size16&quot;&gt;이러한 값들을 기반으로 머신러닝 모델의 예측 성능을 정량적으로 평가할 수 있습니다.&lt;/p&gt;
&lt;p data-end=&quot;484&quot; data-start=&quot;345&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;484&quot; data-start=&quot;345&quot; data-ke-size=&quot;size23&quot;&gt;2. true positive, true negative, false positive, false negative&lt;/h3&gt;
&lt;p data-end=&quot;484&quot; data-start=&quot;345&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;성능 지표를 이해하기 전에 먼저 true positive, true negative, false positive, false negative의 개념을 정리합니다.&lt;/p&gt;
&lt;p data-end=&quot;596&quot; data-start=&quot;486&quot; data-ke-size=&quot;size16&quot;&gt;positive case는 분석자가 관심을 가지는 대상입니다.&lt;br /&gt;질병 진단 문제에서는 질병이 있는 환자가 positive case입니다.&lt;br /&gt;negative case는 질병이 없는 환자입니다.&lt;/p&gt;
&lt;p data-end=&quot;719&quot; data-start=&quot;598&quot; data-ke-size=&quot;size16&quot;&gt;true는 모델의 예측이 실제 값과 일치한 경우를 의미합니다.&lt;br /&gt;false는 모델의 예측이 실제 값과 일치하지 않은 경우를 의미합니다.&lt;br /&gt;positive와 negative는 모델이 예측한 클래스를 기준으로 합니다.&lt;/p&gt;
&lt;p data-end=&quot;910&quot; data-start=&quot;721&quot; data-ke-size=&quot;size16&quot;&gt;true positive는 질병이 있는 환자를 질병이 있다고 예측한 경우입니다.&lt;br /&gt;true negative는 질병이 없는 환자를 질병이 없다고 예측한 경우입니다.&lt;br /&gt;false positive는 질병이 없는 환자를 질병이 있다고 예측한 경우입니다.&lt;br /&gt;false negative는 질병이 있는 환자를 질병이 없다고 예측한 경우입니다.&lt;/p&gt;
&lt;p data-end=&quot;1077&quot; data-start=&quot;912&quot; data-ke-size=&quot;size16&quot;&gt;false positive rate는 Type I error라고 부릅니다.&lt;br /&gt;false negative rate는 Type II error라고 부릅니다.&lt;br /&gt;이 용어들은 통계학에서 귀무가설을 기각하거나 유지하는 개념에서 유래합니다.&lt;br /&gt;귀무가설은 negative case로 이해할 수 있습니다.&lt;/p&gt;
&lt;p data-end=&quot;1077&quot; data-start=&quot;912&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;1077&quot; data-start=&quot;912&quot; data-ke-size=&quot;size23&quot;&gt;3. 정확도, Accuracy&lt;/h3&gt;
&lt;p data-end=&quot;1103&quot; data-start=&quot;1079&quot; data-ke-size=&quot;size16&quot;&gt;첫 번째 성능 지표는 Accuracy입니다.&lt;/p&gt;
&lt;p data-end=&quot;1214&quot; data-start=&quot;1105&quot; data-ke-size=&quot;size16&quot;&gt;Accuracy는 전체 샘플 중에서 모델이 올바르게 분류한 비율을 의미합니다.&lt;br /&gt;TP와 TN의 합을 전체 샘플 수로 나눈 값입니다.&lt;br /&gt;정확도는 모델 성능을 가장 직관적으로 보여주는 지표입니다.&lt;/p&gt;
&lt;p data-end=&quot;1472&quot; data-start=&quot;1216&quot; data-ke-size=&quot;size16&quot;&gt;하지만 클래스 비율이 불균형한 경우에는 정확도의 신뢰도가 떨어집니다.&lt;br /&gt;예를 들어 전체 100개 중 90개가 클래스 1인 데이터가 있다고 가정합니다.&lt;br /&gt;모든 샘플을 클래스 1로 예측해도 정확도는 90%가 됩니다.&lt;br /&gt;이 경우 모델의 실제 분류 능력을 정확도가 제대로 반영하지 못합니다.&lt;br /&gt;따라서 정확도만으로 모델 성능을 판단하는 것은 바람직하지 않습니다.&lt;br /&gt;Accuracy와 misclassification error는 서로 보완적인 관계에 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;892&quot; data-origin-height=&quot;324&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zPYNl/dJMcagxs0lv/BQHjh7LasQ8UcXHuwk8k0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zPYNl/dJMcagxs0lv/BQHjh7LasQ8UcXHuwk8k0K/img.png&quot; data-alt=&quot;정확도, Accuracy&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zPYNl/dJMcagxs0lv/BQHjh7LasQ8UcXHuwk8k0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzPYNl%2FdJMcagxs0lv%2FBQHjh7LasQ8UcXHuwk8k0K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;892&quot; height=&quot;324&quot; data-origin-width=&quot;892&quot; data-origin-height=&quot;324&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;정확도, Accuracy&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-end=&quot;1472&quot; data-start=&quot;1216&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;912&quot; data-end=&quot;1077&quot;&gt;4. 민감도, Sensitivity&lt;/h3&gt;
&lt;p data-end=&quot;1501&quot; data-start=&quot;1474&quot; data-ke-size=&quot;size16&quot;&gt;두 번째 성능 지표는 Sensitivity입니다.&lt;/p&gt;
&lt;p data-end=&quot;1703&quot; data-start=&quot;1503&quot; data-ke-size=&quot;size16&quot;&gt;Sensitivity는 실제로 질병이 있는 환자 중에서 질병이 있다고 예측한 비율입니다.&lt;br /&gt;TP를 TP와 FN의 합으로 나눈 값입니다.&lt;br /&gt;민감도는 positive case를 얼마나 잘 검출했는지를 나타냅니다.&lt;br /&gt;질병 진단 문제에서는 매우 중요한 지표입니다.&lt;br /&gt;Sensitivity는 true positive rate 또는 recall이라고도 부릅니다.&lt;/p&gt;
&lt;p data-end=&quot;1703&quot; data-start=&quot;1503&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;703&quot; data-origin-height=&quot;307&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cl4boi/dJMcacICARA/8Uk1HILIDBuA9o5uOZ9vlK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cl4boi/dJMcacICARA/8Uk1HILIDBuA9o5uOZ9vlK/img.png&quot; data-alt=&quot;민감도,&amp;amp;nbsp;Sensitivity&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cl4boi/dJMcacICARA/8Uk1HILIDBuA9o5uOZ9vlK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcl4boi%2FdJMcacICARA%2F8Uk1HILIDBuA9o5uOZ9vlK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;703&quot; height=&quot;307&quot; data-origin-width=&quot;703&quot; data-origin-height=&quot;307&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;민감도,&amp;nbsp;Sensitivity&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-end=&quot;1703&quot; data-start=&quot;1503&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-end=&quot;1077&quot; data-start=&quot;912&quot; data-ke-size=&quot;size23&quot;&gt;5. 특이도,&lt;span&gt; Specificity &lt;/span&gt;&lt;/h3&gt;
&lt;p data-end=&quot;1732&quot; data-start=&quot;1705&quot; data-ke-size=&quot;size16&quot;&gt;세 번째 성능 지표는 Specificity입니다.&lt;/p&gt;
&lt;p data-end=&quot;1956&quot; data-start=&quot;1734&quot; data-ke-size=&quot;size16&quot;&gt;Specificity는 실제로 질병이 없는 환자 중에서 질병이 없다고 예측한 비율입니다.&lt;br /&gt;TN을 TN과 FP의 합으로 나눈 값입니다.&lt;br /&gt;특이도는 negative case를 얼마나 정확히 예측했는지를 보여줍니다.&lt;br /&gt;질병이 없는 사람을 불필요하게 질병 환자로 분류하지 않는 능력을 의미합니다.&lt;br /&gt;Specificity는 true negative rate 또는 selectivity라고도 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;763&quot; data-origin-height=&quot;303&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IVG4K/dJMcaacXrc7/crjhwsf4lskKe6eJT9MdrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IVG4K/dJMcaacXrc7/crjhwsf4lskKe6eJT9MdrK/img.png&quot; data-alt=&quot;특이도,&amp;amp;nbsp;Specificity&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IVG4K/dJMcaacXrc7/crjhwsf4lskKe6eJT9MdrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIVG4K%2FdJMcaacXrc7%2Fcrjhwsf4lskKe6eJT9MdrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;763&quot; height=&quot;303&quot; data-origin-width=&quot;763&quot; data-origin-height=&quot;303&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;특이도,&amp;nbsp;Specificity&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-end=&quot;1983&quot; data-start=&quot;1958&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1983&quot; data-start=&quot;1958&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;912&quot; data-end=&quot;1077&quot;&gt;6. 정밀도,&lt;span&gt;&lt;span&gt; Precision &lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-end=&quot;1983&quot; data-start=&quot;1958&quot; data-ke-size=&quot;size16&quot;&gt;네 번째 성능 지표는 Precision입니다.&lt;/p&gt;
&lt;p data-end=&quot;2201&quot; data-start=&quot;1985&quot; data-ke-size=&quot;size16&quot;&gt;Precision은 질병이 있다고 예측한 환자 중 실제로 질병이 있는 환자의 비율입니다.&lt;br /&gt;TP를 TP와 FP의 합으로 나눈 값입니다.&lt;br /&gt;정밀도는 positive로 예측한 결과의 신뢰도를 의미합니다.&lt;br /&gt;negative case는 고려하지 않고 positive 예측 결과에만 집중합니다.&lt;br /&gt;Precision은 positive predictive value, 즉 PPV라고도 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;334&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Jx2dH/dJMcab3Z2Cp/NQvbKbsjwm2tAtO0TV6mnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Jx2dH/dJMcab3Z2Cp/NQvbKbsjwm2tAtO0TV6mnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Jx2dH/dJMcab3Z2Cp/NQvbKbsjwm2tAtO0TV6mnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJx2dH%2FdJMcab3Z2Cp%2FNQvbKbsjwm2tAtO0TV6mnk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;943&quot; height=&quot;334&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;334&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-is-only-node=&quot;&quot; data-is-last-node=&quot;&quot; data-end=&quot;2381&quot; data-start=&quot;2203&quot; data-ke-size=&quot;size16&quot;&gt;confusion matrix는 단순한 표이지만 다양한 성능 지표의 기반이 됩니다.&lt;br /&gt;문제의 특성에 따라 어떤 지표를 중시할지 결정해야 합니다.&lt;br /&gt;의료 진단과 같이 놓치면 위험한 문제에서는 Sensitivity가 중요합니다.&lt;br /&gt;불필요한 오탐이 문제인 경우에는 Specificity와 Precision이 중요합니다.&lt;/p&gt;</description>
      <category>IT, AI/기본 개념</category>
      <category>머신러닝</category>
      <category>민감도</category>
      <category>인공지능공부</category>
      <category>정밀도</category>
      <category>정확도</category>
      <category>컨퓨전매트릭스</category>
      <category>혼동행렬</category>
      <author>IT_LEE_BLOOMY</author>
      <guid isPermaLink="true">https://want-real-rich.tistory.com/3</guid>
      <comments>https://want-real-rich.tistory.com/3#entry3comment</comments>
      <pubDate>Wed, 14 Jan 2026 16:56:24 +0900</pubDate>
    </item>
    <item>
      <title>[기초 통계] 교차검증 방법 LOOCV(Leave-One-Out Cross Validation)이란?</title>
      <link>https://want-real-rich.tistory.com/2</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pEexT/dJMb99LRDnz/kp8jnKYLfW1sFrVZqFCOB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pEexT/dJMb99LRDnz/kp8jnKYLfW1sFrVZqFCOB1/img.png&quot; data-alt=&quot;교차검증 LOOCV 란?&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pEexT/dJMb99LRDnz/kp8jnKYLfW1sFrVZqFCOB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpEexT%2FdJMb99LRDnz%2Fkp8jnKYLfW1sFrVZqFCOB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;588&quot; height=&quot;392&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;교차검증 LOOCV 란?&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. LOOCV 개념&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LOOCV는 Leave-One-Out Cross Validation의 약자입니다.&lt;br /&gt;교차검증 방법 중 하나로 데이터가 적은 상황에서 모델 성능을 평가할 때 사용하는 방식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀 더 자세히 설명 하자면 5가지 방법으로 나눌 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;LOOCV는 전체 데이터 개수를 N이라고 할 때, 한 번에 하나의 데이터만 검증용으로 사용합니다.&lt;/li&gt;
&lt;li&gt;나머지 N-1개의 데이터를 학습용으로 사용합니다.&lt;/li&gt;
&lt;li&gt;이 과정을 데이터 개수만큼 반복합니다.&lt;/li&gt;
&lt;li&gt;모든 데이터는 정확히 한 번씩 검증 데이터로 사용됩니다.&lt;/li&gt;
&lt;li&gt;각 반복에서 계산된 성능 값을 평균 내어 최종 성능으로 사용합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀더 이해하기 쉽게 아래 그림을 보면서 예를 들어보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;123&quot; data-start=&quot;0&quot; data-ke-size=&quot;size16&quot;&gt;총 n개의 케이스가 있는 표본에서 1번째 케이스를 제외합니다.&lt;br /&gt;2번째부터 n번째 케이스까지를 사용하여 model 1을 만듭니다.&lt;br /&gt;제외한 1번째 케이스를 model 1에 입력하여 test error 1을 측정합니다.&lt;/p&gt;
&lt;p data-end=&quot;237&quot; data-start=&quot;125&quot; data-ke-size=&quot;size16&quot;&gt;다음으로 2번째 케이스를 제외합니다.&lt;br /&gt;1번째와 3번째부터 n번째 케이스를 사용하여 model 2를 만듭니다.&lt;br /&gt;제외한 2번째 케이스를 model 2에 입력하여 test error 2를 측정합니다.&lt;/p&gt;
&lt;p data-end=&quot;325&quot; data-start=&quot;239&quot; data-ke-size=&quot;size16&quot;&gt;이와 같은 과정을 반복합니다.&lt;br /&gt;매 반복마다 서로 다른 하나의 케이스만 검증 데이터로 사용합니다.&lt;br /&gt;n번째 케이스가 제외될 때까지 총 n번 반복합니다.&lt;/p&gt;
&lt;p data-end=&quot;413&quot; data-start=&quot;327&quot; data-ke-size=&quot;size16&quot;&gt;이 과정을 통해 n개의 모델이 생성됩니다.&lt;br /&gt;각 모델마다 하나의 test error가 계산됩니다.&lt;br /&gt;결과적으로 n개의 test error가 산출됩니다.&lt;/p&gt;
&lt;p data-is-only-node=&quot;&quot; data-is-last-node=&quot;&quot; data-end=&quot;508&quot; data-start=&quot;415&quot; data-ke-size=&quot;size16&quot;&gt;이 n개의 test error에 대해 평균을 계산합니다.&lt;br /&gt;이 평균값이 최종 성능 평가 지표가 됩니다.&lt;br /&gt;해당 값이 낮을수록 예측 모델의 성능이 좋음을 의미합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;525&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgfPnH/dJMcajnmRs8/14Pf1C4NwKKjtZQyG32cA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgfPnH/dJMcajnmRs8/14Pf1C4NwKKjtZQyG32cA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgfPnH/dJMcajnmRs8/14Pf1C4NwKKjtZQyG32cA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgfPnH%2FdJMcajnmRs8%2F14Pf1C4NwKKjtZQyG32cA1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;574&quot; height=&quot;390&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;525&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방식을 사용하는 이유는 아래와 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심은 학습 데이터 손실을 최소화하는 데 있습니다.&lt;br /&gt;일반적인 K-Fold 교차검증은 학습에 사용되지 않는 데이터가 항상 존재합니다.&lt;br /&gt;LOOCV는 매 반복마다 거의 전체 데이터를 학습에 사용합니다.&lt;br /&gt;이로 인해 데이터 활용 효율이 매우 높습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LOOCV는 이론적으로 K-Fold 교차검증의 특수한 형태입니다.&lt;br /&gt;K 값이 데이터 개수와 같은 경우입니다.&lt;br /&gt;따라서 K-Fold의 개념을 그대로 확장한 방식입니다.&lt;br /&gt;차이점은 검증 데이터가 항상 하나라는 점입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;2. LOOCV&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LOOCV의 절차는 단순합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한번 위에 5가지 순서의 방법대로 따라가 보겠습니다.&lt;br /&gt;첫 번째 샘플을 검증용으로 분리합니다.&lt;br /&gt;나머지 데이터로 모델을 학습합니다.&lt;br /&gt;해당 샘플에 대한 예측 결과를 계산합니다.&lt;br /&gt;다음 샘플로 이동하여 동일한 과정을 반복합니다.&lt;br /&gt;모든 샘플에 대해 이 과정을 수행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;981&quot; data-origin-height=&quot;982&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dWL53U/dJMcadHtjfv/WyKeQXX0D1SqOGsjekRASK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dWL53U/dJMcadHtjfv/WyKeQXX0D1SqOGsjekRASK/img.png&quot; data-alt=&quot;LOOCV 구조 출처 : dataaspirant.com&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dWL53U/dJMcadHtjfv/WyKeQXX0D1SqOGsjekRASK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdWL53U%2FdJMcadHtjfv%2FWyKeQXX0D1SqOGsjekRASK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;637&quot; height=&quot;638&quot; data-origin-width=&quot;981&quot; data-origin-height=&quot;982&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LOOCV 구조 출처 : dataaspirant.com&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;3. LOOCV 장점&lt;/h3&gt;
&lt;p data-end=&quot;1150&quot; data-start=&quot;1000&quot; data-ke-size=&quot;size16&quot;&gt;LOOCV의 장점은 편향이 낮은 성능 추정을 제공한다는 점입니다.&lt;br /&gt;학습 데이터가 거의 전체이기 때문에 전체 데이터로 학습했을 때의 성능과 유사한 결과를 냅니다.&lt;br /&gt;특히 회귀 문제에서 안정적인 성능 추정에 사용됩니다.&lt;br /&gt;데이터 수집 비용이 큰 연구에서 유용합니다.&lt;/p&gt;
&lt;p data-end=&quot;1150&quot; data-start=&quot;1000&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;4. LOOCV 단점&lt;/h3&gt;
&lt;p data-end=&quot;1264&quot; data-start=&quot;1152&quot; data-ke-size=&quot;size16&quot;&gt;하지만 LOOCV는 큰 단점이 있습니다.&lt;/p&gt;
&lt;p data-end=&quot;1264&quot; data-start=&quot;1152&quot; data-ke-size=&quot;size16&quot;&gt;계산 비용이 매우 크다는 것입니다.&lt;br /&gt;데이터 개수만큼 모델 학습을 반복해야 합니다.&lt;br /&gt;모델이 복잡할수록 계산 시간은 급격히 증가합니다.&lt;br /&gt;딥러닝 모델에는 현실적으로 적용하기 어렵습니다.&lt;/p&gt;
&lt;p data-end=&quot;1264&quot; data-start=&quot;1152&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1391&quot; data-start=&quot;1266&quot; data-ke-size=&quot;size16&quot;&gt;또 다른 단점은 분산이 높다는 점입니다.&lt;br /&gt;검증 데이터가 하나이기 때문에 특정 샘플의 영향이 큽니다.&lt;br /&gt;이상치가 존재할 경우 성능 추정이 불안정해질 수 있습니다.&lt;br /&gt;분류 문제에서는 클래스 불균형의 영향을 크게 받습니다.&lt;/p&gt;
&lt;p data-end=&quot;1527&quot; data-start=&quot;1393&quot; data-ke-size=&quot;size16&quot;&gt;LOOCV는 모든 상황에서 적합한 방법은 아닙니다.&lt;/p&gt;
&lt;p data-end=&quot;1527&quot; data-start=&quot;1393&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;데이터가 매우 적고 모델이 가벼운 경우에 적합합니다.&lt;br /&gt;데이터가 많거나 학습 비용이 큰 경우에는 K-Fold 교차검증이 더 적합합니다.&lt;br /&gt;연구 목적에 따라 선택해야 하는 방법입니다.&lt;/p&gt;
&lt;p data-end=&quot;1527&quot; data-start=&quot;1393&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;5. LOOCV 정리&lt;/h3&gt;
&lt;p data-end=&quot;1527&quot; data-start=&quot;1393&quot; data-ke-size=&quot;size16&quot;&gt;LOOCV는 데이터 활용 효율을 극대화한 교차검증 방식입니다.&lt;br /&gt;이론적으로 타당하지만 계산 비용과 분산이라는 한계를 가집니다.&lt;br /&gt;따라서 데이터 규모와 모델 복잡도를 고려하여 사용해야 합니다.&lt;/p&gt;</description>
      <category>IT, AI/기본 개념</category>
      <category>AI응용</category>
      <category>LOOCV</category>
      <category>교차검증</category>
      <category>인공지능공부</category>
      <author>IT_LEE_BLOOMY</author>
      <guid isPermaLink="true">https://want-real-rich.tistory.com/2</guid>
      <comments>https://want-real-rich.tistory.com/2#entry2comment</comments>
      <pubDate>Tue, 13 Jan 2026 13:27:57 +0900</pubDate>
    </item>
  </channel>
</rss>