<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>KimbgAI</title>
    <link>https://kimbg.tistory.com/</link>
    <description>정리하고 싶은 잡동사니 지식</description>
    <language>ko</language>
    <pubDate>Sat, 4 Jul 2026 16:38:52 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>KimbgAI</managingEditor>
    <image>
      <title>KimbgAI</title>
      <url>https://tistory1.daumcdn.net/tistory/5585795/attach/09a7df9b6ba94f5189f80c6737cca482</url>
      <link>https://kimbg.tistory.com</link>
    </image>
    <item>
      <title>[PR] TabNet(2021, AAAI) 논문 리뷰 (파헤치기)</title>
      <link>https://kimbg.tistory.com/60</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;참 오랜만에 하는 논문 리뷰네요ㅎㅎ&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;TabNet은&lt;/span&gt;&lt;span&gt; Google Cloud &lt;/span&gt;&lt;span&gt;AI팀에서&lt;/span&gt;&lt;span&gt; 2021년 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;AAAI에 &lt;/span&gt;&lt;/span&gt;&lt;span&gt;발표한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;고성능&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;고해석성을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가지고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;딥러닝&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;표 &lt;/span&gt;&lt;span&gt;형식&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터&lt;/span&gt;&lt;span&gt;(tabular data)에 &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;강점을&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;가지고&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;있는 모델임.&lt;/span&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;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;관련 논문은 아래 링크 참고!&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1908.07442&quot;&gt;https://arxiv.org/pdf/1908.07442&lt;/a&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;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1938&quot; data-origin-height=&quot;578&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JlEuk/btsKg70IxDD/vEc3bPJuiHBgrYY9Tk59W0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JlEuk/btsKg70IxDD/vEc3bPJuiHBgrYY9Tk59W0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JlEuk/btsKg70IxDD/vEc3bPJuiHBgrYY9Tk59W0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJlEuk%2FbtsKg70IxDD%2FvEc3bPJuiHBgrYY9Tk59W0%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;937&quot; height=&quot;279&quot; data-origin-width=&quot;1938&quot; data-origin-height=&quot;578&quot;/&gt;&lt;/span&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;&lt;span&gt;TabNet은&lt;/span&gt;&lt;span&gt; tabular &lt;/span&gt;&lt;span&gt;data를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;새로운&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;딥러닝&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;아키텍처 (오른쪽 그림)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;b&gt;순차적인 어텐션 구조&lt;/b&gt;를 바탕으로 해석력과 효율적인 학습을 가능하게 하고, 더불어 자기지도학습 방법을 적용해서 성능을 향상시킬 수 도있음.&lt;/span&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;&lt;span&gt;텝넷은&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;b&gt;Feature Transformer &lt;/b&gt;&lt;/span&gt;&lt;span&gt;&lt;b&gt;블럭&lt;/b&gt;과&lt;/span&gt;&lt;b&gt;&lt;span&gt; Attention Transformer &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;블럭&lt;/b&gt;으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;구성되어있고&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;이러한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;구조가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;b&gt;&lt;span&gt;여러 개의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;스텝&lt;/b&gt;을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;반복되는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가지고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;각 &lt;/span&gt;&lt;span&gt;스텝이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;반복되는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;과정에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스스로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;b&gt;&lt;span&gt;해당&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용할&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수들과&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요도를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;계산&lt;/b&gt;할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있습니다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;텝넷은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다른&lt;/span&gt;&lt;span&gt; DNN &lt;/span&gt;&lt;span&gt;모델과&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;달리&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해석력을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;제공하도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;설계되어&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음.&lt;/span&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;&lt;span&gt;더불어,&amp;nbsp;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;텝넷은&lt;/span&gt;&lt;b&gt;&lt;span&gt; self-supervised learning&lt;/span&gt;&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;방법을&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;적용해서&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span&gt;다양한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;벤치마크&lt;/span&gt;&lt;span&gt; tabular &lt;/span&gt;&lt;span&gt;데이터셋에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;우수한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;성능&lt;/b&gt;을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;달성함&lt;/span&gt;&lt;span&gt;. &lt;/span&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;Introduction&lt;/span&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1675&quot; data-origin-height=&quot;558&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zwmM2/btsKgCtoPP8/h1ooCjJY0gqzOaOCcKfgP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zwmM2/btsKgCtoPP8/h1ooCjJY0gqzOaOCcKfgP1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zwmM2/btsKgCtoPP8/h1ooCjJY0gqzOaOCcKfgP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzwmM2%2FbtsKgCtoPP8%2Fh1ooCjJY0gqzOaOCcKfgP1%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;674&quot; height=&quot;225&quot; data-origin-width=&quot;1675&quot; data-origin-height=&quot;558&quot;/&gt;&lt;/span&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;&lt;span&gt;논문의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;저자들은&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;DNN은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이미지&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;텍스트&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;오디오와&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;같은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터에서는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;좋은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여주었지만&lt;/span&gt;&lt;span&gt;, tabular &lt;/span&gt;&lt;span&gt;데이터&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;분야에서는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;그만큼의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여주지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;못했고&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;여전히&lt;/span&gt;&lt;span&gt; decision tree &lt;/span&gt;&lt;span&gt;계열의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델들이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;주로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용되고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있다고&lt;/span&gt;&lt;span&gt; 함.&lt;/span&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;&lt;span&gt;그러한 이유로 여러가지를 들고 &lt;/span&gt;&lt;span&gt;있는데,&lt;/span&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;&lt;span&gt;첫번째로,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;decision &lt;/span&gt;&lt;span&gt;tree는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;복잡한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;여러&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;개의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;단순한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기준으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나눠서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;처리하는&lt;/span&gt;&lt;span&gt; 데 &lt;/span&gt;&lt;span&gt;효율적이라는 것임.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;트리&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;모델은&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;데이터&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;공간을&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;반복적으로&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;이분법적으로&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;분할하여&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;각&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;노드에서&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;특정&lt;/span&gt;&lt;span&gt;&lt;span&gt; feature를 &lt;/span&gt;&lt;/span&gt;&lt;span&gt;특정&lt;/span&gt;&lt;span&gt;&lt;span&gt; cutoff&lt;/span&gt;&lt;/span&gt;&lt;span&gt;로&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;데이터를&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;나눔.&lt;/span&gt;&lt;span&gt;&amp;nbsp;이&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;과정에서&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;각&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;분할은&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;매우&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;명확한&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;경계, &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;hyperplane&lt;/span&gt;를&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;생성하며&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;결과적으로&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;트리&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;모델은&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;계층적이고&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;명확한&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;결정&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;경계를&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;형성하게&lt;/span&gt;&lt;span&gt;&lt;span&gt; 됨.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;그렇기 때문에 트리&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;모델은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;상대적으로&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;간단한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;구조를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;가지며&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;, 각&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;분할은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;특정&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; feature&lt;/span&gt;&lt;/span&gt;의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;특정&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; cutoff&lt;/span&gt;&lt;/span&gt;에&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;기반하므로&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;해석이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;용이함&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;hyperplane의&amp;nbsp;&lt;/span&gt;&lt;/span&gt;단순성과&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;해석&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;가능성은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;트리&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;모델이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;명확한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;decison&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;manifold&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;형성하는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;데&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;도움이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; 됨.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;(데이터를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;나누는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;기준이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;되는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;선을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;hyperplane,&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;데이터가&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;분포해있는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;공간을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;decision manifold라고 함)&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;반면에,&amp;nbsp;딥러닝&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;모델은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;고차원&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;공간에서&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;매우&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;복잡하게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;학습하기&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;때문에&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; 해석하기도 어렵고 쉽게 오버피팅됨.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&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;&lt;span&gt;두번째로는, (아까랑 좀 겹치는데)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; decision &lt;/span&gt;&lt;span&gt;tree는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해석&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가능하다는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;장점임.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;decision &lt;/span&gt;&lt;span&gt;node를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;어떤&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;식으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;결정을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;내렸는지를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;쉽게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이해할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있고,&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;사후&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;설명&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가능한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;방법들도&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;많이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;개발되어&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음.&lt;/span&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;&lt;span&gt;세번째로는 &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;학습&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;속도가&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;빠르다는 점.&lt;/span&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;&lt;span&gt;마지막으로,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; DNN은&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;과도한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;파라미터화와&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;적절한&lt;/span&gt;&lt;span&gt; inductive bias 의 &lt;/span&gt;&lt;span&gt;부족으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;인해&lt;/span&gt;&lt;span&gt; tabular &lt;/span&gt;&lt;span&gt;데이터에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;적합하지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;않다고 함.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;inductive &lt;/span&gt;&lt;span&gt;bias란&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;머신러닝이나&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;딥러닝&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; 잘 &lt;/span&gt;&lt;span&gt;일반화할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해주는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사전에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가진&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가정이나&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;편향을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미함.&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;예를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;들면&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;CNN은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이미지의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;작은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;부분&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;패치&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;단위로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;추출하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;설계되었고&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;RNN은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;시간에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;따라&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;순차적으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입력되는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;만들어졌다는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;것.)&lt;/span&gt;&lt;/i&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;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1755&quot; data-origin-height=&quot;483&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/49KFo/btsKgKkDNLg/sEAHX0ujOAOMmKXlLLA1Zk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/49KFo/btsKgKkDNLg/sEAHX0ujOAOMmKXlLLA1Zk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/49KFo/btsKgKkDNLg/sEAHX0ujOAOMmKXlLLA1Zk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F49KFo%2FbtsKgKkDNLg%2FsEAHX0ujOAOMmKXlLLA1Zk%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;744&quot; height=&quot;205&quot; data-origin-width=&quot;1755&quot; data-origin-height=&quot;483&quot;/&gt;&lt;/span&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;&lt;span&gt;그럼에도&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;불구하고&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;Tabular &lt;/span&gt;&lt;span&gt;데이터에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;딥러닝이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;필요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이유는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다음과&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;같음.&lt;/span&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;&lt;span&gt;첫번째로, &lt;/span&gt;&lt;span&gt;대규모&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;향상이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기대되기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;때문임.&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;딥러닝&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;많을수록&lt;/span&gt;&lt;span&gt; 더 &lt;/span&gt;&lt;span&gt;많은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;패턴과&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터들간의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;관계를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습하기에 용이함.&lt;/span&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;&lt;span&gt;두번째로,&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;딥러닝&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이미지&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;텍스트&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;시계열&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터와&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;같은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다양한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;타입을&lt;/span&gt;&lt;span&gt; tabular &lt;/span&gt;&lt;span&gt;데이터와&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;함께&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;효율적으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있다는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;장점이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;(즉, 멀티모달리티 기반 모델링에 아주 용이하다는 것)&lt;/span&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;&lt;span&gt;세번째로는,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;실시간으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;들어오는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터로부터&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;지속적으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가능한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;것.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;실시간&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;분석과&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;예측이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;분야에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;매우&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;유용하게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용될 수 있음.&lt;/span&gt;&lt;span&gt;.&lt;/span&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;&lt;span&gt;마지막으로&lt;/span&gt;&lt;span&gt;, end-to-end &lt;/span&gt;&lt;span&gt;모델은 representation learning이 가능함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;data-efficient domain adaptation, generative modeling, &lt;/span&gt;&lt;span&gt;semi-supervised &lt;/span&gt;&lt;span&gt;learning 과 같은..&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt;(representation learning이란 모델이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;데이터의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;중요한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;패턴과&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;구조를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;스스로&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;찾아내는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;것)&lt;/span&gt; &lt;/span&gt;&lt;/i&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;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bscw6f/btsKf69HK8X/z2MjZu4t1Z8OTezy7h5ULK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bscw6f/btsKf69HK8X/z2MjZu4t1Z8OTezy7h5ULK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bscw6f/btsKf69HK8X/z2MjZu4t1Z8OTezy7h5ULK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbscw6f%2FbtsKf69HK8X%2Fz2MjZu4t1Z8OTezy7h5ULK%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;393&quot; height=&quot;231&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이 논문에서는 &lt;/span&gt;&lt;span&gt;TabNet&lt;/span&gt;&lt;span&gt;이라는 &lt;/span&gt;&lt;span&gt;tabular data&lt;/span&gt;&lt;span&gt;를 위한 새로운 딥러닝 아키텍처를 제안함&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;특징으로는,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Sequential Attention &lt;/span&gt;&lt;span&gt;메커니즘 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;instance wise feature selection : 데이터 개별적인 특징 선택&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Interpretable&lt;/span&gt;&lt;span&gt; decision making: 해석성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;다양한 도메인의 &lt;/span&gt;&lt;span&gt;tabular &lt;/span&gt;&lt;span&gt;데이터셋에서 뛰어난 성능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;self supervised learning &lt;/span&gt;&lt;span&gt;으로 성능 향상&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Method&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;TabNet의 &lt;/span&gt;&lt;span&gt;아키텍처에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;대해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;좀 더&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;자세하게&lt;/span&gt;&lt;span&gt; 살펴보자면,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1440&quot; data-origin-height=&quot;749&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dkAJ39/btsKf5JMsFP/hGjgaEYSJ8e0R7QinA7tCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dkAJ39/btsKf5JMsFP/hGjgaEYSJ8e0R7QinA7tCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dkAJ39/btsKf5JMsFP/hGjgaEYSJ8e0R7QinA7tCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdkAJ39%2FbtsKf5JMsFP%2FhGjgaEYSJ8e0R7QinA7tCk%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;731&quot; height=&quot;380&quot; data-origin-width=&quot;1440&quot; data-origin-height=&quot;749&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;TabNet&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;아키텍처는&lt;/span&gt;&lt;b&gt;&lt;span&gt; feature transformer &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;블럭&lt;/b&gt;과&lt;/span&gt;&lt;b&gt;&lt;span&gt; attentive transformer &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;블럭&lt;/b&gt;이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;여러번의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;step으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;반복되며&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;추출하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;구조임.&lt;/span&gt;&lt;span&gt;&lt;/span&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;&lt;span&gt;하나하나&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;살펴보면,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입력된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터(Features)는&lt;/span&gt;&lt;span&gt; BN(Batch Normalization, &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;초록색 박스&lt;/span&gt;)&lt;/span&gt;&lt;span&gt;을 &lt;/span&gt;&lt;span&gt;거쳐서&lt;/span&gt;&lt;span&gt; Feature Transformer &lt;/span&gt;&lt;span&gt;블록에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;추출함.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이후&lt;/span&gt;&lt;span&gt; Attention Transformer &lt;/span&gt;&lt;span&gt;블록을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;mask를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;생성하는데&lt;/span&gt;&lt;span&gt;, 이 &lt;/span&gt;&lt;b&gt;&lt;span&gt;마스크는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해당&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;step에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용할&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수들의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요도를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;산출&lt;/b&gt;하고&lt;/span&gt;&lt;span&gt;, 마스크는 &lt;/span&gt;&lt;span&gt;입력과 곱해져서 &lt;/span&gt;&lt;span&gt;해당&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝의&lt;/span&gt;&lt;span&gt; feature transformer &lt;/span&gt;&lt;span&gt;블록으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입력됨.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이러한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;과정이&lt;/span&gt;&lt;span&gt; sequential &lt;/span&gt;&lt;span&gt;하게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;반복되면서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;진행됨.&lt;/span&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;한편, split 블럭에서는,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 스텝에서 바로 예측에 사용되는 부분과,&amp;nbsp;Attentive transformer 블럭으로 전달돼서 중요한 특징을 결정하게 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 split 블럭도 역시 학습되는 영역임.&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;우선,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;핵심&lt;/span&gt;&lt;span&gt;인&lt;/span&gt;&lt;span&gt; Feature transformer &lt;/span&gt;&lt;span&gt;블럭과&lt;/span&gt;&lt;span&gt; Attentive transformer &lt;/span&gt;&lt;span&gt;블럭을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;자세하게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;살펴&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보겠음&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/njvUc/btsKfKskDQk/rIl7RfZJXaEtiZ9plRk0wK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/njvUc/btsKfKskDQk/rIl7RfZJXaEtiZ9plRk0wK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/njvUc/btsKfKskDQk/rIl7RfZJXaEtiZ9plRk0wK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnjvUc%2FbtsKfKskDQk%2FrIl7RfZJXaEtiZ9plRk0wK%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;779&quot; height=&quot;438&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&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;&lt;span&gt;먼저, Feature Transformer &lt;/span&gt;&lt;span&gt;블럭은&lt;/span&gt;&lt;span&gt; 다시&amp;nbsp;&lt;/span&gt;&lt;span&gt;크게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;두가지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;section으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나뉘는데&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;shared across decision &lt;/span&gt;&lt;span&gt;step &lt;/span&gt;&lt;span&gt;블럭은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모든&lt;/span&gt;&lt;span&gt; decision &lt;/span&gt;&lt;span&gt;step에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;공유되는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;블럭이고,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;decision step &lt;/span&gt;&lt;span&gt;dependent 블럭&lt;/span&gt;&lt;span&gt;은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해당&lt;/span&gt;&lt;span&gt; decision &lt;/span&gt;&lt;span&gt;step에만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;적용되는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;블록임.&lt;/span&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;&lt;span&gt;그래서 Shared &lt;/span&gt;&lt;span&gt;블럭에서는&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;모든&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;파라미터를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;공유하여&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;전체&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;네트워크의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;global한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습하고,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;dependent &lt;/span&gt;&lt;span&gt;블럭에서는&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;각각의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용되며&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;local한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습할 &lt;/span&gt;&lt;span&gt;수 &lt;/span&gt;&lt;span&gt;있는 블럭임.&lt;/span&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;&lt;span&gt;각 &lt;/span&gt;&lt;span&gt;섹션은&lt;/span&gt;&lt;span&gt; FC layer, BN, GLU(Gated Linear &lt;/span&gt;&lt;span&gt;Unit)이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;결합된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;네트워크&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;블럭을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;두개씩&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가지고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음.&lt;/span&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;&lt;span&gt;여기서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; BN&lt;/span&gt;&lt;span&gt;은&lt;/span&gt;&lt;span&gt; ghost Batch &lt;/span&gt;&lt;span&gt;Normalization으로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;large &lt;/span&gt;&lt;span&gt;batch를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용할때&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;흔히&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;발생되는&lt;/span&gt;&lt;span&gt; local &lt;/span&gt;&lt;span&gt;minima 문제를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해결하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용됨.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;i&gt;&lt;span&gt;(GLU는&lt;/span&gt;&lt;span&gt; gated linear &lt;/span&gt;&lt;span&gt;unit으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;input이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;들어오면&lt;/span&gt;&lt;span&gt; 두 &lt;/span&gt;&lt;span&gt;개의&lt;/span&gt;&lt;span&gt; 1d convolution &lt;/span&gt;&lt;span&gt;branch로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나눠지고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하나는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;그대로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;전달되지만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다른&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하나의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;branch는&lt;/span&gt;&lt;span&gt; sigmoid &lt;/span&gt;&lt;span&gt;함수를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;확률값으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나타내어&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;일종의&lt;/span&gt;&lt;span&gt; feature importance scoring &lt;/span&gt;&lt;span&gt;역할을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하고&lt;/span&gt;&lt;span&gt; 이 feature &lt;/span&gt;&lt;span&gt;score의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;연산을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;최종&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;output을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;출력함)&lt;/span&gt;&lt;/i&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;p data-ke-size=&quot;size16&quot;&gt;이제&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;Attentive transformer&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;블럭을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;살펴보겠음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/coRkp3/btsKg2sJQO5/Lb41JQrbzYtippj55VtLfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/coRkp3/btsKg2sJQO5/Lb41JQrbzYtippj55VtLfk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/coRkp3/btsKg2sJQO5/Lb41JQrbzYtippj55VtLfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoRkp3%2FbtsKg2sJQO5%2FLb41JQrbzYtippj55VtLfk%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;753&quot; height=&quot;424&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Attentive &lt;/span&gt;&lt;span&gt;transformer는 feature의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;중요도&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;mask를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;생성하기&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;위한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;블럭이라고 보면 되고,&amp;nbsp;&lt;/span&gt;&lt;span&gt;비교적&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;간단하게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;구성되어있음.&lt;/span&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;&lt;span&gt;Attentive transformer &lt;/span&gt;&lt;span&gt;블럭은&lt;/span&gt;&lt;span&gt; Feature transformer의&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;output 중 split된 일부분을&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;입력으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;받고,&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;FC와 BN을 거친 후 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;prior&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;scales라는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;값을 곱해줌. (이 prior scales는 뒤에 다시 설명하겠음.) &lt;/span&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;&lt;span&gt;그 후 sparsemax&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; 거쳐서 해당 스텝에서의 마스크를 생성함.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;(&lt;span&gt;sparsemax는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;softmax와&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;유사하지만&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;출력값&lt;/span&gt;&lt;span&gt; 중 &lt;/span&gt;&lt;span&gt;일부를&lt;/span&gt;&lt;span&gt; 0으로 &lt;/span&gt;&lt;span&gt;만들어서, 해당 스텝에서 중요하지 않은 feature는 0으로 연산되게끔 함)&lt;/span&gt;&lt;/i&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;prior &lt;/span&gt;&lt;span&gt;scales 라는 것은&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;특정&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;feature가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;이전&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;단계에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;얼마나&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용되었는지에 대한 정보를 담고 있어서,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;이전&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;단계에서&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;과도하게&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;중복되어&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;사용된&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;변수들을&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;조정하는&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;역할을&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; 함.&lt;/span&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;&lt;span&gt;이를 통해, &lt;/span&gt;이전&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;단계에서&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;많이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;사용된&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;특성의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;중요도를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;낮추어&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;새로운&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;특성들이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;선택될&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;수&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;있도록&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;조정함,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; 다양한&amp;nbsp;&lt;/span&gt;&lt;/span&gt;feature를 학습할&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;수&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;있게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;하며&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; feature&lt;/span&gt;&lt;/span&gt;에&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;지나치게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;의존하게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;하지&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;않도록&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; 하게&amp;nbsp;&lt;/span&gt;&lt;/span&gt;해서&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;overfitting을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;방지하고&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt; 각&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;단계에서&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;새로운&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;특성을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;학습하게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;하여&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;학습&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;효율성을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&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;&lt;span&gt;이는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;텝넷의&lt;/span&gt;&lt;span&gt; sequential attention &lt;/span&gt;&lt;span&gt;매커니즘에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;역할을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하게&lt;/span&gt;&lt;span&gt; 됨.&lt;/span&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;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crYI6E/btsKhzJ88jL/3SdZIZs0v8oC9Ga6oOXIV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crYI6E/btsKhzJ88jL/3SdZIZs0v8oC9Ga6oOXIV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crYI6E/btsKhzJ88jL/3SdZIZs0v8oC9Ga6oOXIV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrYI6E%2FbtsKhzJ88jL%2F3SdZIZs0v8oC9Ga6oOXIV1%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;679&quot; height=&quot;382&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Attentive &lt;/span&gt;&lt;span&gt;transformer를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;통해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;마스크가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;생성되는 과정을 수식을 통해 살펴보면,&amp;nbsp;&lt;/span&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;&lt;span&gt;M[&lt;/span&gt;&lt;span&gt;i&lt;/span&gt;&lt;span&gt;] = &lt;/span&gt;&lt;span&gt;i번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;마스크&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첫번째 빨간 박스 &lt;/span&gt;&lt;span&gt;p[i-1&lt;/span&gt;&lt;span&gt;] = 직&lt;/span&gt;&lt;span&gt;전&lt;/span&gt;&lt;span&gt;&amp;nbsp;스텝&lt;/span&gt;&lt;span&gt;의&lt;/span&gt;&lt;span&gt; prior &lt;/span&gt;&lt;span&gt;scale.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;hi는 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;attentive&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;transformer의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;FC &amp;amp; BN&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;레이어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;a[i&amp;minus;1]는 직전 스텝의 &lt;/span&gt;&lt;span&gt;feature transformer 및 split 이후의 output &lt;/span&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;&lt;span&gt;즉, 현재&lt;/span&gt;&lt;span&gt;&amp;nbsp;스텝의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;마스크는&lt;/span&gt;&lt;span&gt;&amp;nbsp;직&lt;/span&gt;&lt;span&gt;전&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝의&lt;/span&gt;&lt;span&gt; prior &lt;/span&gt;&lt;span&gt;scale이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;고려되어&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;생성됨.&lt;/span&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;&lt;span&gt;prior scale은 현재까지 생성된&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;마스크들의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;곱으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;계산되는데,&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;여기서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;감마는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하이퍼파라미터로써&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;증가할수록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해당&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;여러&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;결쳐&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용될&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있음을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미함&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;즉, 감마는&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;여러&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;단계에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특정&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;너무&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;많이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;되지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;않도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;조절하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;역할을&lt;/span&gt;&lt;span&gt; 함.&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;아래&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;그림은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;이&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;sequential attention&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;메커니즘이&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;어떻게&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;동작하는지를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;보여주는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;예시인데,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cxjkzp/btsKg6uWQbQ/MHkrgda5TkoFo5PFCvgki1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cxjkzp/btsKg6uWQbQ/MHkrgda5TkoFo5PFCvgki1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cxjkzp/btsKg6uWQbQ/MHkrgda5TkoFo5PFCvgki1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcxjkzp%2FbtsKg6uWQbQ%2FMHkrgda5TkoFo5PFCvgki1%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;650&quot; height=&quot;366&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&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;&lt;span&gt;만약&amp;nbsp;&lt;/span&gt;&lt;span&gt;빨간 박스와 같이 &lt;/span&gt;&lt;span&gt;mask&lt;/span&gt;&lt;span&gt;가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;되어있다면,&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첫번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;x1&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;첫번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용하고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;두번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수에서는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;x2 &lt;/span&gt;&lt;span&gt;두번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용하게 된다는&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;것을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미함.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이는 &lt;/span&gt;&lt;span&gt;step&lt;/span&gt;&lt;span&gt;별로&lt;/span&gt;&lt;span&gt; 중요한 &lt;/span&gt;&lt;span&gt;feature&lt;/span&gt;&lt;span&gt;들을 선택해 집중하는 &lt;/span&gt;&lt;span&gt;sequential attention&lt;/span&gt;&lt;span&gt;의 특징을 나타냄.&lt;/span&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;&lt;span&gt;이러한 과정은 &lt;/span&gt;&lt;span&gt;decision&lt;/span&gt;&lt;span&gt; tree&lt;/span&gt;&lt;span&gt;와 유사한 &lt;/span&gt;&lt;span&gt;decision manifold&lt;/span&gt;&lt;span&gt;를 형성함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt;(&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;decision manifold :&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;데이터를 분류하거나 예측하기&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;위해 특정 기준에 따라 데이터를 나누는 경계선)&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;우측 상단의 그림은 TabNet의 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;decision&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;manifold이고,&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;우측 하단의&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;다이어그램은&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;Decision&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;Tree의&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;decision&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;node인데,&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;각 &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;변수에&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;대해&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;독립적으로&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;경계를&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;설정하여&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;데이터&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;공간을&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;분할하여&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;decision&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;manifold를&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;구성하고 있음.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;죽, TabNet이 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;Decision&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Tree와 비슷한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;decision&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;boundary가&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;형성되는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;것을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;볼 수 있음.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; 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;p data-ke-size=&quot;size16&quot;&gt;아래 그림은 TabNet의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;전체적인&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;학습&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;과정에서의&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;각&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;단계별&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;feature&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;selection을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;시각적으로&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;보여주는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;예시임&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스크가&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;semantic한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;정보를&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;담을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;수&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;있다는&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;것을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;보여줌.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/edwcZk/btsKg7glCj2/jyCYh3ibJF3E1TmKqtGTA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/edwcZk/btsKg7glCj2/jyCYh3ibJF3E1TmKqtGTA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/edwcZk/btsKg7glCj2/jyCYh3ibJF3E1TmKqtGTA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FedwcZk%2FbtsKg7glCj2%2FjyCYh3ibJF3E1TmKqtGTA1%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;736&quot; height=&quot;414&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;예를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;들어&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;그림에서,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첫번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서는 &lt;/span&gt;&lt;span&gt;직업&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;관련&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;feature가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;같이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;묶여서&lt;/span&gt;&lt;span&gt; 선택되고, (feature들간의 거리가 있더라도)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;두번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;스텝에서는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;투자&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;관련&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;feature가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;같이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;묶여서&lt;/span&gt;&lt;span&gt; 선택됨.&lt;/span&gt;&lt;span&gt;&lt;/span&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;span&gt;아래에 &lt;/span&gt;&lt;span&gt;있는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;그림은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;학습된 TabNet의&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;mask를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;시각화한&lt;/span&gt;&lt;span&gt;&amp;nbsp;것&lt;/span&gt;&lt;span&gt;임.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;세로는&lt;/span&gt;&lt;span&gt; 각 데이터 &lt;/span&gt;&lt;span&gt;instance를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미하고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가로는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;column을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미하는데, &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;밝으면&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;밝을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;수록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높은값&lt;/span&gt;&lt;span&gt; 즉, &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;feature라는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;것을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;의미함.&amp;nbsp;&lt;/span&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;&lt;span&gt;각 &lt;/span&gt;&lt;span&gt;마스크마다&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;변수들이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;서로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다르게&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나타나는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;것을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;볼 수 있고,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; 맨 &lt;/span&gt;&lt;span&gt;왼쪽의&lt;/span&gt;&lt;span&gt; Mask &lt;/span&gt;&lt;span&gt;aggregation은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;전체&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;단계에서의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;마스크를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;합산한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;결과로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;모델이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;어떤&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;주로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;집중했는지를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나타냄.&lt;/span&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;&lt;span&gt;첫번째&lt;/span&gt;&lt;span&gt; 데이터셋의&amp;nbsp;&lt;/span&gt;&lt;span&gt;결과는 &lt;/span&gt;&lt;span&gt;중요하지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;않은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성에&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;대해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;거의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모두&lt;/span&gt;&lt;span&gt; 0&lt;/span&gt;&lt;span&gt;을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;할당되어, &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성에만&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;집중하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tabnet의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여주고,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;두번째&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이셋의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;결과는 &lt;/span&gt;&lt;span&gt;instance 별로 서로 다른 feature를 &lt;/span&gt;&lt;span&gt;selection을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tabnet의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;확인할&lt;/span&gt;&lt;span&gt; 수 &lt;/span&gt;&lt;span&gt;있음.&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음은 TabNet의 또 다른 특징인&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;self supervised&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;learning의 적용임.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFBa7q/btsKhe0Dzz6/WJ6HdFG8e3WScO0EFaKvk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFBa7q/btsKhe0Dzz6/WJ6HdFG8e3WScO0EFaKvk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFBa7q/btsKhe0Dzz6/WJ6HdFG8e3WScO0EFaKvk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFBa7q%2FbtsKhe0Dzz6%2FWJ6HdFG8e3WScO0EFaKvk1%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;765&quot; height=&quot;430&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Tabnet은&lt;/span&gt;&lt;span&gt; self supervised learning 을 &lt;/span&gt;&lt;span&gt;통한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;향상을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;시도했음.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;원본 데이터를 마스킹하고 이를 복원하는 masked auto encoder 기반 방법을 적용함.&lt;/span&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;인코더와 디코더 구조는 아래 그림과 같음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1003&quot; data-origin-height=&quot;335&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kWC60/btsKgcppMwe/oXyp9doVHY3OixP08TJWKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kWC60/btsKgcppMwe/oXyp9doVHY3OixP08TJWKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kWC60/btsKgcppMwe/oXyp9doVHY3OixP08TJWKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkWC60%2FbtsKgcppMwe%2FoXyp9doVHY3OixP08TJWKK%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;746&quot; height=&quot;249&quot; data-origin-width=&quot;1003&quot; data-origin-height=&quot;335&quot;/&gt;&lt;/span&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;span&gt;self supervised &lt;/span&gt;&lt;span&gt;learning은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;향상시키고,&lt;/span&gt;&lt;span&gt; tabular data&amp;nbsp;&lt;/span&gt;&lt;span&gt;특성상&lt;/span&gt;&lt;span&gt; 누락된 &lt;/span&gt;&lt;span&gt;데이터가&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;많은데, &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이러한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;해결하는데&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;역할을 할 수 있음.&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Results &amp;amp; Experiments&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;결과를 보면,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;495&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c75c9T/btsKg3Zyqox/75S4UQXIQu3wq84KfltkB0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c75c9T/btsKg3Zyqox/75S4UQXIQu3wq84KfltkB0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c75c9T/btsKg3Zyqox/75S4UQXIQu3wq84KfltkB0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc75c9T%2FbtsKg3Zyqox%2F75S4UQXIQu3wq84KfltkB0%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;735&quot; height=&quot;182&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;495&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;합성&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋&lt;/span&gt;&lt;span&gt;(synthetic datasets)으로 평가함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt;(합성&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;데이터셋은 모델의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;평가하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위해&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;임의로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;만들어진&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋임&lt;/span&gt;&lt;span&gt;.)&lt;/span&gt;&lt;/i&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;&lt;span&gt; synthetic dataset은 각각&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다른&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가지도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;생성되었는데&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;예를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;들어&lt;/span&gt;&lt;span&gt; Syn1 ~ Syn3은 &lt;/span&gt;&lt;span&gt;모든&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;인스턴스에서&lt;/span&gt;&lt;span&gt; 같은 feature(column)들&lt;/span&gt;&lt;span&gt;이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요하도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;만들어짐.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;반면&lt;/span&gt;&lt;span&gt;, Syn4 ~ Syn6은 &lt;/span&gt;&lt;span&gt;인스턴스별로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특징들이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;다르도록&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;설계됨.&lt;/span&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;&lt;span&gt;따라서 &lt;/span&gt;&lt;span&gt;Syn1 ~ Syn3은 &lt;/span&gt;&lt;span&gt;모델이&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;중요한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성을&lt;/span&gt;&lt;span&gt; 잘 &lt;/span&gt;&lt;span&gt;포착하는지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;확인하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위한&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;데이터셋이고&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Syn4 ~ Syn6은 &lt;/span&gt;&lt;span&gt;모델이&lt;/span&gt;&lt;span&gt; instance-wise feature &lt;/span&gt;&lt;span&gt;selection을&lt;/span&gt;&lt;span&gt; 잘 &lt;/span&gt;&lt;span&gt;수행하는지&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;확인하기&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋임.&lt;/span&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;&lt;span&gt;그치만 TabNet의 성능이 항상 &lt;/span&gt;&lt;span&gt;다&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높게 나오지는 않음&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt; (INVASE와 비슷한듯..&lt;br /&gt;&lt;/span&gt;다만, INVASE는 3개의 네트워크가 결합된 형태로 존재하는데, 각각의 네트워크는 &lt;br /&gt;1) 각 샘플에서 중요한 특징을 선택하는 Selector 네트워크, &lt;br /&gt;2) 선택된 특징을 활용해 최종 예측을 수행하는 prediction 네트워크, &lt;br /&gt;3) 선택된 특징이 예측 성능에 얼마나 기여하는지를 계산하고 비교할 수 있도록 하는 baseline 네트워크로 구성되어 있음.)&lt;/i&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;p data-ke-size=&quot;size16&quot;&gt;다음은&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;real world&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;dataset에&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;대한&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;실험결과.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IS9Zo/btsKgz5AS9s/VlGcH0BsDpK0sP5KQI8Ikk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IS9Zo/btsKgz5AS9s/VlGcH0BsDpK0sP5KQI8Ikk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IS9Zo/btsKgz5AS9s/VlGcH0BsDpK0sP5KQI8Ikk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIS9Zo%2FbtsKgz5AS9s%2FVlGcH0BsDpK0sP5KQI8Ikk%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;810&quot; height=&quot;456&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Table 2(multi-class)&lt;/span&gt;&lt;span&gt;에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;미국&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;콜로라도주의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;루즈벨트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;숲에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;수집된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;토양&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;고도&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;경사도&lt;/span&gt;&lt;span&gt; 등 &lt;/span&gt;&lt;span&gt;다양한&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;환경적&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기반으로&lt;/span&gt;&lt;span&gt; 각 &lt;/span&gt;&lt;span&gt;지역의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;나무&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;종류를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;분류하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제임.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;결과&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;TabNet은&lt;/span&gt;&lt;span&gt; 96.99%의 &lt;/span&gt;&lt;span&gt;테스트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;정확도를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기록하며&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;다른&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델들보다&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여줌&lt;/span&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;&lt;span&gt;Table 3(multi-class)&lt;/span&gt;&lt;span&gt;에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;포커&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;핸드&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;게임의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;카드&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;조합을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기반으로&lt;/span&gt;&lt;span&gt; 각 &lt;/span&gt;&lt;span&gt;핸드의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가치를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;분류하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제임.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; 결과&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; TabNet은&lt;/span&gt;&lt;span&gt; 99.2%의 &lt;/span&gt;&lt;span&gt;테스트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;정확도를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기록하며&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;다른&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;모델들보다&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;월등히&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여줌&lt;/span&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;&lt;span&gt;Table 4(Regression&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋은&lt;/span&gt;&lt;span&gt; Sarcos &lt;/span&gt;&lt;span&gt;로봇팔의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;관절&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;움직임을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;예측하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;로봇팔의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;관절&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;위치&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;속도&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;가속도를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기반으로&lt;/span&gt;&lt;span&gt; 각 &lt;/span&gt;&lt;span&gt;관절의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;힘을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;예측해야함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;결과&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;TabNet-L은&lt;/span&gt;&lt;span&gt; 0.14의 &lt;/span&gt;&lt;span&gt;테스트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;MSE로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가장&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;낮은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;오류율을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;보여주고&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;있음&lt;/span&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;&lt;span&gt;Table 5 (binary)&lt;/span&gt;&lt;span&gt;에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입자&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;물리학&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;실험에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;힉스&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입자를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;검출하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;입자의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;특성&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;에너지&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;운동량&lt;/span&gt;&lt;span&gt; 등)을 &lt;/span&gt;&lt;span&gt;기반으로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;입자의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;존재&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;여부를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;예측해야함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;결과&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;TabNet-M은&lt;/span&gt;&lt;span&gt; 78.84%의 &lt;/span&gt;&lt;span&gt;테스트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;정확도로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가장&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;높은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;성능.&lt;/span&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;&lt;span&gt;Table 6 (Regression&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;에서&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;사용된&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터셋은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;로즈만이라는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;독일&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;소매업체의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;매출&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;데이터를&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;기반으로&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;매장의&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;일별&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;매출을&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;예측하는&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;문제&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;결과&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;TabNet은&lt;/span&gt;&lt;span&gt; 485.12의 &lt;/span&gt;&lt;span&gt;테스트&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;MSE로&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;가장&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;낮은&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;오류율을&lt;/span&gt;&lt;span&gt; 보임.&lt;/span&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;&lt;span&gt;다양한 real-world dataset에서 우수한 성능을 보여줌&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;span&gt;(근데 왜 아까 합성데이터셋 평가에서 사용한 INVASE와 같은 모델은 사용하지 않았는지는 의문..)&lt;/span&gt;&lt;/i&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;p data-ke-size=&quot;size16&quot;&gt;마지막으로 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;self supervised&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;learning을&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;적용 여부에 따른 성능 차이.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SOj8i/btsKgMDJoNr/Q28Ikksnywld5wNp9qUvwK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SOj8i/btsKgMDJoNr/Q28Ikksnywld5wNp9qUvwK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SOj8i/btsKgMDJoNr/Q28Ikksnywld5wNp9qUvwK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSOj8i%2FbtsKgMDJoNr%2FQ28Ikksnywld5wNp9qUvwK%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;698&quot; height=&quot;393&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;900&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Self-supervised learing을 적용했을때, 당연하겠지만 학습 속도도 빠르고 성능도 향상됨을 볼 수 있음.&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&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-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>machine learning</category>
      <category>deep learning</category>
      <category>parer review</category>
      <category>TabNet</category>
      <category>tabular</category>
      <category>논문</category>
      <category>논문 리뷰</category>
      <category>딥러닝</category>
      <category>리뷰</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/60</guid>
      <comments>https://kimbg.tistory.com/60#entry60comment</comments>
      <pubDate>Thu, 24 Oct 2024 12:31:28 +0900</pubDate>
    </item>
    <item>
      <title>[PR] Masked Autoencoders Are Scalable Vision Learners</title>
      <link>https://kimbg.tistory.com/59</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;본 리뷰는 아래 유투브 링크에 실린 이진원 님의 페이퍼 리뷰를 바탕으로 개인적으로 공부하기 위해 제작되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=mtUa3AAxPNQ&amp;amp;t=1463s&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.youtube.com/watch?v=mtUa3AAxPNQ&amp;amp;t=1463s&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=mtUa3AAxPNQ&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/vRCAK/hyWdnLEE90/yNkdZC8L0sJ7GZLI3Bm7I0/img.jpg?width=480&amp;amp;height=360&amp;amp;face=0_0_480_360&quot; data-video-width=&quot;480&quot; data-video-height=&quot;360&quot; data-video-origin-width=&quot;480&quot; data-video-origin-height=&quot;360&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;PR-355: Masked Autoencoders Are Scalable Vision Learners&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/mtUa3AAxPNQ&quot; width=&quot;480&quot; height=&quot;360&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&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;p data-ke-size=&quot;size16&quot;&gt;레즈넷의 저자인 카이밍허가 1저자로 참여한 논문&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FAIR에서 2021년 11월에 발표함.&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;논문에서 말하고자하는 것은 아래 이미지가 전부임&lt;/p&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-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;인트로던션&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥러닝 모델의 capablility와 capacity가 커짐으로써 백만장 정도의 이미지는 쉽게 오버피팅이 되기 때문에 더 많은 데이터가 필요로 하게 됨. NLP 쪽에서는 이를 self-supervised pretraining 방법을 통해 다루었음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 GPT나 BERT같은 모델들이 나왔고, GPT는 다음 단어를 예측하는 형태로, BERT는 중간에 단어를 가려놓고 맞추는 방식으로 문제를 풀었음. 그래서 모델 사이즈를 엄청나게 키우면서 엄청나게 많은 데이터로 self-supervised learning으로 학습을 할 수 있었음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;computer vision분야에서도 그런 접근방법이 많이 있었지만, 지도학습에 비해 성능이 잘 나오지 않아서 NLP에 비해 이러한 연구가 뒤쳐져있다는 것을 시사하면서 시작함.&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;p data-ke-size=&quot;size16&quot;&gt;첫번째로 아키텍쳐가 다름.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비전 분야는 CNN을 사용하기 때문에 mask token이나 positional embedding 같은 것을 통합시키기 어려웠음. 하지만 ViT의 등장으로 이제 가능하게 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;둘째로, information density를 언급함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;language는 사람이 만든것이고 이는 단어 하나하나의 정보량이 이미지에 비해 굉장히 큼. 그렇기 때문에 단어를 가려놓고 맞추는 방식으로 학습해도 높은 수준의 언어 이해를 하는 것처럼 보이지만, 이미지는 픽셀 하나하나가 어떤 특별한 의미가 있는 것이 아니고, 공간적인 redundancy가 있음. 그렇기 때문에 missing patch를 복원시키는게 그렇게 어려운 일은 아님.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;셋째로, 디코더의 역할이 다름.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BERT의 디코더는 간단한 MLP로도 해결할수있지만, 이미지에서의 디코더의 디자인은 중요한 역할을 담당하고 있음. latent representation으로부터 semantic level을 결정해야하기 때문.&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 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;관련 연구&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 말했듯이 BERT와 GPT가 대표적임. 이것의 장점은 쉽게 scale up 할 수 있다는 점, 그로 인해 성능도 올라가고. 더불어 zero, few shot에 대한 성능도 좋아짐.&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;이미지 쪽에서는 denosing autoencoder과 같은 오토인코더 계열이 있음. 지워진 부분을 inpainting하는 context encoder와 모델도 있음. NLP쪽에서 영감을 받아 iGPT나 BEiT도 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BEiT는 BERT Pre-training of Image Transformers 라는 것으로,&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;1013&quot; data-origin-height=&quot;597&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnLKa7/btsJAjBxR4l/XBaoi4qHHx0zVDmBONKGEK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnLKa7/btsJAjBxR4l/XBaoi4qHHx0zVDmBONKGEK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnLKa7/btsJAjBxR4l/XBaoi4qHHx0zVDmBONKGEK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcnLKa7%2FbtsJAjBxR4l%2FXBaoi4qHHx0zVDmBONKGEK%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;1013&quot; height=&quot;597&quot; data-origin-width=&quot;1013&quot; data-origin-height=&quot;597&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;다른 점이 있다면 픽셀단위를 예측하는 것이 아니고, 패치를 tokenize해서 그 토큰을 예측하는 방식으로 되어 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 사실은 pretraining하기 전에 더 pretraining을 통해 tokenizer를 학습해야함. 이미지 생성 모델인 DALLE에서 사용하는 그 방식을 사용함. 8000개 정도의 코드북을 만들어서 거기에 토크나이즈 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BEiT가 예측하는 것을 결국에 원본 이미지로부터 나온 토큰이 됨.&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;그 다음 관련 연구로는 Self-supervised learning이 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에는 pretext task와 같이 이미지를 회전시키고 얼마나 회전시켰는지를 맞춘다거나, 직소퍼즐을 푼다든지 등의 방식을 사용했지만, 이는 실제로 다운스트림 테스크에서 우리가 사용하려는 방식과 차이가 있음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 대조학습 기반의 방법도 있지만 이는 augmentation 방법에 디펜던시가 있음.&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;이 논문은 오토인코더 기반의 방법을 사용하지만, 기존과 다른점은 asymmetric design을 채택함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스크 토큰을 사용하지 않고, 마스킹된 부분은 제외하고 남아있는 패치들만 가지고 인코딩을 하고, 디코더에서는 마스킹된 패치를 그 자리에 끼워넣어, 디코더에서만 마스크 패치를 사용함. (아래 그림 참고)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1058&quot; data-origin-height=&quot;628&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbbEhV/btsJzrgh1qn/YkDUUoEx7bJxmTTiEaTc50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbbEhV/btsJzrgh1qn/YkDUUoEx7bJxmTTiEaTc50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbbEhV/btsJzrgh1qn/YkDUUoEx7bJxmTTiEaTc50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbbEhV%2FbtsJzrgh1qn%2FYkDUUoEx7bJxmTTiEaTc50%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;1058&quot; height=&quot;628&quot; data-origin-width=&quot;1058&quot; data-origin-height=&quot;628&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;복원 결과&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;loss function은 단순히 mse를 사용하고 있고, 당연히 결과값은 blurry하지만 우리는 이걸 하려는게 아니고, 그럴듯하게 복원만 해낼 수 있다면 좋은 representation이 학습돼서 다운스크림 태스크에서 좋은 성능을 낼수 있을 것이다 하는 기대를 할 수 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(사람이 봤을때 굉장히 많이 가려져있는데 복원을 생각보다 잘하는게 놀랍다)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1361&quot; data-origin-height=&quot;577&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdqA4T/btsJzUvoD1v/xpLWeOhKsoGty8vk4rdzcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdqA4T/btsJzUvoD1v/xpLWeOhKsoGty8vk4rdzcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdqA4T/btsJzUvoD1v/xpLWeOhKsoGty8vk4rdzcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdqA4T%2FbtsJzUvoD1v%2FxpLWeOhKsoGty8vk4rdzcK%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;1361&quot; height=&quot;577&quot; data-origin-width=&quot;1361&quot; data-origin-height=&quot;577&quot;/&gt;&lt;/span&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;디테일&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스킹은 오버랩되지 않고, 랜덤하게 마스킹을 함(정규 분포 활용).&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;굉장히 많은 부분은 마스킹(75%)하기 때문에, 단순히 extrapolation 하는 것만으로 복원하는 것은 어려움. 때문에 어런식으로 학습이 된다면 좋은 representation을 학습할 수 있을 것이라 기대함.&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;인코더는 ViT를 사용했고, 패치들은 linear projection를 통해 임베딩 되고 positional embeddings이 더해짐.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 인코더에 들어가는 부분은 25%밖에 되지 않기 때문에 기존 방법보다 3배 정도 빠르거나 큰 모델로 학습할 수 있다는 점은 강점.&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;디코더에서는 mask token도 함께 넣어 들어감. mask token은 학습 가능한 토큰임. 더불어 positional embeddings도 또 사용됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디코더는 pretraining때만 사용되고 실제로 다운스크림 테스크에서는 사용하지 않기 때문에 인코더와 독립적으로 구성하여 유연한 디자인을 채택함. 더불어 MAE의 디코더는 인코더에 비해 10% 미만의 토큰 당 연산량을 가지고 있기 때문에 pretraining에 대한 부담이 적음.&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;loss에는 복원의 대상이 되는 패치들만 고려됨.&amp;nbsp;&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;실험&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ImageNet-1K(IN1K)를 통해 pretraining을 함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 이후에 end-to-end fintuning을 하거나 linear probing으로 사전 학습 모델의 성능을 테스트함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이스라인은 ViT-large. 일반적으로 이 모델은 굉장히 커서 쉽게 오버피팅되고 스크래치부터 학습시키기가 까다롭다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 강한 정규화 방법이 필요하다고 함.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1079&quot; data-origin-height=&quot;111&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blHYG1/btsJzszupzi/KnI5dxfLEW2UHJJIsKfW11/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blHYG1/btsJzszupzi/KnI5dxfLEW2UHJJIsKfW11/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blHYG1/btsJzszupzi/KnI5dxfLEW2UHJJIsKfW11/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblHYG1%2FbtsJzszupzi%2FKnI5dxfLEW2UHJJIsKfW11%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;586&quot; height=&quot;60&quot; data-origin-width=&quot;1079&quot; data-origin-height=&quot;111&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 중간은 본 저자(FAIR)가 여러가지 실험을 했을때의 결과이고, 우측은 MAE을 사용했을때 결과.&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;p data-ke-size=&quot;size16&quot;&gt;실험을 하나씩 보면, 마스크 비율에 따른 결과에서, 마스킹 비율이 높아질수록 성능이 올라가다가 75%에서 포화되는걸 볼 수 있음. 생각보다 높은 수준에서 마스킹이 필요한것은 놀라운 일.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;544&quot; data-origin-height=&quot;387&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Rl5u3/btsHKSlRxZ1/WXqOKKinyEjSckmVQNWKTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Rl5u3/btsHKSlRxZ1/WXqOKKinyEjSckmVQNWKTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Rl5u3/btsHKSlRxZ1/WXqOKKinyEjSckmVQNWKTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRl5u3%2FbtsHKSlRxZ1%2FWXqOKKinyEjSckmVQNWKTk%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;544&quot; height=&quot;387&quot; data-origin-width=&quot;544&quot; data-origin-height=&quot;387&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BERT는 15% 정도 마스킹을 한것에 비해 상당히 높은 수준. 더불어 다른 비전쪽에서 사용했던 20~50% 수준과 비교해봤을때도 높음.&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;p data-ke-size=&quot;size16&quot;&gt;디코더 디자인도 살펴보면, 디코더의 depth와 dimension에 대한 실험임.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;716&quot; data-origin-height=&quot;212&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baXnxe/btsHKk4n6wg/WTTU3WHtpTuPlPFUrl6GE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baXnxe/btsHKk4n6wg/WTTU3WHtpTuPlPFUrl6GE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baXnxe/btsHKk4n6wg/WTTU3WHtpTuPlPFUrl6GE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaXnxe%2FbtsHKk4n6wg%2FWTTU3WHtpTuPlPFUrl6GE1%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;716&quot; height=&quot;212&quot; data-origin-width=&quot;716&quot; data-origin-height=&quot;212&quot;/&gt;&lt;/span&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;왼쪽에서 ft는 finetuning이고 lin은 linear probing을 의미하는데, lin같은 경우에는 block이 많아질수록 성능이 높아짐.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 recontruction task와 recognition task와의 차이가 있기 때문이라고 설명하고 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 MAE의 끝단에 있는 layer들은 recon에 특화된 애들이지 recognition에 특화된게 아니기 때문에, 더 많은 block을 필요로하는것임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당연히 ft에서는 디코더가 필요없기 떄문에 block이 얼마나 있던 큰 차이가 없는것을 볼 수 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;심지어 block을 1개만 사용하였더라도 ft에서 높은 성능을 보임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 pretraining에 대한 부담을 낮춰줄 수 있고, ViT-large에 비해 9% 정도의 연산량.&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;참고로 회색으로 된 부분이 MAE에서 디폴트로 선택한 옵션.&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;p data-ke-size=&quot;size16&quot;&gt;마스크 토큰에 대한 이야기를 하자면, 마스크 토큰을 사용하면 오히려 성능이 낮아짐.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;462&quot; data-origin-height=&quot;268&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cKFM6f/btsHL6i8fph/yn6X0aTYuUp4STLNIlLMB0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cKFM6f/btsHL6i8fph/yn6X0aTYuUp4STLNIlLMB0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cKFM6f/btsHL6i8fph/yn6X0aTYuUp4STLNIlLMB0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcKFM6f%2FbtsHL6i8fph%2Fyn6X0aTYuUp4STLNIlLMB0%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;462&quot; height=&quot;268&quot; data-origin-width=&quot;462&quot; data-origin-height=&quot;268&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐? 실제로 inference 할때와의 차이가 있기 때문인것으로 보임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 inference할때는 마스킹이 안된 이미지들의 패치를 뜯어서 넣을텐데, 학습할때 마스크 토큰을 껴서 하게되면, 학습과 inference 사이의 괴리가 생기게 됨.&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;p data-ke-size=&quot;size16&quot;&gt;더불어 마스크 토큰을 안 쓰게 되면, computation 역시 굉장히 줄일 수 있음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;534&quot; data-origin-height=&quot;309&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xmIzB/btsHMOvxHDU/fWrcQH6R12G2CHmctPcVp0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xmIzB/btsHMOvxHDU/fWrcQH6R12G2CHmctPcVp0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xmIzB/btsHMOvxHDU/fWrcQH6R12G2CHmctPcVp0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxmIzB%2FbtsHMOvxHDU%2FfWrcQH6R12G2CHmctPcVp0%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;534&quot; height=&quot;309&quot; data-origin-width=&quot;534&quot; data-origin-height=&quot;309&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ViT-H 같은 경우에 4배 이상의 속도가 나타남. 25%만 남겨두고 학습하니까..&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Reconstruction Target&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;재구성을 우리가 original pixel을 예측하게 할것인지, 아니면 PCA coefficient를 예측하게 할건지, 앞서 설명한 BEiT의 사용된 token(dVAE)을 예측하게 할것인지 실험을 해봤음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;477&quot; data-origin-height=&quot;230&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FiZrK/btsHMMkbSHA/zGw5ZtjUyfuvTmKspNknj0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FiZrK/btsHMMkbSHA/zGw5ZtjUyfuvTmKspNknj0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FiZrK/btsHMMkbSHA/zGw5ZtjUyfuvTmKspNknj0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFiZrK%2FbtsHMMkbSHA%2FzGw5ZtjUyfuvTmKspNknj0%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;477&quot; height=&quot;230&quot; data-origin-width=&quot;477&quot; data-origin-height=&quot;230&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과적으로 픽셀을 직접 예측하되 normalizaion된 것을 예측하는 것이 성능이 제일 좋았음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;dVAE token도 좋았지만, dVAE encoder도 굉장히 큰 모델이고 (ViT-L 대비 40%), 여러가지로 오버헤드가 있음.&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Data augmentation&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단순히 random size cropping 방식만 사용해도 성능이 굉장히 잘 나왔고, 아무런 augmentation 없이도 성능이 잘 나옴.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;260&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EMMsp/btsHKDP9dQN/csKEcBaDxbRZMwc5yBJ5tK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EMMsp/btsHKDP9dQN/csKEcBaDxbRZMwc5yBJ5tK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EMMsp/btsHKDP9dQN/csKEcBaDxbRZMwc5yBJ5tK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEMMsp%2FbtsHKDP9dQN%2FcsKEcBaDxbRZMwc5yBJ5tK%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;510&quot; height=&quot;260&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;260&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이유는 이미 높은 수준의 마스킹을 하는 것 자체가 augmentation의 효과가 있기 때문.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더불어 contrastive leanrning 방식은 augmentation 방법에 의존적인 것에 비하면 더 좋은 결과.&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Masking sampling strategy&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스킹하는 방법도 여러가지 시도를 해봄.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;255&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rPcFY/btsHKUDZTjB/JBNKyPrqqbiLT7ZO6F9fXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rPcFY/btsHKUDZTjB/JBNKyPrqqbiLT7ZO6F9fXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rPcFY/btsHKUDZTjB/JBNKyPrqqbiLT7ZO6F9fXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrPcFY%2FbtsHKUDZTjB%2FJBNKyPrqqbiLT7ZO6F9fXK%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;413&quot; height=&quot;204&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;255&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;452&quot; data-origin-height=&quot;328&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vNebV/btsHL3zXOaJ/e9VLwupSGKnapLXRXay7MK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vNebV/btsHL3zXOaJ/e9VLwupSGKnapLXRXay7MK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vNebV/btsHL3zXOaJ/e9VLwupSGKnapLXRXay7MK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvNebV%2FbtsHL3zXOaJ%2Fe9VLwupSGKnapLXRXay7MK%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;553&quot; height=&quot;401&quot; data-origin-width=&quot;452&quot; data-origin-height=&quot;328&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Training schedule&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼마나 오래 훈련을 시킬것인지? 놀라운것은 계속해서 성능이 올라간다는 것.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOyxqY/btsHKjdjQKm/rgAksxI3n7nfVl4adp8Sb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOyxqY/btsHKjdjQKm/rgAksxI3n7nfVl4adp8Sb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOyxqY/btsHKjdjQKm/rgAksxI3n7nfVl4adp8Sb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOyxqY%2FbtsHKjdjQKm%2FrgAksxI3n7nfVl4adp8Sb1%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;540&quot; height=&quot;409&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MoCo v3 같은 경우는 ViT-L 기준 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;300에폭에서&lt;span&gt; saturation이 되는데, MAE는 1600에폭까지 올라감.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;더불어 MAE는 25%만 보기때문에 훈련 부담도 contrastive learning에 비해 훨씬 덜함.&lt;/span&gt;&lt;/span&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;다른 SSL과의 비교&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;451&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ddiq3h/btsHKDP9udR/9eV29P7WTcv2TDJGNlYxHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ddiq3h/btsHKDP9udR/9eV29P7WTcv2TDJGNlYxHk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ddiq3h/btsHKDP9udR/9eV29P7WTcv2TDJGNlYxHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fddiq3h%2FbtsHKDP9udR%2F9eV29P7WTcv2TDJGNlYxHk%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;451&quot; height=&quot;299&quot; data-origin-width=&quot;451&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ViT-B나 ViT-L는 비슷하지만, 모델이 점점 커지면 커질수록 성능 차이가 벌어지는 것을 볼수 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저 ViT-H448의 87.8%는 그 당시 SOTA 성능이었음. 그때까지 512size를 사용하는 87.1%가 최고 성능이었음.&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;h4 data-ke-size=&quot;size20&quot;&gt;다른 SL 모델들과의 비교&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;806&quot; data-origin-height=&quot;530&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qTvlT/btsJAHhP2iw/N0Nd5mFPBr64rQa2LpLg0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qTvlT/btsJAHhP2iw/N0Nd5mFPBr64rQa2LpLg0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qTvlT/btsJAHhP2iw/N0Nd5mFPBr64rQa2LpLg0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqTvlT%2FbtsJAHhP2iw%2FN0Nd5mFPBr64rQa2LpLg0K%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;605&quot; height=&quot;398&quot; data-origin-width=&quot;806&quot; data-origin-height=&quot;530&quot;/&gt;&lt;/span&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;제일 아래있는게 원래 ViT 논문 성능인데, 여기서는 ViT-B에서 ViT-L로 갈때 오히려 성능이 떨어짐. (데이터가 부족하여 오버피팅됨)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 본 논문의 저자들이 여러 실험을 통해 끌어올렸고, 거기서 MAE 기반의 모델들은 모델이 커질수록 점점 더 성능이 좋아짐.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(진원님의 개인적인 아쉬움은 MAE에 IN1K 말고 더 많은 데이터를 사용해서 평가했더라면 어땠을까 하는.. 어디까지 올라갈수있는지 한번 보여줬으면 하는..)&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;h4 data-ke-size=&quot;size20&quot;&gt;Partial fine-truning&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1340&quot; data-origin-height=&quot;426&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IhlZl/btsJzTXEYvR/G2EJo9qgRqXC76ZFIeSTq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IhlZl/btsJzTXEYvR/G2EJo9qgRqXC76ZFIeSTq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IhlZl/btsJzTXEYvR/G2EJo9qgRqXC76ZFIeSTq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIhlZl%2FbtsJzTXEYvR%2FG2EJo9qgRqXC76ZFIeSTq1%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;860&quot; height=&quot;273&quot; data-origin-width=&quot;1340&quot; data-origin-height=&quot;426&quot;/&gt;&lt;/span&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;이 표를 보면 ft과 lin의 결과가 uncorrelated 되어있다. 그래서 논문에서는 linear probing에 대한 비판적인 시각을 이야기함.&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;linear probing이 popular protocol이지만 non-linear feature에 대한 것은 잘 잡지 못하는 단점이 있음.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서는 그래서 마지막 레이어 몇개를 추가하여 ft하는 것도 필요하다고 함.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;819&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sF4XE/btsJzsmatOr/4xSfz9WJwCpKmMkyAKldO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sF4XE/btsJzsmatOr/4xSfz9WJwCpKmMkyAKldO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sF4XE/btsJzsmatOr/4xSfz9WJwCpKmMkyAKldO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsF4XE%2FbtsJzsmatOr%2F4xSfz9WJwCpKmMkyAKldO1%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;602&quot; height=&quot;420&quot; data-origin-width=&quot;819&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&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;그래서 ft을 위한 block 몇개를 가지고 테스트를 해봤는데, 1개만 써도 성능이 엄청 올라감을 볼 수 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Transfer learning Experiments&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1658&quot; data-origin-height=&quot;362&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uX8mi/btsJAR5HV7w/dMLaVJDqDqVj0PRTDRneqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uX8mi/btsJAR5HV7w/dMLaVJDqDqVj0PRTDRneqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uX8mi/btsJAR5HV7w/dMLaVJDqDqVj0PRTDRneqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuX8mi%2FbtsJAR5HV7w%2FdMLaVJDqDqVj0PRTDRneqk%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;1658&quot; height=&quot;362&quot; data-origin-width=&quot;1658&quot; data-origin-height=&quot;362&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;COCO 데이터셋을 사용했고, Mask R-CNN이 사용됨. ViT 백본으로 FPN 구조를 사용하기 위해 변형함.&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;Sementic segmentation은 ADE20K라는 데이터셋에 UperNet이라는 것으로 실험함. (BEiT와 같은 코드)&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;1078&quot; data-origin-height=&quot;437&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JqMe8/btsJzq2VG5y/YwEIlLrCYYZFLng0J7l1N0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JqMe8/btsJzq2VG5y/YwEIlLrCYYZFLng0J7l1N0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JqMe8/btsJzq2VG5y/YwEIlLrCYYZFLng0J7l1N0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJqMe8%2FbtsJzq2VG5y%2FYwEIlLrCYYZFLng0J7l1N0%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;700&quot; height=&quot;284&quot; data-origin-width=&quot;1078&quot; data-origin-height=&quot;437&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;픽셀과 토큰 중에 어떤게 좋은가? 높거나 거의 같음. 그래서 굳이 dVAE 토큰을 사용할 필요가 없음.&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 data-ke-size=&quot;size23&quot;&gt;Discussion &amp;amp; Conclusion&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어쨋든 이렇게 간단한 알고리즘으로 굉장히 스케일 업 잘 된다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NLP에서는 SSL이 잘 되지만, 여전히 Cv에서는 SL이 도미넌트함. 그래서 CV 에서도 SSL을 통해 더 잘 나올수있음!&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;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;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;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;</description>
      <category>computer vision</category>
      <category>MAE</category>
      <category>paper review</category>
      <category>SSL</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/59</guid>
      <comments>https://kimbg.tistory.com/59#entry59comment</comments>
      <pubDate>Thu, 12 Sep 2024 17:03:37 +0900</pubDate>
    </item>
    <item>
      <title>[통계] Parametric models &amp;amp; Non-parametric models</title>
      <link>https://kimbg.tistory.com/58</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;생존분석을 공부하다가 '파라메트릭' 모형, '비파라메트릭' 모형과 같은 개념이 등장했다.&lt;br /&gt;단순하게 parameter가 있는 모델이겠니~, 학습이 되는 모델이구나~ 생각하고 넘겼으나, 그것과는 다른 개념이었다.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;결론부터 말하자면,&lt;br /&gt;'데이터가 특정 분포를 따른다는 가정의 유무'로 나뉜다.&lt;br /&gt;즉, 어떤 모델이 데이터가 특정 분포를 따른다는 가정이 있다면 parametric model, 아니면 non-parametric model이다.&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;예를들면,&lt;br /&gt;선형 회귀 모델에서 우리는 데이터가 '선형 관계'를 가진다고 가정하고, 기울기와 절편이라는 두개의 파라미터를 추정한다.&lt;br /&gt;이는 모형의 구조가 고정되어 있고, 소수의 파라미터로 그 분포를 정의하는 것이다.&lt;br /&gt;이는 정규분포, 포아송분포, 이항분포 등의 형태를 가정할 수 있음!&lt;br /&gt;다른 모델로는 로지스틱 회귀, t-test, ANOVA 등과 같은 통계 모델도 해당된다.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;반면 non-parametric model은,&lt;br /&gt;데이터가 특정 분포를 따른다고 가정하지 않고, 대신 데이터 자체로부터 모형을 직접 추정한다.&lt;br /&gt;따라서 parameter의 수는 고정되어 있지 않고, 데이터의 크기에 따라 달라질 수 있다.&lt;br /&gt;예를들면,&lt;br /&gt;SVM, kNN, 의사결정나무, 딥러닝 기반의 모델들이 이에 해당한다.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;이런 개념은 생존분석에서&lt;br /&gt;카플란-마이어 추정은 non-parametric model(비모수적 모델)로써, 특정 분포를 가정하지 않고 생존함수를 추정한다.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;반면, 콕스 비례위험 모형은 semi-parametric model(반모수적 방법)으로, 생존 시간에 영향을 미치는 변수들을 분석한다.&lt;br /&gt;이 모형은 비례 위험 가정('기준 위험 함수가 전 구간에 대해 일정하다'라는 가정)을 바탕으로 변수들의 상대적 위험 비를 추정하기 때문에 parametric 하지만,&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333;&quot;&gt;설명 변수&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;와 회귀 계수&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;beta;&lt;/span&gt;의 선형 결합 형태를 가정하기 때문에, 설명 변수와 관련된 부분은 non-parametric으로 모델링된다.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;끝!!&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>분류없음</category>
      <category>non-parametric model</category>
      <category>parametric model</category>
      <category>모수적 모델</category>
      <category>비모수적 모델</category>
      <category>통계</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/58</guid>
      <comments>https://kimbg.tistory.com/58#entry58comment</comments>
      <pubDate>Mon, 1 Jul 2024 16:12:38 +0900</pubDate>
    </item>
    <item>
      <title>[paper review] (MICCAI, 2020) TeCNO: Surgical Phase Recognition with Multi-stage Temporal Convolutional Networks</title>
      <link>https://kimbg.tistory.com/57</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이 논문은 수술 영상의 phase를 recognition을 하기 위한 연구로 2020년에 MICCAI에 기재됐다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-030-59716-0_33&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://link.springer.com/chapter/10.1007/978-3-030-59716-0_33&lt;/a&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;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;개인적으로 surgical video analysis 중 phase recognition 연구의 milestone으로 생각한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;비교적 적용하기 간단하고 이해도 어렵지 않기 때문이다.&lt;/span&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 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;br /&gt;&lt;b&gt;본&amp;nbsp;연구는&lt;/b&gt;&amp;nbsp;복강경&amp;nbsp;수술&amp;nbsp;비디오를&amp;nbsp;분석하여,&amp;nbsp;&lt;b&gt;해당&amp;nbsp;프레임이&amp;nbsp;전체&amp;nbsp;수술&amp;nbsp;phase&amp;nbsp;중&amp;nbsp;어느&amp;nbsp;phase에&amp;nbsp;해당하는지&amp;nbsp;분류&lt;/b&gt;하는&amp;nbsp;연구를&amp;nbsp;진행함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;Surgical workflow analysis는 환자의 안전을 증진하고, 수술 에러를 줄이고, 수술실에서 의사소통을 최적화하는데 도움을 줄 수 있음. 특히,&amp;nbsp;Surgical&amp;nbsp;phase&amp;nbsp;recognition&amp;nbsp;task는&amp;nbsp;수술과정에서&amp;nbsp;이상현상을&amp;nbsp;감지하여&amp;nbsp;의사결정을&amp;nbsp;지원을&amp;nbsp;할&amp;nbsp;수&amp;nbsp;있고,&amp;nbsp;더&amp;nbsp;나아가&amp;nbsp;임상의&amp;nbsp;교육&amp;nbsp;목적으로&amp;nbsp;활용될&amp;nbsp;수도&amp;nbsp;있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;br /&gt;&lt;b&gt;Surgical phase recognition task의 특징&lt;/b&gt;&lt;br /&gt;1. 비디오 특성이 환자에 따라, surgeon에 따라 다름. (환자마다 해부학적 특성이 다르고, surgeon마다 수술 스타일이 다르기 때문에) &lt;br /&gt;2. 다른 phase라고 할지라도 프레임이 굉장히 비슷한 경우도 있고, phase의 전환점을 정의하기가 애매한 경우가 있어서 일반화 성능을 제한하는 어려움이 있음. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1070&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JHUm7/btsGq9vKQe1/aVYdnoRz39aC5fENgLPuM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JHUm7/btsGq9vKQe1/aVYdnoRz39aC5fENgLPuM1/img.png&quot; data-alt=&quot;이게 어떤 phase일까요~?&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JHUm7/btsGq9vKQe1/aVYdnoRz39aC5fENgLPuM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJHUm7%2FbtsGq9vKQe1%2FaVYdnoRz39aC5fENgLPuM1%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;1070&quot; height=&quot;454&quot; data-origin-width=&quot;1070&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이게 어떤 phase일까요~?&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;비디오&amp;nbsp;분석은&amp;nbsp;프레임의&amp;nbsp;시간적&amp;nbsp;순서가&amp;nbsp;중요하기&amp;nbsp;때문에,&amp;nbsp; &lt;br /&gt;본&amp;nbsp;연구에서는&amp;nbsp;&lt;b&gt;Temporal&amp;nbsp;Convolutional&amp;nbsp;Networks&amp;nbsp;(TCN)&lt;/b&gt;을&amp;nbsp;활용하여&amp;nbsp;시간적&amp;nbsp;특징을&amp;nbsp;고려한다. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;TCN의 특징&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Dilated&amp;nbsp;convolution을&amp;nbsp;활용&lt;/b&gt;하여&amp;nbsp;higher&amp;nbsp;temporal&amp;nbsp;resolution에&amp;nbsp;대해&amp;nbsp;보다&amp;nbsp;넓은&amp;nbsp;receptive&amp;nbsp;field를&amp;nbsp;가지고&amp;nbsp;있고, &lt;br /&gt;Phase recognition task의 계층적인 특성으로 인해 미래 시점은 현재 시점에서는 고려되지 않아야 하는데 이를 잘 반영한다. &lt;b&gt;(Unidirection)&lt;/b&gt;&lt;br /&gt;&lt;/span&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;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;br /&gt;&lt;b&gt;본 연구에서는 두가지 contribution을 제시함&lt;/b&gt;&lt;br /&gt;(1) 최초로 dilated MS(Multi-stage)-TCNs 울 사용함.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(2) 두 복강경 비디오 데이터셋에 대한 평가를 진행함.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1186&quot; data-origin-height=&quot;406&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HCwYV/btsGtjRTL13/64mKHqAAE48qKtwldLysVk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HCwYV/btsGtjRTL13/64mKHqAAE48qKtwldLysVk/img.png&quot; data-alt=&quot;TCN 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HCwYV/btsGtjRTL13/64mKHqAAE48qKtwldLysVk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHCwYV%2FbtsGtjRTL13%2F64mKHqAAE48qKtwldLysVk%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;1186&quot; height=&quot;406&quot; data-origin-width=&quot;1186&quot; data-origin-height=&quot;406&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;TCN 예시&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 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Materials&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Datasets : CHOLEC80, CHOLEC51&lt;/b&gt;&lt;br /&gt;담낭 절제술(resection of the gallbladder) procedure를 담고 있는 복강경 영상이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 프레임별로 어떤 phase인지 labeling이 되어있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;class는 총 7개&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;(1)&amp;nbsp;The&amp;nbsp;publicly&amp;nbsp;available&amp;nbsp;Cholec80&lt;/b&gt; &lt;br /&gt;includes&amp;nbsp;80&amp;nbsp;videos&amp;nbsp;with&amp;nbsp;resolutions&amp;nbsp;1920&amp;times;1080&amp;nbsp;or&amp;nbsp;854&amp;times;480&amp;nbsp;pixels&amp;nbsp;recorded&amp;nbsp;at&amp;nbsp;25&amp;nbsp;frames-per-&amp;nbsp;second&amp;nbsp;(fps). &lt;br /&gt;Additionally,&amp;nbsp;seven&amp;nbsp;different&amp;nbsp;tool&amp;nbsp;annotation&amp;nbsp;labels&amp;nbsp;sampled&amp;nbsp;at&amp;nbsp;1&amp;nbsp;fps&amp;nbsp;are&amp;nbsp;provided.&amp;nbsp; &lt;br /&gt;The&amp;nbsp;dataset&amp;nbsp;to&amp;nbsp;40&amp;nbsp;videos&amp;nbsp;for&amp;nbsp;training,&amp;nbsp;8&amp;nbsp;for&amp;nbsp;validation,&amp;nbsp;and&amp;nbsp;32&amp;nbsp;for&amp;nbsp;testing. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;(2)&amp;nbsp;Cholec51&amp;nbsp;&lt;/b&gt; &lt;br /&gt;51&amp;nbsp;videos&amp;nbsp;with&amp;nbsp;resolution&amp;nbsp;1920&amp;nbsp;&amp;times;&amp;nbsp;1080&amp;nbsp;pixels&amp;nbsp; &lt;br /&gt;There&amp;nbsp;is&amp;nbsp;no&amp;nbsp;additional&amp;nbsp;tool&amp;nbsp;information&amp;nbsp;provided.&amp;nbsp; &lt;br /&gt;25&amp;nbsp;videos&amp;nbsp;were&amp;nbsp;utilized&amp;nbsp;for&amp;nbsp;training,&amp;nbsp;8&amp;nbsp;for&amp;nbsp;validation&amp;nbsp;and&amp;nbsp;18&amp;nbsp;for&amp;nbsp;test.&amp;nbsp; &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;796&quot; data-origin-height=&quot;915&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c030gF/btsGssBzbAv/At8EOOhUynKwvRSKyueMtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c030gF/btsGssBzbAv/At8EOOhUynKwvRSKyueMtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c030gF/btsGssBzbAv/At8EOOhUynKwvRSKyueMtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc030gF%2FbtsGssBzbAv%2FAt8EOOhUynKwvRSKyueMtK%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;796&quot; height=&quot;915&quot; data-origin-width=&quot;796&quot; data-origin-height=&quot;915&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Methodology&lt;/b&gt;&lt;br /&gt;The&amp;nbsp;pipeline&amp;nbsp;of&amp;nbsp;TeCNO&amp;nbsp;consisting&amp;nbsp;of&amp;nbsp;the&amp;nbsp;following&amp;nbsp;steps:&amp;nbsp; &lt;br /&gt;1) visual feature extractor로 ResNet50을 사용함.&lt;br /&gt;2) ResNet50을 통해 추출된 feature을 TCN에 넘겨 temporal context을 고려한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TCN은 총 2번 사용됨.&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;1193&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UOtCc/btsGsTZ4h2B/it0PhzVP9PJksqk4qU1R61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UOtCc/btsGsTZ4h2B/it0PhzVP9PJksqk4qU1R61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UOtCc/btsGsTZ4h2B/it0PhzVP9PJksqk4qU1R61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUOtCc%2FbtsGsTZ4h2B%2Fit0PhzVP9PJksqk4qU1R61%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;1193&quot; height=&quot;651&quot; data-origin-width=&quot;1193&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;661&quot; data-origin-height=&quot;99&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r7nUw/btsGraIe7t2/duo8tPMOnPYNRif6QMyvt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r7nUw/btsGraIe7t2/duo8tPMOnPYNRif6QMyvt0/img.png&quot; data-alt=&quot;사용된 loss function은 그냥 weighted cross entorpy 임&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r7nUw/btsGraIe7t2/duo8tPMOnPYNRif6QMyvt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr7nUw%2FbtsGraIe7t2%2Fduo8tPMOnPYNRif6QMyvt0%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;661&quot; height=&quot;99&quot; data-origin-width=&quot;661&quot; data-origin-height=&quot;99&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;사용된 loss function은 그냥 weighted cross entorpy 임&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;학습은 2-stage로 이루어진다.&lt;/b&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;&lt;b&gt;1)&amp;nbsp;ResNet50&amp;nbsp;as&amp;nbsp;a&amp;nbsp;visual&amp;nbsp;feature&amp;nbsp;extractor:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시간적 맥락을 고려하지 않고 단지 프레임 별로 어떤 phase인지 학습함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더불어 데이터셋에 tool에 대한 정보도 있기때문에,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 활용하여 어떤 tool이 나오는지에 대한 identification을 학습하기도 함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(이때는 linear layer을 별도로 추가함)&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;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2)&amp;nbsp;Multi-stage&amp;nbsp;TCN:&lt;/b&gt; &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러개의 TCN을 사용하는 이유는 이전 TCN으로부터 나온 output을 refine하기 위함임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서는 tool information없이 학습됨.&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;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 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;b&gt;Results&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;b&gt;1. Effect of Feature Extractor Architecture&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;AlexNet 보다 ResNet50의 feature extractor로써의 성능이 우수함 (당연하게도)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;더불어 TCN을 3개까지 붙혀봤는데 2개까지 붙히는게 성능이 제일 좋았음 (실험적 검증)&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1328&quot; data-origin-height=&quot;465&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/84Mc9/btsGtlvsRgP/34CIcE5ShUhssQSI7wiUF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/84Mc9/btsGtlvsRgP/34CIcE5ShUhssQSI7wiUF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/84Mc9/btsGtlvsRgP/34CIcE5ShUhssQSI7wiUF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F84Mc9%2FbtsGtlvsRgP%2F34CIcE5ShUhssQSI7wiUF0%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;1328&quot; height=&quot;465&quot; data-origin-width=&quot;1328&quot; data-origin-height=&quot;465&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;b&gt;2. Comparative Methods&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;LSTM을 사용한 다른 연구와 비교했을때, TeCNO가 ~8% 까지 좋았음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;이유는 다른 연구는 feature extractor로 AlexNet을 사용한것도 있고,&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;one step&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;training process로 학습한 연구도 있기도 함 (MTRCNet)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt; &lt;br /&gt;또한 이러한 성능차이는 &lt;b&gt;the higher temporal resolution, large receptive field &lt;/b&gt;덕분이라고 설명함&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1209&quot; data-origin-height=&quot;488&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cIjqvl/btsGtL1RpvB/z0EDBSYZZb0ttMfDbe84W1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cIjqvl/btsGtL1RpvB/z0EDBSYZZb0ttMfDbe84W1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cIjqvl/btsGtL1RpvB/z0EDBSYZZb0ttMfDbe84W1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcIjqvl%2FbtsGtL1RpvB%2Fz0EDBSYZZb0ttMfDbe84W1%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;1209&quot; height=&quot;488&quot; data-origin-width=&quot;1209&quot; data-origin-height=&quot;488&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;b&gt;3. Phase Recognition Consistency&lt;/b&gt;&lt;br /&gt;In&amp;nbsp;Fig.2는&amp;nbsp;두&amp;nbsp;데이터셋에&amp;nbsp;대해&amp;nbsp;각&amp;nbsp;phase&amp;nbsp;구간별로&amp;nbsp;시각화를&amp;nbsp;한&amp;nbsp;것. &lt;br /&gt;ResNetLSTM에&amp;nbsp;비해&amp;nbsp;TeCNO가&amp;nbsp;consistent&amp;nbsp;and&amp;nbsp;smooth&amp;nbsp;predictions를&amp;nbsp;나타냄. (Accuracy는&amp;nbsp;2%p&amp;nbsp;밖에&amp;nbsp;차이나지&amp;nbsp;않지만서도..) &lt;br /&gt;even&amp;nbsp;for&amp;nbsp;the&amp;nbsp;phases&amp;nbsp;with&amp;nbsp;shorter&amp;nbsp;duration,&amp;nbsp;such&amp;nbsp;as&amp;nbsp;P5&amp;nbsp;and&amp;nbsp;P7. &lt;br /&gt;Finally,&amp;nbsp;TeCNO&amp;nbsp;showcases&amp;nbsp;robustness,&amp;nbsp;since&amp;nbsp;Video&amp;nbsp;3&amp;nbsp;and&amp;nbsp;4&amp;nbsp;are&amp;nbsp;both&amp;nbsp;missing&amp;nbsp;P1.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1121&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVwtvS/btsGsXIeWlA/YvCLSQl9yEKwvQrjtDOUhk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVwtvS/btsGsXIeWlA/YvCLSQl9yEKwvQrjtDOUhk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVwtvS/btsGsXIeWlA/YvCLSQl9yEKwvQrjtDOUhk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVwtvS%2FbtsGsXIeWlA%2FYvCLSQl9yEKwvQrjtDOUhk%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;1121&quot; height=&quot;571&quot; data-origin-width=&quot;1121&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한편, 모델 훈련과 관련해서는&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- Adam optimizer with an initial learning rate of 5e&amp;minus;4 for 25 epochs.&amp;nbsp; &lt;br /&gt;&amp;nbsp;- The batch size is identical to the length of each video.&amp;nbsp; &lt;br /&gt;&amp;nbsp;- PyTorch, NVIDIA Titan V 12 GB GPU using Polyaxon1.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- The source code for TeCNO is publicly Github (&lt;a href=&quot;https://github.com/tobiascz/TeCNO/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/tobiascz/TeCNO/&lt;/a&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;p data-ke-size=&quot;size16&quot;&gt;끝!!&lt;/p&gt;</description>
      <category>MICCAI</category>
      <category>paper review</category>
      <category>Phase recognition</category>
      <category>Surgical video analysis</category>
      <category>TeCNO</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/57</guid>
      <comments>https://kimbg.tistory.com/57#entry57comment</comments>
      <pubDate>Mon, 8 Apr 2024 14:54:11 +0900</pubDate>
    </item>
    <item>
      <title>[NLP] BERT에 대한 간단 설명 (paper review)</title>
      <link>https://kimbg.tistory.com/56</link>
      <description>&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding&lt;/span&gt;&lt;/h3&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;i&gt;Devlin, Jacob, et al. &quot;Bert: Pre-training of deep bidirectional transformers for language understanding.&quot; arXiv preprint arXiv:1810.04805 (2018).&lt;/i&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;2018년에 구글에서 발표된 너무나도 유명하고 NLP 공부할때 milestone이 되는 모델이다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;시작해보자.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;개요&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;언어모델을 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;개발할때&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 양질의 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;pre-trained word representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;을 사용하는 것은 매우 중요함&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;왜&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;? &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;좋은 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;word representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;은 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;down-stream task&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;를 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;해결할때&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 모델의 성능을 좌우하기 때문.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;하지만 좋은 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;word representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;을 얻는 것은 굉장히 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;어려운일&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;예를들어, bag of word나 N-gram과 같은 전통적인 방법은 &lt;span style=&quot;color: #000000;&quot;&gt;동음이의어를 처리하기 어려움.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;371&quot; data-origin-height=&quot;287&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ARejq/btsGnL8oq4k/fKsKaLS1ICja3v0ZM5k5c1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ARejq/btsGnL8oq4k/fKsKaLS1ICja3v0ZM5k5c1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ARejq/btsGnL8oq4k/fKsKaLS1ICja3v0ZM5k5c1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FARejq%2FbtsGnL8oq4k%2FfKsKaLS1ICja3v0ZM5k5c1%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;277&quot; height=&quot;214&quot; data-origin-width=&quot;371&quot; data-origin-height=&quot;287&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;조금더 발전된&amp;nbsp;&lt;span style=&quot;color: #000000;&quot;&gt;Word2Vec, Glove&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;와 같은 기존의 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;word representation도 마찬가지로&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lsquo;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;단어&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;rsquo;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;를 기준으로 하나의 벡터로 표현됨.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;가령&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;, 아래와 같이 1개에 단어에는 1개의 벡터가 매핑됨.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;263&quot; data-origin-height=&quot;45&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kxrzL/btsGn0dcDdV/kmwemiKPGMQ0jr5ZKqimGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kxrzL/btsGn0dcDdV/kmwemiKPGMQ0jr5ZKqimGK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kxrzL/btsGn0dcDdV/kmwemiKPGMQ0jr5ZKqimGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkxrzL%2FbtsGn0dcDdV%2FkmwemiKPGMQ0jr5ZKqimGK%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;263&quot; height=&quot;45&quot; data-origin-width=&quot;263&quot; data-origin-height=&quot;45&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;하지만 이는 문맥을 반영하지 않기 때문에&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;, &amp;lsquo;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;사과를 건네다&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lsquo; &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;와 같은 문장에서 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lsquo;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;사과&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;rsquo;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;가 무엇을 의미하는지 불분명함&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; context-independent word representation&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;따라서 최근의 많은 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;NLP&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;들은 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;context-dependent word representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;을 잘 구축하고자 함&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;한편&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;BERT(Bidirectional Encoder Representations from Transformer) &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;는 요약하면 아래와 같다. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;- T&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ransformer를&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Encoder로 활용하여 양방향의 특징을 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;활용하는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Language model&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;- &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ELMo&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;, GPT-1&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;과 비슷한 시기 발표&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;됨&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;- &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Objective는 1) &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;양질의 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;pre-trained language representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;를 얻는 것, &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2) &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;down-stream task&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;로의 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;간단한 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;fine-tuning&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;- &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;BERT base: 110M params like GPT-1&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;- BERT large: 340M params&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;관련 연구인 ELMo와 GPT-1과 비교하자면, 아래와 같음.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;983&quot; data-origin-height=&quot;402&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NryIl/btsGlx4PSGz/QxjQKZJSbF5KskLet1V1xK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NryIl/btsGlx4PSGz/QxjQKZJSbF5KskLet1V1xK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NryIl/btsGlx4PSGz/QxjQKZJSbF5KskLet1V1xK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNryIl%2FbtsGlx4PSGz%2FQxjQKZJSbF5KskLet1V1xK%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;983&quot; height=&quot;402&quot; data-origin-width=&quot;983&quot; data-origin-height=&quot;402&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;좀더 자세히 보면 먼저 ELMo는 ,&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ELMo&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; (Embeddings from Language Models)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;feature based approach를 사용함&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;input으로 &lt;span style=&quot;color: #000000;&quot;&gt;기존의&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;context-independent word representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;에 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;pretrained representation&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;을 추가&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;concat&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;하여 사용하는 방법임.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Bidirection과 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;LSTM &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;구조를&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 사용함.&lt;/span&gt;&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;LSTM 특성상 깊고 양방향 특징 학습에 한계가 있음&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;774&quot; data-origin-height=&quot;84&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yhPvH/btsGkBT2hMd/A0jVsXRXE3v8ooralzuqyK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yhPvH/btsGkBT2hMd/A0jVsXRXE3v8ooralzuqyK/img.png&quot; data-alt=&quot;Bidirection&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yhPvH/btsGkBT2hMd/A0jVsXRXE3v8ooralzuqyK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyhPvH%2FbtsGkBT2hMd%2FA0jVsXRXE3v8ooralzuqyK%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;774&quot; height=&quot;84&quot; data-origin-width=&quot;774&quot; data-origin-height=&quot;84&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Bidirection&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;GPT-1는&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;fine-tuning based approach 사용&lt;/span&gt;&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;pretrained parameter&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;를 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;down-stream task&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;에서 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;fine-tuning &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;하는 방법&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Unidirection과&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;Transformer &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;구조 사용&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;77&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SKGRx/btsGn0ddFGb/sC8VOdBzwgrytDKIdkspOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SKGRx/btsGn0ddFGb/sC8VOdBzwgrytDKIdkspOk/img.png&quot; data-alt=&quot;Unidirection&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SKGRx/btsGn0ddFGb/sC8VOdBzwgrytDKIdkspOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSKGRx%2FbtsGn0ddFGb%2FsC8VOdBzwgrytDKIdkspOk%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;540&quot; height=&quot;77&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;77&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Unidirection&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 BERT는 두 모델의 장점을 차용하기로 함.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Bidirection한 transformer 구조로 되어있고,&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;down-stream task를 위한 fine-tuning based approcah를 사용한다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;앞서 말했듯이, BERT는 &lt;span style=&quot;color: #000000; text-align: left;&quot;&gt;context-dependent word representation를 잘 구축하고자 했다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; text-align: left;&quot;&gt;이를 위한 사전학습은 크게 두 가지를 사용했는데,&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; text-align: left;&quot;&gt;먼저 MLM (Masked language model)이다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;GPT와 같이 문장 일부분을 masking하고 이를 맞추게끔 학습이 된다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;전체 문장의 15%정도를 masked token으로 가린다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;890&quot; data-origin-height=&quot;407&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6TL3G/btsGqxjvI5y/iAxFJZgsQ5ElDTACCO9k0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6TL3G/btsGqxjvI5y/iAxFJZgsQ5ElDTACCO9k0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6TL3G/btsGqxjvI5y/iAxFJZgsQ5ElDTACCO9k0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6TL3G%2FbtsGqxjvI5y%2FiAxFJZgsQ5ElDTACCO9k0K%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;890&quot; height=&quot;407&quot; data-origin-width=&quot;890&quot; data-origin-height=&quot;407&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;다음으로는 NSP (Next sentence prediction) 이다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;NSP는 &lt;span style=&quot;color: #000000;&quot;&gt;주어진 문장의 다음 문장이 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IsNext&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;]&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;인지 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;NotNext&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;]&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;인지 예측하는 문제를 푸는 것이다.&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Down-stream task에는 QA (Question &amp;amp; Anwsering)이나 NLI (Natural language inference)와 같은 고수준의 task가 존재한다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;기존 pretrained LM 같은 경우에는 문장 관계를 고려하는 task에서 좋은 성능을 내지 못했다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 BERT는 NSP를 통해 사전학습된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;546&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dpNP0d/btsGq15stx9/9LPgHuZV3WyMjYeAjE4Au0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dpNP0d/btsGq15stx9/9LPgHuZV3WyMjYeAjE4Au0/img.png&quot; data-alt=&quot;이 그림에서 C token이 NSP task에서 사용된다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dpNP0d/btsGq15stx9/9LPgHuZV3WyMjYeAjE4Au0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdpNP0d%2FbtsGq15stx9%2F9LPgHuZV3WyMjYeAjE4Au0%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;442&quot; height=&quot;420&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;546&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이 그림에서 C token이 NSP task에서 사용된다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;한편, BERT는 pretraing을 위해 BooksCorpus (약 8억개 단어) 와 Englich Wikipedia (약 25억개 단어) 를 사용했다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Pretraining이 완료되었다면, 각 down-stream task에 맞게 fine tuning을 해야한다.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Fine tuning 단계는 task마다 사용되는 &lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;BERT의 output이 다르다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;Classification task 같은 경우, 예를들어 RTE (&lt;span style=&quot;background-color: #ffffff; color: #3d4144; text-align: left;&quot;&gt;Recognizing Textual Entailment) 나 감정분석같은 경우에는 [c] token 을 사용한다. (아래 그림에서 (a)와 (b) 그림에 해당)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;반면, Token 단위의 task인 경우, 예를들어 QA나 Seqeunce tagging 같은 경우에는 BERT의 output token representation을 새로운 layer에 넘겨주는 형태로 학습한다. &lt;span style=&quot;background-color: #ffffff; color: #3d4144; text-align: left;&quot;&gt;(아래 그림에서 (c)와 (c) 그림에 해당)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;794&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dXRQIp/btsGsi6ACl4/E4cbyLgMeGDvQ0csfqiSL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dXRQIp/btsGsi6ACl4/E4cbyLgMeGDvQ0csfqiSL1/img.png&quot; data-alt=&quot;fine tuning의 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dXRQIp/btsGsi6ACl4/E4cbyLgMeGDvQ0csfqiSL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdXRQIp%2FbtsGsi6ACl4%2FE4cbyLgMeGDvQ0csfqiSL1%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;794&quot; height=&quot;775&quot; data-origin-width=&quot;794&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;fine tuning의 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;BERT의 input은 아래와 같이 3개의 embeddings들이 summation되어 만들어진다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1219&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBOLDk/btsGqWJ1nv6/Od7xvNp9uNNAIW7f8lw3C0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBOLDk/btsGqWJ1nv6/Od7xvNp9uNNAIW7f8lw3C0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBOLDk/btsGqWJ1nv6/Od7xvNp9uNNAIW7f8lw3C0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBOLDk%2FbtsGqWJ1nv6%2FOd7xvNp9uNNAIW7f8lw3C0%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;1219&quot; height=&quot;377&quot; data-origin-width=&quot;1219&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Token embedding은 &lt;span style=&quot;color: #000000;&quot;&gt;WordPiece&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; embedding을 사용.&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Segment embedding은 각각의 문장을 구분해주기 위한 것으로, 이는 학습 가능한 parameter로 설정한다고 한다. (어떤 메커니즘인지는 모르겠음)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Position embedding은 흔히 사용되는 &lt;span style=&quot;background-color: #ffffff; color: #0d0d0d; text-align: start;&quot;&gt; Sinusoidal Positional Embedding을 사용한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&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;299&quot; data-origin-height=&quot;59&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/79Trh/btsGsqQ1157/SlFCaW96cogfC37uzrHj60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/79Trh/btsGsqQ1157/SlFCaW96cogfC37uzrHj60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/79Trh/btsGsqQ1157/SlFCaW96cogfC37uzrHj60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F79Trh%2FbtsGsqQ1157%2FSlFCaW96cogfC37uzrHj60%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;299&quot; height=&quot;59&quot; data-origin-width=&quot;299&quot; data-origin-height=&quot;59&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Results&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. GLUE benchmark dataset에서 평가한 결과&lt;/b&gt;&lt;br /&gt;GLUE는&amp;nbsp;General&amp;nbsp;Language&amp;nbsp;Understanding&amp;nbsp;Evaluation의&amp;nbsp;약자로&amp;nbsp;다양한&amp;nbsp;general&amp;nbsp;language&amp;nbsp;understanding&amp;nbsp;task를&amp;nbsp;포함함.실험&amp;nbsp;결과:&amp;nbsp;BERT&amp;nbsp;Base,&amp;nbsp;Large&amp;nbsp;모두&amp;nbsp;기존의&amp;nbsp;방법보다&amp;nbsp;좋은&amp;nbsp;성능을&amp;nbsp;보임 &lt;br /&gt;특히&amp;nbsp;BERT-Large는&amp;nbsp;다른&amp;nbsp;어떤&amp;nbsp;모델보다&amp;nbsp;특히&amp;nbsp;우수한&amp;nbsp;성능을&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;979&quot; data-origin-height=&quot;208&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XVZcD/btsGssH5F4X/jdBqkonYYI3hXhc7KHaTO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XVZcD/btsGssH5F4X/jdBqkonYYI3hXhc7KHaTO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XVZcD/btsGssH5F4X/jdBqkonYYI3hXhc7KHaTO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXVZcD%2FbtsGssH5F4X%2FjdBqkonYYI3hXhc7KHaTO0%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;979&quot; height=&quot;208&quot; data-origin-width=&quot;979&quot; data-origin-height=&quot;208&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. QA dataset인 SQuAD에서 실험한 결과&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;답을 포함하는 Wikipedia의 context 지문을 통해 QA 작업을 학습하는 데이터셋&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;BERT 모델들이 기존의 모델보다 우수한 성능&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;가장 좋은 성능을 보인 모델은 BERT-Large 모델을 앙상블하고 TriviaQA dataset을 통해 먼저 fine-tuning한 모델. 인간보다도 좋은 판단 능력을 보여줌.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;508&quot; data-origin-height=&quot;440&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqERNh/btsGqJxmmpk/vHq9GLGnw3EyV0jCxAKzeK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqERNh/btsGqJxmmpk/vHq9GLGnw3EyV0jCxAKzeK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqERNh/btsGqJxmmpk/vHq9GLGnw3EyV0jCxAKzeK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqERNh%2FbtsGqJxmmpk%2FvHq9GLGnw3EyV0jCxAKzeK%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;508&quot; height=&quot;440&quot; data-origin-width=&quot;508&quot; data-origin-height=&quot;440&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. SQuAD&amp;nbsp;2.0&amp;nbsp;dataset:&amp;nbsp;(QA) &lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;SQuAD 2.0은 답이 지문에 없는 경우를 포함함.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;인간의 능력에는 미치지 못하였지만, 기존의 baseline에 비해서는 매우 우수한 성능&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;572&quot; data-origin-height=&quot;379&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lPFmG/btsGqZfF9JF/Y6uHZxcQ2rvMMarjMuursk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lPFmG/btsGqZfF9JF/Y6uHZxcQ2rvMMarjMuursk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lPFmG/btsGqZfF9JF/Y6uHZxcQ2rvMMarjMuursk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlPFmG%2FbtsGqZfF9JF%2FY6uHZxcQ2rvMMarjMuursk%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;572&quot; height=&quot;379&quot; data-origin-width=&quot;572&quot; data-origin-height=&quot;379&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. SWAG (Situations With Adversarial Generation)&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;SWAG는 이어지는 문장을 고르는 sentence pair inference task.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;BERT 모델이 기존의 모델보다 우수한 성능을 보였으며, BERT_Large는 전문가에 필적하는 결과&lt;/p&gt;
&lt;p style=&quot;text-align: left;&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;491&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n8yOJ/btsGsgHLgiB/BKXC8CZoLVqS1BHZecr44k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n8yOJ/btsGsgHLgiB/BKXC8CZoLVqS1BHZecr44k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n8yOJ/btsGsgHLgiB/BKXC8CZoLVqS1BHZecr44k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn8yOJ%2FbtsGsgHLgiB%2FBKXC8CZoLVqS1BHZecr44k%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;491&quot; height=&quot;377&quot; data-origin-width=&quot;491&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span style=&quot;color: #000000;&quot;&gt;Ablation study&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;제안한&amp;nbsp;방법의&amp;nbsp;유무(Ablation)를&amp;nbsp;통해&amp;nbsp;효과를&amp;nbsp;검증.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1) BERT-Base는 MLM과 NSP를 모두 사용한 일반적인 BERT 모델&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2) No NSP는 MLM만을 사용하여 학습한 모델&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;3) LTR &amp;amp; No NSP는 Left-To-Right 의 단방향 모델을 학습한 결과.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2,3의 비교를 통해 MLM의 효과를 확인할 수 있으며, 1,2의 비교를 통해 NSP의 효과 또한 확인할 수 있음&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;474&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bonYuy/btsGqN7vd9o/almbN4YjVd9BKP8Rd1LoFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bonYuy/btsGqN7vd9o/almbN4YjVd9BKP8Rd1LoFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bonYuy/btsGqN7vd9o/almbN4YjVd9BKP8Rd1LoFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbonYuy%2FbtsGqN7vd9o%2FalmbN4YjVd9BKP8Rd1LoFk%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;603&quot; height=&quot;474&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;474&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Model size에 따른 성능 비교&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;모델 크기에 따라 성능이 증가함&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;319&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zy6Av/btsGqr4Qx5R/8JLpucwfcB01Qr4nlyBLm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zy6Av/btsGqr4Qx5R/8JLpucwfcB01Qr4nlyBLm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zy6Av/btsGqr4Qx5R/8JLpucwfcB01Qr4nlyBLm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzy6Av%2FbtsGqr4Qx5R%2F8JLpucwfcB01Qr4nlyBLm1%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;618&quot; height=&quot;319&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;319&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Down-stream&amp;nbsp;task&amp;nbsp;approach&amp;nbsp;method&amp;nbsp;비교&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;기존의 방법대로 Fine-tuning Approach로 사용했을때와 ELMo와 같은 Feature-based approach로 사용하였을 때의 결과를 비교함.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Feature-based approach는 아래의 경우를 고려하여 실험 진행.&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;1) Embedding만 사용&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;2) 두번째 부터 마지막 Hidden을 사용&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;3) 마지막 Hidden 만을 사용&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;4) 마지막 4개의 Hidden을 가중합&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;5) 마지막 4개의 Hidden을 concat&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;6) 모든 12개의 층의 값을 가중합&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;Feature based approach로 실험을 진행한 결과,&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;전체 layer를 가중합 하는 것 보다 마지막 4개 layer를 concatenate하는 방법이 가장 좋은 성능으로 나타남&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;BERT는&amp;nbsp;Transformer의&amp;nbsp;Encoder를&amp;nbsp;사용하여&amp;nbsp;양질의&amp;nbsp;pre-trained&amp;nbsp;language&amp;nbsp;representation를&amp;nbsp;얻을&amp;nbsp;수&amp;nbsp;있는&amp;nbsp;것과&amp;nbsp;동시에&amp;nbsp;down-stream&amp;nbsp;task로의&amp;nbsp;손쉬운&amp;nbsp;fine-tuning이&amp;nbsp;가능한&amp;nbsp;bidirectional&amp;nbsp;language&amp;nbsp;model.&amp;nbsp; &lt;br /&gt;이&amp;nbsp;과정에서&amp;nbsp;기존의&amp;nbsp;pretrained&amp;nbsp;language&amp;nbsp;model과는&amp;nbsp;다르게&amp;nbsp;MLM과&amp;nbsp;NSP같은&amp;nbsp;방법이&amp;nbsp;효과적으로&amp;nbsp;적용됨. &lt;br /&gt;그&amp;nbsp;결과&amp;nbsp;BERT는&amp;nbsp;11개의&amp;nbsp;NLP&amp;nbsp;Task에서&amp;nbsp;약간의&amp;nbsp;fine-tuning만을&amp;nbsp;가지고&amp;nbsp;매우&amp;nbsp;우수한&amp;nbsp;성능을&amp;nbsp;달성할&amp;nbsp;수&amp;nbsp;있었음. &lt;br /&gt;또한&amp;nbsp;일부&amp;nbsp;task에&amp;nbsp;있어서는&amp;nbsp;인간에&amp;nbsp;필적하는&amp;nbsp;결과를&amp;nbsp;냄. &lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;각 Task에 따른 evalutation metric에 대한 이해가 아직 없어서, 결과가 얼마나 좋은것인지 체감이 되지 않아서 공부가 필요함을 느끼며... 일단.. 끝!!&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>BERT</category>
      <category>nlp</category>
      <category>TRANSFORMER</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/56</guid>
      <comments>https://kimbg.tistory.com/56#entry56comment</comments>
      <pubDate>Mon, 8 Apr 2024 14:13:16 +0900</pubDate>
    </item>
    <item>
      <title>[NLP] 다양한 word encoding 방법 (bag of words, N-gram, TF-IDF)</title>
      <link>https://kimbg.tistory.com/55</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이 내용은 유투브 허민석님의 자료를 공부하며 정리하기 위해 작성된 내용임을 밝힙니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/@TheEasyoung&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.youtube.com/@TheEasyoung&lt;/a&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;h2 data-ke-size=&quot;size26&quot;&gt;bag of words 란?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어는 머신러닝 모델에 입력으로 사용하기 위해 숫자로 변환되어야함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 위한 다양한 방법들이 있는데, 그 중 가장 기초적인 것이 바로 bag of words 라는 것으로 굉장히 심플하다.&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;전체 데이터셋에서 나타나는 모든 단어 기반으로&lt;b&gt; 임의의 문장을 원핫인코딩(one-hot encoding)&lt;/b&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;가령, 아래와 같이 나타내는 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;282&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOJDA6/btsGlRBlRlY/esszxTaNtzcuDfHnG4Wy6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOJDA6/btsGlRBlRlY/esszxTaNtzcuDfHnG4Wy6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOJDA6/btsGlRBlRlY/esszxTaNtzcuDfHnG4Wy6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOJDA6%2FbtsGlRBlRlY%2FesszxTaNtzcuDfHnG4Wy6k%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;964&quot; height=&quot;282&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;282&quot;/&gt;&lt;/span&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;전체 데이터셋에서 나타나는 각각의 유니크한 문자들을 나열하고,&lt;/p&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-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이로써 다른 문장들과의 유사성도 계산할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;835&quot; data-origin-height=&quot;603&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bcNGZL/btsGkBZ4Whz/Tmss6IO4FoDqfkBvxg4LP0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bcNGZL/btsGkBZ4Whz/Tmss6IO4FoDqfkBvxg4LP0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bcNGZL/btsGkBZ4Whz/Tmss6IO4FoDqfkBvxg4LP0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcNGZL%2FbtsGkBZ4Whz%2FTmss6IO4FoDqfkBvxg4LP0%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;835&quot; height=&quot;603&quot; data-origin-width=&quot;835&quot; data-origin-height=&quot;603&quot;/&gt;&lt;/span&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;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-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. Sparsity&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- 단어가 백만개, 천만개가 있다면 원핫인코딩된 문장은 굉장히 sparse한 vector으로 표현됨.&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;p data-ke-size=&quot;size16&quot;&gt;2. 문장간의 유사성이 &lt;b&gt;단지 단어출현 빈도&lt;/b&gt;에 의해 결정되기 때문에 엉뚱한 결과로 이어질 수 있음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;271&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cz9zmc/btsGmNLKvIU/nWAyULtREcnysKgMngKPw1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cz9zmc/btsGmNLKvIU/nWAyULtREcnysKgMngKPw1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cz9zmc/btsGmNLKvIU/nWAyULtREcnysKgMngKPw1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcz9zmc%2FbtsGmNLKvIU%2FnWAyULtREcnysKgMngKPw1%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;881&quot; height=&quot;271&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;271&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1번째 문장과 2번째 문장이 3번째 문장보다 의미적으로 더 유사하지만, 계산상에서는 단지 '단어의 출현빈도'로 인해 3번째 문장이 더 유사하게 나타남.&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;&lt;b&gt;3. 의미, 맥락이 무시됨.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;906&quot; data-origin-height=&quot;272&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TLjdL/btsGkt8YpTr/R4RveWGnPg39Qw68Y9vTJ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TLjdL/btsGkt8YpTr/R4RveWGnPg39Qw68Y9vTJ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TLjdL/btsGkt8YpTr/R4RveWGnPg39Qw68Y9vTJ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTLjdL%2FbtsGkt8YpTr%2FR4RveWGnPg39Qw68Y9vTJ0%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;906&quot; height=&quot;272&quot; data-origin-width=&quot;906&quot; data-origin-height=&quot;272&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;home run과 run home은 아예 다른 뜻임에도 같은 문장으로 계산될 것임.&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;&lt;b&gt;4. Out of vocabulary&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오타가 있거나 신조어 등 학습하지 못한 단어에서는 굉장히 무기력해짐.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;905&quot; data-origin-height=&quot;275&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCYVWf/btsGkVKZgjx/xcaVkrFAh1hvWov6Nt0HD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCYVWf/btsGkVKZgjx/xcaVkrFAh1hvWov6Nt0HD0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCYVWf/btsGkVKZgjx/xcaVkrFAh1hvWov6Nt0HD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCYVWf%2FbtsGkVKZgjx%2FxcaVkrFAh1hvWov6Nt0HD0%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;905&quot; height=&quot;275&quot; data-origin-width=&quot;905&quot; data-origin-height=&quot;275&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Real world 에서는 위와같은 상황이 빈번하게 발생하기 마련인데, 이를 반영하지 못함.&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;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;h2 data-ke-size=&quot;size26&quot;&gt;N-gram이란?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;N-gram은 연속적인 N개의 토큰으로 구성된 일련의 시퀀스를 말한다.&lt;/p&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-ke-size=&quot;size16&quot;&gt;예를 들어, 1-gram (unigram) 인 경우에는 아래와 같이 계산됨.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;840&quot; data-origin-height=&quot;366&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wCrpz/btsGmUKR09n/MqZ0SuID7lYyTK5KFazAVk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wCrpz/btsGmUKR09n/MqZ0SuID7lYyTK5KFazAVk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wCrpz/btsGmUKR09n/MqZ0SuID7lYyTK5KFazAVk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwCrpz%2FbtsGmUKR09n%2FMqZ0SuID7lYyTK5KFazAVk%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;840&quot; height=&quot;366&quot; data-origin-width=&quot;840&quot; data-origin-height=&quot;366&quot;/&gt;&lt;/span&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;2-gram (bigram)인 경우에는&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;161&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ojsno/btsGjMH3vfA/VULE0yWkZ4NcTxi9T1n2WK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ojsno/btsGjMH3vfA/VULE0yWkZ4NcTxi9T1n2WK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ojsno/btsGjMH3vfA/VULE0yWkZ4NcTxi9T1n2WK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOjsno%2FbtsGjMH3vfA%2FVULE0yWkZ4NcTxi9T1n2WK%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;881&quot; height=&quot;161&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;161&quot;/&gt;&lt;/span&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;3-gram (trigram)인 경우에는&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;847&quot; data-origin-height=&quot;142&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dABx4h/btsGlUx5nlD/EfTrfYl4VWUkmqDdN03sP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dABx4h/btsGlUx5nlD/EfTrfYl4VWUkmqDdN03sP1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dABx4h/btsGlUx5nlD/EfTrfYl4VWUkmqDdN03sP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdABx4h%2FbtsGlUx5nlD%2FEfTrfYl4VWUkmqDdN03sP1%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;847&quot; height=&quot;142&quot; data-origin-width=&quot;847&quot; data-origin-height=&quot;142&quot;/&gt;&lt;/span&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;뭐 이런식이다.&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;p data-ke-size=&quot;size16&quot;&gt;N-gram은 bag of words의 단점을 일부 보완할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를들면, bag of words로 나타내면 아래와 같이 나타낼 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;836&quot; data-origin-height=&quot;149&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oHabb/btsGkrJ8fMZ/RKhe0wKD0VgkkFmvPHCpE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oHabb/btsGkrJ8fMZ/RKhe0wKD0VgkkFmvPHCpE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oHabb/btsGkrJ8fMZ/RKhe0wKD0VgkkFmvPHCpE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoHabb%2FbtsGkrJ8fMZ%2FRKhe0wKD0VgkkFmvPHCpE1%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;836&quot; height=&quot;149&quot; data-origin-width=&quot;836&quot; data-origin-height=&quot;149&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서는 'not'이라는 단어의 위치에 따라 문장 해석이 완전히 달라지지만, bag of words는 이를 고려하지 못한다.&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;반면 word level에서 bi-gram으로 나타내면,&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;977&quot; data-origin-height=&quot;87&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSnrmX/btsGkrJ8gDl/ZC5uTBCD32krod6az5Hz1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSnrmX/btsGkrJ8gDl/ZC5uTBCD32krod6az5Hz1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSnrmX/btsGkrJ8gDl/ZC5uTBCD32krod6az5Hz1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSnrmX%2FbtsGkrJ8gDl%2FZC5uTBCD32krod6az5Hz1k%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;977&quot; height=&quot;87&quot; data-origin-width=&quot;977&quot; data-origin-height=&quot;87&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;으로 나타나기 때문에 not boring이 붙어있게 되어, 보다 문장의 의미를 파악하는데 도움이 됨.&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;p data-ke-size=&quot;size16&quot;&gt;또한 다음 단어를 추천해주는데 도움도 준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같이 3문장이 있을때 tri-gram으로 나타내면 how are you의 빈도가 가장 높다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;844&quot; data-origin-height=&quot;296&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zxfJ5/btsGj1kAVpP/YgH4gwOKhX9ueAEBbSzMt1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zxfJ5/btsGj1kAVpP/YgH4gwOKhX9ueAEBbSzMt1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zxfJ5/btsGj1kAVpP/YgH4gwOKhX9ueAEBbSzMt1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzxfJ5%2FbtsGj1kAVpP%2FYgH4gwOKhX9ueAEBbSzMt1%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;844&quot; height=&quot;296&quot; data-origin-width=&quot;844&quot; data-origin-height=&quot;296&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 'how are' 까지만 작성했을때 'you'라는 단어를 추천해줄 수 있다.&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;spelling 체크할때도 마찬가지로,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;q는 u와 거의 붙어서 나오기 때문에, qwality라는 단어는 나타났을때 qw가 아닌 qu를 추천해줄 수 있음.&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;TF-IDF 이란?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임의의 문장에서 특정 단어의 중요도, 연관성 등을 측정해주는 방법 중의 하나이다. (Full name: Term Frequency Inverse Document Frequency)&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;TF는 (특정 단어의 출현빈도 / 사용된 단어 갯수) 를 나타내며, bag of words와 비슷하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 앞서 설명한 bag of words의 단점을 IDF을 통해 보정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수식은 Log(총 문장의 갯수 / 특정 단어 출현 빈도) 임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, &lt;b&gt;특정 단어의 출현빈도가 많아지면 값이 작아짐&lt;/b&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;아래와 같이 계산됨.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;538&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c56poc/btsGkpyOfvm/xku3Qh8HvOJar9y5lyNnk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c56poc/btsGkpyOfvm/xku3Qh8HvOJar9y5lyNnk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c56poc/btsGkpyOfvm/xku3Qh8HvOJar9y5lyNnk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc56poc%2FbtsGkpyOfvm%2Fxku3Qh8HvOJar9y5lyNnk0%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;833&quot; height=&quot;538&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;538&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 &lt;b&gt;TF-IDF를 가지고 문장 혹은 문서의 유사도를 측정&lt;/b&gt;할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 bag of words로 나타낸 유사도와 TF-IDF로 계산된 bag of words의 유사도와 비교해보자.&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;아래와 같이 4개의 문장이 있다고 해보자&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;806&quot; data-origin-height=&quot;301&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3Wlyz/btsGlUY8hEn/5dYOaBupDYEqDov6rRhs50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3Wlyz/btsGlUY8hEn/5dYOaBupDYEqDov6rRhs50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3Wlyz/btsGlUY8hEn/5dYOaBupDYEqDov6rRhs50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3Wlyz%2FbtsGlUY8hEn%2F5dYOaBupDYEqDov6rRhs50%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;806&quot; height=&quot;301&quot; data-origin-width=&quot;806&quot; data-origin-height=&quot;301&quot;/&gt;&lt;/span&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;bag of words로 나타내면 아래와 같고,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;511&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cLYG9A/btsGkqR4sLN/goXwe0liWbXqJ2AL9W2jYk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cLYG9A/btsGkqR4sLN/goXwe0liWbXqJ2AL9W2jYk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cLYG9A/btsGkqR4sLN/goXwe0liWbXqJ2AL9W2jYk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLYG9A%2FbtsGkqR4sLN%2FgoXwe0liWbXqJ2AL9W2jYk%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;928&quot; height=&quot;511&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;511&quot;/&gt;&lt;/span&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;d4와 나머지 문장의 코사인 유사도를 계산하면, d1이 0.82로 가장 높다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;926&quot; data-origin-height=&quot;381&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2KY49/btsGmvYS5Qu/t6Jt5xP7TpaH25hqRGOen1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2KY49/btsGmvYS5Qu/t6Jt5xP7TpaH25hqRGOen1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2KY49/btsGmvYS5Qu/t6Jt5xP7TpaH25hqRGOen1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc2KY49%2FbtsGmvYS5Qu%2Ft6Jt5xP7TpaH25hqRGOen1%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;926&quot; height=&quot;381&quot; data-origin-width=&quot;926&quot; data-origin-height=&quot;381&quot;/&gt;&lt;/span&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;하지만, d4는 '최고의 아메리카 레스토랑'를 의미하고 있는데 단지 d1과 '&lt;b&gt;the best'라는 단어가 비슷하게 출현&lt;/b&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;하지만 TF-IDF로 계산하면,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;878&quot; data-origin-height=&quot;408&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xRyFG/btsGlvkZ9Ti/FiJBfImwebKyf649CWB7Lk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xRyFG/btsGlvkZ9Ti/FiJBfImwebKyf649CWB7Lk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xRyFG/btsGlvkZ9Ti/FiJBfImwebKyf649CWB7Lk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxRyFG%2FbtsGlvkZ9Ti%2FFiJBfImwebKyf649CWB7Lk%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;878&quot; height=&quot;408&quot; data-origin-width=&quot;878&quot; data-origin-height=&quot;408&quot;/&gt;&lt;/span&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;로 나타나고, 코사인 유사도는 아래 그림과 같이,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;929&quot; data-origin-height=&quot;366&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Kfejy/btsGmuyUws7/dqPGH5xTEyEniP6mVLa5S0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Kfejy/btsGmuyUws7/dqPGH5xTEyEniP6mVLa5S0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Kfejy/btsGmuyUws7/dqPGH5xTEyEniP6mVLa5S0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKfejy%2FbtsGmuyUws7%2FdqPGH5xTEyEniP6mVLa5S0%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;929&quot; height=&quot;366&quot; data-origin-width=&quot;929&quot; data-origin-height=&quot;366&quot;/&gt;&lt;/span&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;&lt;b&gt;실제 의미적으로 가장 유사한 d2가 가장 높은 유사도&lt;/b&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;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;단점도 분명하다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마찬가지로 '단어'의 출현빈도를 통해 계산되기 때문에 &lt;b&gt;서로 다른 단어들과의 유사도는 고려하지 않는다&lt;/b&gt;.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 동의어(synonym)에 약하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를들어,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;150&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsiV27/btsGmvxNMvh/Ik8xvHkx2Ech3O4Bpr23aK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsiV27/btsGmvxNMvh/Ik8xvHkx2Ech3O4Bpr23aK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsiV27/btsGmvxNMvh/Ik8xvHkx2Ech3O4Bpr23aK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbsiV27%2FbtsGmvxNMvh%2FIk8xvHkx2Ech3O4Bpr23aK%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;617&quot; height=&quot;150&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;150&quot;/&gt;&lt;/span&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;위와같이 거의 같은 내용임에도 겹치는 단어가 하나도 없기 때문에 유사도는 0으로 계산된다.&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;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;p data-ke-size=&quot;size16&quot;&gt;LSA (Latent semantic analysis) (잠재의미분석) 이나&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Word2Vec, Glove와 같은 word embvedding 기법 등이 단어를 인코딩하는데에 좀더 최신 방법이라고 할 수 있다.&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&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;</description>
      <category>bag of words</category>
      <category>n-gram</category>
      <category>nlp</category>
      <category>TF</category>
      <category>tf-idf</category>
      <category>words encoding</category>
      <category>기초</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/55</guid>
      <comments>https://kimbg.tistory.com/55#entry55comment</comments>
      <pubDate>Thu, 4 Apr 2024 15:27:56 +0900</pubDate>
    </item>
    <item>
      <title>[오류해결] monai metrics 중 DiceMetric의 y, y_pred 인식 오류</title>
      <link>https://kimbg.tistory.com/54</link>
      <description>&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-ke-size=&quot;size16&quot;&gt;monia의 DiceMetric를 사용하던 중 y에 label을 넣고 y_pred에 model의 output을 넣는데 계산이 이상하게 나왔던 것.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더 이상했던 것은 y에 model의 output을 넣고, y_pred에 label을 넣으니 제대로 작동하더라는 것이다.&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;/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;p data-ke-size=&quot;size16&quot;&gt;해결한 결과부터 말하면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. output을 argmax 해야했음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 이제서야 문제가 밝혀는 까닭은 기존에 사용했던 monai 버전과 달라서 그랬던 것. (기존에는 1.0.0 사용, 현재는 1.3.0 사용)&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;p data-ke-size=&quot;size16&quot;&gt;현상을 살펴보면..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각각 target, output, scratch 을 시각화면 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1711511847451&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import pickle
import matplotlib.pyplot as plt

with open(r'target.pkl', 'rb') as f:
    target = pickle.load(f)
print('target')
plt.imshow(target[:,:,0])
plt.show()

with open(r'output.pkl', 'rb') as f:
    output = pickle.load(f)
print('output')
plt.imshow(output[:,:,0])
plt.show()

with open(r'init_feature.pkl', 'rb') as f:
    init_feature = pickle.load(f)
print('scratch')
plt.imshow(init_feature[:,:,0])
plt.show()&lt;/code&gt;&lt;/pre&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;454&quot; data-origin-height=&quot;956&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vuh95/btsF407ylSw/Nw8DuHXEVYwGwE05HmFMmK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vuh95/btsF407ylSw/Nw8DuHXEVYwGwE05HmFMmK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vuh95/btsF407ylSw/Nw8DuHXEVYwGwE05HmFMmK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvuh95%2FbtsF407ylSw%2FNw8DuHXEVYwGwE05HmFMmK%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;454&quot; height=&quot;956&quot; data-origin-width=&quot;454&quot; data-origin-height=&quot;956&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;456&quot; data-origin-height=&quot;470&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czueEJ/btsF7xDiuOJ/ZYvDlYDkVFibPJ58Ggd9A1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czueEJ/btsF7xDiuOJ/ZYvDlYDkVFibPJ58Ggd9A1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czueEJ/btsF7xDiuOJ/ZYvDlYDkVFibPJ58Ggd9A1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczueEJ%2FbtsF7xDiuOJ%2FZYvDlYDkVFibPJ58Ggd9A1%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;456&quot; height=&quot;470&quot; data-origin-width=&quot;456&quot; data-origin-height=&quot;470&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당연히 target과 ooutput의 dice score가 높게 나오고 scratch와는 낮게 나와야하는 것이 올바른 상황임.&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;p data-ke-size=&quot;size16&quot;&gt;하지만 monai의 dice score 값은 동일하게 나옴..&lt;/p&gt;
&lt;pre id=&quot;code_1711512095465&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import torch

## dice score를 계산하기 전에 pytorch style로 변환해야함
target = torch.unsqueeze(torch.tensor(target).permute(2,0,1), 0)
output = torch.unsqueeze(torch.tensor(output).permute(2,0,1), 0)
init_feature = torch.unsqueeze(torch.tensor(init_feature).permute(2,0,1), 0)
print(target.shape) # B, C, W, H


from monai.metrics import DiceMetric
Dice = DiceMetric()

score = Dice(y_pred=output, y=target)
print(score)

score = Dice(y_pred=init_feature, y=target)
print(score)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;242&quot; data-origin-height=&quot;62&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IWjVY/btsF8nGLukm/1XPG4VKGwFYB7krsk0Eyik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IWjVY/btsF8nGLukm/1XPG4VKGwFYB7krsk0Eyik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IWjVY/btsF8nGLukm/1XPG4VKGwFYB7krsk0Eyik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIWjVY%2FbtsF8nGLukm%2F1XPG4VKGwFYB7krsk0Eyik%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;242&quot; height=&quot;62&quot; data-origin-width=&quot;242&quot; data-origin-height=&quot;62&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;아까 말했든이 y에 output을 넣고 y_pred에 target을 넣으면 오히려 정상적으로 나오는 모습..&lt;/p&gt;
&lt;pre id=&quot;code_1711512233574&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;score = Dice(y_pred=target, y=output)
print(score)

score = Dice(y_pred=target, y=init_feature)
print(score)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;217&quot; data-origin-height=&quot;41&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7NJpC/btsF6GAwEHK/nF8pFkKmlBk14bkL6ibW80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7NJpC/btsF6GAwEHK/nF8pFkKmlBk14bkL6ibW80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7NJpC/btsF6GAwEHK/nF8pFkKmlBk14bkL6ibW80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7NJpC%2FbtsF6GAwEHK%2FnF8pFkKmlBk14bkL6ibW80%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;217&quot; height=&quot;41&quot; data-origin-width=&quot;217&quot; data-origin-height=&quot;41&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;해결 방법은 아래와 같이 명시적으로 argmax를 해주면 되긴 한다.&lt;/p&gt;
&lt;pre id=&quot;code_1711512298278&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def OutputPostProcess(output, num_classes):
    output_arg = torch.argmax(output, axis=1)
    output_arg = torch.nn.functional.one_hot(output_arg, num_classes=num_classes)
    output_arg = output_arg.permute(0,3,1,2)
    return output_arg

score = Dice(y_pred=OutputPostProcess(output, num_classes=2), y=target)
print(score)

score = Dice(y_pred=OutputPostProcess(init_feature, num_classes=2), y=target)
print(score)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;213&quot; data-origin-height=&quot;45&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bk7zIg/btsF5VLvxwO/kkItXMjfaRkryRaQ9ip4rK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bk7zIg/btsF5VLvxwO/kkItXMjfaRkryRaQ9ip4rK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bk7zIg/btsF5VLvxwO/kkItXMjfaRkryRaQ9ip4rK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk7zIg%2FbtsF5VLvxwO%2FkkItXMjfaRkryRaQ9ip4rK%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;213&quot; height=&quot;45&quot; data-origin-width=&quot;213&quot; data-origin-height=&quot;45&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;monai 1.0.0 버전에서는 굳이 argmax를 해주지 않아도 알아서 잘 나옴. (UserWarning이 뜨긴 하지만)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;112&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cDyyiN/btsF56lTHXI/OLCGlFjxQsZXzpVwOshUek/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cDyyiN/btsF56lTHXI/OLCGlFjxQsZXzpVwOshUek/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cDyyiN/btsF56lTHXI/OLCGlFjxQsZXzpVwOshUek/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDyyiN%2FbtsF56lTHXI%2FOLCGlFjxQsZXzpVwOshUek%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;512&quot; height=&quot;112&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;112&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;998&quot; data-origin-height=&quot;157&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ljRjM/btsF7ZzneSu/duvtMSz2VAnwDKTOTqkPe1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ljRjM/btsF7ZzneSu/duvtMSz2VAnwDKTOTqkPe1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ljRjM/btsF7ZzneSu/duvtMSz2VAnwDKTOTqkPe1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FljRjM%2FbtsF7ZzneSu%2FduvtMSz2VAnwDKTOTqkPe1%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;998&quot; height=&quot;157&quot; data-origin-width=&quot;998&quot; data-origin-height=&quot;157&quot;/&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&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;/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;끝!&lt;/p&gt;</description>
      <category>machine learning</category>
      <category>DICE</category>
      <category>DSC</category>
      <category>metrics</category>
      <category>monai</category>
      <category>코드오류</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/54</guid>
      <comments>https://kimbg.tistory.com/54#entry54comment</comments>
      <pubDate>Wed, 27 Mar 2024 13:09:01 +0900</pubDate>
    </item>
    <item>
      <title>[python] ParRec 파일을 nifti 파일로 변환</title>
      <link>https://kimbg.tistory.com/53</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬으로 ParRec 파일을 nifti 파일로 변환하는 코드&lt;/p&gt;
&lt;pre id=&quot;code_1704794746675&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import nibabel as nib

par_path = '/data/2030/BrainMRI/Dataset/Sample/DTI_sample.PAR'
nifti_path = '/data/2030/BrainMRI/Dataset/Sample/DTI_sample.nii.gz'

img = nib.load(par_path)
nifti = nib.Nifti1Image(img.dataobj, img.affine, header=img.header)
nifti.set_data_dtype('&amp;lt;f4')
nifti.to_filename(nifti_path)&lt;/code&gt;&lt;/pre&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-ke-size=&quot;size16&quot;&gt;nibabel 라이브러리를 이용해서 par 파일을 읽어와서 몇가지 처리만 해주면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;알고계시겠지만, ParRec는 Par파일과 Rec파일 두 개를 묶어서 칭하는 표현이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 주의할 점은 par 파일과 rec 파일이 반드시 같은 이름으로 되어있어야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해더 파일인 par 파일을 읽어서, 실제 이미지 픽셀값이 들어있는 rec 파일과 매칭하기 때문이다.&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;위 코드 8번째 라인에서 '&amp;lt;f4' 는 NumPy에서 사용되는 dtype 문자열로, 데이터 타입과 바이트 순서에 대한 정보를 담고 있다. '&amp;lt;'는 리틀 엔디안(little-endian) 이라는 바이트 순서를 나타내며, 'f4'는 부동 소수점 숫자를 나타낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;f4는 4bytes(32bit) float, 즉 float32를 의미한다.&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;종종 ParRec 데이터에 문제가 있어 읽어들이지 못하는 경우가 있으니 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;대용량 데이터를 처리할때는&lt;span&gt; &lt;/span&gt;&lt;/span&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 ParRec 관련 내용에 대한 내용입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Chat GPT가 아주 자세히 잘 알려주었지만, 종종 잘못된 내용도 있어 정리했습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;ParRec란?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ParRec은 Philips사의 자기 공명 이미징(MRI) 시스템에서 생성되는 데이터 형식으로, MRI 시퀀스에서 획득한 데이터를 저장하는 데 사용됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;ParRec 파일은 주로 두 부분으로 구성됨.&lt;br /&gt;&lt;br /&gt;1. 헤더 파일 (.PAR): 헤더 파일에는 데이터 획득에 대한 메타데이터와 설정이 포함되어 있습니다. 시퀀스 파라미터, 획득 매개변수, 이미지 크기, 슬라이스 두께 등이 헤더에 기록되어 있습니다. 이 메타데이터는 MRI 데이터를 제대로 해석하고 재구성하는 데 필요합니다. &lt;br /&gt;&lt;br /&gt;2. 이미지 데이터 파일 (.REC): 이미지 데이터 파일에는 실제 MRI 이미지의 픽셀 값이 포함되어 있습니다. 각 이미지 슬라이스의 픽셀 값이 이 파일에 저장되어 있으며, 이를 통해 이미지가 재구성됩니다.&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;p data-ke-size=&quot;size16&quot;&gt;ParRec 형식은 일반적으로 다른 MRI 제조업체에서 사용하는 형식과 달라서, DICOM 과 같은 형식으로 변환해서 사용해야 처리가 편하답니다~&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;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;</description>
      <category>python</category>
      <category>MRI</category>
      <category>nfiti</category>
      <category>nibabel</category>
      <category>parrec</category>
      <category>PYTHON</category>
      <category>데이터</category>
      <category>변환</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/53</guid>
      <comments>https://kimbg.tistory.com/53#entry53comment</comments>
      <pubDate>Tue, 9 Jan 2024 19:19:08 +0900</pubDate>
    </item>
    <item>
      <title>다시 힘차게 출발!</title>
      <link>https://kimbg.tistory.com/52</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&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;작년 5월이 마지막 포스팅이었는데, 그동안 경험하고 저를 성장시킨 내용들을 하나하나씩 정리해야겠습니다.&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;포스팅은 하지 않았지만, 제가 작성했던 내용을 보기 위해 종종 들어오긴 했거든요.&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;/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;별볼일 없는 내용임에도, 생각보다 많은 분들이 찾아주셔서 감사하고 신기하더라구요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2024년 올해 목표는 애드센스로 수익 창출! &lt;s&gt;(작년에도 같은 목표였다는..)&lt;/s&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;&amp;nbsp;&lt;/p&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-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>life</category>
      <category>2024</category>
      <category>감사해요</category>
      <category>다시</category>
      <category>다시 시작</category>
      <category>시작</category>
      <category>포스팅</category>
      <category>화이팅</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/52</guid>
      <comments>https://kimbg.tistory.com/52#entry52comment</comments>
      <pubDate>Tue, 9 Jan 2024 18:32:03 +0900</pubDate>
    </item>
    <item>
      <title>리눅스에 저장장치(SSD, HDD) 연결하는 방법</title>
      <link>https://kimbg.tistory.com/51</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;2년 전인가.. 개인용 딥러닝 서버를 구축했을때 4TB 정도면 넉넉히 잘 쓸줄 알았는데, 1년 정도 쓰니 중간중간 관리를 안해주면 금방 찰 것 같았다..&lt;br&gt;근데 최근에 데이터를 무진장 많이 받을 일이 있어서 도저히 4테라로는 감당이 안돼서 8테라를 추가로 구입했음!&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;434&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/drMenw/btshz1hUNd4/MK5qUlKESjb4ZnaEC9sgQK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/drMenw/btshz1hUNd4/MK5qUlKESjb4ZnaEC9sgQK/img.png&quot; data-alt=&quot;이걸로 샀음&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/drMenw/btshz1hUNd4/MK5qUlKESjb4ZnaEC9sgQK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdrMenw%2Fbtshz1hUNd4%2FMK5qUlKESjb4ZnaEC9sgQK%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;1016&quot; height=&quot;434&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;434&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이걸로 샀음&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;아무튼 연결하는 방법은 아래 순서와 같다.&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;1. 당연하겠지만 먼저 &lt;b&gt;물리적으로 HDD를 컴퓨터에 연결&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;b&gt;&amp;nbsp;- 전원을 끄고 연결하기를 추천..&lt;/b&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2. 컴퓨터를 켜고 디스크가 감지되었는지 확인해야함.&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;b&gt;&amp;nbsp;- 아래 명령어를 통해 확인할 수 있고,&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo fdisk -l&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&lt;b&gt;'/dev/sdX' 와 같은 형식으로 표시된다.&lt;/b&gt;&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;598&quot; data-origin-height=&quot;635&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sVguo/btshKQFMhmU/PLWDI1Fq23Uf8bHKSdXqc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sVguo/btshKQFMhmU/PLWDI1Fq23Uf8bHKSdXqc0/img.png&quot; data-alt=&quot;잘 잡힌걸 볼 수 있음&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sVguo/btshKQFMhmU/PLWDI1Fq23Uf8bHKSdXqc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsVguo%2FbtshKQFMhmU%2FPLWDI1Fq23Uf8bHKSdXqc0%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;598&quot; height=&quot;635&quot; data-origin-width=&quot;598&quot; data-origin-height=&quot;635&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;잘 잡힌걸 볼 수 있음&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3. (옵션사항) 파티셔닝 단계&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;파티셔닝은 안해도 된다.&lt;br&gt;ChatGPT의 파티셔닝 설명&lt;br&gt;&quot; &lt;br&gt;파티셔닝은&amp;nbsp;하드&amp;nbsp;디스크를&amp;nbsp;논리적인&amp;nbsp;섹션으로&amp;nbsp;나누는&amp;nbsp;작업입니다.&amp;nbsp;이렇게&amp;nbsp;나뉜&amp;nbsp;섹션은&amp;nbsp;각각&amp;nbsp;독립적인&amp;nbsp;저장&amp;nbsp;공간으로&amp;nbsp;사용될&amp;nbsp;수&amp;nbsp;있습니다. &lt;br&gt;&lt;br&gt;일반적으로&amp;nbsp;하드&amp;nbsp;디스크는&amp;nbsp;하나의&amp;nbsp;파티션으로&amp;nbsp;구성되어&amp;nbsp;있지만,&amp;nbsp;파티셔닝을&amp;nbsp;통해&amp;nbsp;디스크를&amp;nbsp;여러&amp;nbsp;파티션으로&amp;nbsp;나눌&amp;nbsp;수&amp;nbsp;있습니다.&amp;nbsp;각&amp;nbsp;파티션은&amp;nbsp;개별적인&amp;nbsp;파일&amp;nbsp;시스템을&amp;nbsp;가질&amp;nbsp;수&amp;nbsp;있고,&amp;nbsp;독립적으로&amp;nbsp;포맷되고&amp;nbsp;마운트될&amp;nbsp;수&amp;nbsp;있습니다.&lt;br&gt;&quot;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4. 파일 시스템 생성&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;2번 또는 3번 단계가 끝나면, 파일 시스템을 생성해야한다.&lt;br&gt;파일 시스템을 생성하는 이유는 HDD 잡혔는데 이걸 어떤 시스템을 기반으로 사용할 것인지를 정하는 것이다.&lt;br&gt;윈도우, 맥, 리눅스에서 사용하는 파일시스템이 따로 있는 것도 있고 굉장히 다양하다.&lt;br&gt;&amp;nbsp;&lt;br&gt;아래 명령어를 통해 실행한다.&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo mkfs.ext4 /dev/sda&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;ext4는 ext 파일 시스템 시리즈의 최신 버전으로, 매우 큰 파일 시스템과 파일을 지원한다. 최대 파일 시스템 크기는 1 EB (1 exabyte)이며, 개별 파일 크기는 16 TB까지 지원함.&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;5. 마운트 단계&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;마운트는 컴퓨터 시스템에서 파일 시스템을 사용할 수 있도록 하는 작업이다.&lt;br&gt;특정 디렉토리를 만들어 마운트 해준다.&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo mkdir /data1&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이후 그 디렉토리에 HDD를 마운트 한다.&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo mount /dev/sda /data1&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;df -h&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;를 통해서 마운트가 잘 되었는지 확인해볼 수 있다.&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;6. 자동 마운트 설정&lt;/b&gt;&lt;/h3&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;5번 까지만 하면 컴퓨터를 재부팅하면 언마운트되어 다시 마운트를 하는 귀찮은 작업을 해줘야하는데,&lt;br&gt;여기서는 부팅하면서 자동 마운트 되는 설정을 할 것이다.&lt;br&gt;/etc/fstab 이라는 파일이 있는데 이걸 편집해서 설정을 추가해주면 된다.&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo nano /etc/fstab&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;여기서 어떻게 편집할지&amp;nbsp;두가지 방법이 있는데,&amp;nbsp;&lt;br&gt;첫번째는 아래와 같이 작성해주면 된다.&lt;/p&gt;&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;&lt;div class=&quot;moreless-content&quot;&gt;&lt;p data-ke-size=&quot;size16&quot;&gt;/dev/sda&amp;nbsp; &amp;nbsp; /data1&amp;nbsp; &amp;nbsp; ext4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;defaults&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2 &lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;근데 이 /dev/sda 같은 경우는 새로운 디스크를 추가하거나 어떤 작업에 의해 변경되는 경우가 있다. 그러면 마운트를 다시 해줘야하는 복잡한 상황 생김..&lt;br&gt;&amp;nbsp;&lt;br&gt;그래서 UUID 라는 절대적인 바뀌지 않는 방법을 통해서 설정하는 것을 권장한다.&lt;/p&gt;&lt;pre data-ke-type=&quot;codeblock&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo blkid&lt;/code&gt;&lt;/pre&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;라는 명령을 통해서 확인할 수 있다.&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1011&quot; data-origin-height=&quot;421&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Dcn9g/btshAwIJSxE/KZ9wVng21MSxdNUalwyLlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Dcn9g/btshAwIJSxE/KZ9wVng21MSxdNUalwyLlk/img.png&quot; data-alt=&quot;/dev/sda의 UUID&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Dcn9g/btshAwIJSxE/KZ9wVng21MSxdNUalwyLlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDcn9g%2FbtshAwIJSxE%2FKZ9wVng21MSxdNUalwyLlk%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;1011&quot; height=&quot;421&quot; data-origin-width=&quot;1011&quot; data-origin-height=&quot;421&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;/dev/sda의 UUID&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;이걸 복사해서 아래와 같이 /etc/fstab 파일에 추가해주면 된다.&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;895&quot; data-origin-height=&quot;444&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ta4F1/btshAZYeA4N/r7mp9EL64N8VYuuKFi9XM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ta4F1/btshAZYeA4N/r7mp9EL64N8VYuuKFi9XM0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ta4F1/btshAZYeA4N/r7mp9EL64N8VYuuKFi9XM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTa4F1%2FbtshAZYeA4N%2Fr7mp9EL64N8VYuuKFi9XM0%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;895&quot; height=&quot;444&quot; data-origin-width=&quot;895&quot; data-origin-height=&quot;444&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;재부팅해보고 자동으로 잘 마운트 되는지 확인하면 된다!&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;끝!!&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>linux</category>
      <category>hdd</category>
      <category>linux</category>
      <category>mount</category>
      <category>마운트</category>
      <author>KimbgAI</author>
      <guid isPermaLink="true">https://kimbg.tistory.com/51</guid>
      <comments>https://kimbg.tistory.com/51#entry51comment</comments>
      <pubDate>Sun, 28 May 2023 18:18:25 +0900</pubDate>
    </item>
  </channel>
</rss>