<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>끄적거림</title>
    <link>https://signing.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sun, 2 Aug 2026 11:53:02 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>Signing</managingEditor>
    <image>
      <title>끄적거림</title>
      <url>https://tistory1.daumcdn.net/tistory/3356198/attach/57c90cd40c6a4a3682e754fd82eded95</url>
      <link>https://signing.tistory.com</link>
    </image>
    <item>
      <title>[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 3. The shortfalls of BALD</title>
      <link>https://signing.tistory.com/175</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/172&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 0. Abstract&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/173&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 1. Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/174&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 2.Background&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 섹션에서는 BALD를 본격적을 까는 섹션이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 섹션에서부터 BALD는 prediction을 기본으로하는 ML 프레임워크에 적합하지 않다고 했을 뿐 아니라, &lt;span style=&quot;background-color: #fdfdfd; color: #000000; text-align: start;&quot;&gt;이것이 parameter uncertainty와 predictive uncertainty가 다름이 적용되지 않음을 강조하고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 부분에서 BALD가 아쉬운지, 부족한지를 확인해보겠다.&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.1 Focusing on prediction&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;model parameter는 고정값.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;the parameters are only valued insofar as they serve a prediction-oriented goal. &lt;span style=&quot;background-color: #fdfdfd; color: #000000; 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;&lt;b&gt;3.2 Not all information is equal&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;linear model과 같은 모델들은 parameter와 prediction이 밀접한 연관성이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은 parameter uncertainty를 줄이면 predictive uncertainty의 전체적인 감소로 이어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 일반적으로는 두 지표는 좀 더 느슨한 관계이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수많은 parameter를 갖는 non-parametic bayesian model과 같은 모델들은 많은 중복이 있다.?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 지표가 느슨한 관계면, parameter uncertainty는 나머지 input에 대한 predictive uncertainty의 감소와 관련 없이 줄어들 수 있다.&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.3 BALD has no notion of an input distribution&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000; text-align: start;&quot;&gt;BALD는 prediction과 관련 없이 model parameter에 초점을 맞추기 때문에 input dist.를 설명하지 않는다.&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;b&gt;3.4 Real-world data can exacerbate this problem&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A/L은 라벨링하기에 가장 유용한 input을 찾아야 하는데, BALD는 prediction에 그닥 도움이 되지 않는 애매한 데이터를 타게팅 할 수 있는 random setting이기 때문에 좋지 못하다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;645&quot; data-origin-height=&quot;487&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/U2wSa/btscfCMNVCm/kzug7IDu4XqSqwN9I8rNk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/U2wSa/btscfCMNVCm/kzug7IDu4XqSqwN9I8rNk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/U2wSa/btscfCMNVCm/kzug7IDu4XqSqwN9I8rNk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FU2wSa%2FbtscfCMNVCm%2Fkzug7IDu4XqSqwN9I8rNk1%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;645&quot; height=&quot;487&quot; data-origin-width=&quot;645&quot; data-origin-height=&quot;487&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그림에서도 알 수 있듯이, pool size가 커짐에 따라 BALD의 predictive accuracy가 더욱더 안좋아짐을 보이고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000; text-align: start;&quot;&gt;pool size가 커지면 더욱 애매한 input이 pool에 포함될 가능성이 높아지고, BALD는 점점 더 안좋은 예측 정확도를 보인다.&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;b&gt;3.5 Failure can occur without distribution shift&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BALD는 input dist.에 대해 관련이 없기 때문에, dist. shift나 dist. change 없이 pool에서 input을 뽑아서 pool size가 증가하면 왜 성능저하로 이어지는지에 대한 이유가 될 수 있다.&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.6 Filtering heuristics are not a general solution&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BALD의 이런 문제를 해결하기 위해 보통 그런 모호한 데이터를 제거하고 BALD를 사용하는데, 이러한 filtering은 그닥 좋은 방법이 아니다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 단점들의 가장 큰 주제는 BALD가 prediction uncertainty와 input dist.를 고려하지 않는다는 점인것 같다.&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/175</guid>
      <comments>https://signing.tistory.com/175#entry175comment</comments>
      <pubDate>Sun, 23 Apr 2023 13:58:35 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 2.Background</title>
      <link>https://signing.tistory.com/174</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/172&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 0. Abstract&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/173&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 1. Introduction&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2.1 Active Learning&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A/L은 라벨링을 하는 작업인데, 흔히 label acquisition이라고 부른다. 라벨을 얻는 작업이니까.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;acquisition을 할때 몇 가지 step이 있는데,각 step $t$는 3가지의 작업으로 나뉜다.&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;695&quot; data-origin-height=&quot;505&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qvtr1/btsbUq7QgVd/qx263uFSxhcZw7SipWVsAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qvtr1/btsbUq7QgVd/qx263uFSxhcZw7SipWVsAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qvtr1/btsbUq7QgVd/qx263uFSxhcZw7SipWVsAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqvtr1%2FbtsbUq7QgVd%2Fqx263uFSxhcZw7SipWVsAK%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;695&quot; height=&quot;505&quot; data-origin-width=&quot;695&quot; data-origin-height=&quot;505&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;첫 번째, 알고리즘은 라벨링을 위해 query input $x_t$를 얻고,&lt;br /&gt;주어진 input에 대해 라벨링에 필요한 utility를 포착하기 위한 acquisition function을 maximize한다.&lt;/li&gt;
&lt;li&gt;두 번째, 알고리즘은 조건부 라벨 분포 $p(y|x=x_t)$으로부터 라벨 $y_t$을 sampling하고, 이를 training dataset에 $(x_t, ~ y_t)$를 넣는다.&lt;/li&gt;
&lt;li&gt;세 번째, 예측모델 $p_{\phi}(y|x)$을 업데이트 한다.&lt;/li&gt;
&lt;/ul&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.2 Bayesian experimental design&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bayesian experimental design은 실험으로부터 정보 습득에 대해 quantifying 할 수 있는 framework이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A/L에서는 input $x$를 실험의 design으로 볼 수 있고, label $y$는 experiment의 결과로 볼 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;666&quot; data-origin-height=&quot;174&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xDwjz/btsbSLyljqt/23E1814U85i9MC2GxRPcs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xDwjz/btsbSLyljqt/23E1814U85i9MC2GxRPcs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xDwjz/btsbSLyljqt/23E1814U85i9MC2GxRPcs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxDwjz%2FbtsbSLyljqt%2F23E1814U85i9MC2GxRPcs1%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;666&quot; height=&quot;174&quot; data-origin-width=&quot;666&quot; data-origin-height=&quot;174&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$\psi$를 학습을 통해 초점을 맞추고 있는 정보의 양이라고 정의하고, prior $p(\psi)$, likelihood $p(y|x, \psi)$로 정의하면,&amp;nbsp;실험$(x,y)$을 통해 얻는 정보의 양 $\psi$를 quantify할 수 있다.&lt;/li&gt;
&lt;li&gt;Shannon entropy를 사용함&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;659&quot; data-origin-height=&quot;49&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eRMl0y/btsbXJTDHSE/RHytA49sFKvPd2rvnj5Jk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eRMl0y/btsbXJTDHSE/RHytA49sFKvPd2rvnj5Jk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eRMl0y/btsbXJTDHSE/RHytA49sFKvPd2rvnj5Jk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeRMl0y%2FbtsbXJTDHSE%2FRHytA49sFKvPd2rvnj5Jk0%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;659&quot; height=&quot;49&quot; data-origin-width=&quot;659&quot; data-origin-height=&quot;49&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$y$가 random variable이기 때문에, $p_{\psi}(y|x) = E_{p(\psi)}[p(y|x,\psi)]$임을 활용해 $y$에 대한 $EIG$를 marginal predictve distribution으로 만들 수 있다.&lt;/li&gt;
&lt;li&gt;$(x,y)$에 대한 conditioning 이후 $\psi$에서 uncertainty의 expected reduction이다.&lt;/li&gt;
&lt;li&gt;이것은 $x$가 주어졌을 때, $y$와 $\psi$ 사이의 mutaul information인 $I(\psi;y|x)$와 동일하다.&lt;/li&gt;
&lt;/ul&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.3 Bayesian active learning by disagreement(BALD)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bayesian A/L은 전통적으로 $\psi$에서 $\theta$를 세팅한 model parameter의 정보 &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;666&quot; data-origin-height=&quot;98&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEe88K/btsb6ZVSCYh/KPId5OdASNvMgTHN2J0sZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEe88K/btsb6ZVSCYh/KPId5OdASNvMgTHN2J0sZK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEe88K/btsb6ZVSCYh/KPId5OdASNvMgTHN2J0sZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEe88K%2Fbtsb6ZVSCYh%2FKPId5OdASNvMgTHN2J0sZK%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;666&quot; height=&quot;98&quot; data-origin-width=&quot;666&quot; data-origin-height=&quot;98&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;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/174</guid>
      <comments>https://signing.tistory.com/174#entry174comment</comments>
      <pubDate>Sat, 22 Apr 2023 17:54:10 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 1. Introduction</title>
      <link>https://signing.tistory.com/173</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/172&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 0. Abstract&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;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1.1 Active Learning&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Active Learning은 labeling 부족한 상황에서 모델이 직접 labeling을 진행하며 학습하는 Task이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 labeling을 하기 위해서는 빠르게 학습하며 새롭게 들어오는 정보가 매우 중요한데, 보통은 기대되는 정보의 양을 maimise하여 학습을 진행한다. 이것을 우리는 BALD(Bayesian Active Learning by Disagreement) score를 maximize한다고 말하고, Bayesian Active Learning에서 acquisition function이기도 하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;b&gt;1.2 BALD의 한계&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BALD는 unseen input에 정확한 예측을 하지 못할 수 있다는점에서 효과적이지 못한 맹점이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000; text-align: start;&quot;&gt;BALD는 모델 파라미터에 대한 정보를 다루고 있기 때문에, 모델이 어떻게 사용될 것인지에 대한 개념이 없어서 획득한 데이터가 특정 예측 작업과 관련이 있는지 확인하지 못한다.&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;b&gt;1.3 ERIG 제안&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;□ 개념 설명&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;BALD: model parameter에 대한 EIG(expected information gain)&lt;/li&gt;
&lt;li&gt;EPIC: model's prediction에 대한 EIG &amp;rarr; 새롭게 제공받을 input에 대해 얼만큼의 &lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;label information이 있는지를 나타낸 것이다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;□&lt;span&gt; Uncertainty 측면&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;1683&quot; data-origin-height=&quot;515&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkx9Iq/btsbVdHayf6/QiI52WBf37HCh0OivOf4J0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkx9Iq/btsbVdHayf6/QiI52WBf37HCh0OivOf4J0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkx9Iq/btsbVdHayf6/QiI52WBf37HCh0OivOf4J0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbkx9Iq%2FbtsbVdHayf6%2FQiI52WBf37HCh0OivOf4J0%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;1683&quot; height=&quot;515&quot; data-origin-width=&quot;1683&quot; data-origin-height=&quot;515&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;BALD: parameter uncertainty의 전체적인 감소&lt;/li&gt;
&lt;li&gt;EPIG: downstream predictive uncertainty 감소&lt;/li&gt;
&lt;/ul&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.4 Distribution&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 부분 쓸 차례~ 이해가 100% 안되어서 뒷부분 더 읽고 다시 읽어보기!&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/173</guid>
      <comments>https://signing.tistory.com/173#entry173comment</comments>
      <pubDate>Sat, 22 Apr 2023 16:52:29 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Prediction-Oriented Bayesian Active Learning - 0. Abstract</title>
      <link>https://signing.tistory.com/172</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2304.08151v1.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/2304.08151v1.pdf&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Active Learning을 좀 더 공부하다가 오랜만에 Gal 교수님의 최신 논문을 발견하여 리뷰해보고자 한다.&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;Information-theoretic approaches to active learning have traditionally focused on maximising the information gathered&amp;nbsp; about the model parameters, most commonly by optimising the BALD score.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정보이론의 학문으로 바라봤을 때, active learning은 보통 모델 파라미터에 대한 정보의 총량을 최대화하는 것에 집중하고 있다. = BALD score를 최적화한다고 표현한다.&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;We highlight that this can be suboptimal from the perspective of predictive performance.&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;For example, BALD lacks a notion of an input distribution and so is prone to prioritise data of limited relevance.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, BALD는 input dist.에 대해 고려하지 않기 때문에 relevance가 제한된 데이터를 우선시하는 경향이 있다.&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;To address this we propose the expected predictive information gain (EPIG), an acquisition function that measures information gain in the space of predictions rather than parameters.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 상황을 해결하기 위해 본 논문에서는 EPIG(Expected Predictive Information Gain)라고 하는, 파라미터에 대한 정보 보다는 prediction 공간에서 얻을 수 있는 정보를 측정하는 acquisition function을 제안한다.&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;We find that using EPIG leads to stronger predictive performance compared with BALD across a range of datasets and models, and thus provides an appealing drop-in replacement.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EPIG을 사용하는 것이 BALD를 사용하는 것보다 예측 부분에서 더 강력한 성능을 보였기 때문에 BALD의 대체재로써 활용하기 좋다.&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/172</guid>
      <comments>https://signing.tistory.com/172#entry172comment</comments>
      <pubDate>Sat, 22 Apr 2023 15:40:03 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 6.Experiments</title>
      <link>https://signing.tistory.com/170</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;color: #6bacce;&quot; href=&quot;https://signing.tistory.com/161&quot;&gt;[논문 소개] On Uncertainty, Tempering, and Data Augmentation inBayesian Classification - 0.Abstract&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;color: #6bacce;&quot; href=&quot;https://signing.tistory.com/162&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;color: #6bacce;&quot; href=&quot;https://signing.tistory.com/163&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 2.Related Work&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;color: #6bacce;&quot; href=&quot;https://signing.tistory.com/164&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 3.Background&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;color: #6bacce;&quot; href=&quot;https://signing.tistory.com/168&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 4.Aleatoric Uncertainty in Bayesian Classification&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/169&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 5.The Effect of DAta Augmentation&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 절에서는 섹션 4,5절에서 언급했던 내용을 실험적으로 보여주는 절이다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;섹션 6.1에서는 tempering, noisy Dirichlet model, 2D 분류 문제에서의 BNN을 이용한 data augmentation에 대해 설명하고&lt;/li&gt;
&lt;li&gt;섹션 6.2에서는 Gaussian process regression model을 상요한 SG-MCMC의 제한된 dist.에서의 data augmentation의 효과에 대해 시각화하고&lt;/li&gt;
&lt;li&gt;섹션 6.3에서는 이미지 분류 문에서 BNN에 대한 결론을 말한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;6.1 Synthetic problem&lt;/b&gt;&lt;/h3&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;829&quot; data-origin-height=&quot;489&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b11ZKR/btr7OLhsYdx/9Q1LYkJYrbiH3FdxfSE8k0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b11ZKR/btr7OLhsYdx/9Q1LYkJYrbiH3FdxfSE8k0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b11ZKR/btr7OLhsYdx/9Q1LYkJYrbiH3FdxfSE8k0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb11ZKR%2Fbtr7OLhsYdx%2F9Q1LYkJYrbiH3FdxfSE8k0%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;829&quot; height=&quot;489&quot; data-origin-width=&quot;829&quot; data-origin-height=&quot;489&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;(a)는 BNN을 활용한 data와 decision boundary를 나타낸 것이다. $BNN \overset{\underset{\mathrm{i.i.d}}{}}{\sim} N(0, 0.3^2) $를 따르고, Hamiltonian Monte Carlo(HMC) 방법론을 이용해 full batch를 돌려 posterior에 대한 sample을 얻은 것이다. 보이는 것처럼 data에 정확히 fit한 모델은 아니지만, training data에 대해서는 그럴싸한 fit을 보여준다.&lt;/li&gt;
&lt;li&gt;(b)는 &lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;$x_1, x_2$축에 대해 random한 대칭이동을 적용하여 &lt;/span&gt;data augmentation의 효과를 나타내고 있다.(augmented된 데이터 point는 투명하게 해놓음.) Data augmentation에서 network를 평가하기 위해, 수식 (16)에서 posterior dist.로부터 sampling하기 위해 HMC을 돌렸다. BNN은 data aug.가 없었던 (a)보다 더 낮은 수준의 성능을 보였다.&lt;/li&gt;
&lt;li&gt;tempered likelihood를 적용한 (c), 혹은 noisy Drichlet을 적용한 (d) train data에 훨씬 더 성능이 좋게끔 만들었다. 두 방법론은 거의 완벽하게 traindata에 대해 성능을 내었고, 이것은 low aleatoric uncertainty를 가정했던 것과 부합하는 결과이다.(더 자세한 내용은 appendix H.1 참고)&lt;/li&gt;
&lt;/ul&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;6.2 Visualizing the Effect of Data Augmentation&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;793&quot; data-origin-height=&quot;347&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cfKGIF/btr7HgCnGiv/GOhESwCnL8PKosHv2yBhR1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cfKGIF/btr7HgCnGiv/GOhESwCnL8PKosHv2yBhR1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cfKGIF/btr7HgCnGiv/GOhESwCnL8PKosHv2yBhR1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcfKGIF%2Fbtr7HgCnGiv%2FGOhESwCnL8PKosHv2yBhR1%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;793&quot; height=&quot;347&quot; data-origin-width=&quot;793&quot; data-origin-height=&quot;347&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;그림 4는 섹션 5에서 언급되었던 수식 (16)에서 $K=1,4,10$일때의 posterior를 시각화한 것으로,&amp;nbsp;data augmentation을 하지 않고, 원래 기존 data에서의 posterior를 나타낸 그림이다.&lt;/li&gt;
&lt;li&gt;학습 데이터에서의 prediction은 augmented datapoint들과 독립이기 때문에, 수식 (16)에서의 posterior는 augmentation의 K값과 같이 warm temperature로 훈련 데이터의 posterior를 tempering하는 것과 같다.&lt;/li&gt;
&lt;li&gt;결론적으로, likelihood를 soften하는 augmentation의 수를 크게 할수록, 훈련 데이터에 대한 confidence는 더 적어진다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;6.3 Image Classification with Bayesian Neural Networks&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 절에서는 image classification에 대해서,&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;noisy Dirichlet model은 최적의 성능을 내는데 tempering하는것을 필요로 하지 않는다는 것과&lt;/li&gt;
&lt;li&gt;noisy Dirichlet model과 tempered softmax likelihood는 데이터에서 label noise에 대한 우리의 믿음을 성공적으로 표현할 수 있다는 것과&lt;/li&gt;
&lt;li&gt;data augmentation BNN의 likelihood를 부드럽게하고, 최적의 temperature는 data augmentation 정책의 복잡성에 의존한다는 것을 보였다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;No cold posterior effect in the noisy Dirichlet model&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;358&quot; data-origin-height=&quot;426&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDPhVQ/btr91SejPQ5/9CxkiujPU9hKBzGkAR5CD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDPhVQ/btr91SejPQ5/9CxkiujPU9hKBzGkAR5CD1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDPhVQ/btr91SejPQ5/9CxkiujPU9hKBzGkAR5CD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDPhVQ%2Fbtr91SejPQ5%2F9CxkiujPU9hKBzGkAR5CD1%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;358&quot; height=&quot;426&quot; data-origin-width=&quot;358&quot; data-origin-height=&quot;426&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;그림 5는 standard softmax classification likelihood에서 tempering posterior effect와 노이즈 파라미터를 $\alpha_{\epsilon}=10^{-6}$로 갖는 noisy Dirichlet model에 대해 나타낸 그림이다.(CIFAR-10)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://arxiv.org/pdf/2002.02405.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;How good is the bayes posterior in deep neural networks really?&lt;/a&gt; 논문에서 밝힌바와 같이 softmax likeihood에서는 $T=10^-3$일때, 최적의 성능을 내었지만, noisy Drichlet model에서는 tempering이 그닥 유의미한 결과를 내지 못했다.&lt;/li&gt;
&lt;li&gt;결론적으로, 섹션 4에서 분석했듯이, tempering과 Dirichlet 모델이 aleatoric uncertainty에 대한 우리의 믿음을 표현하는 대안으로 볼 수 있다. 따라서, tempering 없이도 강력한 성능을 낼 수 있게 되었다.&lt;/li&gt;
&lt;/ul&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;Modeling label noise&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;882&quot; data-origin-height=&quot;438&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IulMt/btr90UqcKAM/jcAA2cIsv0C9s69TYJgOok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IulMt/btr90UqcKAM/jcAA2cIsv0C9s69TYJgOok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IulMt/btr90UqcKAM/jcAA2cIsv0C9s69TYJgOok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIulMt%2Fbtr90UqcKAM%2FjcAA2cIsv0C9s69TYJgOok%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;882&quot; height=&quot;438&quot; data-origin-width=&quot;882&quot; data-origin-height=&quot;438&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;분류 task에서 aleatoric uncertainty는 데이터에 존재하는 label noise의 양에 해당한다. 본 논문에서도 말했듯이, aleatoric uncertainty는 standard BNN에 의해 잘못 표시되고 있었고, likelihood tempering과 noisy Dirichlet model은 label noise의 양에 대한 정보를 알려주는 강력한 방법이다.&lt;/li&gt;
&lt;li&gt;그림 6은 standard softmax likelihood와 tempered softmax likelihood와 noisy Dirichlet model에 대한 BMA test accuracy와 negative log-likelihood를 나타낸 것이다.&lt;/li&gt;
&lt;li&gt;CIFAR-10 &amp;amp; Tiny Imagenet 데이터를 썼고, tempered softmax likelihood model에는 $T \in \{10^{-5},~10^{-4},~10^{-3},~10^{-2},~10^{-1},~1,~3,~10\}$를, noisy Dirichlet model에는 $\alpha_{\epsilon} \in \{10^{-6},~10^{-5},~10^{-4},~10^{-3},~10^{-2},~10^{-1}\}$를 적용한 그림이다.&lt;/li&gt;
&lt;li&gt;CIFAR-10과 Tiny Imagenet 그리고 모든 label noise에 대해, tempering 또는 noisy Dirichlet model을 통해 aleatoric uncertainty를 명확히 modeling함으로써 standard softmax likelihood를 훨씬 능가하는 성능을 보였다. 게다가, 다른 양의 label noise는 다른 temerature 또는 $\alpha_{\epsilon}$으로 적용할 수 있었다.&lt;/li&gt;
&lt;/ul&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;Data augmentation leads to underfitting on train data&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;882&quot; data-origin-height=&quot;465&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DJcum/btr96PtTU3k/Bx39lnTTgPNgpN69AD3baK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DJcum/btr96PtTU3k/Bx39lnTTgPNgpN69AD3baK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DJcum/btr96PtTU3k/Bx39lnTTgPNgpN69AD3baK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDJcum%2Fbtr96PtTU3k%2FBx39lnTTgPNgpN69AD3baK%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;882&quot; height=&quot;465&quot; data-origin-width=&quot;882&quot; data-origin-height=&quot;465&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;data augmentation을 적용했을 때와 적용하지 않았을 때에 대한 NLL을 나타낸 것인데,&amp;nbsp;tempering과 $\alpha_{\epsilon}$ 파라미터 값이 클수록, data augmentation을 적용한 실험의 성능이 더 좋지 않음을 보이고 있다.&lt;/li&gt;
&lt;li&gt;data augmentaion이 likelihood를 더 부드럽게 만들고, 이것이 fitting하는데 더 혼란을 준다는 것을 말하고 있다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/170</guid>
      <comments>https://signing.tistory.com/170#entry170comment</comments>
      <pubDate>Mon, 3 Apr 2023 21:12:06 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 4.Aleatoric Uncertainty in Bayesian Classification</title>
      <link>https://signing.tistory.com/168</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 소개] On Uncertainty, Tempering, and Data Augmentation inBayesian Classification - 0.Abstract&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/162&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/163&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 2.Related Work&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/164&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 3.Background&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 절에서는&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(4.1섹션)에서 분류 문제에서의 Aleatoric Uncertainty 표현이 어떻게 되는지를 얘기하고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(4.2섹션)에서는 tempering이 어떻게 Aleatoric Uncertainty를 줄일 수 있는지를,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(4.3섹션)에서는 수정된 Dirichlet 모델에서 tempering이 없는 Aleatoric Uncertainty를 어떻게 나타내는지를,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 섹션5에서는 위의 내용들을 가지고 data augmentation이 어떻게 본 논문에서 주장하는 Aleatoric Uncertainty의 표현에 영향을 주는지를 보여준다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4.1 How do we represent aleatoric uncertainty in classification?&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;45&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWaOFP/btr7g6TmOzS/JCH40WoIuykBuLkOutv210/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWaOFP/btr7g6TmOzS/JCH40WoIuykBuLkOutv210/img.png&quot; data-alt=&quot;BNN posterior in Classification Task&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWaOFP/btr7g6TmOzS/JCH40WoIuykBuLkOutv210/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWaOFP%2Fbtr7g6TmOzS%2FJCH40WoIuykBuLkOutv210%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;721&quot; height=&quot;45&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;45&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;BNN posterior in Classification Task&lt;/figcaption&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;(5)번식은 분류 문제에서 parameter $w$에 대한&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;BNN posterior이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$f_y(x,w)$ 부분을 input이 $x$에 따른 class $y$에 대한 softmax layer의 output으로 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;uniform prior를 갖는 predicted class probabilities $f(x)$를 도입하면 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;34&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qTusu/btr7hyhKe4M/dEFqjufEWBT3OkwLmnk56K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qTusu/btr7hyhKe4M/dEFqjufEWBT3OkwLmnk56K/img.png&quot; data-alt=&quot;Dirichlet dist.를 적용한 class probability dist pior&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qTusu/btr7hyhKe4M/dEFqjufEWBT3OkwLmnk56K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqTusu%2Fbtr7hyhKe4M%2FdEFqjufEWBT3OkwLmnk56K%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;720&quot; height=&quot;34&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;34&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Dirichlet dist.를 적용한 class probability dist pior&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 Dirichlet 분포임과 동일한데, 6번 식의 오른항을 보면, multi-normal model에서 uniform prior를 갖는 $f(x)$에 대한 Unnormalized posterior로 볼 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;56&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btwWmT/btr7fZ8h7Vt/xkustykzffHlVOxWJp0Uu1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btwWmT/btr7fZ8h7Vt/xkustykzffHlVOxWJp0Uu1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btwWmT/btr7fZ8h7Vt/xkustykzffHlVOxWJp0Uu1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtwWmT%2Fbtr7fZ8h7Vt%2FxkustykzffHlVOxWJp0Uu1%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;721&quot; height=&quot;56&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;56&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 사실에 근거하여, Dirichlet 분포를 conjugate하는 multi-nomial likelihood를 사용하면 6번 식을 7번 식으로 다시 쓸 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;---------------------------------------------------------&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(23.05.22 업데이트)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;Dirichlet분포는 Multi-nomial dist와 conjugate 관계에 있는데, Multi-nomial은 binomial 분포의 일반화된 버전이라고 보면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 Multi Nomial dist는 2개가 아닌 k개의 class 중에서 1개가 뽑히는 이산형 확률분포이고, 이를 연속형 확률 분포로 변환한 것이 Dirichlet 분포라고 이해하면 된다.(느낌적 느낌으로 이해하면 된다. 정확한 내용은 아님)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Dirichlet 분포에서 1이 의미하는 것은 Dirichlet의 parameter을 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;K개의 class가 있다고 가정하고, 전부 동일한 가중치(uniform하게)를 주었다고 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전부 1인 상황에서 갑자기 (7)번 수식에서처럼 2로 변한 것은, 특정 class y에 대해 1개의 observation이 추가되었다고 보면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇기 때문에, observation으로 데이터 1개가 추가 되었다 = multi nomial dist가 추가되었다. = prior였던 dirichlet분포에 likelihood인 multi nomial분포를 곱하여, posterior인 dirichlet 분포가 업데이트(1에서 2로 변환)되었다고 볼 수 있다.&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&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;725&quot; data-origin-height=&quot;62&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FpHH3/btr7hUrCEwb/N5NwGo6zJ4T4e1NKv6qqL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FpHH3/btr7hUrCEwb/N5NwGo6zJ4T4e1NKv6qqL1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FpHH3/btr7hUrCEwb/N5NwGo6zJ4T4e1NKv6qqL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFpHH3%2Fbtr7hUrCEwb%2FN5NwGo6zJ4T4e1NKv6qqL1%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;725&quot; height=&quot;62&quot; data-origin-width=&quot;725&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;8번 식은 BNN에서 분류문제에 대해 aleatoric uncertainty를 어떻게 추정하는지 보여주는 식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 prior $p(w)$를 무시하고 uniform한 $f(x)$를 적용한다면, $(x,y)$에 대한 posterior는 $f(x) = Dir.(1,..,2,...,1)$이 되고, correct class에 대한 posterior mean은 $\frac{2}{C+1}$이 될 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 100개의 class가 있는 데이터셋이 있으면, $2/101 \approx 2\%$라고 볼 수 있는 것이다.&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;prior $p(w)$가 non-trivial join prior dist.(=변수 간에 복잡한 관계가 존재하여 갖는 joint한 분포)라면, posterior는 더(or 덜) confidence할 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히, $p(w) = N(0, \alpha^2 I)$처럼 간단한 prior를 사용했다면, 데이터의 label에 대한 노이즈를 고려하지 않은 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;식 8번은 두가지 aleatoric uncertainty에 대한 posterior를 수정할 방법을 제안한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;Increasing the Dirichlet concentration for the observed class(=posterior tempering)&lt;br /&gt;: 관찰한 class에 대해서는 Dirichlet 분포의 집중도가 상승&lt;/li&gt;
&lt;li&gt;Decreasing the concentration for the unobserved class(=noisy Dirichlet model)&lt;br /&gt;: 관측하지 못한 class들에 대해서는 Dirichlet 분포의 집중도가 감소&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&amp;nbsp;해당 문단에서 말하고자 하는 것은 분류 문제에서 어떻게 aleatoric uncertainty를 나타내는가?였다. 저자는 Bayesian Rule에서 쓰이는 posterior&amp;nbsp; 정의와 conjugate 관계인 Multi-nomial dist.와 Dirichlet dist.를 사용하여 posterior에 대한 분포를 나타냈고, 이를 통해 aleatoric uncertainty를 표현할 수 있다고 하였다.&lt;br /&gt;&amp;nbsp;정확히 어떻게 aleatoric uncertainty를 추정했는지 수식적으로 100% 이해하진 못했지만, 추정할 수 있는 방법이 있다는 점만 알아두고 넘어가자.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4.2 Likelihood tempering reduces aleatoric uncertainty&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션3에서 보았던 tempered likelihood posterior는 BNN분류문제에서의 &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;(5)의&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;posterior를 아래 9번 식처럼 표현할 수있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;52&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cghLKt/btr7d7lxl3z/MS3ZigPA9tCNm1daLhnTs0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cghLKt/btr7d7lxl3z/MS3ZigPA9tCNm1daLhnTs0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cghLKt/btr7d7lxl3z/MS3ZigPA9tCNm1daLhnTs0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcghLKt%2Fbtr7d7lxl3z%2FMS3ZigPA9tCNm1daLhnTs0%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;721&quot; height=&quot;52&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;52&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9번식을 좀 더 풀어서 쓰면 아래 10번 식처럼 표현할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;73&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bImH8j/btr7dMvb6fR/y3PcFKvyJ0ZDGirvUVpEhK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bImH8j/btr7dMvb6fR/y3PcFKvyJ0ZDGirvUVpEhK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bImH8j/btr7dMvb6fR/y3PcFKvyJ0ZDGirvUVpEhK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbImH8j%2Fbtr7dMvb6fR%2Fy3PcFKvyJ0ZDGirvUVpEhK%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;720&quot; height=&quot;73&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;73&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tempered posterior은 결국 일반적인 posterior와 비슷하지만, 각 input $x$에 대한 class $y$에 $1/T$만큼 더 count한 것으로 생각할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;5번 수식과 비교 했을 때, $position ~ y$ 부분이 2였던 것이 $1 + \frac{1}{T}$ 로 변한것을 볼 수 있다.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한마디로, 특정 클래스 $y$에 대해 $1/T$만큼 한 번 더 더해줬다는 얘기이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;따라서, tempering을 하게 되면 $position ~ y$에 대해 더 큰 값을 적용하는 것과 같다.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히, prior $p(w)$는 $f(x)$에 대해 uniform dist.를 적용시켰다고 가정한다면, correct label에서 confidence는 tempered posterior의 평균은 $Expected~f_y(x) = \frac{1+1/T}{C+1/T} = \frac{T+1}{CT+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;p data-ke-size=&quot;size16&quot;&gt;100 classes가 있는 dataset이고 $T=10^{-2}$이라면, confidence를 $50.5\%$ 를 얻을 수 있고, 이 것은 $2\%$보다 훨씬 더 높은 수치이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;그에 따라, correct label에서의 confidence는 대폭 상승하며, incorrect label에서는 confidence가 더욱 낮아진다. 왜냐하면, class가 100개인 상황에서 일반적인 uniform dist.였다면 2%를 제외한 98%가 99개의 다른 class에 대해 할당이 될 것이고, dirichlet dist.이라면 correct label에 대해 50.5% confidence 얻는 반면, 나머지 99개의 incorrect label에 대해 50/99 정도의 confidence를 갖게하기 때문이다.&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;b&gt;Tempering the Likelihood vs Tempering the Posterior&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 연구에서는 보통 수식 (3)에서처럼의 likelihood를 tempering하는 것과 반대로 수식 (2)에서의 bayesian posterior 전체를 tempering하는 것을 연구한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Appendix C.2에서 나타나있듯이, 본 논문에서는 bayesian posterior을 tempering하는 것은 거의 항상 prior dist.를 변경하는 것과 likelihood를 tempering하는 것과 동일하다는 것을 보였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;u&gt;&lt;b&gt;likelihood를 tempering하는 것이 posterior를 tempering하는 cold posterior effect와 동일함을 말하고 있다.&lt;/b&gt;&lt;/u&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;b&gt;How should we think about tempering?&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 연구에서는 posterior tempering이 베이지안 패러다임에서 크게 벗어나고 cold posterior effect가 매우 문제가 있다고 주장해왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, 본 논문에서는 likelihood tempering이 사실 Aleatoric uncertainty에 대한 논문에서의 가정을 설명하는데 좋은 방법이라고 소개한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련되어, &lt;a href=&quot;https://arxiv.org/pdf/2008.05912.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;A STATISTICAL THEORY OF COLD POSTERIORS IN DEEP NEURAL NETWORKS&lt;/a&gt; 논문에서 cold posterior effect는 data curation을 일으킨다고 주장하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 예로, CIFAR-10과 ImageNet dataset은 비교적 매우 적은 label noise를 갖고 있기 때문에 조심스럽게 data curation을 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그에 따라, &lt;i&gt;&lt;u&gt;&lt;b&gt;low temperature를 갖는 tempered likelihood는 최적의 성능을 보여줄 수 있을 것이라 기대&lt;/b&gt;&lt;/u&gt;&lt;/i&gt;한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2002.08791.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Bayesian deep learning and a probabilistic perspective of generalization (NIPS 2020)&lt;/a&gt; 논문에서도 posterior tempering을 observation model의 변화로 볼 수있다. -&amp;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;Is Tempered Likelihood a Valid Likelihood?&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 베이지안 추론에서, 모델은 input 에 대한 조건부적인 label의 dist. $p(y|x)$이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/140&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/a&gt; 에서 tempered softmax likelihood는 class에 대한 확률이 1이 되지 않기 때문에 일반적으로 정확한 likelihood라고 할 수 없다고 주장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나,&lt;i&gt;&lt;u&gt;&lt;b&gt; $T&amp;lt;1$인 tempered softmax likelihood는 train data에서 한 번도 관측하지 않은 새로운 likelihood라고 설명할 수 있음을 보였다.&lt;/b&gt;&lt;/u&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 그들이 이러한 설명을 올지 않다고 주장한다면, 이것은 모델에서 관측하지 않은 class를 포함하는 것이 모순됨을 설명하지 못하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가 수식 (10)번으로부터 우리는 논란의 여지 없이 완벽하게 multinomial 모델로써 사용하는 것이 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;tempered likelihood가&lt;span&gt; 각&amp;nbsp;&lt;/span&gt;&lt;/span&gt;training datapoint에서 관찰되는 label의&amp;nbsp;$1/T$를 count하는 것임을&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 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4.3 Noisy Dirichlet model: changing the prior over class probabilities&lt;/b&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;수식 (10)에서 보았던 것처럼, likelihood tempering은 관찰된 class $y$에 대하여 Dirichlet dist.을 $2$에서 $1+1/T$로 올리면서 posterior confidence를 상승시킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서는 관측되지 않은 class의 집중도를 떨어뜨리면서 비슷한 효과를 입증했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(&lt;span style=&quot;background-color: #fdfdfd; color: #000000; text-align: start;&quot;&gt;구체성을 위해 여기서는 모델의 confidence를 높이는 것에 대해 논의하지만, label noise의 레벨이 높을 것으로 예상되는 경우, 관찰되지 않은 class에 대한 concentration parameter를 늘림으로써 모델의 confidence를 동등하게 낮출 수 있다.&lt;/span&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 조절 가능한 parameter인 $\alpha_{\epsilon}$을 추가한 $Noisy~Dirichlet$ 분포인 아래와 같은 식 (11)처럼 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;$p_{ND}$으로 나타낼 수 있다.&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;842&quot; data-origin-height=&quot;67&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6q2HR/btr7s23Ta6A/epkqJhIj4WSpT7spwPx4B1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6q2HR/btr7s23Ta6A/epkqJhIj4WSpT7spwPx4B1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6q2HR/btr7s23Ta6A/epkqJhIj4WSpT7spwPx4B1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6q2HR%2Fbtr7s23Ta6A%2FepkqJhIj4WSpT7spwPx4B1%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;842&quot; height=&quot;67&quot; data-origin-width=&quot;842&quot; data-origin-height=&quot;67&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Noisy Dirichlet 모델은&amp;nbsp;&lt;a href=&quot;https://arxiv.org/abs/1805.10915&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Dirichlet-based gaussian processes for large-scale calibrated classification (NIPS 2018)&lt;/a&gt; 논문에 나왔던 것으로 Gaussian Process classification에 사용되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본논문에서는, 예를 들어, class가 100개면 $\alpha_{\epsilon} = 10^{-2}$로 쓸 수 있고, expected confidence인 $Expected~f_y(x) = \frac{\alpha_{\epsilon}+1}{C_{\alpha_{\epsilon}} + 1} = 50.5%$이고 이것은 $T=10^{-2}$인 tempered likelihood와 같음을 알 수 있다.&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;Dirichlet과 multinomial dist.이 conjugate한 것을 사용하여, $p_{ND}$를 아래 수식 (12)처럼 다시 쓸 수 있다.&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;96&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bRTHVf/btr7hu73dXN/ofz7DN6uUg9Ak4JC44FvwK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bRTHVf/btr7hu73dXN/ofz7DN6uUg9Ak4JC44FvwK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bRTHVf/btr7hu73dXN/ofz7DN6uUg9Ak4JC44FvwK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbRTHVf%2Fbtr7hu73dXN%2Fofz7DN6uUg9Ak4JC44FvwK%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;96&quot; data-origin-width=&quot;844&quot; data-origin-height=&quot;96&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 식에서 $q_{ND}(w)$는 y에 depend하지 않고, 학습 데이터의 class 중 하나의 confidence에 대한 predicted class 확률값이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2021/file/1ab60b5e8bd4eac8a7537abb5936aadc-Paper.pdf&quot;&gt;Dangers of bayesian model averaging under covariate shift&lt;/a&gt; 논문에 나오는 $EmpCov$ prior도 y에 depend하지 않음을 밝히고 있다.&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;Noisy Dirichlet prior는 직관적이다. 어떤 면에서 그러냐면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리는 일단 모델이 한 class에 대해 높은 confidence를 갖기를 바라고, aleatoric uncertainty가 낮기를 바란다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그와 동시에 input space의 모든 곳에서 aleatoric uncertainty가 낮기만을 바라는 것은 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;training data에서 aleatoric uncertainty가 낮기를 바라면서, 모든 가능한 input이 높은 confidence를 갖기를 바라면 안된다.&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;섹션 6.3에서는 Dirichlet model이 cold posterior effect를 제거하는 것을 소개하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tempering은 높은 성능을 내기에 필요하지 않다.&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;Gaussian Approximation&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;a href=&quot;https://arxiv.org/pdf/1805.10915.pdf&quot;&gt;Dirichlet-based Gaussian Processes for Large-scale Calibrated Classification&lt;/a&gt; 논문에서는 Gaussian Process classification 쪽 내용에서 수식 (12)의 dist.에 대해 언급하지만 다른 목적으로 언급한다. :&amp;nbsp;softmax likelihood를 근사하기 위한 regression likelihood를 만드는 것에 목적을 두고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 논문에서는 $Dir.(f(x))$를 class probability $f(x)$와&amp;nbsp;logit $z(x)$에 대한 independent Gaussian dist.를 사용하여 근사시킨다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;848&quot; data-origin-height=&quot;140&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Vpi6f/btr7Tlokq74/oeZVXxqSX07Xi2kk2jjabk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Vpi6f/btr7Tlokq74/oeZVXxqSX07Xi2kk2jjabk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Vpi6f/btr7Tlokq74/oeZVXxqSX07Xi2kk2jjabk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVpi6f%2Fbtr7Tlokq74%2FoeZVXxqSX07Xi2kk2jjabk%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;848&quot; height=&quot;140&quot; data-origin-width=&quot;848&quot; data-origin-height=&quot;140&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리하여 나온 것이 $Noisy~Dirichlet~Gaussian$ 근사이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BNN에서 수식 (13)의 Gaussian approximation을 사용하기를 꺼려하고 바로 수식 (12)을 사용하길 바라지만, 실제 적용을 해보면 근사하는 방법(13)이 더 안정적인 결과를 얻을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가, 근사하는 방법(13)은 가우시안 모델의 logit $z(x)$의 space안에서 regression 문제를 푸는 것과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그에 따라 본 논문의 실험 부분에서는 $p_{NDG}$모델을 사용한다.&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;Visual comparison&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;850&quot; data-origin-height=&quot;463&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tj6IJ/btr7HfQXHqd/sYEnfu54n5DkTnKcGIK3n1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tj6IJ/btr7HfQXHqd/sYEnfu54n5DkTnKcGIK3n1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tj6IJ/btr7HfQXHqd/sYEnfu54n5DkTnKcGIK3n1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftj6IJ%2Fbtr7HfQXHqd%2FsYEnfu54n5DkTnKcGIK3n1%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;850&quot; height=&quot;463&quot; data-origin-width=&quot;850&quot; data-origin-height=&quot;463&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;왼쪽 그림은 이진분류 문제에서 standard soft max likelihood, temperd likelihood, noisy Dirichlet model를 사용하여 correct class $y$에 대한 confidence $f_y$의 posterior dist. CDF를 나타내고 있다.&lt;br /&gt;$\{f(x)\}_{x \propto D}$에 대한 prior가 $x$에 대해 uniform과 independent함을 가정하였다.&lt;br /&gt;tempering 방법과 noisy Dirichlet 방법은 standard softmax likelihood 방법보다 $f_y$ 예측값에 대해 더 높은 confidence를 보였다.&lt;/li&gt;
&lt;li&gt;중간 그림은 가장 효율적인 &lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;temperature를 나타내고 있다.&lt;br /&gt;낮은 temperature가 더 높은 confidence prediction을 갖는다는 것이다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;이와 비슷하게 오른쪽 그림은 $\alpha_{\epsilon}$의 값이 더 낮을수록 noisy Dirichlet 모델에서 더 높은 confidence를 보였다.&lt;br /&gt;Gaussian approximation인 $NDG$는 noisy Dirichlet 모델의 CDF와 잘 맞는 경향이 있지만, 부드러운 느낌은 약하고 더 numerical sampling에 따르게 한다&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/168</guid>
      <comments>https://signing.tistory.com/168#entry168comment</comments>
      <pubDate>Sat, 1 Apr 2023 00:55:26 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Active Learning by Feature Mixing</title>
      <link>https://signing.tistory.com/167</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2203.07034.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/2203.07034.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=T9VKaTlKlMw&quot;&gt;https://www.youtube.com/watch?v=T9VKaTlKlMw&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=T9VKaTlKlMw&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/WtnMX/hySsgo1Cn2/IrZGwkjKp8QDkyxkvMkGCK/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;[Paper Review] Active Learning by Feature Mixing&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/T9VKaTlKlMw&quot; width=&quot;860&quot; height=&quot;484&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;cvpr 2022에 나온 논문으로 유튜브 설명을 정리한 내용이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;b&gt;Introduction -&amp;nbsp;&lt;/b&gt;Active Learning&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 초기 학습된 모델을 통해 labeling을 했을 때, 가장 성능을 빠르게 높일 수 있는 unlabeled data를 sampling하는 것이 중요.&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;Introduction -&amp;nbsp;uncertainty&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Random: unceratinty에 대한 측정 없이 random하게 sampling 하여 라벨링을 진행 -&amp;gt; 베이스라인으로 쓰임&lt;/li&gt;
&lt;li&gt;Least Confidence: confidence값을 기준으로 낮은 값을 보인다면 uncertainty가 높다고 판단하여 샘플링&lt;/li&gt;
&lt;li&gt;Margin Sampling : max(confidence) - second(confidence)로 uncertainty를 구함&lt;/li&gt;
&lt;li&gt;Entropy Sampling : entropy loss로 uncertainty로 씀.&lt;/li&gt;
&lt;/ul&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;Related Work&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Active Learning 방법론의 핵심은 라벨링이 필요한 query sample들을 선택하는 scoring 방식.&lt;/li&gt;
&lt;li&gt;대표적으로 uncertainty 기반의 방법론, representation 기반의 방법론, 둘을 합친 하이브리드 방법론으로 나눌 수 있음.본 논문에서 다루는 모델은 아래 그림과 같음&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4iJxD/btsdzhggY8M/tHKSbhpaFQXjaFqNXZkV51/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4iJxD/btsdzhggY8M/tHKSbhpaFQXjaFqNXZkV51/img.png&quot; data-origin-width=&quot;624&quot; data-origin-height=&quot;282&quot; data-is-animation=&quot;false&quot; style=&quot;width: 60.5996%; margin-right: 10px;&quot; data-widthpercent=&quot;61.31&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4iJxD/btsdzhggY8M/tHKSbhpaFQXjaFqNXZkV51/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4iJxD%2FbtsdzhggY8M%2FtHKSbhpaFQXjaFqNXZkV51%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;624&quot; height=&quot;282&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AuFD4/btsdo9pR8Qa/jZzIQVyGEjg4kKz3y9PlT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AuFD4/btsdo9pR8Qa/jZzIQVyGEjg4kKz3y9PlT0/img.png&quot; data-origin-width=&quot;592&quot; data-origin-height=&quot;424&quot; data-is-animation=&quot;false&quot; data-widthpercent=&quot;38.69&quot; style=&quot;width: 38.2376%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AuFD4/btsdo9pR8Qa/jZzIQVyGEjg4kKz3y9PlT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAuFD4%2Fbtsdo9pR8Qa%2FjZzIQVyGEjg4kKz3y9PlT0%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;592&quot; height=&quot;424&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&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;uncertainty 기반의 대표적인 방법론 (BALD)&lt;/b&gt; : Deep Bayesian Active Learning with Image Data에서 제안한 Bayesian Uncertainty Estimation을 사용한 방법론.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;MC dropout을 사용하여 uncertainty를 측정함.&lt;/li&gt;
&lt;li&gt;단점은 오랜시간 걸린다는 점.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;representation 기반의 대표적인 방법론 (Core-Set)&lt;/b&gt; : Active Learning for Convolutional Neural Networks
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A Core-set Approach 논문에서 uncertainty를 정량화하는 것이 아니라 전체 unlabeled dataset을 커버할 수 있는 core unlabeled dataset을 선별한느 방식.&lt;/li&gt;
&lt;li&gt;빠른 속도로 학습할 수 있음.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&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;Method&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;586&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmAXhV/btsdegw5rIF/aAPpaXGZsVX90TsvodKLck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmAXhV/btsdegw5rIF/aAPpaXGZsVX90TsvodKLck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmAXhV/btsdegw5rIF/aAPpaXGZsVX90TsvodKLck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmAXhV%2Fbtsdegw5rIF%2FaAPpaXGZsVX90TsvodKLck%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;600&quot; height=&quot;586&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;586&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;모델의 confidence로 uncertainty를 선별하는 것이 아니라, 모델의 representation vector의 정보를 활용하여 training dataset에 포함되지 않은 novel sample을 선택하는 방법론을 제안함.&lt;/li&gt;
&lt;li&gt;novel sample을 어떻게 선택함?
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;라벨링된 데이터와 라벨링되지 않은 데이터간의 representation vector의 convex combination을 통해 mixed representation vector를 생성했을 때, 해당 representation vector에 대한 모델의 loss 변화를 통해 novel sample을 정의함.&lt;/li&gt;
&lt;li&gt;위 그림에서처럼, unlabeled sample이 들어왔을 때의 모델의 psuedo label과 labeling된 dataset representation vector를 convex combination을 함.&lt;/li&gt;
&lt;li&gt;이때의 mixed representatioin에 대한 모델의 classification 결과가 변한다면, 라벨링이 필요한 데이터다. 라고 정의함.&lt;/li&gt;
&lt;li&gt;즉, novel sample은 anchor representation vector와의 차이가 크고, pseudo label에 대한 gradient 값이 큰 sample을 의미함.&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;u&gt;&lt;b&gt;결과적으로, 라벨링되지 않은 데이터에 약간의 노이즈를 주었을 때, 분류 결과가 달라진다면, 라벨링이 필요한 데이터다. 라고 생각할 수 있다&lt;/b&gt;&lt;/u&gt;&lt;/i&gt;.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;알고리즘
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;각 학습 단계마다 labeling이 필요한 unlabeled data sample B개를 선택하는 과정&lt;br /&gt;각 class에 속하는 $z^*$에 대한 $\alpha$&lt;/li&gt;
&lt;li&gt;unlabeled sample에 대한 diversity를 높이기 위해 clustering을 진행함.&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;1252&quot; data-origin-height=&quot;786&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGGyG5/btsdsQ4DAOh/kppWUnRK20yYKjlnDMuWh1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGGyG5/btsdsQ4DAOh/kppWUnRK20yYKjlnDMuWh1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGGyG5/btsdsQ4DAOh/kppWUnRK20yYKjlnDMuWh1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGGyG5%2FbtsdsQ4DAOh%2FkppWUnRK20yYKjlnDMuWh1%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;1252&quot; height=&quot;786&quot; data-origin-width=&quot;1252&quot; data-origin-height=&quot;786&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;위 그림은 본 논문에서 제안한 방법론을 적용했을 때, unlabeled sample에 대한 representation vector를 임베딩 공간에 시각화한 그림으로, 본 논문에서 제안한 ALFA-Mix 방법론이 class boundary에 모여 있는 것을 알 수 있다.&lt;/li&gt;
&lt;/ul&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;Experiment&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1022&quot; data-origin-height=&quot;284&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0Pozi/btsdsSH8TKQ/Y9wogiiT7GI9hE7qpOlIJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0Pozi/btsdsSH8TKQ/Y9wogiiT7GI9hE7qpOlIJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0Pozi/btsdsSH8TKQ/Y9wogiiT7GI9hE7qpOlIJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0Pozi%2FbtsdsSH8TKQ%2FY9wogiiT7GI9hE7qpOlIJK%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;1022&quot; height=&quot;284&quot; data-origin-width=&quot;1022&quot; data-origin-height=&quot;284&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;4개의 데이터셋과 8개의 방법론에 대한 실험을 진행&lt;/li&gt;
&lt;li&gt;본 방법론이 비교 방법론 대비 몇 % 성능 향상이 있었는지를 나타낸 그림&lt;/li&gt;
&lt;li&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;503&quot; data-origin-height=&quot;495&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckHhZI/btsdhzbNC7Q/cij9sKDe7eOHhHvkeKNhg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckHhZI/btsdhzbNC7Q/cij9sKDe7eOHhHvkeKNhg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckHhZI/btsdhzbNC7Q/cij9sKDe7eOHhHvkeKNhg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckHhZI%2FbtsdhzbNC7Q%2Fcij9sKDe7eOHhHvkeKNhg1%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;503&quot; height=&quot;495&quot; data-origin-width=&quot;503&quot; data-origin-height=&quot;495&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;총 30개의 다른 실험환경에서 제안된 모델의 성능을 비교한 것&lt;/li&gt;
&lt;li&gt;행의 방법론이 열의 방법론보다 성능이 좋았던 횟수의 비율을 나타낸 것&lt;/li&gt;
&lt;li&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;951&quot; data-origin-height=&quot;308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dsB7Js/btsdjo8WKqw/KtMc6Eb6F78F9WrUo1Tt00/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dsB7Js/btsdjo8WKqw/KtMc6Eb6F78F9WrUo1Tt00/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dsB7Js/btsdjo8WKqw/KtMc6Eb6F78F9WrUo1Tt00/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdsB7Js%2Fbtsdjo8WKqw%2FKtMc6Eb6F78F9WrUo1Tt00%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;951&quot; height=&quot;308&quot; data-origin-width=&quot;951&quot; data-origin-height=&quot;308&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;실제 실험: 3가지 데이터셋에서 실험 했는데, 성능이 가장 우수했음&lt;/li&gt;
&lt;li&gt;5번의 반복 실험을 했을 때, 성능 편차를 음영으로 나타냄. 제안된 방법론은 음영이 거의 보이지 않으므로 robust할 수 있다고 할 수 있다.&lt;/li&gt;
&lt;li&gt;초기 학습때, 성능 향상 기울기가 가장 가파르다.&lt;/li&gt;
&lt;li&gt;ViT 모델 기반에서도 성능이 높다.&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;494&quot; data-origin-height=&quot;356&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0ZDtK/btsdwtBj6pY/oKR3gkf74g5CAVdTx8OQrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0ZDtK/btsdwtBj6pY/oKR3gkf74g5CAVdTx8OQrK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0ZDtK/btsdwtBj6pY/oKR3gkf74g5CAVdTx8OQrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0ZDtK%2FbtsdwtBj6pY%2FoKR3gkf74g5CAVdTx8OQrK%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;494&quot; height=&quot;356&quot; data-origin-width=&quot;494&quot; data-origin-height=&quot;356&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;비디오 classification에서도 우월한 성능을 보임. SOTA 성능.&lt;/li&gt;
&lt;li&gt;최종적으로 labeled data의 갯수가 많아져서 classification 성능이 어느정도 수렴을 했을 때에도, 다른 방법론 대비 높은 성능을 보임.&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;998&quot; data-origin-height=&quot;347&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZO6Yr/btsdi3qd1VL/Rk2nRsHgN7sHZdMl2DGbFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZO6Yr/btsdi3qd1VL/Rk2nRsHgN7sHZdMl2DGbFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZO6Yr/btsdi3qd1VL/Rk2nRsHgN7sHZdMl2DGbFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZO6Yr%2Fbtsdi3qd1VL%2FRk2nRsHgN7sHZdMl2DGbFk%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;347&quot; data-origin-width=&quot;998&quot; data-origin-height=&quot;347&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;diversity에 대한 실험&lt;/li&gt;
&lt;li&gt;clustering으로 sampling을 진행했는데, clustring 뿐 아니라 $Norm,~ Symmetric-KL, ~ Uniform$ 방법론도 함께 비교함.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Norm: interpolation hyper parameter인 $\alpha$ 값이 가장 작은 sample을 선택하는 방법. $\alpha$에 대해 최적화 과정이 없으면, final prediction이 변경되는 data의 개수가 크게 감소함.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Symmetric-KL: loss 값의 변화가 가장 컸던 sample을 KL divergence를 이용해 구하는 방법&lt;/li&gt;
&lt;li&gt;Uniform : random하게 sampling하는 방법(베이스라인)&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;263&quot; data-origin-height=&quot;371&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GbVzd/btsdlKDSUEF/jfKWhKQGa2UQvsW6km0yZ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GbVzd/btsdlKDSUEF/jfKWhKQGa2UQvsW6km0yZ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GbVzd/btsdlKDSUEF/jfKWhKQGa2UQvsW6km0yZ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGbVzd%2FbtsdlKDSUEF%2FjfKWhKQGa2UQvsW6km0yZ0%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;371&quot; data-origin-width=&quot;263&quot; data-origin-height=&quot;371&quot;/&gt;&lt;/span&gt;&lt;/figure&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;/li&gt;
&lt;li&gt;가장 간단한 방법인 entropy와 비슷한 수준이다.&lt;/li&gt;
&lt;li&gt;BALD는 러닝타임이 굉장히 길다&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;classification boundary를 찾아내는 것이 중요하다고 생각했는데, 이를 구현한 방법론인 것 같아 많은 도움이 되었다.&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>개인 공부 정리/ML&amp;amp;Statistic</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/167</guid>
      <comments>https://signing.tistory.com/167#entry167comment</comments>
      <pubDate>Fri, 31 Mar 2023 22:23:50 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] An Uncertainty-aware Loss Function for Training Neural Networks with Calibrated Predictions</title>
      <link>https://signing.tistory.com/165</link>
      <description>&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2110.03260.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/2110.03260.pdf&lt;/a&gt;&lt;/blockquote&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&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;b&gt;0. Abstract&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;이 연구에서는 Cross-Entropy와 Expected Calibration Error(ECE) 및 Predictive Entropy(PE)를 결합한 두 가지 새로운 손실 함수를 제안함.&lt;/li&gt;
&lt;li&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;확인&lt;/li&gt;
&lt;li&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;입증&lt;/li&gt;
&lt;/ul&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. Introduction&lt;/b&gt;&lt;b&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;Uncertainty가 얼머나 중요한지를 언급.&lt;/li&gt;
&lt;li&gt;대표적인 Uncertainty 측정 방법인 MC dropout, 베이지안 Variational Inference 등을 언급함.&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;551&quot; data-origin-height=&quot;496&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6CbbK/btr43QSopLa/vU2t2pKZr4pL1aYR1kynVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6CbbK/btr43QSopLa/vU2t2pKZr4pL1aYR1kynVK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6CbbK/btr43QSopLa/vU2t2pKZr4pL1aYR1kynVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6CbbK%2Fbtr43QSopLa%2FvU2t2pKZr4pL1aYR1kynVK%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;551&quot; height=&quot;496&quot; data-origin-width=&quot;551&quot; data-origin-height=&quot;496&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;위 사진1은 올바른 예측을 했을 때 낮은 Uncertainty 분포를, 틀린 예측을 했을 때 높은 Uncertainty 분포를 보임을 나타내고 있다.&lt;/li&gt;
&lt;li&gt;본 논문은 이러한 두 분포의 교집합적인 부분을 최소화하는 것을 목표로 했다.&lt;/li&gt;
&lt;li&gt;결과적으로 잠재적으로 부정확한(위험한) 예측은 안전하게 발견하고 uncertainty를 estimate하는 동안 조심스럽게 처리하는 것이 목표인 것이다.&lt;/li&gt;
&lt;/ul&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. Literature Review&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;Uncertainty quantification이 왜 필요한지, 왜 중요한지를 언급함.&lt;/li&gt;
&lt;li&gt;epistemic &amp;amp; aleatoric 두 종류의 uncertainty가 있음을 언급함. -&amp;gt; &lt;a style=&quot;background-color: #e6f5ff; color: #0070d1; text-align: start;&quot; href=&quot;https://signing.tistory.com/61&quot;&gt;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision?&lt;/a&gt; 논문 위주의 내용&lt;/li&gt;
&lt;li&gt;의학 application 중에서 장기기관 인식에 대한 논문 언급
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;image tagging &amp;amp; anatomical structure classification 접근방법을 사용&lt;/li&gt;
&lt;li&gt;superpixel classification 방법론을 사용&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&quot;An exploration of uncertainty information for segmentation quality assessment&quot; 논문에서는 segmentation model에 대해 uncertainty measuring을 진행할 때, MC dropout UNet, UNet ensemble, conventional UNet without dropout을 사용함.&lt;/li&gt;
&lt;/ul&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. Evaluation of Uncertainty&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;P&lt;/b&gt;redictive &lt;b&gt;E&lt;/b&gt;ntropy(&lt;b&gt;PE&lt;/b&gt;)를 uncertainty,의 지표 중에 하나로 볼 수 있음.&lt;br /&gt;$$&lt;br /&gt;PE = -\sum_c{\mu_c ~ log{\mu_c}}, c ~&amp;nbsp; ranges&amp;nbsp; ~ over ~ classes&lt;br /&gt;$$&lt;/li&gt;
&lt;li&gt;PE를 활용하여 올바른 예측값보다 잘못 예측한 결과에 대해 높은 uncertainty를 얻는것이 바람직하다.&lt;/li&gt;
&lt;li&gt;그러기 위해서 아래와 같이 몇 가지 지표들을 생각해볼 수 있고, 더 좋은 성능을 위해서는 aleatoric &amp;amp; epistemic uncertainty로 적용하는 것이 좋다.&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;389&quot; data-origin-height=&quot;138&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ozMi6/btr5Qi2Fck6/aK23Sb2ut26Zq6YMk6OXAk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ozMi6/btr5Qi2Fck6/aK23Sb2ut26Zq6YMk6OXAk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ozMi6/btr5Qi2Fck6/aK23Sb2ut26Zq6YMk6OXAk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FozMi6%2Fbtr5Qi2Fck6%2FaK23Sb2ut26Zq6YMk6OXAk%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;389&quot; height=&quot;138&quot; data-origin-width=&quot;389&quot; data-origin-height=&quot;138&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;1) &lt;b&gt;U&lt;/b&gt;ncertainty &lt;b&gt;Sen&lt;/b&gt;sitivity&lt;br /&gt;2) &lt;b&gt;U&lt;/b&gt;ncertainty &lt;b&gt;Spe&lt;/b&gt;cificity&lt;br /&gt;3) &lt;b&gt;U&lt;/b&gt;ncertainty precision&lt;br /&gt;4) &lt;b&gt;U&lt;/b&gt;ncertainty &lt;b&gt;A&lt;/b&gt;ccuracy&lt;/li&gt;
&lt;/ul&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;4. Background&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;M&lt;/b&gt;arkov &lt;b&gt;C&lt;/b&gt;hain &lt;b&gt;M&lt;/b&gt;onte &lt;b&gt;C&lt;/b&gt;arlo&lt;/li&gt;
&lt;li&gt;&lt;b&gt;V&lt;/b&gt;ariational &lt;b&gt;I&lt;/b&gt;nference&lt;/li&gt;
&lt;li&gt;MC-Dropout&lt;/li&gt;
&lt;/ul&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;5. New Loss Function&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;이번 절에서는 2가지 loss function을 함께 사용하는 multiobjective loss function을 소개할 예정인데, 두 loss function 모두 calibration error를 줄이는 것과 사진1에서 보았던 것처럼 올바른 예측 분포와 틀린 예측 분포의 영역을 최소화하는 것을 목적으로 하고 있다.&lt;/li&gt;
&lt;li&gt;&lt;u&gt;&lt;b&gt;PE&lt;/b&gt; Entr&lt;u&gt;o&lt;/u&gt;py-based Loss Function&lt;/u&gt; : &lt;b&gt;PE&lt;/b&gt;에 cross entropy 항을 추가해다고 볼 수 있고, &lt;b&gt;PE&lt;/b&gt;와 cross entropy를 minimize하는 방향으로 학습한다.(PE는 uncertainty measure로써 사용된다.)&lt;br /&gt;$$&lt;br /&gt;Loss = Cross Entropy + Mean of PEs&lt;br /&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;402&quot; data-origin-height=&quot;345&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkTsEX/btr5PSiCwyf/NkxoYr2yNBGoWEwl80qWUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkTsEX/btr5PSiCwyf/NkxoYr2yNBGoWEwl80qWUK/img.png&quot; data-alt=&quot;PE Entropy-based Loss Function&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkTsEX/btr5PSiCwyf/NkxoYr2yNBGoWEwl80qWUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkTsEX%2Fbtr5PSiCwyf%2FNkxoYr2yNBGoWEwl80qWUK%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;402&quot; height=&quot;345&quot; data-origin-width=&quot;402&quot; data-origin-height=&quot;345&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;PE Entropy-based Loss Function&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Expected Calibration Error-based Loss Function : calibration-aware NN에 대한 loss function을 추가했다고 볼 수 있다.&lt;br /&gt;$$&lt;br /&gt;Loss = Cross Entropy + ECE&lt;br /&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;396&quot; data-origin-height=&quot;343&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9AHYR/btr5N87BsqZ/u5ZK77GqULdHzjQZ7hpj0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9AHYR/btr5N87BsqZ/u5ZK77GqULdHzjQZ7hpj0k/img.png&quot; data-alt=&quot;Expected Calibration Error-based Loss Function&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9AHYR/btr5N87BsqZ/u5ZK77GqULdHzjQZ7hpj0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9AHYR%2Fbtr5N87BsqZ%2Fu5ZK77GqULdHzjQZ7hpj0k%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;396&quot; height=&quot;343&quot; data-origin-width=&quot;396&quot; data-origin-height=&quot;343&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Expected Calibration Error-based Loss Function&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;&lt;b&gt;6. Experiments&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;Two Moon Dataset
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;파란색 음영은 올바른 예측, 빨간색 음영은 틀린 예측을 한 entropy distribution(=uncertainty dist.)이다.&lt;/li&gt;
&lt;li&gt;$TABLE2$ 에서는 $Fig3$ 분포에 대한 지표들을 보여주고 있음.&lt;/li&gt;
&lt;li&gt;$\mu_1, \mu_2$는 각각 올바른 예측값의 분포와 틀린 예측값의 분포를 Gaussian dist.에 근사한 평균값이고,&lt;span&gt;&amp;nbsp;&lt;/span&gt;$Distance$는 두 dist. 사이의 거리이며,&amp;nbsp;각각의 method를 100번 돌려 얻은 평균값이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cFOCpS/btr5N8s3ixG/kAoaqf0H5MBO2KAVqh9QKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cFOCpS/btr5N8s3ixG/kAoaqf0H5MBO2KAVqh9QKK/img.png&quot; data-origin-width=&quot;846&quot; data-origin-height=&quot;329&quot; data-is-animation=&quot;false&quot; data-widthpercent=&quot;51.42&quot; style=&quot;width: 50.8217%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cFOCpS/btr5N8s3ixG/kAoaqf0H5MBO2KAVqh9QKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcFOCpS%2Fbtr5N8s3ixG%2FkAoaqf0H5MBO2KAVqh9QKK%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;846&quot; height=&quot;329&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ARaNZ/btr5OdVlAfF/NbdgfDxqSZHvtdKdYjUvb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ARaNZ/btr5OdVlAfF/NbdgfDxqSZHvtdKdYjUvb1/img.png&quot; data-origin-width=&quot;396&quot; data-origin-height=&quot;163&quot; data-is-animation=&quot;false&quot; data-widthpercent=&quot;48.58&quot; style=&quot;width: 48.0156%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ARaNZ/btr5OdVlAfF/NbdgfDxqSZHvtdKdYjUvb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FARaNZ%2Fbtr5OdVlAfF%2FNbdgfDxqSZHvtdKdYjUvb1%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;396&quot; height=&quot;163&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;결과 해석
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;올바른 예측값의 dist.는 틀린 예측값의 dist.보다 더 적은 uncertainty를 갖는다.&lt;/li&gt;
&lt;li&gt;Distance 측면에서 보면, 그냥 일반적인 MC-dropout보다 두 loss function을 적용한 것이 더 큰(좋은) Distance를 갖는다.&lt;br /&gt;--&amp;gt; 이것은 두 알고리즘이 올바른 예측값에는 낮은 uncertainty를 부여하고, 틀린 예측값에는 높은 uncertainty를 부여한다는 것을 보이고 있다.&lt;/li&gt;
&lt;li&gt;MC-Dropout with PE-based loss function 방법론이 가장 적은 두 영역의 교집합을 갖는다.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&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;489&quot; data-origin-height=&quot;395&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lDUDd/btr5Od8VA0r/0Sdal5X3UlMeYGloCQBXJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lDUDd/btr5Od8VA0r/0Sdal5X3UlMeYGloCQBXJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lDUDd/btr5Od8VA0r/0Sdal5X3UlMeYGloCQBXJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlDUDd%2Fbtr5Od8VA0r%2F0Sdal5X3UlMeYGloCQBXJK%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;489&quot; height=&quot;395&quot; data-origin-width=&quot;489&quot; data-origin-height=&quot;395&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$Fig4$ 는 올바른 예측값의 분포와 틀린 예측값의 분포간의 uncertainty predictive mean에 대한 차이(거리)를 boxplot으로 나타낸 그림이다.&lt;/li&gt;
&lt;li&gt;PE-based loss function 케이스가 가장 큰 차이를 보였다.&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;821&quot; data-origin-height=&quot;597&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QeG4P/btr5PGJw20z/Gvak2D22rUqxHT7ZtxYvz1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QeG4P/btr5PGJw20z/Gvak2D22rUqxHT7ZtxYvz1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QeG4P/btr5PGJw20z/Gvak2D22rUqxHT7ZtxYvz1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQeG4P%2Fbtr5PGJw20z%2FGvak2D22rUqxHT7ZtxYvz1%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;821&quot; height=&quot;597&quot; data-origin-width=&quot;821&quot; data-origin-height=&quot;597&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$Fig5$ 는 two moon dataset과 bulb dataset을 대상으로 4가지 알고리즘(Ensemble, original MC-Dropout, MC-Dropout based on PE loss function, MC-Dropout based on ECE loss funtion)에 대한 &lt;b&gt;U&lt;/b&gt;ncertainty &lt;b&gt;A&lt;/b&gt;ccuracy(&lt;b&gt;UA&lt;/b&gt;)를 나타낸 그림이며, 3가지의 noise level을 고려한 그림이다.&lt;/li&gt;
&lt;li&gt;간단한 fully connected layer 모델을 사용함.&lt;/li&gt;
&lt;li&gt;PE loss function을 사용한 method가 uncertainty를 더 잘 표현하고 찾아내는 명확한 결과를 볼 수 있음.&lt;/li&gt;
&lt;li&gt;UAcc는 각 데이터 셋에 대해, aleatoric uncertainty level이 증가함에 따라 점차 감소함을 보여줌.&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;794&quot; data-origin-height=&quot;431&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kw9Pa/btr5RgXAJlI/BAtapSh6nCqO22ODqE1yt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kw9Pa/btr5RgXAJlI/BAtapSh6nCqO22ODqE1yt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kw9Pa/btr5RgXAJlI/BAtapSh6nCqO22ODqE1yt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fkw9Pa%2Fbtr5RgXAJlI%2FBAtapSh6nCqO22ODqE1yt0%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;431&quot; data-origin-width=&quot;794&quot; data-origin-height=&quot;431&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$Fig6$ 에서는&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7. Conclusion&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;위 내용을 summary하는 단락&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot; /&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;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;본 논문은 &quot;uncertainty를 loss function으로 사용할 수 있을까?&quot;에 대한 질문에서 시작하여 찾은 논문이다. 저널에 올라간 논문이었기에 나름 내 궁금증을 해결해줄거라 생각했는데, 논문의 퀄리티가 엄청 심플하고, 높은 수준이 아닌 것 같다는 생각이 들었다.&lt;br /&gt;오타도 몇 군데 있었고, 실험도 주장을 뒷받침할만한 큰 증거가 되지 못한 느낌이다.&lt;br /&gt;내가 논문을 쓸 때, 이러한 아쉬운점을 참고해서 작성해야겠다.&lt;/blockquote&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;
&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>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/165</guid>
      <comments>https://signing.tistory.com/165#entry165comment</comments>
      <pubDate>Mon, 20 Mar 2023 21:07:39 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 3.Background</title>
      <link>https://signing.tistory.com/164</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 소개] On Uncertainty, Tempering, and Data Augmentation inBayesian Classification - 0.Abstract&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/162&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/163&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 2.Related Work&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.1 Bayesian Model Averaging&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안 추론에 의하면, input-output 세트를 나타내는 데이터셋 $D = {(x_i, y_i)}^N_{i=1}$을 갖는 parameter들의 $posterior~dist = p(\theta|D) \&lt;span style=&quot;background-color: #ffffff;&quot;&gt;propto p(D|\theta)p(\theta)&lt;/span&gt;$ 를 추론해야하는 것에 초점을 맞추고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 input $x_{*}$이 있다면, 우리는 posterior predictive dist.를 $Bayesian~model~averaging(BMA)$를 아래와 같이 나타낼 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;776&quot; data-origin-height=&quot;55&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bIf14y/btr9zwwnawq/b9Tr3Y6HUZGWY5iBKiCDM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bIf14y/btr9zwwnawq/b9Tr3Y6HUZGWY5iBKiCDM0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bIf14y/btr9zwwnawq/b9Tr3Y6HUZGWY5iBKiCDM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbIf14y%2Fbtr9zwwnawq%2Fb9Tr3Y6HUZGWY5iBKiCDM0%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;776&quot; height=&quot;55&quot; data-origin-width=&quot;776&quot; data-origin-height=&quot;55&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.2 Cold Posterior and Tempering&lt;/b&gt;&lt;/h3&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;775&quot; data-origin-height=&quot;77&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfPFXX/btr9BHDGjQ5/cJMjtatHOwOcAGAkF4oMG1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfPFXX/btr9BHDGjQ5/cJMjtatHOwOcAGAkF4oMG1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfPFXX/btr9BHDGjQ5/cJMjtatHOwOcAGAkF4oMG1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfPFXX%2Fbtr9BHDGjQ5%2FcJMjtatHOwOcAGAkF4oMG1%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;775&quot; height=&quot;77&quot; data-origin-width=&quot;775&quot; data-origin-height=&quot;77&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&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;777&quot; data-origin-height=&quot;60&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYrIOJ/btr9AkPKo0x/5SgfvWzsy5mYYfwdmdVrK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYrIOJ/btr9AkPKo0x/5SgfvWzsy5mYYfwdmdVrK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYrIOJ/btr9AkPKo0x/5SgfvWzsy5mYYfwdmdVrK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYrIOJ%2Fbtr9AkPKo0x%2F5SgfvWzsy5mYYfwdmdVrK0%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;777&quot; height=&quot;60&quot; data-origin-width=&quot;777&quot; data-origin-height=&quot;60&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.3 Stochastic Gradient Langevin Dynamics (SGLD)&amp;nbsp;&lt;/b&gt;&lt;/h3&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;780&quot; data-origin-height=&quot;77&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5vz8a/btr9C5K2Dfz/rssUpMWPONCRwgT2DiWdIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5vz8a/btr9C5K2Dfz/rssUpMWPONCRwgT2DiWdIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5vz8a/btr9C5K2Dfz/rssUpMWPONCRwgT2DiWdIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5vz8a%2Fbtr9C5K2Dfz%2FrssUpMWPONCRwgT2DiWdIk%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;780&quot; height=&quot;77&quot; data-origin-width=&quot;780&quot; data-origin-height=&quot;77&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;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.4 Bayesian Classification&lt;/b&gt;&lt;/h3&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/164</guid>
      <comments>https://signing.tistory.com/164#entry164comment</comments>
      <pubDate>Tue, 14 Feb 2023 23:05:10 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 2.Related Work</title>
      <link>https://signing.tistory.com/163</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/161&quot;&gt;[논문 소개] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 0.Abstract&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/162&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2.1. BNN의 연구 동향&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BNN에 대한 연구들은 Laplace approximations, variational methods, and Hamiltonian Monte Carlo based MCMC 등을 이용하여 hyperparameter learning과 overfitting을 완화하는 연구를 해왔었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&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;a href=&quot;https://proceedings.neurips.cc/paper/2020/file/322f62469c5e3c7dc3e58f5a4d1ea399-Paper.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Bayesian Deep Learning and a Probabilistic Perspective of Generalization&lt;/a&gt; 에서는 베이지안 모델의 averaging은 최근의 deep network에 얼마나 특화되어 있는지를 보여준다.
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;deep ensemble as bayesian inference&lt;/li&gt;
&lt;li&gt;induced priors in function space&lt;/li&gt;
&lt;li&gt;mitigating double descent&lt;/li&gt;
&lt;li&gt;generalization behaviour in deep learning&lt;/li&gt;
&lt;li&gt;posterior tempering&lt;/li&gt;
&lt;li&gt;connections with loss surface structure such as mode connectivity&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;다른 한 편으로는 Bayesian Deep Learning을 실용적으로 사용할 수 있는 방면으로 연구가 다수 진행되었다.
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;better results than classical training&lt;/li&gt;
&lt;li&gt;essentially no additional runtime overhead&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&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;2.2. Cold posterior&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/140&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/a&gt; 해당 논문에서는 SGLD inference를 사용한 상황에서&amp;nbsp; $1/T, T &amp;lt; 1$ 제곱을 한&amp;nbsp; posterior(cold posterior)가 일반적인 훈련보다 성능이 증가하는 몇 가지 예시를 들었다.($T=1$이면 classical training과 동일함.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 &lt;a href=&quot;https://arxiv.org/pdf/2104.14421.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;What Are Bayesian Neural Network Posteriors Really Like?&lt;/a&gt; 논문에서는 위의 논문에서 나온 모든 case들에 data augmentation을 제거한다면 cold posterior effect는 없다고 주장하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 &lt;a href=&quot;https://arxiv.org/pdf/2106.06596.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&lt;/a&gt; 논문에서는 data augmentation이 오직 CIFAR-10에 대해서만 cold posterior를 설명하고 있고, data augmentation이 없는 IMDB에서는 cold posterior effect가 없다고 주장하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior effect를 관측하기 위한 data augmentation의 활용성은 SG-MCMC 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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2.3. cold posterior와 prior&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;몇몇 연구는 잘못 사용된 prior가 cold posterior를 설명한다고 제안했고, 요즘 BNN에서 iostropic Gaussian prior를 잘못 사용하고 있다고 주장하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, &lt;a href=&quot;https://arxiv.org/pdf/2102.06571.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Bayesian Neural Network Priors Revisited&lt;/a&gt; 논문에서 data augmentation에서의 매우 치우치거나 상관관계가 큰&amp;nbsp; prior를 사용함으로써 CNN에서 cold posterior effect가 줄어들지 않는다는 것을 발견했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 논문이 Gaussian prior와 no data augmentation을 사용한 fully connected MLP를 Fashion MNIST에 대해 cold posterior가 있었다고 주장했지만, 실험에서 보여준 성과가 매우 미미한 수준이었고(Fashion MNIST에서 test accuracy가 약 0.25% 상승), 이것은 calibration이나 OOD에 취약하다는 것을 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가, &lt;a href=&quot;https://proceedings.neurips.cc/paper/2020/file/322f62469c5e3c7dc3e58f5a4d1ea399-Paper.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Bayesian Deep Learning and a Probabilistic Perspective of Generalization&lt;/a&gt; 논문은&amp;nbsp;&lt;a href=&quot;https://signing.tistory.com/140&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/a&gt;&lt;span&gt;&lt;span&gt; 논문에서의 poor prior를 사용한 실험이 prior의 variance scale을 조절함으로써 쉽게 해결할 수 있다는 것을 보여주고, isotropic Gaussian prior가 실험적이게 효과가 있었으며 함수 공간에서 괜찮은 특성을 제공한다는 것을 보였다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2104.14421.pdf&quot;&gt;What Are Bayesian Neural Network Posteriors Really Like?&lt;/a&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;논문에서도 standard Gaussian prior가 heavy-tailed logistic prior와 mixture of Gaussian prior와 같은 다른 비슷한 종류의 prior와 비슷하게 작용하고 있으며, 일반적으로 HMC inference를 사용한 deep ensemble과 표준 training보다 높은 성능을 보이고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior 말고, &lt;a href=&quot;https://arxiv.org/pdf/2106.11905.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Dangers of Bayesian Model Averaging under Covariate Shift&lt;/a&gt; 논문은 BNN에서 사용되는 standard prior가 covariate shift 상황에서 얼마나 심각한 성능 저하(BNN을 사용하는 현실의 적용사례에 잠재적으로 영향을 미칠 수 있다)를 일으키는지를 설명하고 있다.&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;2.4. cold posterior와 data augmentation&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/2106.06596.pdf&quot;&gt;Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&lt;/a&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;논문에서는 likelihood, prior, data augmentation과 같은 많은 다른 요소들이 cold posterior를 일으킨다는 것과 그것에 대한 일반적인 원인은 없을지도 모른다고 주장하고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이런 관찰과 주장들은 &lt;a href=&quot;https://proceedings.neurips.cc/paper/2020/file/322f62469c5e3c7dc3e58f5a4d1ea399-Paper.pdf&quot;&gt;Bayesian Deep Learning and a Probabilistic Perspective of Generalization&lt;/a&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;tempering하는 것이 광범위한 misspecification(예를 들면, $T=1$인 일반적인 상황에서 최고의 성능이 나온다는 것과 같은)을 부분적으로 해결할 수 있다는 것을 주장하고 있다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다시 말해, 모델이 조금이라도 misspecified되었다면 우리는 $T=1$이 차선일 것이라고 예상할 것이고, 어떠한 노력에도 불구하고 모델이 완벽하게 specified되지 않을 것이기 때문에, $T=1$이라고 요구하거나 그렇지 않다면 특별히 경고하는 것은 불합리하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한&amp;nbsp;&lt;a href=&quot;https://arxiv.org/pdf/2106.06596.pdf&quot;&gt;Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&lt;/a&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;논문은 Gaussian prior가 복잡한 가설에 무게를 두고 있어 결국 성능이 떨어질 수 있다고 제안하는 반면, &lt;a href=&quot;https://proceedings.neurips.cc/paper/2020/file/322f62469c5e3c7dc3e58f5a4d1ea399-Paper.pdf&quot;&gt;Bayesian Deep Learning and a Probabilistic Perspective of Generalization&lt;/a&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;논문&lt;/span&gt;은 parameter에 대한 Gaussian prior가 함수 공간에서 유용한 prior를 유도하는 방법을 보여준다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;어느 쪽이든, 위와 같이, 논문의 모든 실험을 포함하여 data augmentation을 제거하면 실제로 cold posterior effect가 거의 제거된다.&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;2.5. cold posterior와 aleatoric uncertainty&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;a href=&quot;https://arxiv.org/pdf/2008.05912.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;A statistical theory of cold posteriors in deep neural networks&lt;/a&gt; 논문에서는 많은 benchmark dataset이 사람손(human labelers)을 많이 타왔기 때문에 &lt;/span&gt;&lt;span&gt;BNN의 likelihood가 misspecified 된다는 것을 주장하고 있다.&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;라벨과 일치하지 않는 샘플은 버리는 방법에 의존할 때, 우리의 likelihood는 $p(y|x)^{H}, H는 human~labeler$형태를 갖고 이것은 likelihood tempering과 관련이 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;posterior tempering은 label noise의 존재에 그다지 도움이 되지 않는다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;a href=&quot;https://arxiv.org/pdf/2008.00029.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Cold Posteriors and Aleatoric Uncertainty&lt;/a&gt; 논문에서도 model misspecification을 고려하여 Aleatoric uncertainty가 잘못 측정되었을 때, Gaussian Process Regression에서 정확한 추론으로도 cold posterior effect가 발생할 수 있음을 보여주고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;a href=&quot;https://arxiv.org/pdf/2106.05586.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Data augmentation in bayesian neural networks and the cold posterior effect&lt;/a&gt; 논문에서는 augmentation에 대한 신경망의 output의 평균을 관찰 모델로 사용하여 data augmentation을 수용하는 likelihood를 수정하였지만, augmentation이 없는 cold posterior가 없음에도 불구하고 여전히 cold posterior effect를 찾는 노력을 했다.&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;2.6. contribution&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서는 이전에 행해졌던 연구 맥락에서 몇 가지 독특한 기여를 한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;standard likelihood는 aleatoric uncertainty에 대한 믿음을 나타내지 않고 있으며, standard benchmark dataset은 기본적으로&amp;nbsp; aleatoric uncertainty를 가지고 있지 않다.&lt;/li&gt;
&lt;li&gt;tempering과 data augmentation은 curation을 넘어 aleatoric uncertainty를 특정 짓는지를 보이고 있다.&lt;/li&gt;
&lt;li&gt;우리는 SGLD를 사용한 data augmentation이 likelihood에 대한 underconfidence로 이어지는 정확한 방법을 보여주는데, 이는 data augmentation과 cold posterior간의 경험적 연결을 최종적으로 해결하는 직관에 반하는 결과이다.&lt;/li&gt;
&lt;li&gt;$T &amp;lt; 1$이, 특히 data augmentation에서, $T=1$보다 aleatoric uncertainty에 대한 우리의 믿음을 더 잘 반영하고 있다고 볼 수 있다.&lt;/li&gt;
&lt;li&gt;원래 계산 가능한 Gaussian process classification에 사용된 Dirichlet likelihood의 log-normal 근사치가 어떻게 aleatoric uncertainty에 대한 우리의 믿음을 자연스럽게 반영할 수 있는지를 보여주며, data augmentation에서 처음으로 cold posterir effect를 제거하였다.&lt;/li&gt;
&lt;li&gt;prior가 aleatoric uncertainty에 대한 우리의 믿음을 명시하는데 사용될 수 있다는 것을 보인다.&lt;/li&gt;
&lt;/ol&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/163</guid>
      <comments>https://signing.tistory.com/163#entry163comment</comments>
      <pubDate>Tue, 27 Dec 2022 23:27:28 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 1.Introduction</title>
      <link>https://signing.tistory.com/162</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://signing.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 소개] On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification - 0.Abstract&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;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1.1. &lt;span&gt;Epistemic/Aleatoric Uncertainty&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Epistemic Uncertainty와 Aleatoric Uncertainty에 대한 설명이 나오지만, &lt;a href=&quot;https://signing.tistory.com/61&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;이전 포스팅&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;b&gt;1.2 그림 설명&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;1100&quot; data-origin-height=&quot;761&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6YFKQ/btrTRBznJlG/dsO9DvK5e2bzOM8JY8xT80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6YFKQ/btrTRBznJlG/dsO9DvK5e2bzOM8JY8xT80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6YFKQ/btrTRBznJlG/dsO9DvK5e2bzOM8JY8xT80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6YFKQ%2FbtrTRBznJlG%2FdsO9DvK5e2bzOM8JY8xT80%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;1100&quot; height=&quot;761&quot; data-origin-width=&quot;1100&quot; data-origin-height=&quot;761&quot;/&gt;&lt;/span&gt;&lt;/figure&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;/li&gt;
&lt;li&gt;Gaussian Process Regression(G.P.R.)를 이용해서 모델링 한 것이다.&lt;/li&gt;
&lt;li&gt;(a)는 분산을 1로 높게 설정하여 나타낸 그림이고, 빨간색 점선은 predictive mean, 빨간색 음영된 부분은 predictive distribution의 standard deviation을 나타낸 것이다.&lt;/li&gt;
&lt;li&gt;(b)는 분산을 $10^{-2}$로 매우 낮추어 설정한 그림이고, 파란색 점선은 predictive mean, 파란색 음영된 부분은 predictive distribution의 standard deviation을 나타낸 것이다.&lt;/li&gt;
&lt;li&gt;(c)는 시나리오A와 시나리오B로 classification 문제를 모델링한 그림으로, 원형의 data point와 십자가 data point는 서로 다른 class임을 의미하며, 빨간색 data point들은 잘못 labeling된 data point로 의심하는 상황이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Figure1의 (a)와 (b)는 같은 데이터로 같은 RBF kernel을 이용한 G.P.R. 모델을 학습시킨 그림이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 점은 모델의 분산(noise)을 다르게 적용했다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그에 따라 (a)는 data point들에 fitting되지 않게끔 학습되고, (b)는 거의 fitting하여 학습되었다.&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;한 편, (c)에 대해 2가지 시나리오를 생각할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 시나리오A는 빨간색 data point가 잘못된 labeling(aleatoric uncertainty)되었다고 간주하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그랬을 때, 빨간색 점선대로 classification을 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로 시나리오B는 빨간색 data point가 올바른 label이라고 간주할 때, 파란색 점선으로 classification할 수 있다.&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;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;두 가지 solution은 모두 데이터에 대한 합리적인 설명이며, 우리는 Aleatoric Uncertainty에 대한 우리의 가정을 통합해야만 그에 대한 정보에 입각한 선택을 할 수 있다. 시나리오 A/B처럼..&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;회귀 문제에서는 Gaussian likelihood에서 분산 파라미터를 조절해 쉽게 Aleatoric Uncertainty에 대한 가설을 표현할 수 있었지만, 분류 문제에서는 직접적으로 표현할 길이 없다. &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;위에서 봤던 시나리오를 사용했던 것처럼, 분류 문제에서는 여러 시나리오 중 하나를 선택하면 필연적으로 성능 저하가 나타날 수 밖에 없다.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&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;background-color: #fdfdfd; color: #000000;&quot;&gt;1.3.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;본 논문에서, 우리는 분류 문제에서 Aleatoric Uncertainty에 대한 가설 혹은 믿음을 표현하는 방법을 조사하였다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;섹션4에서는 standard softmax likelihood가 predicted&amp;nbsp; class probability에 대한 Dirichlet likelihood와 동등하다는 것을 보여주며, 분류 문제의 Aleatoric Uncertainty에 대해 직접 추론할 수 있는 메커니즘을 제공한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;이 내용을 기반하여, cold posterior가 Aleatoric Uncertainty에 대한 믿음을 표현하는 자연스러운 방법이라는 것을 보여준다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제5절에서,&amp;nbsp;우리는&amp;nbsp;이론적으로&amp;nbsp;data&amp;nbsp;augmentation이&amp;nbsp;어떻게&amp;nbsp;반직관적으로&amp;nbsp;likelihood를&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1.4&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하면, 우리는 BNN의 분류문제에서 Aleatoric Uncertainty를 명시적으로 특성화하는 것이 어떻게 가능한지, 그리고 베이지안을 이용해 data augmentation을 자연스럽게 수용할 수 있는지 보여준다.&lt;br /&gt;우리는 data augmentation이 likelihood를 부드럽게 하고 CIFAR와 같은 많은 표준 벤치마크는 본질적으로 관찰된 훈련 포인트에 대한 Aleatoric Uncertainty가 없기 때문에 BNN의 cold posterior는 T = 1보다 Aleatoric Uncertainty에 대한 믿음을 더 정직하게 반영한다는 것을 발견했다.&lt;br /&gt;일부&amp;nbsp;논문은&amp;nbsp;cold&amp;nbsp;posterior가&amp;nbsp;BNN&amp;nbsp;분류기에서&amp;nbsp;좋은&amp;nbsp;성능을&amp;nbsp;제공할&amp;nbsp;수&amp;nbsp;있다고&amp;nbsp;언급하지만,&amp;nbsp;우리는&amp;nbsp;cold&amp;nbsp;posterior가&amp;nbsp;필요하지&amp;nbsp;않다는&amp;nbsp;것을&amp;nbsp;보여준다.&amp;nbsp;-&amp;nbsp;Aleatoric&amp;nbsp;Uncertainty에&amp;nbsp;대한&amp;nbsp;우리의&amp;nbsp;믿음을&amp;nbsp;반영할&amp;nbsp;수&amp;nbsp;있는&amp;nbsp;likelihood에&amp;nbsp;대한&amp;nbsp;간단한&amp;nbsp;수정은&amp;nbsp;비슷한&amp;nbsp;성능을&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>개인 공부 정리/Bayesian</category>
      <category>aleatoric</category>
      <category>augmentation</category>
      <category>bayesian</category>
      <category>BnN</category>
      <category>DATA</category>
      <category>uncertainty</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/162</guid>
      <comments>https://signing.tistory.com/162#entry162comment</comments>
      <pubDate>Sat, 17 Dec 2022 18:38:37 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] On Uncertainty, Tempering, and Data Augmentation inBayesian Classification - 0.Abstract</title>
      <link>https://signing.tistory.com/161</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2203.16481&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2203.16481&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1671259180437&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification&quot; data-og-description=&quot;Aleatoric uncertainty captures the inherent randomness of the data, such as measurement noise. In Bayesian regression, we often use a Gaussian observation model, where we control the level of aleatoric uncertainty with a noise variance parameter. By contra&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2203.16481&quot; data-og-url=&quot;https://arxiv.org/abs/2203.16481v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/duyLda/hyQWBfL3Ae/QcrMzOO2P63sVj1kgSd2X1/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2203.16481&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2203.16481&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/duyLda/hyQWBfL3Ae/QcrMzOO2P63sVj1kgSd2X1/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;On Uncertainty, Tempering, and Data Augmentation in Bayesian Classification&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Aleatoric uncertainty captures the inherent randomness of the data, such as measurement noise. In Bayesian regression, we often use a Gaussian observation model, where we control the level of aleatoric uncertainty with a noise variance parameter. By contra&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;cold posterior에 대한 트렌트를 찾다가 발견한 논문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://nips.cc/Conferences/2022/ScheduleMultitrack?event=52923&quot;&gt;NIPS2022&lt;/a&gt;에 소개된 논문으로, 제목부터 심상치 않고 cold posterior를 실용적으로 사용할 수 있는 단서가 될 것으로 생각된다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;Aleatoric uncertainty captures the inherent randomness of the data, such as measurement noise.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Aleatoric uncertainty는 데이터에 녹아져 있는 randomness(예를 들면, 데이터 측정할 때의 noise)를 잡아낸다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt; In Bayesian regression, we often use a Gaussian observation model, where we control the level of aleatoric uncertainty with a noise variance parameter.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;베이지안 회귀에서, 우리는 종종 &lt;span style=&quot;color: #000000;&quot;&gt;분산 parameter와 같이 Aleatoric uncertainty의 수준을 컨트롤 할 수 있는 &lt;/span&gt;Gaussian 관측모델을 사용하곤 한다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;By contrast, for Bayesian classification we use a categorical distribution with no mechanism to represent our beliefs about aleatoric uncertainty. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이와 반대로, 베이지안 분류모델에서는, 우리는 Aleatoric uncertainty를 잘 표현되지 않은 categorical 분포를 사용한다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;Our work shows that explicitly accounting for aleatoric uncertainty significantly improves the performance of Bayesian neural networks. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;본 논문에서는 aleatoric uncertainty를 명시적으로 보여줌으로써 BNN의 성능을 크게 향상 시켜주는 것을 보여주고 있다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;We note that many standard benchmarks, such as CIFAR, have essentially no aleatoric uncertainty. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;많은 standard benchmark(예를 들어, &lt;span style=&quot;color: #000000;&quot;&gt;CIFAR&lt;/span&gt;)들은 원래 aleatoric uncertainty가 없다는 것을 알아야 한다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;Moreover, we show data augmentation in approximate inference has the effect of softening the likelihood, leading to underconfidence and profoundly misrepresenting our honest beliefs about aleatoric uncertainty. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;게다가, 본 논문에서는 approximate inference에서 data augmentation이 likelihood를 약화시키는 효과가 있고, 이는 신뢰할 수 어려운 결과로 이어질 뿐만 아니라, aleatoric uncertainty에 대해 우리가 갖고 있던 지식이 잘못된 것임을 보여준다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;Accordingly, we find that a cold posterior, tempered by a power greater than one, often more honestly reflects our beliefs about aleatoric uncertainty than no tempering -- providing an explicit link between data augmentation and cold posteriors.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그에 따라, 본 논문에서는 1보다 큰 power에 의한 tempered된 cold posterior가 우리가 갖고있는 aleatoric uncertaitnty에 대한 지식을 &lt;span style=&quot;color: #000000;&quot;&gt;tempered되지 않은 것보다&amp;nbsp;&lt;/span&gt;더 잘 반영한다는 것을 보여주고 있다. -- &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이것은 data augmentation과 cold posterior 사이에 명확한 연관이 있다는 것을 의미한다.&lt;/span&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 style=&quot;background-color: #ffffff; color: #000000;&quot;&gt; We show that we can match or exceed the performance of posterior tempering by using a Dirichlet observation model, where we explicitly control the level of aleatoric uncertainty, without any need for tempering&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이 논문에서는 Dirichlet 관측모델을 이용함으로써 posterior tempering의 성능을 그 이상으로 이끌어내고 있고, 여기에 tempering의 어떠한 필요성 없이 aleatoric uncertainty의 수준을 명확하게 컨트롤할 수 있음을 보여주고 있다.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2008.00029&quot;&gt;https://arxiv.org/abs/2008.00029&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1671262127452&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Cold Posteriors and Aleatoric Uncertainty&quot; data-og-description=&quot;Recent work has observed that one can outperform exact inference in Bayesian neural networks by tuning the &amp;quot;temperature&amp;quot; of the posterior on a validation set (the &amp;quot;cold posterior&amp;quot; effect). To help interpret this phenomenon, we argue that commonly used prio&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2008.00029&quot; data-og-url=&quot;https://arxiv.org/abs/2008.00029v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/BoNLq/hyQWEp26uE/2aZ2wiuk9LBKDP73pp6Vz1/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2008.00029&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2008.00029&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/BoNLq/hyQWEp26uE/2aZ2wiuk9LBKDP73pp6Vz1/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Cold Posteriors and Aleatoric Uncertainty&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Recent work has observed that one can outperform exact inference in Bayesian neural networks by tuning the &quot;temperature&quot; of the posterior on a validation set (the &quot;cold posterior&quot; effect). To help interpret this phenomenon, we argue that commonly used prio&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;과거 포스팅&lt;/a&gt;에서도 한 번 다뤘던 내용인데,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;위 논문에서도 cold posterior와 Aleatoric uncertainty에 대한 내용을 담고 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5장~6장 정도의 짧은 내용으로 한 번 리뷰 했던 것 같은데, 포스팅이 보이지 않네ㅠ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기회되면 해당 논문도 리뷰해봐야겠다.&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <category>bayesian</category>
      <category>BnN</category>
      <category>coldposterior</category>
      <category>Posterior</category>
      <category>PYTHON</category>
      <category>pytorch</category>
      <category>uncertainty</category>
      <category>베이지안</category>
      <category>불확실성</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/161</guid>
      <comments>https://signing.tistory.com/161#entry161comment</comments>
      <pubDate>Sat, 17 Dec 2022 16:35:17 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Cold Posteriors through PAC-Bayes</title>
      <link>https://signing.tistory.com/160</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2206.11173v1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2206.11173v1&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;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PAC-Bayes라는 개념을 몰라서 새로 찾아봐야 하지만, cold posterior와 PAC-Bayes가 비슷한 목표를 추구한다고 하니 관심이 갖게한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;We investigate the cold posterior effect through the lens of PAC-Bayes generalization bounds.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;우리는 PAC-Bayes generalization bounds 렌즈를 통해 cold posterior effect를 조사한다&lt;/span&gt;.&lt;/span&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;We argue that in the non-asymptotic setting, when the number of training samples is (relatively) small, discussions of the cold posterior effect should take into account that approximate Bayesian inference does not readily provide guarantees of performance on out-of-sample data.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #f6e199; color: #000000;&quot;&gt;우리는 비점근적 설정에서 훈련 샘플 수가 (상대적으로) 적을 때, 대략적인 베이지안 추론이 out-of-sample에 대한 성능을 쉽게 보장하지 않는다는 것을 고려해야 한다고 주장한다.&lt;/span&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;Instead, out-of-sample error is better described through a generalization bound.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #f6e199; color: #000000;&quot;&gt;대신 out-of-sample error는 generalization bound를 통해 더 잘 설명된다.&lt;/span&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;In this context, we explore the connections between the ELBO objective from variational inference and the PAC-Bayes objectives.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이러한 맥락에서, 우리는 Variational Inference에서 ELBO 목표와 PAC-Bayes 목표 사이의 연관성을 탐구한다.&lt;/span&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;We note that, while the ELBO and PAC-Bayes objectives are similar, the latter objectives naturally contain a temperature parameter &amp;lambda; which is not restricted to be &amp;lambda;=1.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;우리는 ELBO와 PAC-Bayes 목표가 유사하지만, PAC-Bayes의 목표는 자연스럽게 &amp;lambda;=1로 제한되지 않는 온도 매개 변수 &amp;gamma;를 포함한다는 것에 주목한다&lt;/span&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;For both regression and classification tasks, in the case of isotropic Laplace approximations to the posterior, we show how this PAC-Bayesian interpretation of the temperature parameter captures the cold posterior effect.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;회귀 및 분류 작업 모두에서 posterior에 대한 isotropic Laplace approximations의 경우 온도 매개 변수(&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gamma;&lt;/span&gt;)의 PAC-Bayesian 해석이 cold posterior effect를 어떻게 포착하는지 보여준다.&lt;/span&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;&amp;nbsp;&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <category>bayesian</category>
      <category>coldposterioreffect</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/160</guid>
      <comments>https://signing.tistory.com/160#entry160comment</comments>
      <pubDate>Sun, 6 Nov 2022 20:29:11 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] New Year Chaos</title>
      <link>https://signing.tistory.com/157</link>
      <description>&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;750&quot; data-origin-height=&quot;757&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r7HyR/btrF37d3YMO/SxKWHCd3JVAhj2NkbIrQS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r7HyR/btrF37d3YMO/SxKWHCd3JVAhj2NkbIrQS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r7HyR/btrF37d3YMO/SxKWHCd3JVAhj2NkbIrQS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr7HyR%2FbtrF37d3YMO%2FSxKWHCd3JVAhj2NkbIrQS0%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;750&quot; height=&quot;757&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;757&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;754&quot; data-origin-height=&quot;869&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbyNTr/btrF6Kopkjn/PGn9eKm81zKpCkvfsGo1JK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbyNTr/btrF6Kopkjn/PGn9eKm81zKpCkvfsGo1JK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbyNTr/btrF6Kopkjn/PGn9eKm81zKpCkvfsGo1JK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbyNTr%2FbtrF6Kopkjn%2FPGn9eKm81zKpCkvfsGo1JK%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;754&quot; height=&quot;869&quot; data-origin-width=&quot;754&quot; data-origin-height=&quot;869&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하면, [1,2,3, ... , n] 인 list에서 주어지는 list로 변환하려면 몇 번의 swap이 있었는지 반환하거나, 적어도 하나의 원소라도 3번 이상의 swap이 발생하면, &quot;Too Chaostic&quot;을 반환한다.&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;pre id=&quot;code_1656509440037&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# def minimumBribes(q):
#     nq = len(q)
#     raw = range(1, nq+1)
#     move_list = []
# 
#     for i in range(nq):
#         ri = raw.index(q[i])
#         move_list.append(ri - i)
#     print(move_list)
#     if max(move_list) &amp;gt; 2:
#         print(&quot;Too chaotic&quot;)
#     else:
#         print(sum([m for m in move_list if m &amp;gt; 0]))


def minimumBribes(Q):
    moves = 0

    Q = [P - 1 for P in Q]
    for i, P in enumerate(Q):
        if P - i &amp;gt; 2:
            print(&quot;Too chaotic&quot;)
            return

        for j in range(max(P - 1, 0), i):
            if Q[j] &amp;gt; P:
                moves += 1
    print(moves)


if __name__ == '__main__':
    q = [1, 2, 5, 3, 7, 8, 6, 4]

    minimumBribes(q)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해석&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;위에 주석처리 한 것이 내 풀이인데, 좋은 접근은 아니었다.&lt;/li&gt;
&lt;li&gt;주석처리 하지 않은 minimumBribes 함수는 커뮤니티에서 가져온 코드이다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <category>PYTHON</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/157</guid>
      <comments>https://signing.tistory.com/157#entry157comment</comments>
      <pubDate>Wed, 29 Jun 2022 22:31:59 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] Arrays: Left Rotation</title>
      <link>https://signing.tistory.com/156</link>
      <description>&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;702&quot; data-origin-height=&quot;652&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bm2BJ5/btrF4dMeKbj/JFoQN4hkGvQLxiXXm65pf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bm2BJ5/btrF4dMeKbj/JFoQN4hkGvQLxiXXm65pf1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bm2BJ5/btrF4dMeKbj/JFoQN4hkGvQLxiXXm65pf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbm2BJ5%2FbtrF4dMeKbj%2FJFoQN4hkGvQLxiXXm65pf1%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;702&quot; height=&quot;652&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;652&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;761&quot; data-origin-height=&quot;629&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lFsTL/btrF5a2j8qk/QAd9hV99YdCkXDYQcc3I5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lFsTL/btrF5a2j8qk/QAd9hV99YdCkXDYQcc3I5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lFsTL/btrF5a2j8qk/QAd9hV99YdCkXDYQcc3I5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlFsTL%2FbtrF5a2j8qk%2FQAd9hV99YdCkXDYQcc3I5k%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;761&quot; height=&quot;629&quot; data-origin-width=&quot;761&quot; data-origin-height=&quot;629&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하자면, left rotation operation은 n-size의 array를 왼쪽으로 d만큼 돌리는 연산이다.&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;pre id=&quot;code_1656504866307&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import collections as co

def rotLeft(a, d):
    dq = co.deque(a)
    dq.rotate(-d)

    return dq

if __name__ == '__main__':
    n = 5
    d = 4
    a = [1,2,3,4,5]

    result = rotLeft(a, d)

    print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해설&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;collections.deque 두 번 쓰세요~&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/156</guid>
      <comments>https://signing.tistory.com/156#entry156comment</comments>
      <pubDate>Wed, 29 Jun 2022 21:15:02 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] 2D Array</title>
      <link>https://signing.tistory.com/155</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;문제&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nFGpN/btrF5Heqd8B/6cMrTE0cwQcXgKF67xUY0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nFGpN/btrF5Heqd8B/6cMrTE0cwQcXgKF67xUY0k/img.png&quot; data-origin-width=&quot;716&quot; data-origin-height=&quot;573&quot; data-is-animation=&quot;false&quot; style=&quot;width: 56.1626%; margin-right: 10px;&quot; data-widthpercent=&quot;56.82&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nFGpN/btrF5Heqd8B/6cMrTE0cwQcXgKF67xUY0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnFGpN%2FbtrF5Heqd8B%2F6cMrTE0cwQcXgKF67xUY0k%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;573&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCj6kg/btrF5IYIfAd/k5RFkG7kep7691vLqppSGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCj6kg/btrF5IYIfAd/k5RFkG7kep7691vLqppSGK/img.png&quot; data-origin-width=&quot;714&quot; data-origin-height=&quot;752&quot; data-is-animation=&quot;false&quot; style=&quot;width: 42.6746%;&quot; data-widthpercent=&quot;43.18&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCj6kg/btrF5IYIfAd/k5RFkG7kep7691vLqppSGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCj6kg%2FbtrF5IYIfAd%2Fk5RFkG7kep7691vLqppSGK%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;714&quot; height=&quot;752&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ww8NG/btrF3Z8sS8U/5C5qktZiJQv3kv7k5A0PA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ww8NG/btrF3Z8sS8U/5C5qktZiJQv3kv7k5A0PA0/img.png&quot; data-origin-width=&quot;715&quot; data-origin-height=&quot;811&quot; data-is-animation=&quot;false&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ww8NG/btrF3Z8sS8U/5C5qktZiJQv3kv7k5A0PA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fww8NG%2FbtrF3Z8sS8U%2F5C5qktZiJQv3kv7k5A0PA0%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;715&quot; height=&quot;811&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TQwKu/btrF5bth2Eu/Kl8LScITkgzuxqIt2nFLvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TQwKu/btrF5bth2Eu/Kl8LScITkgzuxqIt2nFLvK/img.png&quot; data-origin-width=&quot;715&quot; data-origin-height=&quot;811&quot; data-is-animation=&quot;false&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TQwKu/btrF5bth2Eu/Kl8LScITkgzuxqIt2nFLvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTQwKu%2FbtrF5bth2Eu%2FKl8LScITkgzuxqIt2nFLvK%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;715&quot; height=&quot;811&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하자면, 6 by 6 2차원 행렬이 주어질때, 3 by 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;/p&gt;
&lt;pre id=&quot;code_1656503833331&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def hourglassSum(arr):
    top = -90
    for r in range(1,5):
        tmp = -90
        for c in range(1,5):
            tmp = max(tmp, arr[r][c] + sum(arr[r-1][c-1:c+2]) + sum(arr[r+1][c-1:c+2]))
        top = max(top, tmp)

    return top

if __name__ == '__main__':
    arr = [[1,1,1,0,0,0],
           [0,1,0,0,0,0],
           [1,1,1,0,0,0],
           [0,0,2,4,4,0],
           [0,0,0,2,0,0],
           [0,0,1,2,4,0]]

    result = hourglassSum(arr)

    print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해설&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;모래시계의 중심으로 행렬을 순회한다.&lt;/li&gt;
&lt;li&gt;모래시계의 윗부분과 아랫부분은 slicing으로 처리하여 더해준다.&lt;/li&gt;
&lt;li&gt;모든 모래시계들을 array에 담지 않고, 가장 큰 값만 반환하면 되기 때문에, 매 loop마다 가장 큰 값을 가려낸다.&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/155</guid>
      <comments>https://signing.tistory.com/155#entry155comment</comments>
      <pubDate>Wed, 29 Jun 2022 20:12:58 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] Repeated String</title>
      <link>https://signing.tistory.com/154</link>
      <description>&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;741&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/co42vV/btrFXXcvdfH/NhvMMkp4JKC8bnsBaZbt50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/co42vV/btrFXXcvdfH/NhvMMkp4JKC8bnsBaZbt50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/co42vV/btrFXXcvdfH/NhvMMkp4JKC8bnsBaZbt50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fco42vV%2FbtrFXXcvdfH%2FNhvMMkp4JKC8bnsBaZbt50%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;741&quot; height=&quot;658&quot; data-origin-width=&quot;741&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하면, 문자열 s가 주어졌을 때, s가 무한히 반복되는 상황이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때, 처음부터 n번째까지의 자리까지 문자열에서 a의 개수를 반환하는 문제이다.&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;pre id=&quot;code_1656431602547&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# import numpy as np
import collections as co
&quot;&quot;&quot;
- s : 무한히 반복될 문자열
- n : n번째 자리 수
&quot;&quot;&quot;

# method 1 : co.Counter()
# nains = dict(co.Counter(sl).most_common())['a']
# nainsubs = dict(co.Counter(s[:rrep]).most_common())['a']

# method 2 : for loop count
def repeatedString(s, n):
    sl = list(s)
    ns = len(sl)

    nrep = n // ns
    rrep = n % ns
    print(nrep, rrep)

    nains = 0
    for a in sl:
        if a == &quot;a&quot;: nains += 1

    nainsubs = 0
    for a in list(s[:rrep]):
        if a == &quot;a&quot;: nainsubs += 1

    print(nains, nainsubs)

    res = nrep * nains + rrep * nainsubs

    return res

if __name__ == '__main__':

    # s = &quot;epsxyyflvrrrxzvnoenvpegvuonodjoxfwdmcvwctmekpsnamchznsoxaklzjgrqruyzavshfbmuhdwwmpbkwcuomqhiyvuztwvq&quot;
    # n = 549382313570
    s = &quot;ojowrdcpavatfacuunxycyrmpbkvaxyrsgquwehhurnicgicmrpmgegftjszgvsgqavcrvdtsxlkxjpqtlnkjuyraknwxmnthfpt&quot;
    n = 685118368975

    # r = 16481469408
    # r = 41107102139
    result = repeatedString(s, n)

    print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해설&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;23개의 test case 중 12개나 틀렸다.&lt;/li&gt;
&lt;li&gt;로직상 문제는 없는 거 같은데 큰 수를 다룸에 있어 뭐낙 오류가 나는 느낌이다.&lt;/li&gt;
&lt;li&gt;원인 아직 파악 못함ㅠㅠ&lt;/li&gt;
&lt;/ul&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;pre id=&quot;code_1656501270215&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&quot;&quot;&quot;
- s : 무한히 반복될 문자열
- n : n번째 자리 수
&quot;&quot;&quot;

def repeatedString(s, n):
    res = s.count(&quot;a&quot;) * (n // len(s)) + s[:n % len(s)].count(&quot;a&quot;)
    
    return res

if __name__ == '__main__':

    s = &quot;ojowrdcpavatfacuunxycyrmpbkvaxyrsgquwehhurnicgicmrpmgegftjszgvsgqavcrvdtsxlkxjpqtlnkjuyraknwxmnthfpt&quot;
    n = 685118368975

    result = repeatedString(s, n)

    print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;충격적인 정답을 보았다.
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;우선, python의 기능을 잘 활용했다는 점&lt;/li&gt;
&lt;li&gt;나는 10줄이 넘는 코드를 단 한 줄로 줄였다는 점&lt;/li&gt;
&lt;li&gt;그럼에도 모든 test case를 맞췄다는 점&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;정말 한 수 배웠다..&lt;/li&gt;
&lt;li&gt;어디서 잘못되었는지 확인했다. 이런걸로 틀리다니ㅠ 아직 멀긴 멀었다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <category>PYTHON</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/154</guid>
      <comments>https://signing.tistory.com/154#entry154comment</comments>
      <pubDate>Wed, 29 Jun 2022 00:53:26 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] Jumping on the Clouds</title>
      <link>https://signing.tistory.com/153</link>
      <description>&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;703&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bex7HE/btrFY85r9be/J4NPbtIoqixTKMxrc0mgfK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bex7HE/btrFY85r9be/J4NPbtIoqixTKMxrc0mgfK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bex7HE/btrFY85r9be/J4NPbtIoqixTKMxrc0mgfK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbex7HE%2FbtrFY85r9be%2FJ4NPbtIoqixTKMxrc0mgfK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;703&quot; height=&quot;745&quot; data-origin-width=&quot;703&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요약하자면, 구름을 밟고 건너가는 게임이 있는데, 오직 현재 적란운보다 1 또는 2만큼 건너 뛸 수 있으며, 적란운만 밟을 수 있고, 뇌우는 피해야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시작 위치에서 마지막 구름까지 점프하는 데 필요한 최소 점프 횟수를 결정해야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;0은 밟을 수 있는 구름, 1은 피해야 하는 구름인데, 위 주어진 c를 보면 2가지 방법이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 0,2,4,6 번째 index를 가진 원소를 밟고 건널 수 있고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2) 0,2,3,4,6 번째 index를 가진 원소를 밟고 건널 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1번은 3번의 step, 2번은 4번의 step을 사용하였으므로, 반환 값은 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;/p&gt;
&lt;pre id=&quot;code_1656430710239&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# import numpy as np
# import collections as co
&quot;&quot;&quot;
- n : 총 구름 수
- c : 구름 list
&quot;&quot;&quot;

def jumpingOnClouds(c):
    n = len(c)
    dp = [0] * n
    dp[0] = 0
    dp[1] = -1 if c[1] == 0 else 0
    # dp[2] = -1

    if n == 2:
        return 1

    for i in range(2, n):
        if c[i] == 1:
            dp[i] = dp[i - 1]
        elif c[i] + c[i-1] + c[i-2] == 0:         # all zero
            dp[i] = dp[i-2] - 1
        else:
            dp[i] = dp[i-1] - 1

    return -min(dp)

if __name__ == '__main__':

    n = 7
    c = [0, 0, 1, 0, 0, 1, 0]
    c2 = [0, 0, 0, 1, 0, 0]
    c3 = [0, 1, 0, 0, 1, 0]


    print(jumpingOnClouds(c))
    print(jumpingOnClouds(c2))
    print(jumpingOnClouds(c3))&lt;/code&gt;&lt;/pre&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;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;쉬운 다이나믹 프로그래밍으로 풀면 된다.(쉬운걸 왜 1시간 넘게 풀었는지,,ㅠ)&lt;/li&gt;
&lt;li&gt;케이스만 잘 나눠서 풀면 됨&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <category>dp</category>
      <category>dynamicProgramming</category>
      <category>PYTHON</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/153</guid>
      <comments>https://signing.tistory.com/153#entry153comment</comments>
      <pubDate>Tue, 28 Jun 2022 21:50:53 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] Counting Valleys</title>
      <link>https://signing.tistory.com/152</link>
      <description>&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;714&quot; data-origin-height=&quot;786&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvsqjw/btrFXXDp6Ym/iHwESfhgypXzlAcPuknTLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvsqjw/btrFXXDp6Ym/iHwESfhgypXzlAcPuknTLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvsqjw/btrFXXDp6Ym/iHwESfhgypXzlAcPuknTLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbvsqjw%2FbtrFXXDp6Ym%2FiHwESfhgypXzlAcPuknTLK%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;714&quot; height=&quot;786&quot; data-origin-width=&quot;714&quot; data-origin-height=&quot;786&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 요약하자면, path로 주어지는 문자열이 있는데, U = Up-hill(+1), D = Down-hill(-1)이다.&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;이때 계곡의 갯수를 반환하면 된다.&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;pre id=&quot;code_1656419279732&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# import numpy as np
import collections as co
&quot;&quot;&quot;
- steps : 총 걸음 수
- path : 걸음의 자취 문자열
&quot;&quot;&quot;

def countingValleys(steps, path):
    pl = list(path)
    res = 0
    stus = 0

    cumsum = co.deque([])

    for i in range(steps):
        hike = pl[i]

        if hike == 'U':     # up-hill
            stus += 1
        else:               # down-hill
            stus -= 1
        cumsum.append(stus)
        print(cumsum)

        if (i &amp;gt; 0) and (stus == 0) and (cumsum[i-1] &amp;lt; 0):
            res += 1

    return res

if __name__ == '__main__':

    steps = 8
    path = &quot;UDDDUDUU&quot;

    result = countingValleys(steps, path)

    print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;풀이해설&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;path 문자열을 list로 변환&lt;/li&gt;
&lt;li&gt;path list를 순회하며, 누적 합을 cumsum list에 넣는다.&lt;/li&gt;
&lt;li&gt;cumsum의 이전 원소값이 음수이고, 현재 원소값이 0이면 계곡으로 간주하여 +1씩 결과값을 더해 나감&amp;nbsp;&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <category>hackerrank</category>
      <category>PYTHON</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/152</guid>
      <comments>https://signing.tistory.com/152#entry152comment</comments>
      <pubDate>Tue, 28 Jun 2022 21:30:23 +0900</pubDate>
    </item>
    <item>
      <title>[HackerRank] 양말 짝 맞추기</title>
      <link>https://signing.tistory.com/151</link>
      <description>&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;730&quot; data-origin-height=&quot;728&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dsYOyI/btrFZkLhBdx/ZwRRetGtVrcXkK9AkFQyTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dsYOyI/btrFZkLhBdx/ZwRRetGtVrcXkK9AkFQyTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dsYOyI/btrFZkLhBdx/ZwRRetGtVrcXkK9AkFQyTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdsYOyI%2FbtrFZkLhBdx%2FZwRRetGtVrcXkK9AkFQyTk%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;730&quot; height=&quot;728&quot; data-origin-width=&quot;730&quot; data-origin-height=&quot;728&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드&lt;/p&gt;
&lt;pre id=&quot;code_1656417551730&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# import numpy as np
import collections as co
&quot;&quot;&quot;
- n : 주어지는 양말의 갯수
- ar : 실제 양말의 색상과 양말들
&quot;&quot;&quot;

# method 1 : deque
def sockMerchant(n, ar):
    dq = co.deque([])
    ndq = 0
    res = 0
    append_flag = False

    for i in range(n):
        if ndq == 0:                      # deque init
            dq.append(ar[i])
            ndq += 1
            print(dq)
        else:
            for j in range(ndq):
                if dq[j] == ar[i]:      # 양말 짝을 맞췄을 때
                    res += 1
                    ndq -= 1
                    dq.remove(ar[i])
                    append_flag = True
                    print(dq)
                    break
            if append_flag:
                append_flag = False
                continue
            dq.append(ar[i])
            ndq += 1
            print(dq)

    return res



# method 2 : sorted list &amp;amp; binary search



if __name__ == '__main__':

    n = 9
    ar = [10, 20, 20, 10, 10, 30, 50, 10, 20]


    result = sockMerchant(n, ar)

    print(result)&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;해설 :&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;stack과 queue의 합친 자료구조인 collections package의 deque를 이용&lt;/li&gt;
&lt;li&gt;일종의 컴파일러의 괄호짝 맞추기 느낌으로 풀음&lt;/li&gt;
&lt;li&gt;deque list에 양말 list의 값을 하나씩 append하면서 deque list를 순회하면서 양말 짝을 찾을 수 있는지를 확인.&lt;/li&gt;
&lt;li&gt;deque를 이용한 풀이는 $ O(n^2) $의 시간 복잡도를 소모하기 때문에 time-out을 예상했지만, 이상하게 성공.&lt;/li&gt;
&lt;li&gt;아마 주어진 수와 list크기가 크지 않아서인 것 같다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째로 고안한 방법은&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;sorted list를 만들어서 값을 하나씩 넣을 때마다, sort를 시킨다.&lt;/li&gt;
&lt;li&gt;이후 binary search로 해당 값을 찾아내고, 해당 값을 제거하는 알고리즘을 생각했다.&lt;/li&gt;
&lt;li&gt;해보진 않았지만, 첫번째 풀이보다는 시간 복잡도가 낮을 것 같았다.&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>Python/알고리즘(코딩테스트)</category>
      <category>PYTHON</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/151</guid>
      <comments>https://signing.tistory.com/151#entry151comment</comments>
      <pubDate>Tue, 28 Jun 2022 21:06:07 +0900</pubDate>
    </item>
    <item>
      <title>백준 2293번</title>
      <link>https://signing.tistory.com/150</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;참고 : &lt;a href=&quot;https://seongonion.tistory.com/108&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://seongonion.tistory.com/108&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;pre id=&quot;code_1656248894790&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# import numpy as np
# import collections as co

def getWays(n, c):
    # rc = [i for i in c if i &amp;lt;= n]
    &quot;&quot;&quot;
    DP 문제는 결과값에 대한 분할로 생각하면 된다.
    DP문제에서는 주로 list를 사용하며, list의 마지막 값이 최종 결과값으로 산출된다.
    따라서 index가 순서로 여기고, list[index]가 index에 대한 결과값으로 생각하고 풀어보자.
    
    0&amp;lt;i&amp;lt;n일때, dp[i]는 i라는 수에 대한 경우의 수(정답)
    dp[n]이 최종 정답
    &quot;&quot;&quot;
    dp = [0 for i in range(n+1)]        #
    dp[0] = 1               # dp[0]은 동전 1개만 사용했을 때
    print(dp)

    for coin in c:
        for i in range(coin, n+1):
            tmp = dp[i - coin]
            dp[i] += tmp
            print(dp)

    return dp


if __name__ == '__main__':
    # n = int(first_multiple_input[0])
    # m = int(first_multiple_input[1])
    # c = list(map(int, input().rstrip().split()))

    n = 4
    c = [1,2,3]

    ways = getWays(n, c)

    print(ways)&lt;/code&gt;&lt;/pre&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>Python/알고리즘(코딩테스트)</category>
      <category>PYTHON</category>
      <category>백준</category>
      <category>알고리즘</category>
      <category>코딩테스트</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/150</guid>
      <comments>https://signing.tistory.com/150#entry150comment</comments>
      <pubDate>Sun, 26 Jun 2022 22:08:51 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] (정리중) Stochastic gradient Markov chain Monte Carlo - 2.Background</title>
      <link>https://signing.tistory.com/147</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/132&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 소개] Stochastic gradient Markov chain Monte Carlo&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/146&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Stochastic gradient Markov chain Monte Carlo - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&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;b&gt;2. Langevin-based Stochastic Gradient MCMC&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;이번 절에서는 SG-MCMC의 기초로서 Langevin diffusion과 discrete-time&amp;nbsp;approximation를 소개한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;또한 posterior approximation에 대한 이론적 오류 한계와 Gaussian에서 Stochastic gradient Langevin dynamics의 예시를 제시한다.&lt;/span&gt;&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;2.1 The Langevin Diffusion&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;우리는 우리가 원하는 target density $ \pi(\theta) $로부터 sampling하기를 원한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;($\theta$는 d-dim이고, unnormalized density이다.)&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;1077&quot; data-origin-height=&quot;60&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cWHkO3/btrq0v1lFyU/rKW7qUKCk4sasjw6aKhUi0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cWHkO3/btrq0v1lFyU/rKW7qUKCk4sasjw6aKhUi0/img.png&quot; data-alt=&quot;Target density&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cWHkO3/btrq0v1lFyU/rKW7qUKCk4sasjw6aKhUi0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcWHkO3%2Fbtrq0v1lFyU%2FrKW7qUKCk4sasjw6aKhUi0%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;1077&quot; height=&quot;60&quot; data-origin-width=&quot;1077&quot; data-origin-height=&quot;60&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Target density&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;(1)번 식은 target density를 나타낸 것인데, 그 중에서 $U(\theta)$ 함수를&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;i&gt;potential function&lt;/i&gt;이라고 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;이 potential function은 연속이며, 미분가능한 함수이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;본 논문에서 이 함수가 가장 중요하다 해도 과언이 아니라고 하니 잘 살펴보자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;(cold posterior에서도 핵심이 되는 함수이다.)&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;일단, 빅데이터를 위한 Bayesian Analysis에서 착안을 했는데, potential이라고 하는 것은 data point를 모두 합한 것이라고 정의할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, 우리가 independent한 data인 $y_1, y_2, ... y_N$을 가지고 있다면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$ \pi(\theta) ~ \propto ~ p(\theta) \prod_{i=1}^N f(y_i|\theta) $$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라는 $\pi(\theta)$에 대한 수식을 정의할 수 있는데, 이 때 $p(\theta)$는 prior density이고, $f(y_i|\theta)$는 $i$번째 데이터에 대한 likelihood이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 세팅했다면 우리는 아래와 같은 식을 유도할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$ U(\theta) = \sum_{i=1}^N U_i(\theta) = \sum_{i=1}^N (-log f(y_i|\theta) - (1/N)log p(\theta)) $$&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;우리가 원하는 target 분포를 어쨌든 정의하긴 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 직접적인 분포를 구하기 어려우니 일단 target density로부터 sampling을 해야할텐데, 그 중에 한 가지 방법이 바로 $\pi$를 고정된 distribution이라고 가정하고 &lt;b&gt;stochastic process&lt;/b&gt;를 시뮬레이션하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 process로 sampling을 꽤 오래한다고 하면, 처음 우리가 generate했던 sample들은 버린다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bifnqC/btrrcvz5GsS/Riavbb2lENHK6cqu5OtBCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bifnqC/btrrcvz5GsS/Riavbb2lENHK6cqu5OtBCk/img.png&quot; data-alt=&quot;출처 :&amp;amp;amp;amp;nbsp;https://bookdown.org/marklhc/notes_bookdown/markov-chain-monte-carlo.html&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bifnqC/btrrcvz5GsS/Riavbb2lENHK6cqu5OtBCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbifnqC%2Fbtrrcvz5GsS%2FRiavbb2lENHK6cqu5OtBCk%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;417&quot; height=&quot;177&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 :&amp;amp;amp;nbsp;https://bookdown.org/marklhc/notes_bookdown/markov-chain-monte-carlo.html&lt;/figcaption&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;x축은 iteration이라고 생각하면 될 것 같고, y축은 stochastic process를 시뮬레이션하면서 얻은 sample point라고 해보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 위에서 말했던 처음 generate했던 sample을 버린다는 말은 그림에서 앞에 회색으로 음영된 부분을 버린다는 것을 의미하고, 이렇게 앞의 sample을 버리는 행위를 `&lt;b&gt;burn-in&lt;/b&gt;` 이라고 표현한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;burn-in 하는 이유는 일단 sampling하면서 처음 sample들은 원하는 분포를 찾아가는 과정에서 나온 것이므로, 많은 error가 존재할 가능성이 크기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;버리고 난 뒤 나머지 뒤의 sample들은 $\pi$를 근사하는 것으로 여길 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 approximation한 것의 quality는 얼마나 빠르게 고정된(더 이상 변하지 않는) 분포로 수렴하는가에서 결정된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 이 말은 위 사진에서 노란색 음영된 부분처럼 일정 분포로 얼마나 빠르게 수렴하는가를 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지는 흔히 MCMC나 Metropolis와 같은 sampling 방법론에서 흔히 볼 수 있는 것이니 쉽게 넘어갈 수 있다.&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;a href=&quot;https://blog.naver.com/yunjh7024/220871293114&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;참고 링크1&lt;/a&gt;, &lt;a href=&quot;https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&amp;amp;blogId=yunjh7024&amp;amp;logNo=220871909999&quot;&gt;참고 링크2&lt;/a&gt;에 자세히 나와있지만 낯선 개념과 용어들이 즐비하다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;Stochastic Process&lt;br /&gt;&lt;/b&gt;번역하면 &quot;확률 과정&quot;으로 말 할 수 있고, Dropout as a Bayesian 논문 리뷰에서도 다뤘던 random process와 닮은 구석이 있다.&lt;br /&gt;기본적으로 Stochastic Process는 시간을 index로 두고 있고, 시간에 따라 분포가 변경되는 것을 의미한다.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Brownian Motion&lt;/b&gt;&lt;br /&gt;경제학, 특히, 주식과 같은 현상을 두고 볼 때 사용되는 개념으로, 물리학에서 아이슈타인의 업적인 브라운 운동과 같은 용어를 사용하고 있다. 여기서 말하는 브라운 운동은 stochastic process가 4가지 조건을 만족할 경우 브라운 운동이라고 정의하고 있다.&lt;br /&gt;&amp;nbsp;1. Z(0) : Stochastic Process의 출발 위치는 0이다.&lt;br /&gt;&amp;nbsp;2. Z(t)-Z(0) ~N(0, t) : Stochastic Process의 0시점부터 t 시점까지 변화된 양은 평균이 0이고, 분산이 t인 정규분포를 따른다.&lt;br /&gt;&amp;nbsp;3. 각 구간이 서로 겹치지 않으면 각 구간마다 변화된 Stochastic Process의 양은 서로 독립이다.&lt;br /&gt;&amp;nbsp;4. Z(t)는 연속형이지만, 거의 모든 점에서 미분 불가능하다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히, Brownian Motion을 기초로 하는 임의의 Stochastic Process의 Stochastic Differential Equation은 아래와 같이 일반화가 가능한데,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$ dX(t) = \alpha(X(t), t) * dt + \sigma(X(t), t) * dZ(t) $$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 때, $\alpha(X(t), t)$를 결정론적인 part라하며 drift term이라고 하고, $\sigma(X(t), t)$를 확률론적인 part라 하며 diffusion term이라고 한다.&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;일반적인 Langevin diffusion에서는 stochastic differential 방정식을 아래와 같이 정의한다.&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;66&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cfe1el/btrqPiB3y7p/5tFbX9f2hIcD7vWaEdMwPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cfe1el/btrqPiB3y7p/5tFbX9f2hIcD7vWaEdMwPK/img.png&quot; data-alt=&quot;stochastic differential equation at Langevin Diffusion&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cfe1el/btrqPiB3y7p/5tFbX9f2hIcD7vWaEdMwPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcfe1el%2FbtrqPiB3y7p%2F5tFbX9f2hIcD7vWaEdMwPK%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;1079&quot; height=&quot;66&quot; data-origin-width=&quot;1079&quot; data-origin-height=&quot;66&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;stochastic differential equation at Langevin Diffusion&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 $ \nabla U(\theta(t))$ 는 drift term이고, $B_t$는 $\pi$라는 고정된 분포를 갖는 $d$-dimension에서의 &lt;a href=&quot;https://ko.wikipedia.org/wiki/%EB%B8%8C%EB%9D%BC%EC%9A%B4_%EC%9A%B4%EB%8F%99&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;브라운 운동&lt;/a&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(drift term 이라는 것)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(애초에 Langevin diffusion이라는 개념이 물리통계학에서 나오는 개념이다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 (2) 수식은 아주 작은 시간을 interval로 두는 continuous-time Markov process의 dynamics(이하 역학이라 표기하겠음.)으로 정의하여 해석할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 아주 작은 시간에 대한 interval인 $h &amp;gt; 0$에 대해, Langevin diffusion은 아래와 같은 역학을 기술할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;74&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byvhPg/btrq125mrYy/QzxdIZy41be9JaK8ZGXFi1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byvhPg/btrq125mrYy/QzxdIZy41be9JaK8ZGXFi1/img.png&quot; data-alt=&quot;Eular approximation&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byvhPg/btrq125mrYy/QzxdIZy41be9JaK8ZGXFi1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyvhPg%2Fbtrq125mrYy%2FQzxdIZy41be9JaK8ZGXFi1%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;1080&quot; height=&quot;74&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;74&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Eular approximation&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때, $Z$는 $d$개의 independent standard Gaussian random variable들에 대한 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;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;수식 (3)을 정리해보면,&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;$$ \theta(t + h) - \theta(t) \approx - \frac{h}{2} \nabla U(\theta(t)) + \sqrt{h} Z $$&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;$$ \frac{\theta(t + h) - \theta(t)}{h} \approx - \frac{1}{2} \nabla U(\theta(t)) + \frac{1}{\sqrt{h}} Z $$&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;좌변은 미분의 형식을 띄고 있다.&lt;/s&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;수식 (3)에 기술된 역학은 Langevin diffusion으로부터 sampling하여 근사할 수 있는 간단한 방법으로 적용될 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임의의 $K$에 대하여, 전체 time period의 길이인 $T=Kh$에 이와 같은 사실을 적용시기키 위해서는, $\theta_0$를 process의 초기 상태로 설정하고 수식 (3)에서 $h, 2h, ... Kh$ 시점에 대한 process의&amp;nbsp; 값을 포함하도록 반복적으로 sampling하면된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$\theta_k = \theta(kh)$라고 표기할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어쨌든 우리는 고정된 시간 $T$에서 Langevin diffusion으로부터 sampling에 대해 관심이 있으니, 더 작은 오일러 상수처럼 h를 매우 작은 값으로 적용하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;h를 충분히 작게 주었을 때 정확도가 우리가 원하는 정도까지 도달할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, 실전에서 매우 작은 h를 구하는 것은 어려운 일이다.&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;2.2 Approximate MCMC using the Langevin Diffusion&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Langevin Diffusion는 $\pi$라는 고정된 분포를 가지고 있는데, 이것은 stochastic process가 MCMC알고리즘의 기초로써 고려할 수 있다는 것을 자연스럽게 생각할 수 있다.(난 자연스럽지 않지만,,)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 Langevin Diffusion의 역학을 정확하게 simulate하는 것이 가능하다면, MCMC 결과를 discrete time-point로 설정하여 사용할 수 있지만, 일반적인 $\pi(\theta)$는 계산 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러다보니 사람들은 수식 (3)번인 Euler approximation을 사용하여 sampling하는 것에 의존하고 있다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;3) 섹션 3에서는 확률적 경사 MCMC 프레임워크를 랑주뱅 확산을 넘어 특별한 경우로 주어진 많은 인기 있는 확률적 경사 MCMC 알고리즘이 있는 확률적 미분 방정식의 일반 클래스로 확장한다.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fdfdfd; color: #000000;&quot;&gt;많은 MCMC 알고리즘과 마찬가지로 확률적 경사 MCMC는 알고리즘의 효율성에 영향을 미치는 조정 매개 변수를 가지고 있다.&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;background-color: #fdfdfd; color: #000000;&quot;&gt;4) 전통적인 MCMC 알고리즘 조정을 위한 표준 진단은 확률적 경사 MCMC에 적합하지 않으며, 섹션 4는 확률적 경사 MCMC 알고리즘의 조정 및 수렴 평가를 위한 메트릭으로 커널 스타인 불일치를 소개한다.&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;background-color: #fdfdfd; color: #000000;&quot;&gt;5) 제5절에서는 데이터가 독립적이고 모델 매개변수가 실제 공간에서 연속적인 경우를 넘어 새로운 설정으로 이러한 알고리즘을 확장하는 최근 작업의 일부를 검토한다.&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;background-color: #fdfdfd; color: #000000;&quot;&gt;6) 시뮬레이션 연구는 섹션 6에서 제공되며, 속도와 정확성 사이의 균형을 설명하기 위해 몇 가지 확률적 경사 MCMC 알고리즘을 기존 MCMC 방법과 비교한다.&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;background-color: #fdfdfd; color: #000000;&quot;&gt;7) 마지막으로, 섹션 7은 논문의 주요 요점에 대한 논의로 마무리되며 향후 연구를 위한 몇 가지 영역을 강조한다.&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;&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/147</guid>
      <comments>https://signing.tistory.com/147#entry147comment</comments>
      <pubDate>Mon, 17 Jan 2022 21:32:42 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Stochastic gradient Markov chain Monte Carlo - 1.Introduction</title>
      <link>https://signing.tistory.com/146</link>
      <description>&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;최근 관심을 갖는 cold posterior를 정확하게 이해하기 위해서는 SG-MCMC에 대한 선이해가 되어야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에&amp;nbsp;&lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;cold posterior 관련 포스팅&lt;/a&gt;들을 작성하면서 SG-MCMC에 관련된 내용이 많이 나왔었을 뿐 아니라, &lt;a href=&quot;https://github.com/google-research/google-research/tree/master/cold_posterior_bnn&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;official google research github&lt;/a&gt;에서도 SG-MCMC에 대한 코드를 제공하고 있다.&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;a href=&quot;https://signing.tistory.com/132&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;이전 포스팅&lt;/a&gt;에서 abstract을 했으니, 그 이후 내용부터 다루도록 하겠다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. Introduction&lt;/b&gt;&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;b&gt;1.1&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;bayesian approach를 이용한 modelling을 할 때, bayesian posterior distribution은 두 가지 의미를 갖는다. 첫 번째는 모델 parameter의 확률적 uncertainty와 두 번째는 관측되지 않은 새로운 데이터에 대한 prediction을 한다는 것이다.&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.2&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로 posterior distribution을 구하는 것은 intractable하며, posterior distribution을 구하기 위한 Laplace approximation, variational Bayes, expectation-propagation 등 deterministic approximation 방법론들이 사용되곤 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 이런 deterministic한 방법들은 정확한 posterior를 구하기 위해서 computational efficiency와 trade-off 관계에 있다는 단점이 있다.&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.3&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 편, MCMC 방법론은 어떤 분포(특히 posterior)를 찾아내는데 좋은 알고리즘이며, 적용하기 쉬울 뿐 아니라 만약 posterior가 unnormalised density라도 괜찮다는 것이다.&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.4&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, MCMC는 점차 정확한 posterior sample을 제공하며 density를 찾아가지만, 실제로 이를 적용하는데 계산 속도가 느리다.&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.5&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 데이터를 쪼개어 여러 컴퓨터에 보내고 병렬적으로 MCMC 알고리즘을 적용하여 partial posterior를 sampling할 수 있다면 괜찮을 수 있는데, 문제는 흩어졌던 partial posterior sample들을 merge하는곳에서 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약, 각 partial posterior distribution이 Gaussian이라고 한다면, 각 partial posterior의 mean과 variance에 대해 update되는 rule을 갖고 있기 때문에, 병렬적으로 처리할 수 있지만, 대부분의 경우 non-Gaussian이기 때문에 정확한 approximation이 어렵고, 이를 해결하기 위한 여러 방법론들이 나오긴 했지만, 그마저도 정확도가 좋지 못하다.&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.6&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;병렬적인 방법론 말고, single MCMC를 사용하되 각 iteration에서 subsampling을 하는, 예를 들어 &lt;a href=&quot;https://rooney-song.tistory.com/26&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Metropolis-Hasting&lt;/a&gt;과 같은, 알고리즘도 하나의 대안이 되기도 하지만, 이 역시 computational speed-up과 accuracy 사이에 trade-off가 존재한다.&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.7&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 subsampling에 기반한 Stochastic gradient MCMC 방법론을 소개하고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;이 알고리즘은 discrete-time approximation에서 continuous-time diffusion process를 도출한다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;가장 간단한 예로는 Langevin diffusion이 있고 이것은 posterior를 변하지 않는 고정된 분포로 여긴다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;그러나 실제로 Monte-Carlo sampling에는 확산에서 discrete-time Euler approximation이 사용되며, 이는 unadjusted Langevin 알고리즘으로 알려져 있다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;이산화 오류로 인해 unadjusted Langevin 알고리즘에서 생성된 sample은 posterior distribution을 대략적으로 변하지 않는 분포로 유지하며, Metropolis-type correction을 사용하여 정확하게 만들 수 있다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;Metropolis 수정이 없어도 log-posterior 밀도의 기울기는 전체 데이터를 평가해야 하므로 조정되지 않은 Langevin 알고리즘은 계산 비용이 많이 들 수 있다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;Welling and Teh(2011)는 확률적 경사 하강(Robbins and Monro, 1951년)에서 영감을 받아 비조정된 Langevin 알고리즘의 경사 성분이 전체 데이터의 하위 표본에서 계산된 확률적 근사치로 대체되는 확률적 경사 랑주뱅 알고리즘을 제안했다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;조각별 결정론적 MCMC(Fearnhead 등, 2018)와 같은 다른 서브샘플링 기반 MCMC 기법에 비해 확률적 경사 MCMC의 장점은 광범위한 모델 등급에 적용할 수 있으며 가장 간단한 경우 로그 사후 밀도의 1차 경사만 포인트별로 평가할 수 있다는 것이다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;이러한 알고리즘의 단점은 일관된 추정치를 생성하고 중심 한계 정리를 만족시키면서도(Teh 등, 2016) 기존 MCMC 알고리즘보다 느린 속도로 수렴한다는 것이다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;최근 몇 년 동안 확률적 경사 MCMC 알고리즘은 특히 머신러닝 커뮤니티에서 확장 가능한 베이지안 추론을 위한 인기 있는 도구가 되었으며, 수많은 방법론과 이론적 개발와 이러한 알고리즘에 대한 새로운 적용 영역이 있다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;이 논문은 SG-MCMC의 몇 가지 핵심 개발에 대한 리뷰를 제시하고 미래 연구의 몇 가지 기회를 강조한다.&lt;/s&gt;&lt;/span&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;&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>개인 공부 정리/Bayesian</category>
      <category>bayesian</category>
      <category>cold_posterior</category>
      <category>MCMC</category>
      <category>SGMCMC</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/146</guid>
      <comments>https://signing.tistory.com/146#entry146comment</comments>
      <pubDate>Sat, 15 Jan 2022 17:37:46 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Noise Contrastive Priors for Functional Uncertainty</title>
      <link>https://signing.tistory.com/145</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;uncertainty 논문들을 검색하다 발견한 논문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문의 저자들이 구글 브레인, 딥마인드 등 쟁쟁한 이력을 가지고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아직 abstract만 읽어보았는데, 여기서도 BNN에서 prior의 중요성을 언급하는 듯하다.&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;a href=&quot;https://arxiv.org/pdf/1807.09289.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1807.09289.pdf&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;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;Obtaining reliable uncertainty estimates of neural network predictions is a long-standing challenge.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;NN에서 믿을만한 uncertainty를 구하는 것은 오랜 과제였다.&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;i&gt;Bayesian neural networks have been proposed as a solution, but it remains open how to specify their prior.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BNN이 solution으로 제안되어 왔지만, 여전히 BNN의 prior를 어떻게 설정할 것인가에 대한 문제가 남아있다.&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;i&gt;In particular, the common practice of an independent normal prior in weight space imposes relatively weak constraints on the function posterior, allowing it to generalize in unforeseen ways on inputs outside of the training distribution.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;특히, weight space에서 independent normal prior는 일반적인 관행으로써 사용되어 왔고, 이것은 posterior가 약해지는 제약을 부여한 것과 같기 때문에, input과 다른 training distribution은 의도하지 않은 방법으로 generalize할 수 있게한다.&amp;nbsp;&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;i&gt;We propose noise contrastive priors (NCPs) to obtain reliable uncertainty estimates.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;신뢰할 수 있는 unceratinty를 estimate하기 위해 Noise Contrstive Prior(이하 NCP)를 제안한다.&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;i&gt;The key idea is to train the model to output high uncertainty for data points outside of the training distribution. &lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;핵심은 training distribution이 아닌 data point에 대해 높은 uncertainty를 출력할 수 있도록 하는 모델을 훈련하는 것이다.&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;i&gt;NCPs do so using an input prior, which adds noise to the inputs of the current mini-batch, and an output prior, which is a wide distribution given these inputs.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;NCP는 현재 mini batch의 입력에 noise를 추가하는 input prior과 이런 input이 주어진 넓은 distribution인 output prior를 사용한다.&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;i&gt;NCPs are compatible with any model that can output uncertainty estimates, are easy to scale, and yield reliable uncertainty estimates throughout training.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;NCP는 uncertainty esitmatie를 output으로 출력하고, scaling하기 쉽고, training 전반에 걸쳐 신뢰할 수 있는 uncertainty esimates를 산출하는 모든 모델 호환된다.&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;i&gt;Empirically, we show that NCPs prevent overfitting outside of the training distribution and result in uncertainty estimates that are useful for active learning.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;경험적으로, NCP가 훈련 분포 외부의 과적합을 방지하고, 능동적 학습에, uncertainty esimate를 초래한다는 것을 보여준다.&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;i&gt;We demonstrate the scalability of our method on the flight delays data set, where we significantly improve upon previously published results.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&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;&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/145</guid>
      <comments>https://signing.tistory.com/145#entry145comment</comments>
      <pubDate>Mon, 10 Jan 2022 23:03:42 +0900</pubDate>
    </item>
    <item>
      <title>[논문 비평] Variational AutoEncoder Bayes</title>
      <link>https://signing.tistory.com/144</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;논문 링크 : &lt;a href=&quot;https://arxiv.org/abs/1312.6114&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/1312.6114&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1640006939693&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Auto-Encoding Variational Bayes&quot; data-og-description=&quot;How can we perform efficient inference and learning in directed probabilistic models, in the presence of continuous latent variables with intractable posterior distributions, and large datasets? We introduce a stochastic variational inference and learning &quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/1312.6114&quot; data-og-url=&quot;https://arxiv.org/abs/1312.6114v10&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bLQcoO/hyMMW2Wcjc/XYBjBHELLfNbKx29f1hSAk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1312.6114&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/1312.6114&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bLQcoO/hyMMW2Wcjc/XYBjBHELLfNbKx29f1hSAk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Auto-Encoding Variational Bayes&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;How can we perform efficient inference and learning in directed probabilistic models, in the presence of continuous latent variables with intractable posterior distributions, and large datasets? We introduce a stochastic variational inference and learning&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;해당 논문은 워낙에 유명해서 이미 영상이나, 블로그 등으로 설명이 아주 자세하게 나와있다. 그 중에서 괜찮은 설명이 있었던 블로그를 가져와 보았다.&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. &lt;a href=&quot;https://deepinsight.tistory.com/127&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://deepinsight.tistory.com/127&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1640006950046&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[정리노트] [AutoEncoder의 모든것] Chap4. Variational AutoEncoder란 무엇인가(feat. 자세히 알아보자)&quot; data-og-description=&quot;AutoEncoder의 모든 것 본 포스팅은 이활석님의 'AutoEncoder의 모든 것'에&amp;nbsp;대한 강연 자료를 바탕으로 학습을 하며 정리한 문서입니다. 이활석님의 동의를 받아 출처를 밝히며 강의 자료의 일부를 인&quot; data-og-host=&quot;deepinsight.tistory.com&quot; data-og-source-url=&quot;https://deepinsight.tistory.com/127&quot; data-og-url=&quot;https://deepinsight.tistory.com/127&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Sc8fb/hyMKHGkIIQ/xuIPFe5uy0lD0aiM0EORkk/img.png?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/c6grIK/hyMKPqPNhE/dqmDp87akrw0m8WpXki4I0/img.png?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/bkwUIC/hyMKN0P1xe/ra7njVDE0ER07gBsQGIQFK/img.png?width=947&amp;amp;height=514&amp;amp;face=0_0_947_514&quot;&gt;&lt;a href=&quot;https://deepinsight.tistory.com/127&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://deepinsight.tistory.com/127&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Sc8fb/hyMKHGkIIQ/xuIPFe5uy0lD0aiM0EORkk/img.png?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/c6grIK/hyMKPqPNhE/dqmDp87akrw0m8WpXki4I0/img.png?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/bkwUIC/hyMKN0P1xe/ra7njVDE0ER07gBsQGIQFK/img.png?width=947&amp;amp;height=514&amp;amp;face=0_0_947_514');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[정리노트] [AutoEncoder의 모든것] Chap4. Variational AutoEncoder란 무엇인가(feat. 자세히 알아보자)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;AutoEncoder의 모든 것 본 포스팅은 이활석님의 'AutoEncoder의 모든 것'에&amp;nbsp;대한 강연 자료를 바탕으로 학습을 하며 정리한 문서입니다. 이활석님의 동의를 받아 출처를 밝히며 강의 자료의 일부를 인&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;deepinsight.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;2. &lt;a href=&quot;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1640006969149&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Variational AutoEncoder &amp;middot; ratsgo's blog&quot; data-og-description=&quot;이번 글에서는 Variational AutoEncoder(VAE)에 대해 살펴보도록 하겠습니다. 이 글은 전인수 서울대 박사과정이 2017년 12월에 진행한 패스트캠퍼스 강의와 위키피디아, 그리고 이곳 등을 정리했음을 먼&quot; data-og-host=&quot;ratsgo.github.io&quot; data-og-source-url=&quot;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&quot; data-og-url=&quot;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://ratsgo.github.io/generative%20model/2018/01/27/VAE/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Variational AutoEncoder &amp;middot; ratsgo's blog&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;이번 글에서는 Variational AutoEncoder(VAE)에 대해 살펴보도록 하겠습니다. 이 글은 전인수 서울대 박사과정이 2017년 12월에 진행한 패스트캠퍼스 강의와 위키피디아, 그리고 이곳 등을 정리했음을 먼&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;ratsgo.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;이 블로그만 읽어도 VAE가 무엇인지 어느정도 알 것이라고 생각한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 VAE가 bayesian 패러다임을 사용하는 것도 어느정도 보았을 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 이 VAE가 정말로 bayesian 철학과 패러다임을 이어 받은 것인지가 의문이다.&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. 일단은 prior를 normal 분포로 세팅한 것.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 것은 normal 분포가 흔히 만만하고 유용한 분포다보니 그럴 수 있다고 생각은 한다.&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. 두 번째로, weight에 대한 분포가 아닌 latent variable에 대한 분포라는 것.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안의 가장 근원적인 철학은 데이터가 발생하는 원리가 데이터에 있는 것이 아니고 parameter에 있다는 것인데, 해당 논문은 parameter보다는 latent variable z에 대해 관심이 있는 것으로 세팅을 해놓았다.&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;+ 게다가 latent variable z 분포를 위해 $\mu$와 $\sigma^2$을 Neural Network로 만들었다는 것.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 NN의 parameter은 deterministic한 고정값으로 나오는 것이고 $\mu$와 $\sigma^2$에 대한 값조차도 어느정도 학습되어 고정된 값으로 도출된다.&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;하지만 이 것들은 역전파를 위한 reparameterization trick 때문에 사용하는 것이라고 생각한다면, 어느정도 베이지안 패러다임에서 벗어나더라도 넘어갈 수 있다고 생각한다.&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. 세 번째로는, likelihood인 $p(x|z)$의 분포를 얻기 위해 MLE를 사용한다는 것.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MLE는 부정할 수 없는 deterministic 방법론이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 이 과정에서 Variational Inference를 유도하여 결국 posterior와 유사한 $q(\theta)$ 분포를 얻을 수 있긴 하다.&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;단지 prior와 posterior 개념을 차용하여 사용했다는 것으로 bayes가 붙은 것인가 싶다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안을 공부하여 어느정도 베이지안 철학을 내 머리에 세팅해 놓고, VAE를 보다보니 분명 prior, posterior 등 베이지안의 개념을 사용하는 것 같아서 더 확인해보면 정말 베이지안을 사용하는 것이 아닌 것 같아서 이해하고 VAE 코드를 수정하기가 매우 어려웠다.&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;a href=&quot;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1640007871879&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;VAEs are Bayesian&quot; data-og-description=&quot;$$ \newcommand{\boldA}{\mathbf{A}} \newcommand{\boldB}{\mathbf{B}} \newcommand{\boldC}{\mathbf{C}} \newcommand{\boldD}{\mathbf{D}} \newcommand{\boldE}{\mathbf{E}} \newcommand{\boldF}{\mathbf{F}} \newcommand{\boldG}{\mathbf{G}} \newcommand{\boldH}{\mathbf{H&quot; data-og-host=&quot;jeffreyling.github.io&quot; data-og-source-url=&quot;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&quot; data-og-url=&quot;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;VAEs are Bayesian&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;$$ \newcommand{\boldA}{\mathbf{A}} \newcommand{\boldB}{\mathbf{B}} \newcommand{\boldC}{\mathbf{C}} \newcommand{\boldD}{\mathbf{D}} \newcommand{\boldE}{\mathbf{E}} \newcommand{\boldF}{\mathbf{F}} \newcommand{\boldG}{\mathbf{G}} \newcommand{\boldH}{\mathbf{H&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;jeffreyling.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://jeffreyling.github.io/&quot;&gt;Jeffrey Ling&lt;/a&gt; 라는 분이 작성한 영어원문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아직 읽어보진 않았지만, jeffrey라고하니 이름에서 뭔가 믿음이 간다.&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>개인 공부 정리/Bayesian</category>
      <category>AutoEncoder</category>
      <category>bayesian</category>
      <category>inference</category>
      <category>VAE</category>
      <category>Variational</category>
      <category>vi</category>
      <category>베이지안</category>
      <category>변분추런</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/144</guid>
      <comments>https://signing.tistory.com/144#entry144comment</comments>
      <pubDate>Mon, 20 Dec 2021 22:47:39 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] PRIORS IN BAYESIAN DEEP LEARNING: A REVIEW</title>
      <link>https://signing.tistory.com/143</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior 관련 논문을 찾다가 발견한 리서치? 느낌의 논문이라 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 paper에는 cold posterior의 내용이 아주 잠깐 스쳐 지나가게 나오긴 하지만, 베이지안의 철학을 이어받는 논문이라 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스위스 취리히 대학의 CS학과에서 작성되었으며, &lt;a href=&quot;http://bayesiandeeplearning.org/index.html&quot;&gt;2021년 NeurIPS의 Bayesian Deep Learning 워크샵&lt;/a&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;a href=&quot;https://arxiv.org/pdf/2105.06868.pdf&quot;&gt;https://arxiv.org/pdf/2105.06868.pdf&lt;/a&gt;&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;0. Abstract&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;While the choice of prior is one of the most critical parts of the Bayesian inference workflow, recent Bayesian deep learning models have often fallen back on vague priors, such as standard Gaussians.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;Bayesian Inference에서 가장 중요한 부분 중 하나는 prior를 선택하는 것이지만, 최근 Bayesian Deep Learning model들은 standard Gaussian과 같은 모호한 prior를 적용하는 퇴보하는 모습을 보여주고 있다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;In this review, we highlight the importance of prior choices for Bayesian deep learning and present an overview of different priors that have been proposed for (deep) Gaussian processes, variational autoencoders, and Bayesian neural networks.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 review에서는 Bayesian Deep Learning에서 prior 선택의 중요성을 강조하고, 이를 Gaussian Process(이하 G.P.), Variational AutoEncoder(이하 VAE), Bayesian Neural Network(이하 BNN)에서 각기 다른 prior를 적용하는 overview를 하고자 한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;We also outline different methods of learning priors for these models from data.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;위의 모델들에 대해 data로부터 prior를 학습하는 다른 method를 보여줬다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;We hope to motivate practitioners in Bayesian deep learning to think more carefully about the prior specification for their models and to provide them with some inspiration in this regard.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이번 기회를 빌어 여러 model을 학습하는 사람들에게 prior를 잘 선택하는 것이 중요하다는 것을 알려주려 한다.&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;&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;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&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;1.1&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;825&quot; data-origin-height=&quot;62&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lgE5W/btrodlOi3uU/Db6ZyE6ah2qba7ZZ9Z9C9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lgE5W/btrodlOi3uU/Db6ZyE6ah2qba7ZZ9Z9C9k/img.png&quot; data-alt=&quot;Bayes Rule&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lgE5W/btrodlOi3uU/Db6ZyE6ah2qba7ZZ9Z9C9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlgE5W%2FbtrodlOi3uU%2FDb6ZyE6ah2qba7ZZ9Z9C9k%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;825&quot; height=&quot;62&quot; data-origin-width=&quot;825&quot; data-origin-height=&quot;62&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Bayes Rule&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bayes rule에 대해 일반적인 개념을 설명하고 있다.&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1.2&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;831&quot; data-origin-height=&quot;52&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdpjha/btroaLtMfXA/LbtkUVamjucHhhgGdYBb2K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdpjha/btroaLtMfXA/LbtkUVamjucHhhgGdYBb2K/img.png&quot; data-alt=&quot;hyper-parameters&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdpjha/btroaLtMfXA/LbtkUVamjucHhhgGdYBb2K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcdpjha%2FbtroaLtMfXA%2FLbtkUVamjucHhhgGdYBb2K%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;831&quot; height=&quot;52&quot; data-origin-width=&quot;831&quot; data-origin-height=&quot;52&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;hyper-parameters&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1.1에서 Bayes Rule에 대한 설명이 나오던 중 hyperparameter라는 개념이 나오는데, 쉽게 말하면, prior에 대한 prior라고 보면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, 우리가 구하고자하는 parameter $\theta$가 있고, 이 $\theta$의 prior가 Normal distribution을 따른다면, Normal distribution의 parameter인 평균(mean)이 또 다른 분포를 따르는 것을 의미한다.&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;1.3&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;829&quot; data-origin-height=&quot;52&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Bgka1/btrodmGrpwx/aRWQkU21GPgrFzVx8eZEH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Bgka1/btrodmGrpwx/aRWQkU21GPgrFzVx8eZEH1/img.png&quot; data-alt=&quot;posterior predictive&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Bgka1/btrodmGrpwx/aRWQkU21GPgrFzVx8eZEH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBgka1%2FbtrodmGrpwx%2FaRWQkU21GPgrFzVx8eZEH1%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;829&quot; height=&quot;52&quot; data-origin-width=&quot;829&quot; data-origin-height=&quot;52&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;posterior predictive&amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 식은 posterior predictive에 대한 설명이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쉽게 정리하자면, 어떻게 꾸역꾸역 posterior를 구했으면, posterior를 이용하여 실질적으로 예측을 위한 예측 분포를 구하는 과정이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 과정을 통하여 결국엔 posterior density를 구하는 것이 최종 목적이긴 하다.&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;1.4&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 실제로는 최적의 prior를 선택하는 것을 objective prior, empirical Bayes 혹은 두 개의 조합으로 하는 등, prior 구하는 것을 간단히 하고, 다소 성가신 일로 치부해 왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 Bayesian Deep Learning에서 Standard Gaussian과 같은 의미없는 prior를 구하는 것이 흔히 발생되고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 여태껏 봐왔던 논문들도 그냥 별 이유 없이 prior를 Standard Gaussian로 잡고 시작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 Standard Gaussian이 가장 자연계에서 흔한 분포에다가 Standard Gaussian이 갖는 특징이 계산을 할 때 너무 편하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 이외의 이유로 Standard Gaussian을 쓰는 경우는 별로 보지 못했다.&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;1.5&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 prior를 선택하는 것에 대해 깊게 고민하지 않는 trend는 문제가 될 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면, Bad prior를 고르면 inference를 할 때 안좋은 결과를 도출하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단, 정보가 없는 혹은 정보가 부족한 prior를 선택하는 것은 Bernstein-von-Mises 이론의 asymptotic consistency guarantees에 충족되지 않기 때문에, 실제로 많이 사용되는 이론은 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가 실제 practical inference의 non-asymptotic 체계에서 prior는 posterior에 강한 영향을 미칠 수 있고, 확률을 parameter space에서 임의의 sub-space로 보내버릴 수 있다.&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;1.6&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;prior를 잘못 선택하는 것은 Bayesian Inference를 사용하기 위해서 억지로 prior를 끼워 맞추는 것과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들면, prior를 잘못 정하면 marginal density $P( y | \theta )$가 의미 없게 되기도 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇게 되면 Bayesian Model을 선택할 때 최적의 model을 선택할 수 없다.&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;1.7&lt;/b&gt;&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;prior를 잘못 선택하는 것이 필연적으로 최적의 성능을 내기 위해 posterior를 tempering하는 것이다.&lt;br /&gt;그렇기 때문에 posterior를 tempering하는 것이 요즘 Bayesian Deep Learning model에서는 실험적으로 필요한 것이다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;이 부분에서 매우 큰 깨달음을 얻었다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;기존에 내가 cold posteior에 대한 최신 논문과 article들을 살펴보면서 이론적, 수학적인 뒷받침 근거가 좀 부족하고, 실험적으로, 혹은 경험적으로 성능이 더 좋았다더라 하는 결과를 많이 보았다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;그 때문에 다른 논문이나 article에서는 cold posteir에 대한 부정적인 견해와 지적이 나오기도 하지만, posterior를 tempering 하는 것이 어쨌든 성능이 좋아지기는 하기 때문에 각광을 받고 있었다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;본 paper에서는 성능 개선을 위해서 posterior tempering으로 발전할 수 밖에 없었다는 것을 지적하고 있다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;성능이 좋지 못한 원인을 posterior에서 찾을 것이 아니라 prior에서 찾자는 것이 본 논문의 핵심이다.&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;&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;&lt;b&gt;2. Prior in (Deep) Gaussian Process(이하 G.P.)&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;G.P.에 대한 일반론과 prior 관점에서 내용을 전달하고 있지만 일단은 지금은 패스하고, VAE부터 보겠다.&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3. Prior in Variational AutoEncoder(이하 VAE)&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서두에는 VAE의 일반론에 대해서 설명하고 있다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;계산 불가능한 posterior를 정확히 inference하기 위한 NN의 non-linearity 때문에, variational density인 $q(z|x)$로 근사한다.&lt;/li&gt;
&lt;li&gt;variational density를 구하기 위한 ELBO 설명&lt;/li&gt;
&lt;/ul&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;b&gt;3.1 Distributional VAE priors&lt;/b&gt;&lt;/h3&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;3.1.1&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 절에서는 distributional prior라는 개념을 사용하는데, 이 것은 standard VAE에서 $q(z)$를 지칭하는 용어로써 사용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 우리가 알고 있는 latent variable의 분포라고 생각하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 여기에다가 variational posterior인 $q(z|x)$ 의 form으로 변경하는 것이 prior를 fitting하는데 더 좋다고 한다.&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;3.1.2&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;828&quot; data-origin-height=&quot;60&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLB3gE/btrogw9QZZ1/P4rGM3x1dHdgepKlfRh9r0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLB3gE/btrogw9QZZ1/P4rGM3x1dHdgepKlfRh9r0/img.png&quot; data-alt=&quot;Distributional prior인 von-Mises-Fisher prior (이하 vMF prior)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLB3gE/btrogw9QZZ1/P4rGM3x1dHdgepKlfRh9r0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLB3gE%2Fbtrogw9QZZ1%2FP4rGM3x1dHdgepKlfRh9r0%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;828&quot; height=&quot;60&quot; data-origin-width=&quot;828&quot; data-origin-height=&quot;60&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Distributional prior인 von-Mises-Fisher prior (이하 vMF prior)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 이것은 vMF prior인데, d dimentional latent space이고, 평균인 $\mu$, concentration parameter인 $\kappa$, 그리고 $I_k$는 수정된 Bessel function이라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이&amp;nbsp; $p(z)$ distribution은 3차원 이상의 구모양(hyperspherical)의 Multivariate Gaussian distribution처럼 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 이 $p(z)$의 단점중 하나는 Bessel function이 closed form으로 general하게 계산할 수 없기 때문에 numerically approximation을 해야한다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 hyperspherical prior는 standard Gaussian data에 비해 benchmark 데이터에서의 VAE 성능을 더 향상시키지만, 사실 low-dimensional latent space에서 향상되었던 것이다.&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;3.1.3&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;1292&quot; data-origin-height=&quot;125&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Cmima/btroi4ZlBhS/YA7GlfmshKW1N1pltXzb8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Cmima/btroi4ZlBhS/YA7GlfmshKW1N1pltXzb8k/img.png&quot; data-alt=&quot;power-spherical distribution&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Cmima/btroi4ZlBhS/YA7GlfmshKW1N1pltXzb8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCmima%2Fbtroi4ZlBhS%2FYA7GlfmshKW1N1pltXzb8k%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;1292&quot; height=&quot;125&quot; data-origin-width=&quot;1292&quot; data-origin-height=&quot;125&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;power-spherical distribution&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수정된 Bessel function의 numerical issue를 해결하기 위해서 power-spherical distribution을 vMF을 위해 대체재로 제안했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$\mu$가 평균이고, $\kappa$가 concentration parameter이고, $\Gamma(\dot)$은 Gamma function이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서는 Bessel function보다는 $\Gamma(\dot)$을 사용하는데, $\Gamma(\dot)$이 Bessel function보다 evaluation하기에 쉽기 때문에 결국 power-spherical distribution이 closed-form으로 evaluation하기 수월하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, 모수적 sampling을 하기에도 좋다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험적으로는 vMF prior를 사용할 때 VAE에서 비슷한 성능을 내었고, numerically 더 stable하다고 한다.&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;3.1.4&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;1291&quot; data-origin-height=&quot;104&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dmFaIV/btrocrPxbRL/BnvBWNDGqMv5qOAoFKTgk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dmFaIV/btrocrPxbRL/BnvBWNDGqMv5qOAoFKTgk0/img.png&quot; data-alt=&quot;weighted Mixture Gaussian prior&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dmFaIV/btrocrPxbRL/BnvBWNDGqMv5qOAoFKTgk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdmFaIV%2FbtrocrPxbRL%2FBnvBWNDGqMv5qOAoFKTgk0%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;1291&quot; height=&quot;104&quot; data-origin-width=&quot;1291&quot; data-origin-height=&quot;104&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;weighted Mixture Gaussian prior&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 다른 prior로는 Mixture Gaussian인데, weighted된 Mixture Gaussian이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$p(z)$는 $k$개의 Gaussian으로 Mixing되기 때문에 k-dim이고, weight는 일단 $\frac{1}{k}$로 동일하게 적용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 방법론은 latent space에서 disjoint하게 clustering하는 것에서 영감을 받았다고한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 다른 clustering method와 마찬가지로 cluster 갯수인 $k$를 정하는 것에 대한 issue가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 stick-breaking이나 Dirichlet process hyper prior와 같은 방법으로 최적화 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 cost가 inference하는데 더 소요되긴 한다.&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;3.1.5&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;1289&quot; data-origin-height=&quot;51&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cQl96Q/btrogxnroTi/U9NDvdkk4LsSVQG015yEL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cQl96Q/btrogxnroTi/U9NDvdkk4LsSVQG015yEL1/img.png&quot; data-alt=&quot;Gaussian Process as a Prior&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cQl96Q/btrogxnroTi/U9NDvdkk4LsSVQG015yEL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcQl96Q%2FbtrogxnroTi%2FU9NDvdkk4LsSVQG015yEL1%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;1289&quot; height=&quot;51&quot; data-origin-width=&quot;1289&quot; data-origin-height=&quot;51&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Gaussian Process as a Prior&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만일 data point들 사이의 potential similarity에 대해 prior knowledge가 있다면, 그리고 우리가 그것을 kernel function으로 생각할 수 있다면, G.P.는 VAE에서 강력한 prior가 될 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$Z=(z_1, ..., z_n)$을 latent variable matrix라 하고, $K_{zz}$를 kernel matrix라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;G.P.를 prior하는 model은 conditional generalization, time series, missing data imputation, disentanglement에서 유리하게 작용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 이 model들은 standard VAE에 비해 더 많은 computational cost가 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;kernel matrix의 inverse를 구하기 위해 $O(n^3)$정도의 계산복잡도가 소요된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 이 연산은 줄일 수 있을 뿐 아니라, generative process의 prior에 의하면, 추가적인 G.P. prior나 tensor값을 갖는 prior로 확장하여 사용할 수 있다.&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;b&gt;3.2 Structural VAE priors&lt;/b&gt;&lt;/h3&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;3.2.1&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 절에서는 바로 위에서 논의했던 distributional prior와는 다른게 VAE model의 실질적인 prior distribution $p(z)$를 바꾸는 것 뿐만 아니라, model 자체를 바꿀 수 있는 structural prior를 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떻게 보면 위의 distributional prior의 확장판이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, 앞에서 언급한 Gaussian Mixture prior는 각 factor가 latent mixture component에 의존하는 mixture-of-decoder, 즉, factorized generative likelihood로 확장할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 다른 예로는 G.P. prior가 있는데, latent dataset $z$ 전체를 정의하기 때문에 $X$를 jointly encoding하는 수정된 encoder의 장점을 갖는다.&amp;nbsp;&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;3.2.2&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;1289&quot; data-origin-height=&quot;214&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb7INY/btrolU9MEBS/XUR8DmYUJvBgBG4emIB2a0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb7INY/btrolU9MEBS/XUR8DmYUJvBgBG4emIB2a0/img.png&quot; data-alt=&quot;Hierarchical prior&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb7INY/btrolU9MEBS/XUR8DmYUJvBgBG4emIB2a0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb7INY%2FbtrolU9MEBS%2FXUR8DmYUJvBgBG4emIB2a0%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;1289&quot; height=&quot;214&quot; data-origin-width=&quot;1289&quot; data-origin-height=&quot;214&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Hierarchical prior&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 수정된 아키텍쳐를 갖는 distributional prior에 더하여, standard VAE 아키텍쳐를 인식하지 못하는 structured prior가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 예로 위 그림처럼 hierarchical prior가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 latent variable $z$를 갖는 것 대신에, 위 수식처럼 서로 hierarchical하게 depend하는 k개의 다른 latent variables ${z_1, ... , z_k}$를 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 model은 17번 수식에서 조건부확률을 parameterize하기 위한 generative feature를 갖는 model data를 더 좋게 만들고, VAE를 사용하는 image generation에서 SOTA급을 찍었다고 한다.&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;3.2.3&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;1286&quot; data-origin-height=&quot;93&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cDcM1c/btrocUqmEjR/3ITBkT7kW7vfjB5lKgKz81/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cDcM1c/btrocUqmEjR/3ITBkT7kW7vfjB5lKgKz81/img.png&quot; data-alt=&quot;VQ-VAE prior&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cDcM1c/btrocUqmEjR/3ITBkT7kW7vfjB5lKgKz81/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDcM1c%2FbtrocUqmEjR%2F3ITBkT7kW7vfjB5lKgKz81%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;1286&quot; height=&quot;93&quot; data-origin-width=&quot;1286&quot; data-origin-height=&quot;93&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;VQ-VAE prior&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 다른 structural prior는 VQ-VAE prior와 같은 discrete latent prior이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$E$는 prototye의 finite dictionary이고, $z_e$는 continuous latent variable이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중요한 것은 continuous한 $z_e$를 두는 것이 아니라, dictionary $E$에 대한 uniform prior로 부르는 discrete한 $z_q$를 두는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 discrete한 latent variable은 low cost로 save할 수 있기 때문에 standard VAE보다 압축성이 좋다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에서 설명한 hierarchical latent variable과 이 discrete한 latent variable을 같이 사용할 때 경쟁력있는 image generation 성능에 도달할 수 있다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가, discrete latent variable은 Self-Organization Map(이하 SOM)과 같이 주변의 structure을 포함하도록 확장할 수 있다.&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;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <category>Posterior</category>
      <category>prior</category>
      <category>tempering</category>
      <category>VAE</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/143</guid>
      <comments>https://signing.tistory.com/143#entry143comment</comments>
      <pubDate>Sat, 18 Dec 2021 23:32:23 +0900</pubDate>
    </item>
    <item>
      <title>[논문 비평] How Good is the Bayes Posterior in Deep Neural Networks Really?</title>
      <link>https://signing.tistory.com/142</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1639740960355&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;How good is the Bayes posterior for prediction really? | Statistical Modeling, Causal Inference, and Social Science&quot; data-og-description=&quot;It might not be common courtesy of this blog to make comments on a very-recently-arxiv-ed paper. But I have seen two copies of this paper entitled &amp;ldquo;how good is the Bayes posterior in deep neural networks really&amp;rdquo;&amp;nbsp;left on the tray of the department prin&quot; data-og-host=&quot;statmodeling.stat.columbia.edu&quot; data-og-source-url=&quot;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&quot; data-og-url=&quot;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://statmodeling.stat.columbia.edu/2020/02/13/how-good-is-the-bayes-posterior-for-prediction-really/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;How good is the Bayes posterior for prediction really? | Statistical Modeling, Causal Inference, and Social Science&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;It might not be common courtesy of this blog to make comments on a very-recently-arxiv-ed paper. But I have seen two copies of this paper entitled &amp;ldquo;how good is the Bayes posterior in deep neural networks really&amp;rdquo;&amp;nbsp;left on the tray of the department prin&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;statmodeling.stat.columbia.edu&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;bayes posterior가 실제 DNN에서 얼마나 좋을까? 특히 부정확할때&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문은 DNN에서, 특히 prediction일때, full posterior가 SGD를 이용한 postin estimation을 할 때 accuracy 혹은 cross-entropy 를 안좋게 만든다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더 놀랍게도, 빈약해 보이더라도 안좋게 만드는 것에 대해 빠른 처방는 power transformation을 통해 posterior를 재구성(T &amp;lt; 1)하는 것이고 이를 cold posterior라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;효과적인 cold temperature은 posterior density를 더욱 집중시킨다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경험적인 evaluation에 따르면 논문의 저자들은 예측 성능 측면에서 정확한 posterior을 이용한 point estimation보다 cold posterior를 이용한 point estimation이 더 우수하다고 주장한다.&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;하지만 이 포스팅을 작성한 블로거에 의하면 이러한 cold posterior에 대해, 좀 더 자세히 말하자면, 논문의 작성 방식에 대해 의문을 제기하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정확한 sampling에 의거하여 cold posterior 혹은 기존의 posterior 성능을 측정했는지 등과 같은 정보가 부족하다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 4번 섹션과 5번 섹션에 대해 말이 많았다.&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/142</guid>
      <comments>https://signing.tistory.com/142#entry142comment</comments>
      <pubDate>Fri, 17 Dec 2021 21:22:32 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Bayesian Variational Autoencoders for Unsupervised Out-of-Distribution Detection</title>
      <link>https://signing.tistory.com/141</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1912.05651&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/1912.05651&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Despite their successes, deep neural networks may make unreliable predictions when faced with test data drawn from a distribution different to that of the training data, constituting a major problem for AI safety.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;요즘의 AI들은 좋은 성능을 내고 있지만, out of distribution(OoD)를 직면했을 때는 신뢰할 수 있을만한 예측을 할 수 없게 되어 안전성 문제가 있다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;While this has recently motivated the development of methods to detect such out-of-distribution (OoD) inputs, a robust solution is still lacking. &lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;최근 이러한 OoD input을 감지하는 방법이 개발되고 있지만 여전히 강건한(robust)한 solution은 부족한 상황이다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;We propose a new probabilistic, unsupervised approach to this problem based on a Bayesian variational autoencoder model, which estimates a full posterior distribution over the decoder parameters using stochastic gradient Markov chain Monte Carlo, instead of fitting a point estimate. &lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 연구에서는 point estimate를 하는 대신, SG-MCMC를 사용하여 decoder parameter에 대한 full posterior dist.를 추정하는 bayesian VAE 모델을 기반으로 이 문제에 대한 새로운 확률적 비지도 접근법을 제안하였다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;We describe how information-theoretic measures based on this posterior can then be used to detect OoD inputs both in input space and in the model's latent space.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 posterior에 기초한 정보 이론적 measure을 사용하여 input space와 모델의 latent space 모두에서 OoD input을 감지하는 방법을 설명한다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; We empirically demonstrate the effectiveness of our proposed approach.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&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;&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/141</guid>
      <comments>https://signing.tistory.com/141#entry141comment</comments>
      <pubDate>Sat, 30 Oct 2021 21:42:20 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] How Good is the Bayes Posterior in Deep Neural Networks Really?</title>
      <link>https://signing.tistory.com/140</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/131&quot;&gt;[논문 소개] Cold Posterior Effect 관련 논문들&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1639916096601&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 소개] Cold Posterior Effect 관련 논문들&quot; data-og-description=&quot;베이지안 관련 최신 논문들을 찾다보니 또 하나의 새로운 개념을 알게 되었다. Cold Posterior Effect(이하 CPE.)라는 개념인데 아직 계속해서 공부중이고, 이 것을 파다보니 연관된 다른 논문들이 많이&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/131&quot; data-og-url=&quot;https://signing.tistory.com/131&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/pmrRh/hyMKOdlYEp/yFxteeyxiY9jXLJYlERLHk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bvL3TU/hyMKHrKqM2/AMlDUDGQlmA1kkW8sZNzAK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Dbtzk/hyMKPXBzmh/LvU3K0KNHnfPpGr1K8JVxK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/131&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/pmrRh/hyMKOdlYEp/yFxteeyxiY9jXLJYlERLHk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bvL3TU/hyMKHrKqM2/AMlDUDGQlmA1kkW8sZNzAK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Dbtzk/hyMKPXBzmh/LvU3K0KNHnfPpGr1K8JVxK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 소개] Cold Posterior Effect 관련 논문들&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;베이지안 관련 최신 논문들을 찾다보니 또 하나의 새로운 개념을 알게 되었다. Cold Posterior Effect(이하 CPE.)라는 개념인데 아직 계속해서 공부중이고, 이 것을 파다보니 연관된 다른 논문들이 많이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;cold posterior를 가장 핵심으로 다루고 있는 논문인듯 하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문 페이지가 꽤 많고(33페이지), 다른 논문들이 위 논문을 많이 refer했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/139&quot;&gt;어떤 논문&lt;/a&gt;에서는 해당 논문에 대해 문제를 제기하기도 했지만, 그래도 무엇 때문에 문제가 발생하는지, 정확한 개념이 무엇인지 확인해봐야겠다는 생각으로 본 논문을 간단히 짚고 넘어가고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&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;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;77&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HqjHt/btri6EkgOyx/87grRIlo5lnZjxFQBx1gwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HqjHt/btri6EkgOyx/87grRIlo5lnZjxFQBx1gwk/img.png&quot; data-alt=&quot;Regularized Cross Entropy objective&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HqjHt/btri6EkgOyx/87grRIlo5lnZjxFQBx1gwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHqjHt%2Fbtri6EkgOyx%2F87grRIlo5lnZjxFQBx1gwk%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;533&quot; height=&quot;77&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;77&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Regularized Cross Entropy objective&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터가 주어지고, 그에 대한 probabilistic model p(y|x, theta), 즉, likelihood가 위와 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뒤에 오메가 항은 regularizer이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;흔히 위 식을 최적화할 때는 SGD 등과 같은 방법론을 사용한다.&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;1.1 Bayesian Deep Learning&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;1.1.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안 딥러닝에서는 하나의 model 만으로 optimize를 하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;single parameter를 갖지 않는다는 의미이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, parameter가 deterministic하지 않다는 뜻이며, parameter가 분포를 이루고 있다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어찌되었든 우리는 가능한 모든 likely model을 찾고싶어한다.&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.1.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러기 위해서는 parameter에 대한 posterior distribution(이하 dist.)를 알아야하는데, 아래의 식과 T라는 temperature를 사용한다.&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;78&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5e5yP/btri1cWX5oE/4fQrWyGBPGiY03wKYZVpg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5e5yP/btri1cWX5oE/4fQrWyGBPGiY03wKYZVpg1/img.png&quot; data-alt=&quot;posterior energy function&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5e5yP/btri1cWX5oE/4fQrWyGBPGiY03wKYZVpg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5e5yP%2Fbtri1cWX5oE%2F4fQrWyGBPGiY03wKYZVpg1%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;78&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;78&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;posterior energy function&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;1.1.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쌩뚱맞게 (2)번 식이 어디서 나왔냐면, (1)의 식에서 오메가 항(regularizer term)을 아래와 같이 설정하고, 1/n을 곱해주면 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;194&quot; data-origin-height=&quot;34&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c49MVz/btri5jgKOIP/ngY32kogNysU9mJaLgbHm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c49MVz/btri5jgKOIP/ngY32kogNysU9mJaLgbHm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c49MVz/btri5jgKOIP/ngY32kogNysU9mJaLgbHm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc49MVz%2Fbtri5jgKOIP%2FngY32kogNysU9mJaLgbHm0%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;194&quot; height=&quot;34&quot; data-origin-width=&quot;194&quot; data-origin-height=&quot;34&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;1.1.4&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;535&quot; data-origin-height=&quot;55&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgY1Oo/btri5kthZVu/s6sQPVglh9TF2oNc3xDO90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgY1Oo/btri5kthZVu/s6sQPVglh9TF2oNc3xDO90/img.png&quot; data-alt=&quot;posterior predictive, Bayes ensemble&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgY1Oo/btri5kthZVu/s6sQPVglh9TF2oNc3xDO90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgY1Oo%2Fbtri5kthZVu%2Fs6sQPVglh9TF2oNc3xDO90%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;535&quot; height=&quot;55&quot; data-origin-width=&quot;535&quot; data-origin-height=&quot;55&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;posterior predictive, Bayes ensemble&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 posterior predictive(다른 말로 Bayes ensemble) 식을 구하는 것은 매우 어려운 일이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 보통은 아래 식처럼 sample approximation 기법을 활용하여 적분을 sigma로 구한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;33&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsAFF1/btriZrUHFmL/DIEbJVRrWq74tT48N4tym0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsAFF1/btriZrUHFmL/DIEbJVRrWq74tT48N4tym0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsAFF1/btriZrUHFmL/DIEbJVRrWq74tT48N4tym0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbsAFF1%2FbtriZrUHFmL%2FDIEbJVRrWq74tT48N4tym0%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;320&quot; height=&quot;33&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;33&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때, parameter 집합인 theta는 posterior dist.에서 sampling하여 진행한다.&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.1.5&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존의 posterior(T=1일 때)로 task를 수행하기에는 성능이 잘 나오지 않았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 T &amp;lt; 1 인 temperature로 cooling한 posterior를 사용하게 되면 prediction 성능을 향상시킬 수 있다고 한다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Cold Posterior : holdout data에서 모든 temperized된 posterior들 중 가장 predictive 성능이 좋았던 posterior은 T&amp;lt;1인 Temperated posterior였다.&lt;/p&gt;
&lt;/blockquote&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;1.2 Why should Bayes (T=1) be Better?&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;1.2.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ensemble model(Bayes posterior) 방법론이 왜 일반적인 single parameter model 보다 더 성능이 좋을까?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그에 대한 이유는 3가지가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① posterior predictive 방법론으로 예측 성능을 내는 여러 model들이 likelihood에 기초한 가장 그럴싸한 point estimator를 도출한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② 실제 practive에서 classic한 통계모델이기 때문에 robustness가 좋다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;③ Model average 효과가 있다.&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.2.2&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.2.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문의 contribution은 아래와 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;CIFAR-10에서의 ResNet-20 model과 IMDB에서 CNN-LSTM, 두 모델과 dataset에서 Bayes posterior predictive는 성능이 좋지 못했다.&lt;br /&gt;심지어 SGD보다도 못했다.&lt;/li&gt;
&lt;li&gt;그래서 이를 설명할 수 있는 가설을 제시하고 검토했다.&lt;/li&gt;
&lt;li&gt;SG-MCMC를 이용한 approximation과 성능향상&lt;/li&gt;
&lt;/ul&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;&lt;b&gt;2. Cold Posterior Perform Better&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2.1 Deep Learning Model : ResNet-20 and LSTM&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SVJKE/btri1cCJyEA/AmhvffsFZIclzto6T26LcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SVJKE/btri1cCJyEA/AmhvffsFZIclzto6T26LcK/img.png&quot; data-origin-width=&quot;552&quot; data-origin-height=&quot;320&quot; style=&quot;width: 47.3083%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SVJKE/btri1cCJyEA/AmhvffsFZIclzto6T26LcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSVJKE%2Fbtri1cCJyEA%2FAmhvffsFZIclzto6T26LcK%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;552&quot; height=&quot;320&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9APH6/btri0ciJo0C/4wiS4Kx8rkEm7MduQcaig1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9APH6/btri0ciJo0C/4wiS4Kx8rkEm7MduQcaig1/img.png&quot; data-origin-width=&quot;543&quot; data-origin-height=&quot;289&quot; style=&quot;width: 51.5289%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9APH6/btri0ciJo0C/4wiS4Kx8rkEm7MduQcaig1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9APH6%2Fbtri0ciJo0C%2F4wiS4Kx8rkEm7MduQcaig1%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;543&quot; height=&quot;289&quot;/&gt;&lt;/span&gt;&lt;/div&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.1.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(3)번 식을 이용한 Bayes prediction에서 test cross-entropy와 test accuracy를 나타낸 그림이다.&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.1.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Cold Posterior Effect(이하 C.P.E.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CIFAR-10 데이터셋에서 ResNet-20 모델을 학습시켰을 때, temperature T가 1보다 작은 cooling posterior의 성능이 기존의 posterior(T=1일 때) 눈에 띄게 향상되었다는 것을 확인 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 T &amp;lt; 0.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;2.1.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(Appendix G 참고) uncertainty를 측정하는 지표인 Brier score와 ECE(expected calibration error)도 좋아졌다고 한다.&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.1.3 - Appendix G. Cold Posterior improve uncertainty metrics.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0tBzJ/btri8tvP21t/BwJ5fR8eiDoGX4VrUNaGY0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0tBzJ/btri8tvP21t/BwJ5fR8eiDoGX4VrUNaGY0/img.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;606&quot; style=&quot;width: 47.819%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0tBzJ/btri8tvP21t/BwJ5fR8eiDoGX4VrUNaGY0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0tBzJ%2Fbtri8tvP21t%2FBwJ5fR8eiDoGX4VrUNaGY0%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;606&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Y0J9c/btri44c0aoz/5yuPprwAe5WwkBR7tJX490/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Y0J9c/btri44c0aoz/5yuPprwAe5WwkBR7tJX490/img.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;568&quot; style=&quot;width: 51.0182%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Y0J9c/btri44c0aoz/5yuPprwAe5WwkBR7tJX490/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FY0J9c%2Fbtri44c0aoz%2F5yuPprwAe5WwkBR7tJX490%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;568&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Figure 18, 19는 ResNet-20과 CNN_LSTM 모델에 대해 cold posterior가 uncertainty metric인 Brier score와 ECE도 향상시켰다는 결과이다.&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.2. Why is a Temperature of T &amp;lt; 1 a Problem?&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior가 갖는 문제점이 2개가 있다고 한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;posterior를 더 sharpening하게 했다는 것
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;1/T라는 factor로 overcounting된 data를 설명할 수 있기 때문&lt;/li&gt;
&lt;li&gt;prior도 rescaling했기 때문&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;T=1이면 True Bayes posterior와 같고, T &amp;lt; 1에 대한 성능향상은 prior, likelihood, inference procedure과 함께 더 깊고, 잠재적인 문제를 해결할 수 있다는 것&lt;/li&gt;
&lt;/ol&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.3. Confirmation from the Literature&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vFODP/btri0CuBHrD/XVK6kbu5yNNSlMArZULjP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vFODP/btri0CuBHrD/XVK6kbu5yNNSlMArZULjP1/img.png&quot; data-origin-width=&quot;597&quot; data-origin-height=&quot;178&quot; style=&quot;width: 49.3623%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vFODP/btri0CuBHrD/XVK6kbu5yNNSlMArZULjP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvFODP%2Fbtri0CuBHrD%2FXVK6kbu5yNNSlMArZULjP1%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;597&quot; height=&quot;178&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cZH51d/btri5jHYL9a/tthCYkffcFWkpQLZ8XnqZ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cZH51d/btri5jHYL9a/tthCYkffcFWkpQLZ8XnqZ0/img.png&quot; data-origin-width=&quot;595&quot; data-origin-height=&quot;177&quot; style=&quot;width: 49.4749%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cZH51d/btri5jHYL9a/tthCYkffcFWkpQLZ8XnqZ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcZH51d%2Fbtri5jHYL9a%2FtthCYkffcFWkpQLZ8XnqZ0%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;595&quot; height=&quot;177&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;Tempering method&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;T&amp;lt;1를 하는 것은 사실 cold posterior가 처음이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 그림 외에도 posterior를 위한 variational inference(이하 V.I.)에서도 사용되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;V.I.에서 posterior를 구할 때, ELBO를 maximize하는데, KL-d term에 lambda &amp;lt; 1라는 factor를 주었더니 predictive 성능이 올라갔다는 연구결과도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 연구 리스트들로 tempering하는게 좋다는 기록과 연구가 남겨졌고, T=1인 일반적인 posterior를 갖는 BNN에서 성능이 좋다는 연구는 사실 보기 힘들다.&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;&lt;b&gt;3. Bayesian Deep Learning in Practice&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 절에서는 본 연구의 실험이 BNN posterior가 얼마나 효율적이고 정확했는지를 밝히고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 이번 절에서는 아래에 대한 back-ground가 있어야한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Langevin Dynamics&lt;/li&gt;
&lt;li&gt;SG-MCMC&lt;/li&gt;
&lt;/ol&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;&lt;b&gt;4. (수정중) Inference: Is it Accurate?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 일반적인 Bayes posterior와 cold posterior는 둘 다 계산할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 편, SG-MCMC는 mini-batch noise를 추가로 처리해야하고, 유한 표본에서 근사치만 생성한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종합하면, inference 정확도가 낮은데 C.P.E.가 발생할 수 있을까? 하는 의문이 들 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이로부터 발생하는 4가지 가설을 본 논문에서 제시한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Inaccurate SDE Simulation&lt;/li&gt;
&lt;li&gt;Biased SG-MCMC&lt;/li&gt;
&lt;li&gt;Minibatch Noise&lt;/li&gt;
&lt;li&gt;Bias-variance Tradeoff&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 것은 나중에 추가하기로 하겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-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;b&gt;5. Why could the Bayes Posterior be Poor?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;5.1. Problems in the likelihood function&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;5.1.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BNN에서도 기존에 사용되던 likelihood function이 사용되기 때문에 SGD를 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 같은 likelihood function이 SGD로 기존에 잘 작동되기 때문에 C.P.E.를 설명할 가능성은 낮은 것으로 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 요즘 DL 모델들은 많은 data augmentation, dropout, batch-normalization 등 다양한 테크닉들을 사용하지만 진정한 likelihood fuction이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5.1.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 나온 것이 Dirty-likelihood 가설이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;data augmentation, dropout, batch-normalization 등의 likelihood principal을 위반하는 DL practice는 bayes posterior에서 deviation(편향, 문제라고 해석?)을 일으킨다.&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;5.2. Problems with the Prior p(theta)?&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;5.2.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;귿오안 Normal distribution prior를 사용해왔는데 과연 이것이 괜찮은 prior인가?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5.2.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 알고 있는 모델 아키텍쳐라면 simple prior로 충분하고 그럴듯하지만, 신중해야한다.&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;5.2.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 Bad prior 가설이 나왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BNN parameter에 사용되는 prior는 적절하지 않다는 가설이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;의도한 정보를 제공하지 않고, 모델의 depth와 capacity가 증가함에 따라 이런 단점이 증폭한다.&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/140</guid>
      <comments>https://signing.tistory.com/140#entry140comment</comments>
      <pubDate>Tue, 26 Oct 2021 22:27:16 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect</title>
      <link>https://signing.tistory.com/139</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 소개] Cold Posterior Effect 관련 논문들&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1635055429527&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 소개] Cold Posterior Effect 관련 논문들&quot; data-og-description=&quot;베이지안 관련 최신 논문들을 찾다보니 또 하나의 새로운 개념을 알게 되었다. Cold Posterior Effect(이하 CPE.)라는 개념인데 아직 계속해서 공부중이고, 이 것을 파다보니 연관된 다른 논문들이 많이&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/131&quot; data-og-url=&quot;https://signing.tistory.com/131&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dwlG8F/hyL4IFF2CJ/VykuxbZk7KTMOXA8jq1jEK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/i4aYF/hyL4HmrWkP/5A8ZoHXdY5RjMaaPKnzbS0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJjUM/hyL5H6btD4/vtsYt7GXsgwiJTWvnmMjg1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/131&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dwlG8F/hyL4IFF2CJ/VykuxbZk7KTMOXA8jq1jEK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/i4aYF/hyL4HmrWkP/5A8ZoHXdY5RjMaaPKnzbS0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJjUM/hyL5H6btD4/vtsYt7GXsgwiJTWvnmMjg1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 소개] Cold Posterior Effect 관련 논문들&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;베이지안 관련 최신 논문들을 찾다보니 또 하나의 새로운 개념을 알게 되었다. Cold Posterior Effect(이하 CPE.)라는 개념인데 아직 계속해서 공부중이고, 이 것을 파다보니 연관된 다른 논문들이 많이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior를 연구 타겟으로 정했고, 공부하다보니 cold posterior가 data-aug.에 좋다는 논문을 여럿 보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 중에서 핵심적으로 다루는 논문인 것 같아 리뷰해보고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;abstract 같은 부분은 위의 이전의 포스팅에 해석해 두었으니 바로 본론으로 들어가겠다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1.1&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1038&quot; data-origin-height=&quot;91&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beDtuv/btriYH2SohS/bLU2HhRPyEgKDIqePvCEz1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beDtuv/btriYH2SohS/bLU2HhRPyEgKDIqePvCEz1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beDtuv/btriYH2SohS/bLU2HhRPyEgKDIqePvCEz1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeDtuv%2FbtriYH2SohS%2FbLU2HhRPyEgKDIqePvCEz1%2Fimg.png&quot; data-origin-width=&quot;1038&quot; data-origin-height=&quot;91&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;posterior predictive로 task 수행할 수 만 적분 때문에 계산이 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 MC sampling을 이용하여 근사하였다.&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.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MCMC방법론이 implement하기 쉽지만, 대용량의 dataset이거나 모델이 큰 경우, SG-MCMC를 사용한다.&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.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안 딥러닝은 accuracy와 효율적인 approxiamtion측면에서 좋은 연구를 거두고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 연구에 따르면 Cold Posterior Effect(이하 C.P.E.)는 predictive 성능향상을 가져왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.는 기존의 베이지안 패러다임에서 벗어나지만, heuristic하게 실용적이다.&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.4&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CPE는 실제 적용과 이론에 대해 문제가 있다.&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;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Isotropic Gaussian Prior&lt;/li&gt;
&lt;li&gt;likelihood model&lt;/li&gt;
&lt;li&gt;inaccurate inference&lt;/li&gt;
&lt;li&gt;data augmentation&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 이런 연구에도 불구하고 C.P.E.에 대해 직감적으로 와닿지 않는다.&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.5&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 문제들에 대해 본 논문에서는 다음과 같은 contribution을 갖는다.&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;Dataset curation hypothesis&lt;/b&gt; : C.P.E.는 실제 curation dataset에서 발생되지 않지만, curation정도가 다양하게 통제된 실험에서 생성될 수 있음을 경험적으로 보여준다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Data augmentation hypothesis&lt;/b&gt; : data augmentation은 필요하지만, C.P.E.가 존재하기 위해서는 필요하지 않다는 것을 경험적으로 보였다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Bad prior hypothesis&lt;/b&gt; : C.P.E.와 prior가 강하게 연결된 것과 prior와 likelihood의 중요성을 평가하는 실험을 했다&lt;/li&gt;
&lt;/ul&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.6&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.가 synthetic curation, data augmentation, bad-prior와 얼마다 다른 이야기인지 설명하는 논문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.를 3가지 factor로 재해석했다.&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;&lt;b&gt;2. Cold Posteriors: Background &amp;amp; Related Work&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.1&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1032&quot; data-origin-height=&quot;97&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n10mf/btri1cOAm8t/KpFVSJqSsSQ2KL8yRKEOzK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n10mf/btri1cOAm8t/KpFVSJqSsSQ2KL8yRKEOzK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n10mf/btri1cOAm8t/KpFVSJqSsSQ2KL8yRKEOzK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn10mf%2Fbtri1cOAm8t%2FKpFVSJqSsSQ2KL8yRKEOzK%2Fimg.png&quot; data-origin-width=&quot;1032&quot; data-origin-height=&quot;97&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 posterior에서 potential energy function인 U(theta)에 1/T만큼의 scaling(=tempering했다고도 표현)을 적용한 형태이다.&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.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;T=1이면 그냥 Bayes Posterior가 되고, T-&amp;gt;0이면 MAP estimation에 posterior를 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;2.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Note that, besides tempering the posterior as in Equation 3, one can also temper only the likelihood resp. scale only the log-likelihood, as is commonly done in VB, see Section 2.3 in (Wenzel et al., 2020). It is worth pointing out though that both variants are practically equivalent if the prior variance is multiplicative in log-prior pre-factors (such as for Gaussian priors) and if sufficiently many prior variances are grid-searched over as part of the inference pipeline, such that for the best performing posterior-tempered model there is a corresponding likelihood-tempered model with variance scaled by 1/T in the grid and vice versa.&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;2.4&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.가 잘못 산출될 수 있는 3가지 주요 요소가 있다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;model misspecification &lt;/b&gt;: likelihood 모델이 잘못되었을 경우&lt;/li&gt;
&lt;li&gt;&lt;b&gt;bad priors &lt;/b&gt;: prior가 BNN에서 불충분하게 사용되었을 경우&lt;/li&gt;
&lt;li&gt;&lt;b&gt;inaccurate inference &lt;/b&gt;: posteior에 대한 부정확한 inference가 되었을 경우&lt;/li&gt;
&lt;/ol&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.4.1 &lt;b&gt;Inaccurate Inference Hypothesis&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.가 SG-MCMC로 true posterior approximation을 잘 할 수 있었지만, 실제로 계산할 수 없는 true posterior에 접근할 수 없는데 근사했다는 문제가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2002.02405&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;에서 제안한 방법을 보면 ensemble statistics와 비교를 했는데, 이것이 inference 메커니즘에 문제가 있다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;여러 실험을 하면서 모니터링을 해봤지만 우리가 하는 inference가 정확한 것인지는 확신할 수 없었다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://openreview.net/pdf?id=cu6zDHCfhZx&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;Why Cold Posteriors? On the Suboptimal Generalization of Optimal Bayes Estimates&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #666666;&quot;&gt; 라는 논문에서 full-batch Hamiltonian Monte Carlo(이하 HMC)로 하는 inference가 좋았고, data augmentation을 하지 않을 때는 C.P.E.가 사라졌다고 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;이러한 결과가 &lt;span style=&quot;color: #666666;&quot;&gt;C.P.E.에서 inference가 잘못되었다는 증거로 오인할 수 있지만, 그렇지 않다고 생각할 근거가 있다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;data augmentation을 하지 않았을 때 &lt;a href=&quot;https://arxiv.org/abs/2002.02405&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #666666;&quot;&gt;에서 나와있는 모델에 적용된 SG-MCMC 기반 inference를 통해 C.P.E.가 발생하지 않음을 확인했다고 한다.&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 style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;이를 통해 SG-MCMC inference가 특정 설ㅈ어에서 정확하거나, C.P.E.가 나타나기 위해 부정확한 inference가 필요하지 않다는 결론을 낼 수 있다.&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;2.4.3 &lt;b&gt;Data Augmentation Hypothesis(model misspecification)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C.P.E.는 data augmentation에 좋은 수단 중 하나라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 주장은 ResNet CIFAR10 설정에서 data augmentation을 안하는 것이 C.P.E.를 제거하는데 충분하다고 하는 주자을 근거로 한다.&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/139</guid>
      <comments>https://signing.tistory.com/139#entry139comment</comments>
      <pubDate>Sun, 24 Oct 2021 21:16:17 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Don&amp;rsquo;t Blame the ELBO!A Linear VAE Perspective on Posterior Collapse</title>
      <link>https://signing.tistory.com/138</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://proceedings.neurips.cc/paper/2019/file/7e3315fe390974fcf25e44a9445bd821-Paper.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://proceedings.neurips.cc/paper/2019/file/7e3315fe390974fcf25e44a9445bd821-Paper.pdf&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Posterior collapse in Variational Autoencoders (VAEs) arises when the variational posterior distribution closely matches the prior for a subset of latent variables.&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;This paper presents a simple and intuitive explanation for posterior collapse through the analysis of linear VAEs and their direct correspondence with Probabilistic PCA (pPCA).&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;We explain how posterior collapse may occur in pPCA due to local maxima in the log marginal likelihood.&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;Unexpectedly, we prove that the ELBO objective for the linear VAE does not introduce additional spurious local maxima relative to log marginal likelihood.&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;We show further that training a linear VAE with exact variational inference recovers an identifiable global maximum corresponding to the principal component directions.&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;Empirically, we find that our linear analysis is predictive even for high-capacity, non-linear VAEs and helps explain the relationship between the observation noise, local maxima, and posterior collapse in deep Gaussian VAEs.&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/138</guid>
      <comments>https://signing.tistory.com/138#entry138comment</comments>
      <pubDate>Fri, 22 Oct 2021 17:58:53 +0900</pubDate>
    </item>
    <item>
      <title>[Adversarial] uncertainty based adversarial sample</title>
      <link>https://signing.tistory.com/135</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Adversarial Distillation of Bayesian Neural Network Posteriors &lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://proceedings.mlr.press/v80/wang18i/wang18i.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://proceedings.mlr.press/v80/wang18i/wang18i.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고자료&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;논문의 ppt 자료: &lt;a href=&quot;http://www.paulvicol.com/pdfs/AdversarialPosteriorDistillation_Slides.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;http://www.paulvicol.com/pdfs/AdversarialPosteriorDistillation_Slides.pdf&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;논문 설명(한글): &lt;a style=&quot;letter-spacing: 0px;&quot; href=&quot;https://pod3275.github.io/paper/2019/08/02/KDwithADVsamples.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://pod3275.github.io/paper/2019/08/02/KDwithADVsamples.html&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;Bayesian neural networks (BNNs) allow us to reason about uncertainty in a principled way.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BNN은 uncertainty를 사용해야함을 밝히는데 사용되었다.&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;i&gt;Stochastic Gradient Langevin Dynamics (SGLD) enables efficient BNN learning by drawing samples from the BNN posterior using mini-batches.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;SGLD 방법론으로 우리는 미니 배치를 사용한 BNN posterior로부터 샘플링을 함으로써 효율적은 posterior를 학습할 수 있었다.&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;i&gt;However, SGLD and its extensions require storage of many copies of the model parameters, a potentially prohibitive cost, especially for large neural networks.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;그러나 SGLD와 이 것을 확장한 방법론은 모델의 parameter의 많은 복사본을 담을 memory가 필요했고, 잠재적으로 cost 측면에서 그리 좋지 않았다. 특히 큰 모델일수록..&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;i&gt;We propose a framework, Adversarial Posterior Distillation, to distill the SGLD samples using a Generative Adversarial Network (GAN).&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 논문에서는 GAN을 이용하여 SGLD 샘플을 distill할 수 있는 방법론인 Adversarial Posterior Distillation framework를 제안한다.&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;i&gt;At test-time, samples are generated by the GAN.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;test를 할 때, 샘플은 GAN으로 생성된다.&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;i&gt;We show that this distillation framework incurs no loss in performance on recent BNN applications including anomaly detection, active learning, and defense against adversarial attacks.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 논문에서는 이 distillation framework가 anomaly detection, active learning와 adversarial attack defence&lt;span style=&quot;color: #000000;&quot;&gt;를 포함한 최근 BNN 응용 프로그램의 성능 손실을 초래하지 않는다는 것을 보여준다.&lt;/span&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;i&gt;By construction, our framework distills not only the Bayesian predictive distribution, but the posterior itself.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;그렇기 때문에, 이 framework는 베이지안 예측 분포 뿐 아니라 posterior 자체도 distill 한다.&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;i&gt;This allows one to compute quantities such as the approximate model variance, which is useful in downstream tasks.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이것은 &lt;span style=&quot;color: #000000;&quot;&gt;downstream task에서 유용한 approximate model variance처럼 quantity를 계산할 수 있다.&lt;/span&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;i&gt; To our knowledge, these are the first results applying MCMC-based BNNs to the aforementioned applications.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;앞서 언급한 application에 대해서는 MCMC-based BNN을 적용시킨 첫번째 결과일 것이다.&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;&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;Adverserial Atteck 참고: (국내 논문) 딥러닝 모델에 대한 적대적 사례 기술 동향&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://www.koreascience.or.kr/article/JAKO202115463009722.pdf&quot;&gt;JAKO202115463009722.pdf (koreascience.or.kr)&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;&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/135</guid>
      <comments>https://signing.tistory.com/135#entry135comment</comments>
      <pubDate>Tue, 19 Oct 2021 19:19:22 +0900</pubDate>
    </item>
    <item>
      <title>[zero-shot] uncertainty 관련 zero-shot 글들</title>
      <link>https://signing.tistory.com/134</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;zero-shot이란?&lt;/b&gt;&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;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://arxiv.org/abs/2011.08641&quot;&gt;https://arxiv.org/abs/2011.08641&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473607413&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;A Review of Generalized Zero-Shot Learning Methods&quot; data-og-description=&quot;Generalized zero-shot learning (GZSL) aims to train a model for classifying data samples under the condition that some output classes are unknown during supervised learning. To address this challenging task, GZSL leverages semantic information of the seen &quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2011.08641&quot; data-og-url=&quot;https://arxiv.org/abs/2011.08641v3&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/brzvMv/hyLZZmOgzj/2IYfjkRIUQ6zhvbs6OlOqK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2011.08641&quot; data-source-url=&quot;https://arxiv.org/abs/2011.08641&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/brzvMv/hyLZZmOgzj/2IYfjkRIUQ6zhvbs6OlOqK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;A Review of Generalized Zero-Shot Learning Methods&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Generalized zero-shot learning (GZSL) aims to train a model for classifying data samples under the condition that some output classes are unknown during supervised learning. To address this challenging task, GZSL leverages semantic information of the seen&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;zero-shot 설명&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://deep-learning-study.tistory.com/873?category=1027729&quot;&gt;https://deep-learning-study.tistory.com/873?category=1027729&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1634473607416&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 읽기] Zero-Shot Learning(ZSL) 이란?&quot; data-og-description=&quot;&amp;nbsp;새로운 분야 공부를 시작할 때, survey 논문을 먼저 보는 편인데 Zero shot에 흥미가 생겨서 survey 논문을 읽어봤다. Zero-Shot learning 에 대해 설명되어 있는 한국어 자료가 많이 없는 것 같아서 한번 &quot; data-og-host=&quot;deep-learning-study.tistory.com&quot; data-og-source-url=&quot;https://deep-learning-study.tistory.com/873?category=1027729&quot; data-og-url=&quot;https://deep-learning-study.tistory.com/873&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/mjM8d/hyLZP5ynqK/ikNMo1kKK50IuZtlfZau30/img.png?width=497&amp;amp;height=393&amp;amp;face=0_0_497_393,https://scrap.kakaocdn.net/dn/YmxHB/hyLZTfPHyT/OH5wUJ8yL2x6nkgQEQrJOk/img.png?width=497&amp;amp;height=393&amp;amp;face=0_0_497_393,https://scrap.kakaocdn.net/dn/cvLpjO/hyLZZ8bjno/nXDDYjvj6EXN0R1l5AhqP0/img.png?width=643&amp;amp;height=520&amp;amp;face=0_0_643_520&quot;&gt;&lt;a href=&quot;https://deep-learning-study.tistory.com/873?category=1027729&quot; data-source-url=&quot;https://deep-learning-study.tistory.com/873?category=1027729&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/mjM8d/hyLZP5ynqK/ikNMo1kKK50IuZtlfZau30/img.png?width=497&amp;amp;height=393&amp;amp;face=0_0_497_393,https://scrap.kakaocdn.net/dn/YmxHB/hyLZTfPHyT/OH5wUJ8yL2x6nkgQEQrJOk/img.png?width=497&amp;amp;height=393&amp;amp;face=0_0_497_393,https://scrap.kakaocdn.net/dn/cvLpjO/hyLZZ8bjno/nXDDYjvj6EXN0R1l5AhqP0/img.png?width=643&amp;amp;height=520&amp;amp;face=0_0_643_520');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 읽기] Zero-Shot Learning(ZSL) 이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;새로운 분야 공부를 시작할 때, survey 논문을 먼저 보는 편인데 Zero shot에 흥미가 생겨서 survey 논문을 읽어봤다. Zero-Shot learning 에 대해 설명되어 있는 한국어 자료가 많이 없는 것 같아서 한번&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;deep-learning-study.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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;b&gt;Uncertainty를 이용한 응용&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문 : Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&quot;&gt;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473607419&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation&quot; data-og-description=&quot;Requests for name changes in the electronic proceedings will be accepted with no questions asked. However name changes may cause bibliographic tracking issues. Authors are asked to consider this carefully and discuss it with their co-authors prior to reque&quot; data-og-host=&quot;proceedings.neurips.cc&quot; data-og-source-url=&quot;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&quot; data-og-url=&quot;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&quot; data-source-url=&quot;https://proceedings.neurips.cc/paper/2020/hash/f73b76ce8949fe29bf2a537cfa420e8f-Abstract.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Requests for name changes in the electronic proceedings will be accepted with no questions asked. However name changes may cause bibliographic tracking issues. Authors are asked to consider this carefully and discuss it with their co-authors prior to reque&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;proceedings.neurips.cc&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&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://deep-learning-study.tistory.com/884&quot;&gt;https://deep-learning-study.tistory.com/884&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473607421&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 읽기] Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation(2020)&quot; data-og-description=&quot;Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation &amp;nbsp;PDF,&amp;nbsp;Zero-Shot Segmentation, Xizhou et al, neurips 2020 Summary &amp;nbsp;논문에서 지적하는 문제점 (1) training set에 noise가 존재 &amp;nbsp;왜? 이..&quot; data-og-host=&quot;deep-learning-study.tistory.com&quot; data-og-source-url=&quot;https://deep-learning-study.tistory.com/884&quot; data-og-url=&quot;https://deep-learning-study.tistory.com/884&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b3TM2N/hyLZYIbvJJ/qrRy2G1OFoA3gBaavBwpqk/img.png?width=800&amp;amp;height=247&amp;amp;face=0_0_800_247,https://scrap.kakaocdn.net/dn/pezVI/hyLZXJhpzv/M17X9YtWIrJBtkOhU8Cmk1/img.png?width=800&amp;amp;height=247&amp;amp;face=0_0_800_247,https://scrap.kakaocdn.net/dn/Ajjlc/hyLZTNEZzi/fEzaTpbM7yIcQBGMndd6Ek/img.jpg?width=935&amp;amp;height=1101&amp;amp;face=366_474_479_597&quot;&gt;&lt;a href=&quot;https://deep-learning-study.tistory.com/884&quot; data-source-url=&quot;https://deep-learning-study.tistory.com/884&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b3TM2N/hyLZYIbvJJ/qrRy2G1OFoA3gBaavBwpqk/img.png?width=800&amp;amp;height=247&amp;amp;face=0_0_800_247,https://scrap.kakaocdn.net/dn/pezVI/hyLZXJhpzv/M17X9YtWIrJBtkOhU8Cmk1/img.png?width=800&amp;amp;height=247&amp;amp;face=0_0_800_247,https://scrap.kakaocdn.net/dn/Ajjlc/hyLZTNEZzi/fEzaTpbM7yIcQBGMndd6Ek/img.jpg?width=935&amp;amp;height=1101&amp;amp;face=366_474_479_597');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 읽기] Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation(2020)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Uncertainty-Aware Learning for Zero-Shot Semantic Segmentation &amp;nbsp;PDF,&amp;nbsp;Zero-Shot Segmentation, Xizhou et al, neurips 2020 Summary &amp;nbsp;논문에서 지적하는 문제점 (1) training set에 noise가 존재 &amp;nbsp;왜? 이..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;deep-learning-study.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/134</guid>
      <comments>https://signing.tistory.com/134#entry134comment</comments>
      <pubDate>Sun, 17 Oct 2021 21:27:35 +0900</pubDate>
    </item>
    <item>
      <title>[Calibration] Temperated Scaling에 관하여</title>
      <link>https://signing.tistory.com/133</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Calibration이란?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;calibration 설명 : &lt;a href=&quot;https://3months.tistory.com/490&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://3months.tistory.com/490&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634460312228&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문리뷰] 현대 딥러닝의 Calibration 에 대하여&quot; data-og-description=&quot;[논문리뷰] 현대 딥러닝의 Calibration 에 대하여 현대 Neural network 의 calibration 에 관하여라는 논문을 리뷰하여 포스팅하겠습니다. 딥러닝의 성능 (performance) 이라 하면 일반적인 용어&amp;nbsp;'정확도' 를 뜻&quot; data-og-host=&quot;3months.tistory.com&quot; data-og-source-url=&quot;https://3months.tistory.com/490&quot; data-og-url=&quot;https://3months.tistory.com/490&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/7T2AK/hyLZZf3APw/LKfmiVUOtiYraIGJUQPkQk/img.png?width=800&amp;amp;height=550&amp;amp;face=0_0_800_550,https://scrap.kakaocdn.net/dn/bEbUwt/hyLZ2cLUiX/hyEKMl7RUj0s2qVuMGsfV1/img.png?width=800&amp;amp;height=550&amp;amp;face=0_0_800_550,https://scrap.kakaocdn.net/dn/iGaDS/hyLZZf3AIy/HpCVYChikkKmB1NKKq07x1/img.jpg?width=1333&amp;amp;height=1333&amp;amp;face=0_0_1333_1333&quot;&gt;&lt;a href=&quot;https://3months.tistory.com/490&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://3months.tistory.com/490&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/7T2AK/hyLZZf3APw/LKfmiVUOtiYraIGJUQPkQk/img.png?width=800&amp;amp;height=550&amp;amp;face=0_0_800_550,https://scrap.kakaocdn.net/dn/bEbUwt/hyLZ2cLUiX/hyEKMl7RUj0s2qVuMGsfV1/img.png?width=800&amp;amp;height=550&amp;amp;face=0_0_800_550,https://scrap.kakaocdn.net/dn/iGaDS/hyLZZf3AIy/HpCVYChikkKmB1NKKq07x1/img.jpg?width=1333&amp;amp;height=1333&amp;amp;face=0_0_1333_1333');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문리뷰] 현대 딥러닝의 Calibration 에 대하여&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;[논문리뷰] 현대 딥러닝의 Calibration 에 대하여 현대 Neural network 의 calibration 에 관하여라는 논문을 리뷰하여 포스팅하겠습니다. 딥러닝의 성능 (performance) 이라 하면 일반적인 용어&amp;nbsp;'정확도' 를 뜻&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;3months.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문 : &lt;a href=&quot;https://arxiv.org/abs/1909.13550&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/1909.13550&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473530522&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Well-calibrated Model Uncertainty with Temperature Scaling for Dropout Variational Inference&quot; data-og-description=&quot;Model uncertainty obtained by variational Bayesian inference with Monte Carlo dropout is prone to miscalibration. The uncertainty does not represent the model error well. In this paper, temperature scaling is extended to dropout variational inference to ca&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/1909.13550&quot; data-og-url=&quot;https://arxiv.org/abs/1909.13550v3&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bKxF5P/hyLZVko18C/O8kBFLmYyuJSRHKbmzLUNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1909.13550&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/1909.13550&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bKxF5P/hyLZVko18C/O8kBFLmYyuJSRHKbmzLUNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Well-calibrated Model Uncertainty with Temperature Scaling for Dropout Variational Inference&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Model uncertainty obtained by variational Bayesian inference with Monte Carlo dropout is prone to miscalibration. The uncertainty does not represent the model error well. In this paper, temperature scaling is extended to dropout variational inference to ca&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;블로그 :&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://queez0405.github.io/lol-project-3/&quot;&gt;https://queez0405.github.io/lol-project-3/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473544911&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;롤은 못하지만 딥러닝은 잘하지 - 3&quot; data-og-description=&quot;딥러닝으로 게임 리그 오브 레전드의 결과를 예측하려는 시도가 아닌 confidence-calibration을 하자&quot; data-og-host=&quot;queez0405.github.io&quot; data-og-source-url=&quot;https://queez0405.github.io/lol-project-3/&quot; data-og-url=&quot;https://queez0405.github.io/lol-project-3/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/1N3fC/hyLZUzgKc2/DBBylaKctYtWanhIlK1CVk/img.jpg?width=1080&amp;amp;height=1080&amp;amp;face=0_0_1080_1080,https://scrap.kakaocdn.net/dn/eNn34/hyLZXbGG8G/AfLT3UMcVgeyUCAzmEzQt1/img.jpg?width=1080&amp;amp;height=1080&amp;amp;face=0_0_1080_1080&quot;&gt;&lt;a href=&quot;https://queez0405.github.io/lol-project-3/&quot; data-source-url=&quot;https://queez0405.github.io/lol-project-3/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/1N3fC/hyLZUzgKc2/DBBylaKctYtWanhIlK1CVk/img.jpg?width=1080&amp;amp;height=1080&amp;amp;face=0_0_1080_1080,https://scrap.kakaocdn.net/dn/eNn34/hyLZXbGG8G/AfLT3UMcVgeyUCAzmEzQt1/img.jpg?width=1080&amp;amp;height=1080&amp;amp;face=0_0_1080_1080');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;롤은 못하지만 딥러닝은 잘하지 - 3&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;딥러닝으로 게임 리그 오브 레전드의 결과를 예측하려는 시도가 아닌 confidence-calibration을 하자&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;queez0405.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;--&amp;gt; reliability diagram에서 calibratioin의 개선을 aleatoric uncertainty로 input uncertainty를 측정하여 더욱 reliable한 결과를 나타내었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style4&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;응용 논문 : Well-calibrated Model Uncertainty with Temperature Scaling for Dropout Variational Inference&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1909.13550&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/1909.13550&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634460356994&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Well-calibrated Model Uncertainty with Temperature Scaling for Dropout Variational Inference&quot; data-og-description=&quot;Model uncertainty obtained by variational Bayesian inference with Monte Carlo dropout is prone to miscalibration. The uncertainty does not represent the model error well. In this paper, temperature scaling is extended to dropout variational inference to ca&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/1909.13550&quot; data-og-url=&quot;https://arxiv.org/abs/1909.13550v3&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bKxF5P/hyLZVko18C/O8kBFLmYyuJSRHKbmzLUNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1909.13550&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/1909.13550&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bKxF5P/hyLZVko18C/O8kBFLmYyuJSRHKbmzLUNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Well-calibrated Model Uncertainty with Temperature Scaling for Dropout Variational Inference&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Model uncertainty obtained by variational Bayesian inference with Monte Carlo dropout is prone to miscalibration. The uncertainty does not represent the model error well. In this paper, temperature scaling is extended to dropout variational inference to ca&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/133</guid>
      <comments>https://signing.tistory.com/133#entry133comment</comments>
      <pubDate>Sun, 17 Oct 2021 17:52:08 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Stochastic gradient Markov chain Monte Carlo</title>
      <link>https://signing.tistory.com/132</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;지난 시간 cold posterior를 파던 중 알면 좋을 것 같은 논문을 찾았고, 나중에 읽어보면 좋을 거 같아 기록용으로 올립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link:&amp;nbsp;&lt;a href=&quot;https://arxiv.org/abs/1907.06986&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/1907.06986&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1633779628823&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Stochastic gradient Markov chain Monte Carlo&quot; data-og-description=&quot;Markov chain Monte Carlo (MCMC) algorithms are generally regarded as the gold standard technique for Bayesian inference. They are theoretically well-understood and conceptually simple to apply in practice. The drawback of MCMC is that in general performing&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/1907.06986&quot; data-og-url=&quot;https://arxiv.org/abs/1907.06986v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bTMN3z/hyLUtAoRkj/T4woFZY3iG58nTt1qddiB0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/1907.06986&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/1907.06986&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bTMN3z/hyLUtAoRkj/T4woFZY3iG58nTt1qddiB0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Stochastic gradient Markov chain Monte Carlo&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Markov chain Monte Carlo (MCMC) algorithms are generally regarded as the gold standard technique for Bayesian inference. They are theoretically well-understood and conceptually simple to apply in practice. The drawback of MCMC is that in general performing&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Markov chain Monte Carlo (MCMC) algorithms are generally regarded as the gold standard technique for Bayesian inference.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;MCMC 알고리즘은 베이지안 추론에서 가장 중요하게 사용되는 기본적인 방법론이다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;They are theoretically well-understood and conceptually simple to apply in practice.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이 방법론은 이론적으로 잘 이해가되고 개념적으로도 쉬워서 실제로 적용하기 좋다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;The drawback of MCMC is that in general performing exact inference requires all of the data to be processed at each iteration of the algorithm.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;MCMC의 단점은 정확한 inference를 위해서라면 알고리즘의 각 iteration에서 모든 데이터에 대해 적용이 되어야한다는 것이다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;For large data sets, the computational cost of MCMC can be prohibitive, which has led to recent developments in scalable Monte Carlo algorithms that have a significantly lower computational cost than standard MCMC.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그래서 큰 데이터셋에서는 계산비용이 엄청나다. 최근 scalable MC 알고리즘에서 개발된 것은 기존의 MCMC보다 덜 계산비용이 들어가긴 하다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;In this paper, we focus on a particular class of scalable Monte Carlo algorithms, stochastic gradient Markov chain Monte Carlo (SGMCMC) which utilises data subsampling techniques to reduce the per-iteration cost of MCMC.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이 논문에서는 scalable MC 알고리즘의 한 종류인 SGMCMC에 중심적으로 다루고 있다.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;SGMCMC: MCMC의 매 iteration 비용을 줄여주는 subsampling 기법을 사용한다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; We provide an introduction to some popular SGMCMC algorithms and review the supporting theoretical results, as well as comparing the efficiency of SGMCMC algorithms against MCMC on benchmark examples.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;유명한 SGMCMC 알고리즘들을 소개하고, &lt;span style=&quot;color: #000000;&quot;&gt;SGMCMC와 MCMC의 효율성을 비교하는&lt;/span&gt; 지지하는 이론적 결과를 리뷰하였다고 한다.&lt;/span&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;&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;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서 SG-MCMC를 주로 사용하는데, 이것은 &lt;a href=&quot;https://signing.tistory.com/131&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;전 포스팅&lt;/a&gt;에서도 소개했던 &lt;u&gt;&lt;i&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/i&gt;&lt;/u&gt;&lt;i&gt; &lt;/i&gt;에서의 핵심 알고리즘으로 소개된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 본 논문의 2.1.절에서 The Langevin Diffusion 라는 개념이 나오는데, 물리학에서 브라운 운동에 대한 표현식으로 사용되는 개념을 가져온 것으로 보여진다.(&lt;s&gt;그럼 R.P. , random process와도 연관이 있는건가?&lt;/s&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 중 potential function이라는 것이 Langevin Diffusion의 핵심으로 보여지는데, 이 부분이 중요한듯하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 그림은 potential function을 나타낸 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;268&quot; data-origin-height=&quot;49&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/loivw/btrhd6jq60K/dLiKxA3QtQwduF8NxAj4MK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/loivw/btrhd6jq60K/dLiKxA3QtQwduF8NxAj4MK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/loivw/btrhd6jq60K/dLiKxA3QtQwduF8NxAj4MK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Floivw%2Fbtrhd6jq60K%2FdLiKxA3QtQwduF8NxAj4MK%2Fimg.png&quot; data-origin-width=&quot;268&quot; data-origin-height=&quot;49&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;45&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cZcXXF/btrhgjJdJ8Y/GWFlBO5uiBeI1OGypdk1z0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cZcXXF/btrhgjJdJ8Y/GWFlBO5uiBeI1OGypdk1z0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cZcXXF/btrhgjJdJ8Y/GWFlBO5uiBeI1OGypdk1z0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcZcXXF%2FbtrhgjJdJ8Y%2FGWFlBO5uiBeI1OGypdk1z0%2Fimg.png&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;45&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;꼴을 자세히 보면, 결국 모든 데이터에 대해 likelihood와 prior를 곱한 꼴이므로 posterior에 가깝다고 볼 수 있는데, 위의 U(theta)를 수식으로 나열하면 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;432&quot; data-origin-height=&quot;108&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MrDAc/btrhfSdTEu6/iGWOULvtU3uyYU6UrxwO90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MrDAc/btrhfSdTEu6/iGWOULvtU3uyYU6UrxwO90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MrDAc/btrhfSdTEu6/iGWOULvtU3uyYU6UrxwO90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMrDAc%2FbtrhfSdTEu6%2FiGWOULvtU3uyYU6UrxwO90%2Fimg.png&quot; data-origin-width=&quot;432&quot; data-origin-height=&quot;108&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 데이터에 대해 log-likelihood를 더하고, 그 값에 log prior를 더하여 음수를 씌운 수식으로 정리할 수 있다.&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;아래는 MCMC에 대해 잘 설명한 정리글이 있어 공유한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://angeloyeo.github.io/2020/09/17/MCMC.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://angeloyeo.github.io/2020/09/17/MCMC.html&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1633781581817&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Markov Chain Monte Carlo - 공돌이의 수학정리노트&quot; data-og-description=&quot;&quot; data-og-host=&quot;angeloyeo.github.io&quot; data-og-source-url=&quot;https://angeloyeo.github.io/2020/09/17/MCMC.html&quot; data-og-url=&quot;https://angeloyeo.github.io/2020/09/17/MCMC.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://angeloyeo.github.io/2020/09/17/MCMC.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://angeloyeo.github.io/2020/09/17/MCMC.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Markov Chain Monte Carlo - 공돌이의 수학정리노트&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;angeloyeo.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/132</guid>
      <comments>https://signing.tistory.com/132#entry132comment</comments>
      <pubDate>Sat, 9 Oct 2021 21:53:08 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Cold Posterior Effect 관련 논문들</title>
      <link>https://signing.tistory.com/131</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;베이지안 관련 최신 논문들을 찾다보니 또 하나의 새로운 개념을 알게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Cold Posterior Effect(이하 CPE.)라는 개념인데 아직 계속해서 공부중이고, 이 것을 파다보니 연관된 다른 논문들이 많이 나와서 소개하고자 한다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. A statistical theory of cold posteriors in deep neural networks&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://arxiv.org/abs/2008.05912&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2008.05912&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1632560929579&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;A statistical theory of cold posteriors in deep neural networks&quot; data-og-description=&quot;To get Bayesian neural networks to perform comparably to standard neural networks it is usually necessary to artificially reduce uncertainty using a &amp;quot;tempered&amp;quot; or &amp;quot;cold&amp;quot; posterior. This is extremely concerning: if the prior is accurate, Bayes inference/dec&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2008.05912&quot; data-og-url=&quot;https://arxiv.org/abs/2008.05912v2&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/GpBrX/hyLI7FOBoC/aCXTWAwmm8aI3tfUKZBWdK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2008.05912&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2008.05912&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/GpBrX/hyLI7FOBoC/aCXTWAwmm8aI3tfUKZBWdK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;A statistical theory of cold posteriors in deep neural networks&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;To get Bayesian neural networks to perform comparably to standard neural networks it is usually necessary to artificially reduce uncertainty using a &quot;tempered&quot; or &quot;cold&quot; posterior. This is extremely concerning: if the prior is accurate, Bayes inference/dec&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;To get Bayesian neural networks to perform comparably to standard neural networks it is usually necessary to artificially reduce uncertainty using a &quot;tempered&quot; or &quot;cold&quot; posterior.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Standard NN과 비슷한 수준의 BNN을 구하기 위해서는 &quot;tempered&quot; 혹은 &quot;cold&quot; posterior를 사용하여 불확실성을 줄여야한다.(온도 개념이 결합된 느낌...)&lt;/span&gt;&lt;/b&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 data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;This is extremely concerning: if the prior is accurate, Bayes inference/decision theory is optimal, and any artificial changes to the posterior should harm performance.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;prior가 명확하다면, 베이즈 추론/결정 이론이 가장 적합할 것이고, posterior에 대한 인공적인 변화는 안좋은 성능을 낼 것이다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;While this suggests that the prior may be at fault, here we argue that in fact, BNNs for image classification use the wrong likelihood.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;prior가 잘못되었다면, image classfication같은 과제에서 BNN은 잘못된 likelihood를 사용할 것이다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;In particular, standard image benchmark datasets such as CIFAR-10 are carefully curated.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;특히, CIFAR-10 같은 standard image dataset에서는 더 그렇다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;We develop a generative model describing curation which gives a principled Bayesian account of cold posteriors, because the likelihood under this new generative model closely matches the tempered likelihoods used in past work.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 연구자들은 cold posterior의 원칙적인 베이지안 설명을 덧붙여 생성모델을 개발했다고 한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;왜냐하면, 생성모델에 대한 likelihood는 과거 연구에서 사용되었던 tempered likelihood와 비슷하기 때문이다.&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내 개인적으로는 이 논문은 cold posterior의 입문서 같은 느낌이 든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다 읽어보진 않았지만, 다른 논문들에 비해 cold posterior에 대해 깊이 다룬다는 느낌이 든다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;2. What Are Bayesian Neural Network Posteriors Really Like?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://arxiv.org/abs/2104.14421&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2104.14421&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1632636169357&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;What Are Bayesian Neural Network Posteriors Really Like?&quot; data-og-description=&quot;The posterior over Bayesian neural network (BNN) parameters is extremely high-dimensional and non-convex. For computational reasons, researchers approximate this posterior using inexpensive mini-batch methods such as mean-field variational inference or sto&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2104.14421&quot; data-og-url=&quot;https://arxiv.org/abs/2104.14421v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/pu7Pz/hyLIVy7oJU/EfakrK6kZsNycopYGqkndK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2104.14421&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2104.14421&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/pu7Pz/hyLIVy7oJU/EfakrK6kZsNycopYGqkndK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;What Are Bayesian Neural Network Posteriors Really Like?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The posterior over Bayesian neural network (BNN) parameters is extremely high-dimensional and non-convex. For computational reasons, researchers approximate this posterior using inexpensive mini-batch methods such as mean-field variational inference or sto&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;The posterior over Bayesian neural network (BNN) parameters is extremely high-dimensional and non-convex.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BNN parameter의 posterior는 매우 high-dimensional하고 convex하지 않다.&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;i&gt;For computational reasons, researchers approximate this posterior using inexpensive mini-batch methods such as meanfield variational inference or stochastic-gradient Markov chain Monte Carlo (SGMCMC).&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;연산적인 이유로, 연구자들은 이런 posterior를 expensive하지 않은 mini-batch 방법론을 사용하여 근사한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;예를 들면, meanfield variational inference 혹은 SGMCMC와 같은 방법론이 있다.&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;i&gt;To investigate foundational questions in Bayesian deep learning, we instead use full-batch Hamiltonian Monte Carlo (HMC) on modern architectures.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;베이지안 딥러닝에 대해 근본적인 물음에 답하기 위해, 본 연구진들은 HMC 방법론을 최신 아키텍쳐에 사용하였다고 한다.&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;i&gt;We show that&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;(1) BNNs can achieve significant performance gains over standard training and deep ensembles;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BNN이 standard 학습법과 deep 앙상블을 뛰어 넘는 유의미한 성능을 보였다.&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;i&gt;(2) a single long HMC chain can provide a comparable representation of the posterior to multiple shorter chains;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;단일의 긴 HMC chain은 다중의 더 짧은 chain들과 posterior의 representation에 대해 동등한 수준의 성능을 보여준다.&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;i&gt;(3) in contrast to recent studies, we find posterior tempering is not needed for near-optimal performance, with little evidence for a &amp;ldquo;cold posterior&amp;rdquo; effect, which we show is largely an artifact of data augmentation;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;다른 최신 논문들과 비교했을 때, 본 연구진들은 posterior tempering이 꼭 최적에 근사한 수준의 성능이 필요하진 않는 것을 밝혀냈다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;여기서 posterior tempering은 &quot;cold posterior&quot; effect의 작은 증거가 될 수 있고, 이것은 data augumentation의 큰 발견이라 볼 수 있다.&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;i&gt;(4) BMA performance is robust to the choice of prior scale, and relatively similar for diagonal Gaussian, mixture of Gaussian, and logistic priors;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BMA 성는은 prior의 scale에 대해 robust하며, 상대적으로 diagonal Gaussian, mixture Gaussian, 그리고 logistic prior와 비슷한 성능이라고 한다.&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;i&gt;(5) Bayesian neural networks show surprisingly poor generalization under domain shift;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;BNN은 domain이 변경되면 놀랄만큼 일반화를 이루지 못한다.&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;i&gt;(6) while cheaper alternatives such as deep ensembles and SGMCMC can provide good generalization, they provide distinct predictive distributions from HMC.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;반면에 값싼 대체품, 예를 들면 딥앙상블과 SGMCMC, 같은 것들은 좋은 일반화를 보여준다. 이 방법론들은 HMC로부터 유일한 predictive distribution을 제공한다.&lt;/b&gt;&lt;/span&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;i&gt;Notably, deep ensemble predictive distributions are similarly close to HMC as standard SGLD, and closer than standard variational inference.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;딥앙상블의 predictive distribution은 standard SGLD로써의 HMC와 매우 비슷하고, standard V.I와 더 비슷하다.&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;b&gt;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문은 구글 리서치 팀과 뉴욕대가 공동 연구한 논문이다. 직접적인 cold posterior를 다루고 있지는 않지만, 무려 구글리서치팀과 뉴욕대의 합작품이고, BNN의 posterior에 대해 깊히 다루고 있다는 느낌이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 페이지는 24페이지이지만, 실질적인 내용은 13페이지 정도이다.(그래도 많은 느낌...ㅠ)&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3. Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://arxiv.org/abs/2106.06596&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2106.06596&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1632788053730&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&quot; data-og-description=&quot;The &amp;quot;cold posterior effect&amp;quot; (CPE) in Bayesian deep learning describes the uncomforting observation that the predictive performance of Bayesian neural networks can be significantly improved if the Bayes posterior is artificially sharpened using a temperatur&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2106.06596&quot; data-og-url=&quot;https://arxiv.org/abs/2106.06596v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b8Jcpf/hyLKnbeoO9/2plytvyxjVWQXCeaE1KZGK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2106.06596&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2106.06596&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b8Jcpf/hyLKnbeoO9/2plytvyxjVWQXCeaE1KZGK/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Disentangling the Roles of Curation, Data-Augmentation and the Prior in the Cold Posterior Effect&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The &quot;cold posterior effect&quot; (CPE) in Bayesian deep learning describes the uncomforting observation that the predictive performance of Bayesian neural networks can be significantly improved if the Bayes posterior is artificially sharpened using a temperatur&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;The &quot;cold posterior effect&quot; (CPE) in Bayesian deep learning describes the uncomforting observation that the predictive performance of Bayesian neural networks can be significantly improved if the Bayes posterior is artificially sharpened using a temperature parameter T&amp;lt;1.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;베이지안 딥러닝에서의 C.P.E.는 T&amp;lt;1 인 temperature parameter을 이용하여 Bayes posterior를 인공적으로 뾰족하게 하여 예측 성능 향상을 이끌었다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;The CPE is problematic in theory and practice and since the effect was identified many researchers have proposed hypotheses to explain the phenomenon.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;CPE는 이론과 실제에서 문제가 있으며, 그 효과가 확인된 이후 많은 연구자들이 이 현상을 설명하기 위해 가설을 제안했다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;However, despite this intensive research effort the effect remains poorly understood.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;In this work we provide novel and nuanced evidence relevant to existing explanations for the cold posterior effect, disentangling three hypotheses:&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이번 연구에서는 C.P.E.에 대한 기존 설명과 3가지 가설을 준비했다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1. The dataset curation hypothesis of Aitchison (2020):&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;we show empirically that the CPE does not arise in a real curated data set but can be produced in a controlled experiment with varying curation strength.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;CPE는 실제 큐레이션된 데이터 세트에서 발생하지 않지만 큐레이션 강도가 다양한 통제된 실험에서 생성될 수 있음을 경험적으로 보여준다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2. The data augmentation hypothesis of Izmailov et al. (2021) and Fortuin et al. (2021):&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;we show empirically that data augmentation is sufficient but not necessary for the CPE to be present.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;경험적으로 data augmentation이 충분하지만, CPE를 위해서라면 필요하지 않다는 것을 보여준다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;3. The bad prior hypothesis of Wenzel et al. (2020):&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;we use a simple experiment evaluating the relative importance of the prior and the likelihood, strongly linking the CPE to the prior.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;CPE와 긴밀히 연관이 있는 prior의 중요성과 가능성을 평가하는 실험을 했다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Our results demonstrate how the CPE can arise in isolation from synthetic curation, data augmentation, and bad priors.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 연구 결과는 어떻게 CPE가 &lt;span style=&quot;color: #000000;&quot;&gt;synthetic curation, data augmentation, and bad priors로 부터 분리하여 뜰 수 있었는지를 설명한다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Cold posteriors observed &quot;in the wild&quot; are therefore unlikely to arise from a single simple cause;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;실제적으로 관찰되는 cold posterior는 단순한 원인에 의해 발생하는 것처럼 보이지 않는다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;as a result, we do not expect a simple &quot;fix&quot; for cold posteriors.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #dddddd;&quot;&gt;&lt;s&gt;결과적으로 우리는 간단한 6개의 cold posterior를 기대하진 않았다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;결과적으로 우리는 간단한 고정된 cold posterior를 기대하진 않는다.(수정 반영)&lt;/span&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4. Data augmentation in Bayesian neural networks and the cold posterior effect&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link:&lt;span&gt; &lt;a href=&quot;https://arxiv.org/abs/2106.05586&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2106.05586&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1632817322560&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Data augmentation in Bayesian neural networks and the cold posterior effect&quot; data-og-description=&quot;Data augmentation is a highly effective approach for improving performance in deep neural networks. The standard view is that it creates an enlarged dataset by adding synthetic data, which raises a problem when combining it with Bayesian inference: how muc&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2106.05586&quot; data-og-url=&quot;https://arxiv.org/abs/2106.05586v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/GCCK3/hyLLBe4xnF/Dprc6kxxpobINyYV2AHDNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2106.05586&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2106.05586&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/GCCK3/hyLLBe4xnF/Dprc6kxxpobINyYV2AHDNk/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Data augmentation in Bayesian neural networks and the cold posterior effect&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Data augmentation is a highly effective approach for improving performance in deep neural networks. The standard view is that it creates an enlarged dataset by adding synthetic data, which raises a problem when combining it with Bayesian inference: how muc&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Data augmentation is a highly effective approach for improving performance in deep neural networks.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Data augmentation은 딥뉴럴넷 모델의 성능을 향상시키기 위해 효율적인 접근이었다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;The standard view is that it creates an enlarged dataset by adding synthetic data, which raises a problem when combining it with Bayesian inference:&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;일반적인 관점에서는 &lt;span style=&quot;color: #000000;&quot;&gt;synthetic data를 추가하여 확대된 데이터 집합을 생성한다는 것인데, 이는 bayesian inference와 합쳐질 때 문제가 발생한다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;how much data are we really conditioning on?&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;실제로 우리는 얼마나 많은 데이터를 조절하고 있는가?&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;This question is particularly relevant to recent observations linking data augmentation to the cold posterior effect.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 질문은 특히 data augumentation과 cold posterior effect(C.P.E.)를 연결하는 최신 연구와 관련이 있다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; We investigate various principled ways of finding a log-likelihood for augmented datasets.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;우리는 augmented된 데이터셋의 log-likelihood를 찾는 다양한 방법을 조사했다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Our approach prescribes augmenting the same underlying image multiple times, both at test and train-time, and averaging either the logits or the predictive probabilities.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 논문에서 소개하는 방법은 test와 훈련 시간 모두 동일한 기본 이미지를 여러 번 확장하고 로짓 또는 예측확률을 평균화하는 것을 규정한다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Empirically, we observe the best performance with averaging probabilities.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;경험적으로, 우리는 평균 확률로 최고의 성능을 관찰한다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; While there are interactions with the cold posterior effect, neither averaging logits or averaging probabilities eliminates it.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;C.P.E. 와 상호작용이 있지만 averaging logit &amp;amp; probability 가 그것을 제거하지 못한다.&lt;/span&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cold posterior가 data augumentation에 좋다는 내용은 이미 여러 논문에서 나왔고, 그 중 가장 대표적인 논문이 본 논문인듯하다. 어떻게 cold posterior를 사용했는지 살펴보면 좋을 거 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;5. &lt;/b&gt;&lt;b&gt;Why Cold Posteriors? On the Suboptimal Generalization of Optimal Bayes Estimates&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link:&lt;span&gt;&lt;span&gt; &lt;a href=&quot;https://openreview.net/pdf?id=cu6zDHCfhZx&quot;&gt;https://openreview.net/pdf?id=cu6zDHCfhZx&lt;/a&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;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Recent works have shown that the predictive accuracy of Bayesian deep learning models exhibit substantial improvements when the posterior is raised to a 1/T power with T &amp;lt; 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;In this work, we explore several possible reasons for this surprising behavior&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;6. &lt;span&gt;&lt;/span&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;link: &lt;a href=&quot;https://arxiv.org/abs/2002.02405&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2002.02405&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1633780027925&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;How Good is the Bayes Posterior in Deep Neural Networks Really?&quot; data-og-description=&quot;During the past five years the Bayesian deep learning community has developed increasingly accurate and efficient approximate inference procedures that allow for Bayesian inference in deep neural networks. However, despite this algorithmic progress and the&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2002.02405&quot; data-og-url=&quot;https://arxiv.org/abs/2002.02405v2&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/EZ5ij/hyLTtIM6Gv/UU4JsI9rkvx1AZRYzTJUc0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2002.02405&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2002.02405&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/EZ5ij/hyLTtIM6Gv/UU4JsI9rkvx1AZRYzTJUc0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;How Good is the Bayes Posterior in Deep Neural Networks Really?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;During the past five years the Bayesian deep learning community has developed increasingly accurate and efficient approximate inference procedures that allow for Bayesian inference in deep neural networks. However, despite this algorithmic progress and the&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;During the past five years the Bayesian deep learning community has developed increasingly accurate and efficient approximate inference procedures that allow for Bayesian inference in deep neural networks. &lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;지난 5년 동안 베이지안 딥러닝 학회에서는 accurate 향상과 효율적인 deep NN에서의 베이지안 inference에 대한 approximate inference 방법을 개선하고자 하였다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;However, despite this algorithmic progress and the promise of improved uncertainty quantification and sample efficiency there are (as of early 2020) no publicized deployments of Bayesian neural networks in industrial practice.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;그러나 이 알고리즘적 진보와 uncertainty의 측정과 샘플링의 향상 가능성에도 불구하고(2020년 초) 실제로 BNN을 산업에 잘 적용하지 못하고 있었다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;In this work we cast doubt on the current understanding of Bayes posteriors in popular deep neural networks:&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이번 연구에서는 유명한 deep NN에서의 bayes posterior에 대한 현재의 이해도에 대해 합리적인 의심을 던진다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;we demonstrate through careful MCMC sampling that the posterior predictive induced by the Bayes posterior yields systematically worse predictions compared to simpler methods including point estimates obtained from SGD.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;MCMC sampling방법으로 bayes posterior에 의해 유도된 posterior를 산출하는 것이 SGD로부터 얻는 points estimates를 포함한 간단한 방법보다 더 안좋은 결과를 낸다는 것을 입증했다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;(MCMC가 SGD보다 안좋다.)&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Furthermore, we demonstrate that predictive performance is improved significantly through the use of a &quot;cold posterior&quot; that overcounts evidence.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그래서, predictive performance가 &quot;cold posterior&quot;를 사용했을 때 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;유의미하게 향상하는 것을 입증했다.&lt;/span&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Such cold posteriors sharply deviate from the Bayesian paradigm but are commonly used as heuristic in Bayesian deep learning papers.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이런 cold posterior는 베이지안 페러다임에서는 크게 빗나가지만, 베이지안 딥러닝 연구에서는 휴리스틱하게 흔히 사용되곤 한다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;We put forward several hypotheses that could explain cold posteriors and evaluate the hypotheses through experiments. &lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 논문에서는 cold posterior가 무엇인지 설명하고 실험을 통해 가설을 평가할 수 있도록 했다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Our work questions the goal of accurate posterior approximations in Bayesian deep learning: &lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 연구에서는 베이지안 딥러닝에서 더 정확한 posterior approximation의 목표로 하는 것을 의문점으로 삼았다:&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;If the true Bayes posterior is poor, what is the use of more accurate approximations?&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;만약 true Bayes posteior가 별로라면, 더 정확한 approximation은 무엇일까?&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Instead, we argue that it is timely to focus on understanding the origin of the improved performance of cold posteriors.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;대신에, cold posterior의 &lt;span style=&quot;color: #000000;&quot;&gt;향상된 성능의 근원을 이해하는 데 초점을 맞추는 것이 시기적절하다고 주장한다.&lt;/span&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;b&gt;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 논문이 사실 cold posterior를 처음으로 말한 논문인 것 같다. 무려 33페이지나 되지만 구글 브레인쪽에서 낸 논문인듯하다. 언제 다 읽을까 싶으면서도 본 개념을 언능 이해하고 넘어가야할 것 같다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;7. Cold Posteriors and Aleatoric Uncertainty&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;link&lt;/b&gt;:&amp;nbsp;&lt;a href=&quot;https://arxiv.org/abs/2008.00029&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/abs/2008.00029&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1634473250092&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Cold Posteriors and Aleatoric Uncertainty&quot; data-og-description=&quot;Recent work has observed that one can outperform exact inference in Bayesian neural networks by tuning the &amp;quot;temperature&amp;quot; of the posterior on a validation set (the &amp;quot;cold posterior&amp;quot; effect). To help interpret this phenomenon, we argue that commonly used prio&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2008.00029&quot; data-og-url=&quot;https://arxiv.org/abs/2008.00029v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cd5Dqw/hyLZWw2Cb6/O2ZBmVSecoLf6eygj94cW0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2008.00029&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2008.00029&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cd5Dqw/hyLZWw2Cb6/O2ZBmVSecoLf6eygj94cW0/img.png?width=1000&amp;amp;height=1000&amp;amp;face=0_0_1000_1000');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Cold Posteriors and Aleatoric Uncertainty&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Recent work has observed that one can outperform exact inference in Bayesian neural networks by tuning the &quot;temperature&quot; of the posterior on a validation set (the &quot;cold posterior&quot; effect). To help interpret this phenomenon, we argue that commonly used prio&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;arxiv.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;b&gt;abstract&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Recent work has observed that one can outperform exact inference in Bayesian neural networks by tuning the &quot;temperature&quot; of the posterior on a validation set (the &quot;cold posterior&quot; effect).&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;최근 연구들은 BNN에서 validation set에서의 posterior에 대한 temperature tuning으로 더 정확한 inference가 가능해졌다는 것을 보여주고 있다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; To help interpret this phenomenon, we argue that commonly used priors in Bayesian neural networks can significantly overestimate the aleatoric uncertainty in the labels on many classification datasets.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 현상에 대해 설명하기 위해서는, BNN이 더 많은 분류 데이터셋에서의 aleatoric uncertainty를 과대평가한다는 것을 규명해야한다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; This problem is particularly pronounced in academic benchmarks like MNIST or CIFAR, for which the quality of the labels is high.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 문제는 MNIST와 CIFAR과 같이 labeling이 잘 되어있는 데이터셋에서 더욱 명백하다&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; For the special case of Gaussian process regression, any positive temperature corresponds to a valid posterior under a modified prior, and tuning this temperature is directly analogous to empirical Bayes.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;G.P.R.의 case를 보면, positive temperature는 수정된 prior를 통해 명확한 posterior와 연관이 있고, 이 temperature는 empirical Bayes와 매우 유사하다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; On classification tasks, there is no direct equivalence between modifying the prior and tuning the temperature, however reducing the temperature can lead to models which better reflect our belief that one gains little information by relabeling existing examples in the training set.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;분류 문제에서, prior를 수정하는 것과 temperature를 tuning하는 것이 동일하다는 이론은 없지만, temperature를 줄여주는 것은 training set에서 존재하는 example을 re-labeling함으로써 작은 information을 얻을 수 있다는 belief(=prior)를 반영하도록 모델을 학습한다.&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;i&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Therefore although cold posteriors do not always correspond to an exact inference procedure, we believe they may often better reflect our true prior beliefs.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;그러므로 비록 cold posterior가 항상 정확한 inference procedure을 따르지는 않지만, 본 연구진들은 이 것이 true prior belief를 더 잘 반영할 수 있다고 믿는다.&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;b&gt;comment&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;불과 5페이지 밖에 안되어 짧지만, 내가 원하는 uncertainty와 관련된 논문&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/131</guid>
      <comments>https://signing.tistory.com/131#entry131comment</comments>
      <pubDate>Sat, 9 Oct 2021 20:53:49 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Efficacy of Bayesian Neural Networks in Active Learning - 0.Abstract ~ 2.Related Work</title>
      <link>https://signing.tistory.com/130</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://openaccess.thecvf.com/content/CVPR2021W/LLID/papers/Rakesh_Efficacy_of_Bayesian_Neural_Networks_in_Active_Learning_CVPRW_2021_paper.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://openaccess.thecvf.com/content/CVPR2021W/LLID/papers/Rakesh_Efficacy_of_Bayesian_Neural_Networks_in_Active_Learning_CVPRW_2021_paper.pdf&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문은 2021 CVF(CVPR) 투고된 논문으로 Interdigital AI Lab이라는 곳에서 작성한 논문이다.&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;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;0. Abstract&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;Obtaining labeled data for machine learning tasks can be prohibitively expensive.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;ML에서 라벨링된 데이터를 얻는 것은 쉽지 않다.&lt;/span&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;i&gt;Active learning mitigates this issue by exploring the unlabeled data space and prioritizing the selection of data that can best improve the model performance.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;Active Learning은 라벨링되지 않은 데이터 공간을 탐색하고, 모델 성능을 최대한 끌어올릴 수 있는 데이터를 우선 선택하도록 함으로써 이 문제를 해결하려한다.&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;i&gt;A common approach to active learning is to pick a small sample of data for which the model is most uncertain.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;active learning의 일반적인 방법은 모델이 가장 불확실하다고 판단되는 적은 데이터를 고르는 것이다.&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;i&gt;In this paper, we explore the efficacy of Bayesian neural networks for active learning, which naturally models uncertainty by learning distribution over the weights of neural networks.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;본 논문에서는, 뉴럴넷의 weight distribution을 학습하면서 모델 불확실성을 구하는 Bayesian Neural Network(이하 BNN)의 효율성을 살펴본다.&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;i&gt;By performing a comprehensive set of experiments, we show that Bayesian neural networks are more efficient than ensemble based techniques in capturing uncertainty.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;많은 실험을 수행함으로써, 저자들은 BNN이 앙상블 기법 기반의 불확실성을 구하는 방법론보다 더 효과적임을 밝혔다.&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;background-color: #f6e199;&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;&lt;i&gt;Our findings also reveal some key drawbacks of the ensemble techniques, which was recently shown to be more effective than Monte Carlo dropouts.&lt;/i&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6e199;&quot;&gt;&lt;b&gt;이 발견은 MC-dropout보다 성능이 좋다고 알려졌던 앙상블 기법의 단점을 발견했다.&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;&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;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 ML이나 DL을 하려고 하면, 제대로 된 데이터(labeled data)를 얻기 힘들다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히, medical쪽이나 bio쪽에서의 이미지 데이터는 라벨링하기 쉽지 않고 매우 어려운 작업에 속한다.&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.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Active Learning(이하 AL)은 이런 문제를 해결하는 것에 목표를 두고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보통은 unlabeled data에서 모델의 성능을 이끌어 낼 수 있는 데이터를 샘플링한다.&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.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 필요한 게 Acquisition function(이하 AF)라는 것인데, 이것은 unlabeled data 중에서 중요도에 따라 점수를 부여하는 함수이다.&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.4&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 편, BNN은 모델 불확실성을 구하는데 사용되는데, 주어진 데이터에 대해 weight의 분포를 구함으로써 input을 넣으면 output의 분산을 구할 수 있고, 이 분산을 모델 불확실성으로 활용한다.&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.5&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, 이 BNN은 계산하기가 쉽지 않아서 가장 잘 알려진 Dropout을 이용하여 BNN에 근사시키는 방법을 사용한다.&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.6&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 밖에도 앙상블 기법을 이용하여 불확실성을 구할수도 있는데 아래의 논문에서는 앙상블 기법이 MC-dropout을 이용한 기법보다 더 우수하다고 알려져 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://openaccess.thecvf.com/content_cvpr_2018/papers/Beluch_The_Power_of_CVPR_2018_paper.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://openaccess.thecvf.com/content_cvpr_2018/papers/Beluch_The_Power_of_CVPR_2018_paper.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, Dropout을 이용한 NN은 spike &amp;amp; slap이라는 분포에서만 작동하는 특별한 case인 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것과 정반대로, 실제 BNN은 weight의 prior와 posterior 분포가 더 광범위하다.&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.7&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서, 본 논문에서는 아래의 논문에서 제안되었던 scaled normal prior를 기반으로 한 BNN을 사용함으로써 앙상블 기법과 MC-dropout이 active learning에서의 BNN와 비교했을 때의 효율성에 대해 다시 살펴보고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1705.08665.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1705.08665.pdf&lt;/a&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;여기서, scald normal prior는 spike &amp;amp; slab 분포의 연속형 버전의 분포이고, dropout의 일종이라고 보면 된다.&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.8&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문은 여러 데이터 셋(classification, regression)에서 BNN기반 scald normal prior는 앙상블과 MC-dropout보다 더 좋다.&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.9&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AL을 하기 위해 두 가지 모델 학습 세팅을 했다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;(continual training)학습 시, 이전 round에서의 model의 상태를 재사용하고, 새로운 데이터를 append하여 재학습&lt;/li&gt;
&lt;li&gt;model parameter을 reset하여 처음부터 시작함.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 결과, classification task에서 continual training을 할 때 accuracy 측면에서 BNN이 앙상블 보다 더 좋은 성능을 내었다.&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.10&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, uncertainty 측면에서도 BNN이 앙상블보다 좋았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;+ 앙상블은 5개의 모델로 앙상블하는 것이 AL에서 가장 성능이 좋았다고 한다.&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.11&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;fully connected dense layers with ReLU non-linearity를 사용하였을 때, 불확실성을 구하는 것에 대해 연산적 이점도 있다.&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.12&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 번의 forward pass로 기존의 uncertainty estimate 방법론과 비슷하게 성능을 내였다.&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;&lt;b&gt;2. Related Work&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AL은 SVM과 같은 ML에서 주로 사용되곤 했는데 최근엔&amp;nbsp; DL에서도 쓰임.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AL은 계산용이성과 쉬운 적용성 덕분에 uncertainty 기반의 sampling 기법이 선호된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;+ BNN과 앙상블 두 개를 사용하여 uncertainty를 모두 구할 수 있다.&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.2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;uncertainty는 unlabeled data를 학습할 때 주로 쓰인다.&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.3&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 선행연구에서 AL에서의 BNN을 다루었지만, 몇 가지 허점들이 있었다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;실험할 때 dense 혹은 cnn등과 같이 매우 제한적인 모델에 한하여 실험되었었다.&lt;/li&gt;
&lt;li&gt;evaluation도 MNIST와 같은 제한적인 데이터셋을 사용했다&lt;/li&gt;
&lt;li&gt;BNN과의 비교가 없었다.&lt;/li&gt;
&lt;li&gt;BNN을 사용하기로 했지만, MC-dropout로 근사한 BNN을 사용하였다.&lt;/li&gt;
&lt;/ul&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>개인 공부 정리/Bayesian</category>
      <category>activelearning</category>
      <category>bayesian</category>
      <category>논문리뷰</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/130</guid>
      <comments>https://signing.tistory.com/130#entry130comment</comments>
      <pubDate>Thu, 23 Sep 2021 14:39:05 +0900</pubDate>
    </item>
    <item>
      <title>[pytorch] 도움이 되는 자료들</title>
      <link>https://signing.tistory.com/129</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/ritchieng/the-incredible-pytorch&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/ritchieng/the-incredible-pytorch&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1630162367188&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;GitHub - ritchieng/the-incredible-pytorch: The Incredible PyTorch: a curated list of tutorials, papers, projects, communities an&quot; data-og-description=&quot;The Incredible PyTorch: a curated list of tutorials, papers, projects, communities and more relating to PyTorch. - GitHub - ritchieng/the-incredible-pytorch: The Incredible PyTorch: a curated list...&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/ritchieng/the-incredible-pytorch&quot; data-og-url=&quot;https://github.com/ritchieng/the-incredible-pytorch&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dk4g9F/hyLpdThR1j/zSswYgjaRoXaokTxQ1PHUK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/jaK8d/hyLo5113xb/KJT0FxFHwjA7AjosLkb3Wk/img.png?width=4125&amp;amp;height=930&amp;amp;face=0_0_4125_930&quot;&gt;&lt;a href=&quot;https://github.com/ritchieng/the-incredible-pytorch&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/ritchieng/the-incredible-pytorch&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dk4g9F/hyLpdThR1j/zSswYgjaRoXaokTxQ1PHUK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/jaK8d/hyLo5113xb/KJT0FxFHwjA7AjosLkb3Wk/img.png?width=4125&amp;amp;height=930&amp;amp;face=0_0_4125_930');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - ritchieng/the-incredible-pytorch: The Incredible PyTorch: a curated list of tutorials, papers, projects, communities an&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The Incredible PyTorch: a curated list of tutorials, papers, projects, communities and more relating to PyTorch. - GitHub - ritchieng/the-incredible-pytorch: The Incredible PyTorch: a curated list...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://tutorials.pytorch.kr/&quot;&gt;https://tutorials.pytorch.kr/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1630162370260&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;파이토치(PyTorch) 튜토리얼에 오신 것을 환영합니다 &amp;mdash; PyTorch Tutorials 1.9.0+cu102 documentation&quot; data-og-description=&quot;Shortcuts&quot; data-og-host=&quot;tutorials.pytorch.kr&quot; data-og-source-url=&quot;https://tutorials.pytorch.kr/&quot; data-og-url=&quot;https://tutorials.pytorch.kr/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ddsvNw/hyLpa2VpyM/2cdvgmfOmmncZfP3BoQAx1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/b1nEKX/hyLo4hlwwF/btpXLBv8mco9ddOjAV2FR1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/qGFqv/hyLpdSS3u4/ZWKcy8gbXJlNkSIUkgN3s1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600&quot;&gt;&lt;a href=&quot;https://tutorials.pytorch.kr/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tutorials.pytorch.kr/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ddsvNw/hyLpa2VpyM/2cdvgmfOmmncZfP3BoQAx1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/b1nEKX/hyLo4hlwwF/btpXLBv8mco9ddOjAV2FR1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/qGFqv/hyLpdSS3u4/ZWKcy8gbXJlNkSIUkgN3s1/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이토치(PyTorch) 튜토리얼에 오신 것을 환영합니다 &amp;mdash; PyTorch Tutorials 1.9.0+cu102 documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Shortcuts&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;tutorials.pytorch.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Python/pytorch</category>
      <category>PYTHON</category>
      <category>pytorch</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/129</guid>
      <comments>https://signing.tistory.com/129#entry129comment</comments>
      <pubDate>Sat, 28 Aug 2021 23:53:14 +0900</pubDate>
    </item>
    <item>
      <title>[자료 정리] VAE 읽을거리 및 실습들</title>
      <link>https://signing.tistory.com/128</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1630137699482&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Variational Autoencoder Demystified With PyTorch Implementation.&quot; data-og-description=&quot;This tutorial implements a variational autoencoder for non-black and white images using PyTorch.&quot; data-og-host=&quot;towardsdatascience.com&quot; data-og-source-url=&quot;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&quot; data-og-url=&quot;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eh4LVE/hyLpbgtgbl/fKmeJMc84kYeBNNqV3KBzk/img.png?width=1200&amp;amp;height=310&amp;amp;face=0_0_1200_310,https://scrap.kakaocdn.net/dn/cErRAV/hyLpaIC7XZ/6kTK2V0UwHRJzORirbuBok/img.png?width=60&amp;amp;height=21&amp;amp;face=0_0_60_21,https://scrap.kakaocdn.net/dn/bbxePS/hyLpdL6S2P/2aw1NsRItsAFfIXndjcA7K/img.png?width=60&amp;amp;height=17&amp;amp;face=0_0_60_17&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://towardsdatascience.com/variational-autoencoder-demystified-with-pytorch-implementation-3a06bee395ed&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eh4LVE/hyLpbgtgbl/fKmeJMc84kYeBNNqV3KBzk/img.png?width=1200&amp;amp;height=310&amp;amp;face=0_0_1200_310,https://scrap.kakaocdn.net/dn/cErRAV/hyLpaIC7XZ/6kTK2V0UwHRJzORirbuBok/img.png?width=60&amp;amp;height=21&amp;amp;face=0_0_60_21,https://scrap.kakaocdn.net/dn/bbxePS/hyLpdL6S2P/2aw1NsRItsAFfIXndjcA7K/img.png?width=60&amp;amp;height=17&amp;amp;face=0_0_60_17');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Variational Autoencoder Demystified With PyTorch Implementation.&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;This tutorial implements a variational autoencoder for non-black and white images using PyTorch.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;towardsdatascience.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;</description>
      <category>개인 공부 정리/Bayesian</category>
      <category>VAE</category>
      <category>베이지안</category>
      <category>자료정리</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/128</guid>
      <comments>https://signing.tistory.com/128#entry128comment</comments>
      <pubDate>Sat, 28 Aug 2021 17:02:04 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Bayesian Graph Convolutional Neural Networks for Semi-Supervised Classification - 4.Methodology</title>
      <link>https://signing.tistory.com/127</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/126&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Bayesian Graph Convolutional Neural Networks for Semi-Supervised Classification - 0.Abstract ~ 3.Background&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1629534288273&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] Bayesian Graph Convolutional Neural Networks for Semi-Supervised Classification - 0.Abstract ~ 3.Background&quot; data-og-description=&quot;최근 Graph Neural Network 부분이 트렌드가 되면서 Bayesian과 결합한 모델들도 연구되고 있어서 한 번 공부해보고자 한다. 논문: https://github.com/huawei-noah/BGCN GitHub - huawei-noah/BGCN: A Tensorflow..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/126&quot; data-og-url=&quot;https://signing.tistory.com/126&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cPelK2/hyLjJkC979/WXW73HSkkCJAwNJ607OV5K/img.png?width=800&amp;amp;height=163&amp;amp;face=0_0_800_163,https://scrap.kakaocdn.net/dn/FfTh2/hyLjU7xG67/oh7fOjNlK9bbXcwWOSkdk1/img.png?width=800&amp;amp;height=163&amp;amp;face=0_0_800_163,https://scrap.kakaocdn.net/dn/k4Prr/hyLjN8rrdz/iy9mH6kxrVPDhvguur37X1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/126&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/126&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cPelK2/hyLjJkC979/WXW73HSkkCJAwNJ607OV5K/img.png?width=800&amp;amp;height=163&amp;amp;face=0_0_800_163,https://scrap.kakaocdn.net/dn/FfTh2/hyLjU7xG67/oh7fOjNlK9bbXcwWOSkdk1/img.png?width=800&amp;amp;height=163&amp;amp;face=0_0_800_163,https://scrap.kakaocdn.net/dn/k4Prr/hyLjN8rrdz/iy9mH6kxrVPDhvguur37X1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Bayesian Graph Convolutional Neural Networks for Semi-Supervised Classification - 0.Abstract ~ 3.Background&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;최근 Graph Neural Network 부분이 트렌드가 되면서 Bayesian과 결합한 모델들도 연구되고 있어서 한 번 공부해보고자 한다. 논문: https://github.com/huawei-noah/BGCN GitHub - huawei-noah/BGCN: A Tensorflow..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Methodology&lt;/b&gt;&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;&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;
&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;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/127</guid>
      <comments>https://signing.tistory.com/127#entry127comment</comments>
      <pubDate>Sat, 21 Aug 2021 17:25:14 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Bayesian Graph Convolutional Neural Networks for Semi-Supervised Classification - 0.Abstract ~ 3.Background</title>
      <link>https://signing.tistory.com/126</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;최근 Graph Neural Network 부분이 트렌드가 되면서 Bayesian과 결합한 모델들도 연구되고 있어서 한 번 공부해보고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문: &lt;a href=&quot;https://github.com/huawei-noah/BGCN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/huawei-noah/BGCN&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1629292520477&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;GitHub - huawei-noah/BGCN: A Tensorflow implementation of &amp;quot;Bayesian Graph Convolutional Neural Networks&amp;quot; (AAAI 2019).&quot; data-og-description=&quot;A Tensorflow implementation of &amp;quot;Bayesian Graph Convolutional Neural Networks&amp;quot; (AAAI 2019). - GitHub - huawei-noah/BGCN: A Tensorflow implementation of &amp;quot;Bayesian Graph Convolutional N...&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/huawei-noah/BGCN&quot; data-og-url=&quot;https://github.com/huawei-noah/BGCN&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/k09RT/hyLilqqVfd/K0fUCF6tZknQtTJ9ZjJZh1/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/fQXxy/hyLihuOqLO/WeO9V9ZvxZzPHKyk9xwXxk/img.png?width=2643&amp;amp;height=1075&amp;amp;face=0_0_2643_1075,https://scrap.kakaocdn.net/dn/sxTk4/hyLiekyXAm/aIaS3yBOdV4FrdSkMEKz6k/img.png?width=2569&amp;amp;height=989&amp;amp;face=0_0_2569_989&quot;&gt;&lt;a href=&quot;https://github.com/huawei-noah/BGCN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/huawei-noah/BGCN&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/k09RT/hyLilqqVfd/K0fUCF6tZknQtTJ9ZjJZh1/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/fQXxy/hyLihuOqLO/WeO9V9ZvxZzPHKyk9xwXxk/img.png?width=2643&amp;amp;height=1075&amp;amp;face=0_0_2643_1075,https://scrap.kakaocdn.net/dn/sxTk4/hyLiekyXAm/aIaS3yBOdV4FrdSkMEKz6k/img.png?width=2569&amp;amp;height=989&amp;amp;face=0_0_2569_989');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - huawei-noah/BGCN: A Tensorflow implementation of &quot;Bayesian Graph Convolutional Neural Networks&quot; (AAAI 2019).&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;A Tensorflow implementation of &quot;Bayesian Graph Convolutional Neural Networks&quot; (AAAI 2019). - GitHub - huawei-noah/BGCN: A Tensorflow implementation of &quot;Bayesian Graph Convolutional N...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1030&quot; data-origin-height=&quot;211&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v2CLY/btrctuQNFny/ON8ukekUrpPAllEV1cnSuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v2CLY/btrctuQNFny/ON8ukekUrpPAllEV1cnSuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v2CLY/btrctuQNFny/ON8ukekUrpPAllEV1cnSuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv2CLY%2FbtrctuQNFny%2FON8ukekUrpPAllEV1cnSuk%2Fimg.png&quot; data-origin-width=&quot;1030&quot; data-origin-height=&quot;211&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2019년 AAAI에 올라온 논문이며, 베이지안을 결합한 괜찮은 논문이라 생각되어 리뷰해보겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Abstract&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Recently, techniques for applying convolutional neural networks to graph-structured data have emerged. Graph convolutional neural networks (GCNNs) have been used to address node and graph classification and matrix completion. &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;b&gt;Although the performance has been impressive, the current implementations have limited capability to incorporate uncertainty in the graph structure.&lt;/b&gt;&lt;/u&gt;&lt;/span&gt; Almost all GCNNs process a graph as though it is a ground-truth depiction of the relationship between nodes, but often the graphs employed in applications are themselves derived from noisy data or modelling assumptions. Spurious edges may be included; other edges may be missing between nodes that have very strong relationships. In this paper we &lt;u&gt;&lt;b&gt;adopt a Bayesian approach&lt;/b&gt;&lt;/u&gt;, viewing the observed &lt;u&gt;&lt;b&gt;graph as a realization from a parametric family of random graphs&lt;/b&gt;&lt;/u&gt;. We then target inference of the joint posterior of the random graph parameters and the node (or graph) labels. We present the Bayesian GCNN framework and develop an iterative learning procedure for the case of &lt;u&gt;&lt;b&gt;assortative mixed-membership stochastic block model&lt;/b&gt;&lt;/u&gt;s. We present the results of experiments that demonstrate that the Bayesian formulation can provide better performance when there are very few labels available during the training process.&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;물론 그동안의 GCN으로도 충분히 좋은 성능을 냈지만, uncertainty를 구하지는 못하였고, 또한 Bayesian approach를 이용하여 더 좋은 성능을 내었다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 중요한 부분만 찝어서 보면, 모수적인 분포들을 사용하여 random graph를 만들었고, assortative mixed-membership stochastic block model이라는 것을 사용하였다고 한다.&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;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 최근에 GCN에 대해 많은 연구와 시도들이 있었고, 또 많은 발전들이 이루었었다.&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) 본 논문은 지난 과거의 연구들과 비교했을 때, 베이지안 프레임워크를 사용하였고, 모수적 분포를 사용한 random graph를 사용하였다.&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) joint inference를 하기 위해&amp;nbsp; adjacency matrix와 feature matrix, label matrix를 결합하여 사용하였다.&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) 최종적으로, 계산복잡도가 다소 걸리는 단점이 있지만, 아래와 같은 장점들을 contribution으로 꼽았다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;더 적은 데이터로 학습 가능&lt;/li&gt;
&lt;li&gt;uncertainty를 구하는데 더 좋은 성능을 냄&lt;/li&gt;
&lt;li&gt;noise나 adveersarial attack으로부터 robustness를 더 잘 보임.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5) 이 논문에서 BGCN(Bayesian Graph Convolutional Network)을 보여주고 어떻게 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;6) semi-supervised node classification과 graph의 위상의 randomness로부터 아키텍쳐가 잘 복원되는지도 실험함.&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;&lt;b&gt;2. Related Work&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 주로 본 절에서는 GCNN(Graph Convolutional Neural Network), GAT(Graph Attention Network), Bayesian Approach에 대한 역사와 흐름을 소개하고 있다.&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;/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;&lt;b&gt;3. Background&lt;/b&gt;&lt;/h2&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;GCNN, Graph Convolutional Neural Network&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 주로 node의 label을 identify하는데 GCNN을 사용&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;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;150&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/doxgvj/btrcOe6lCWd/YyiSHVoPpzXocwOUAkb2x1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/doxgvj/btrcOe6lCWd/YyiSHVoPpzXocwOUAkb2x1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/doxgvj/btrcOe6lCWd/YyiSHVoPpzXocwOUAkb2x1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdoxgvj%2FbtrcOe6lCWd%2FYyiSHVoPpzXocwOUAkb2x1%2Fimg.png&quot; data-origin-width=&quot;150&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;Observed Graph&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;24&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZhBA1/btrcIfeA3Jg/WH7bskMkOhn0nCoLRcQjg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZhBA1/btrcIfeA3Jg/WH7bskMkOhn0nCoLRcQjg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZhBA1/btrcIfeA3Jg/WH7bskMkOhn0nCoLRcQjg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZhBA1%2FbtrcIfeA3Jg%2FWH7bskMkOhn0nCoLRcQjg1%2Fimg.png&quot; data-origin-width=&quot;24&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;set of nodes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;20&quot; data-origin-height=&quot;26&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZNBwW/btrcNKdjExa/jMGAYe3KYAfm4tne14egZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZNBwW/btrcNKdjExa/jMGAYe3KYAfm4tne14egZk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZNBwW/btrcNKdjExa/jMGAYe3KYAfm4tne14egZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZNBwW%2FbtrcNKdjExa%2FjMGAYe3KYAfm4tne14egZk%2Fimg.png&quot; data-origin-width=&quot;20&quot; data-origin-height=&quot;26&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;set of edges&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;32&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cKlaE8/btrcORJNW8a/lfP6hwGWdRWnPrY43XrAq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cKlaE8/btrcORJNW8a/lfP6hwGWdRWnPrY43XrAq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cKlaE8/btrcORJNW8a/lfP6hwGWdRWnPrY43XrAq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcKlaE8%2FbtrcORJNW8a%2FlfP6hwGWdRWnPrY43XrAq1%2Fimg.png&quot; data-origin-width=&quot;32&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;measure data or deerive feature&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;34&quot; data-origin-height=&quot;37&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZxRHa/btrcNLwxcxG/2smwjqdEK3v2jNezpyhkT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZxRHa/btrcNLwxcxG/2smwjqdEK3v2jNezpyhkT0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZxRHa/btrcNLwxcxG/2smwjqdEK3v2jNezpyhkT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZxRHa%2FbtrcNLwxcxG%2F2smwjqdEK3v2jNezpyhkT0%2Fimg.png&quot; data-origin-width=&quot;34&quot; data-origin-height=&quot;37&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;1) label in classification&lt;br /&gt;2) real-value in regression&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;79&quot; data-origin-height=&quot;31&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c9l988/btrcLB2KYzO/vq3Qnzj5rh1HgqzdtUZMzK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c9l988/btrcLB2KYzO/vq3Qnzj5rh1HgqzdtUZMzK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c9l988/btrcLB2KYzO/vq3Qnzj5rh1HgqzdtUZMzK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc9l988%2FbtrcLB2KYzO%2Fvq3Qnzj5rh1HgqzdtUZMzK%2Fimg.png&quot; data-origin-width=&quot;79&quot; data-origin-height=&quot;31&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;subset of the nodes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;227&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cjWNIy/btrcMXjXbls/tB3ED3CbzVnE83bVk3AEkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cjWNIy/btrcMXjXbls/tB3ED3CbzVnE83bVk3AEkk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cjWNIy/btrcMXjXbls/tB3ED3CbzVnE83bVk3AEkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjWNIy%2FbtrcMXjXbls%2FtB3ED3CbzVnE83bVk3AEkk%2Fimg.png&quot; data-origin-width=&quot;227&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;measure labels&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;64&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d6qL5i/btrcNLXDfp0/r6VMLM8UEIKVC7UywbAsV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d6qL5i/btrcNLXDfp0/r6VMLM8UEIKVC7UywbAsV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d6qL5i/btrcNLXDfp0/r6VMLM8UEIKVC7UywbAsV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd6qL5i%2FbtrcNLXDfp0%2Fr6VMLM8UEIKVC7UywbAsV1%2Fimg.png&quot; data-origin-width=&quot;64&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;weight of the neural network at layer&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;26&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/APtCr/btrcIUBztUf/Nwnjb1HQyiAh6OGZG1NmhK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/APtCr/btrcIUBztUf/Nwnjb1HQyiAh6OGZG1NmhK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/APtCr/btrcIUBztUf/Nwnjb1HQyiAh6OGZG1NmhK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAPtCr%2FbtrcIUBztUf%2FNwnjb1HQyiAh6OGZG1NmhK%2Fimg.png&quot; data-origin-width=&quot;26&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;58&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8krFv/btrcMZPAZUd/yROaHQu87c8wSPmUkWZz7k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8krFv/btrcMZPAZUd/yROaHQu87c8wSPmUkWZz7k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8krFv/btrcMZPAZUd/yROaHQu87c8wSPmUkWZz7k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8krFv%2FbtrcMZPAZUd%2FyROaHQu87c8wSPmUkWZz7k%2Fimg.png&quot; data-origin-width=&quot;58&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;output feature from layer&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;67&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c42dIl/btrcOM2QghA/w8BiPgjoDpip6THH9L3R01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c42dIl/btrcOM2QghA/w8BiPgjoDpip6THH9L3R01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c42dIl/btrcOM2QghA/w8BiPgjoDpip6THH9L3R01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc42dIl%2FbtrcOM2QghA%2Fw8BiPgjoDpip6THH9L3R01%2Fimg.png&quot; data-origin-width=&quot;67&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;39&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l6RZP/btrcNLcek2H/u49VeKKrDlB1tAr4TEVu91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l6RZP/btrcNLcek2H/u49VeKKrDlB1tAr4TEVu91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l6RZP/btrcNLcek2H/u49VeKKrDlB1tAr4TEVu91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl6RZP%2FbtrcNLcek2H%2Fu49VeKKrDlB1tAr4TEVu91%2Fimg.png&quot; data-origin-width=&quot;39&quot; data-origin-height=&quot;32&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;output feature가 각 layer에서 얼마나 mixed accross되었는지를 나타내는 matrix&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;121&quot; data-origin-height=&quot;28&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqjtL5/btrcOerKpXH/VDZ5dCIkXEKTxvf3Rn92L0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqjtL5/btrcOerKpXH/VDZ5dCIkXEKTxvf3Rn92L0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqjtL5/btrcOerKpXH/VDZ5dCIkXEKTxvf3Rn92L0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqjtL5%2FbtrcOerKpXH%2FVDZ5dCIkXEKTxvf3Rn92L0%2Fimg.png&quot; data-origin-width=&quot;121&quot; data-origin-height=&quot;28&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;final output for an L-layer network&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&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) weight와 mixed accross matrix를 곱하고, non-linearity function을 씌우는 과정으로 layer를 학습시켜감.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;630&quot; data-origin-height=&quot;100&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4IPkL/btrcOO0FJkb/R0MoAGmMxKxJlAD0n6eL8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4IPkL/btrcOO0FJkb/R0MoAGmMxKxJlAD0n6eL8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4IPkL/btrcOO0FJkb/R0MoAGmMxKxJlAD0n6eL8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4IPkL%2FbtrcOO0FJkb%2FR0MoAGmMxKxJlAD0n6eL8k%2Fimg.png&quot; data-origin-width=&quot;630&quot; data-origin-height=&quot;100&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4) weight를 학습하는 것은 실제 label과 예측치의 차이를 최소로 하게끔 만들면서 weight를 학습&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5) 성능을 향상시키는 것은 아키텍쳐에 따라 향상됨.(CNN, attention, skip-connection &amp;amp; gate를 적용시키는 GNN)&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;6) node들 사이의 관계를 나타내는 ground-truth를 구하는 것이 목적인데, 이때, noisy data를 사용하거나 model assumption을 사용하기도 하는데 사실 이런 것들은 성능에 안좋은 영향을 끼친다.&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;7) 만약 잘못된 edge가 있다면, 학습하는데 잘못 학습하여 다른 강한 관계를 갖는 node의 edge를 놓칠 수 있기 때문이다.&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) 그래서 attention을 사용하기도 하는데 이것의 장점은&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;몇몇 edge들이 의미있는 관계를 나타내는 것이 아님을 학습할 수 있다.&lt;/li&gt;
&lt;li&gt;node가 다른 node에게 주는 영향을 줄일 수 있다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9) 하지만 단점도 있는데&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;계산복잡도가 높고,&lt;/li&gt;
&lt;li&gt;반드시 있어야할 edge를 제대로 학습하지 못하기도 하며,&lt;/li&gt;
&lt;li&gt;앙상블 모델에서도 한계를 보인다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10) 참고 :&amp;nbsp;&lt;a href=&quot;https://signing.tistory.com/125&quot;&gt;2021.08.15 - [개인 공부 정리/Bayesian] - GCN, Graph Convolutional Network 설명&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1629464771141&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;GCN, Graph Convolutional Network 설명&quot; data-og-description=&quot;https://www.youtube.com/watch?v=YL1jGgcY78U https://arxiv.org/pdf/1811.11103.pdf 위의 논문을 알게 되었는데 GCN에 대한 내용을 기본적으로 깔고 들어가기 때문에 GCN을 먼저 공부해보고 해당 논문을 리뷰하..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/125&quot; data-og-url=&quot;https://signing.tistory.com/125&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cI1lUX/hyLiZItQ7B/SUkltpwiBuogxQgEhJGTWK/img.png?width=491&amp;amp;height=212&amp;amp;face=0_0_491_212,https://scrap.kakaocdn.net/dn/C9ND9/hyLjUS4H0g/Er80K2maz957SAiFy8YxeK/img.png?width=491&amp;amp;height=212&amp;amp;face=0_0_491_212,https://scrap.kakaocdn.net/dn/bq2dPb/hyLi4XkQ8t/HzHKFwKIiakeAavZaPblMk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/125&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/125&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cI1lUX/hyLiZItQ7B/SUkltpwiBuogxQgEhJGTWK/img.png?width=491&amp;amp;height=212&amp;amp;face=0_0_491_212,https://scrap.kakaocdn.net/dn/C9ND9/hyLjUS4H0g/Er80K2maz957SAiFy8YxeK/img.png?width=491&amp;amp;height=212&amp;amp;face=0_0_491_212,https://scrap.kakaocdn.net/dn/bq2dPb/hyLi4XkQ8t/HzHKFwKIiakeAavZaPblMk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GCN, Graph Convolutional Network 설명&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://www.youtube.com/watch?v=YL1jGgcY78U https://arxiv.org/pdf/1811.11103.pdf 위의 논문을 알게 되었는데 GCN에 대한 내용을 기본적으로 깔고 들어가기 때문에 GCN을 먼저 공부해보고 해당 논문을 리뷰하..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;BNN, Bayesian Neural Network&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 주어진 input X, 그에 따른 output Y가 있으면, 그 관계를 나타내는 function(layer의 수라던가, 어떤 activation을 사용할지 등)을 찾는 것이 우리의 목표다.&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) 우리는 이 function의 구성이 weight에 달려 있음을 알고 있는데, bayesian 관점에서는 이 weight들이 random variable(R.V.)인 것이다.&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: #409d00;&quot;&gt;&lt;b&gt;3) 논문에서는 weight(W)가 R.V.라고 하면 output도 R.V.라고 하는데 이 말이 맞는 말인지는 의심이 된다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #409d00;&quot;&gt;&lt;b&gt;왜냐하면, 주어진 데이터 X,Y가 있을 때, W가 R.V.로써 작용하는 것이 bayesian인데 W가 not deterministic하면, output도 R.V.라는 이야기는 틀렸다고 생각한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #409d00;&quot;&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 style=&quot;color: #000000;&quot;&gt;4) 어쨌거나, 이러한 R.V.인 W의 확률분포를 posterior(사후확률)라고 한다. 그에 대한 식은 아래와 같다.&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;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1105&quot; data-origin-height=&quot;141&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cKUmXg/btrcMHB14um/dcQIkiqkQsByjD75C7Xsz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cKUmXg/btrcMHB14um/dcQIkiqkQsByjD75C7Xsz0/img.png&quot; data-alt=&quot;posterior distribution by bayesian rule&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cKUmXg/btrcMHB14um/dcQIkiqkQsByjD75C7Xsz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcKUmXg%2FbtrcMHB14um%2FdcQIkiqkQsByjD75C7Xsz0%2Fimg.png&quot; data-origin-width=&quot;1105&quot; data-origin-height=&quot;141&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;posterior distribution by bayesian rule&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;5)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock floatLeft&quot; data-origin-width=&quot;196&quot; data-origin-height=&quot;55&quot; width=&quot;196&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2qtun/btrcLAwp4FF/roukXkkykY6EYH7FQCEmFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2qtun/btrcLAwp4FF/roukXkkykY6EYH7FQCEmFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2qtun/btrcLAwp4FF/roukXkkykY6EYH7FQCEmFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2qtun%2FbtrcLAwp4FF%2FroukXkkykY6EYH7FQCEmFk%2Fimg.png&quot; data-origin-width=&quot;196&quot; data-origin-height=&quot;55&quot; width=&quot;196&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽에 보이는 수식을 우리는 likelihood라고 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;likelihood는 그냥 확률이다.&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;a href=&quot;https://signing.tistory.com/63&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(2)&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;6) 그런데 문제는 (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;7) 이러한 문제를 해결하기 위한 많은 노력들이 있어왔다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;expectation propagation&lt;/li&gt;
&lt;li&gt;variational inference&lt;/li&gt;
&lt;li&gt;Markov Chanin Monte Carlo method&lt;/li&gt;
&lt;/ol&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) 특히, (3)번 식을 MC-dropout으로 해결한 아주 깔끔한 방법도 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1111&quot; data-origin-height=&quot;169&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PwA3k/btrcQf47Uv2/IjevF396QeXRtDPH048KcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PwA3k/btrcQf47Uv2/IjevF396QeXRtDPH048KcK/img.png&quot; data-alt=&quot;MC-dropout for W&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PwA3k/btrcQf47Uv2/IjevF396QeXRtDPH048KcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPwA3k%2FbtrcQf47Uv2%2FIjevF396QeXRtDPH048KcK%2Fimg.png&quot; data-origin-width=&quot;1111&quot; data-origin-height=&quot;169&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;MC-dropout for W&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 설명은 아래 포스팅을 확인바란다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1629533908266&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&quot; data-og-description=&quot;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 2.Abstract [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 3.Introduce..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/82&quot; data-og-url=&quot;https://signing.tistory.com/82&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ZizG8/hyLjOGd9gw/KdhUGIrFax0HA8cFzlkf9k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEDKDO/hyLjO0wUhw/Ztm57kfDZ6sBWLFOGZtGkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bwd3O8/hyLjKjwOky/zXt8xdxfuuSgeM4RNDh2dK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/82&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ZizG8/hyLjOGd9gw/KdhUGIrFax0HA8cFzlkf9k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEDKDO/hyLjO0wUhw/Ztm57kfDZ6sBWLFOGZtGkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bwd3O8/hyLjKjwOky/zXt8xdxfuuSgeM4RNDh2dK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 2.Abstract [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 3.Introduce..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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;
&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>개인 공부 정리/Bayesian</category>
      <category>bayesian</category>
      <category>gcn</category>
      <category>GraphConvolutionalNetwork</category>
      <category>그래프</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/126</guid>
      <comments>https://signing.tistory.com/126#entry126comment</comments>
      <pubDate>Wed, 18 Aug 2021 22:12:31 +0900</pubDate>
    </item>
    <item>
      <title>GCN, Graph Convolutional Network 설명</title>
      <link>https://signing.tistory.com/125</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=YL1jGgcY78U&quot;&gt;https://www.youtube.com/watch?v=YL1jGgcY78U&lt;/a&gt;&amp;nbsp;&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=YL1jGgcY78U&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/b8HaTO/hyLdCkkO9D/roNFPtDp8j79DcXkagRmwK/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/YL1jGgcY78U&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1811.11103.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1811.11103.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 논문을 알게 되었는데 GCN에 대한 내용을 기본적으로 깔고 들어가기 때문에 GCN을 먼저 공부해보고 해당 논문을 리뷰하도록 하겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GCN은 위의 동영상 강의를 정리해둔 것이니 직접 듣는 것을 추천한다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;1. Graph?&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GCN(Graph Convolutional Network)에서 conv는 우리가 CNN을 통해 많이들 알고 있는 개념이고, Network는 Neural Network를 의미하니, Graph에 대해서 이해하면 전체적으로 이해하는데 도움이 될 듯하다.&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;흔히 CS(Computer Science)에서 graph는 아래와 같이 어떤 관계망을 나타내는 자료구조로 쓰인다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;491&quot; data-origin-height=&quot;212&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2Siqd/btrb67nrTcZ/4Q53wCFbGL3o2cwDe3KFGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2Siqd/btrb67nrTcZ/4Q53wCFbGL3o2cwDe3KFGk/img.png&quot; data-alt=&quot;Graph Structure&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2Siqd/btrb67nrTcZ/4Q53wCFbGL3o2cwDe3KFGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2Siqd%2Fbtrb67nrTcZ%2F4Q53wCFbGL3o2cwDe3KFGk%2Fimg.png&quot; data-origin-width=&quot;491&quot; data-origin-height=&quot;212&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Graph Structure&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;graph는 edge와 vertices로 이루어져 있는데, edge는 link, vertices는 node라고도 불리며, 특히 link는 방향이 있는것과 E없는 것으로 graph의 종류가 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, edge도 중요도를 나타내는 것과 연결 여부만 나타내는 것에 따라 두 종류로 나뉜다.&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;이런 자료구조는 어떻게 활용되냐면, Social 구조, 3D image, 분자 구조 등의 상태를 나타낼 때 사용된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;342&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r4XXs/btrcb9Lepcr/k79Zq2KYrROgDyRdKT8ta1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r4XXs/btrcb9Lepcr/k79Zq2KYrROgDyRdKT8ta1/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r4XXs/btrcb9Lepcr/k79Zq2KYrROgDyRdKT8ta1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr4XXs%2Fbtrcb9Lepcr%2Fk79Zq2KYrROgDyRdKT8ta1%2Fimg.png&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;342&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&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;1.1 Graph Representation&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 이 graph를 어떻게 나타낼 수 있을까?&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-origin-width=&quot;624&quot; data-origin-height=&quot;251&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/X9vB5/btrb8TIL1Uz/FJ7A2awaEkj4qk4O98T9ZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/X9vB5/btrb8TIL1Uz/FJ7A2awaEkj4qk4O98T9ZK/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/X9vB5/btrb8TIL1Uz/FJ7A2awaEkj4qk4O98T9ZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FX9vB5%2Fbtrb8TIL1Uz%2FFJ7A2awaEkj4qk4O98T9ZK%2Fimg.png&quot; data-origin-width=&quot;624&quot; data-origin-height=&quot;251&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&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;Adjacency Matrix&lt;/b&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;각 행과 열이 순서대로 노드를 의미하며, 각 노드들이 연결되어 있는지(=두 node 사이에 edge가 있는지 여부)를 정수로 나타낸 행렬로써 표기한다.&lt;/li&gt;
&lt;li&gt;Graph의 종류에 따라 단순 0,1로 element들이 채워지지 않고, 실수가 되기도 한다.&lt;/li&gt;
&lt;li&gt;위 그림의 예시로 보자면, 1번 node는 2번과 3번 node에 연결이 되어 있으므로, 행렬의 첫 번째 row와 column에 [0, 1, 1, 0, 0]으로 채워진 것이다.&lt;/li&gt;
&lt;li&gt;행렬의 사이즈는 N by N이 된다.(node가 N개일때)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Node Feature Matrix&lt;/b&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;각 노드들의 feature를 나타낸 행렬이다.&lt;/li&gt;
&lt;li&gt;예를 들어 Social 관계망이라고 가정하면, 각 노드는 사람이 될 것이고, 각 사람이 갖고 있는 feature로 성별, 연령 등의 정보가 되겠다.&lt;/li&gt;
&lt;li&gt;이와 같은 성질로 행은 노드의 수가 되겠지만, feature 수만큼의 열을 가지고 있다.(N by F, N=# of node, F=# of feature)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&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;&lt;b&gt;2. Graph Convolutional Network(GCN)&lt;/b&gt;&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;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2.1. Convolution Layer&lt;/b&gt;&lt;/h3&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-origin-width=&quot;582&quot; data-origin-height=&quot;272&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9jzZz/btrb24yqBDD/4xkcsQAUxMfUQqurTGYUnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9jzZz/btrb24yqBDD/4xkcsQAUxMfUQqurTGYUnK/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9jzZz/btrb24yqBDD/4xkcsQAUxMfUQqurTGYUnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9jzZz%2Fbtrb24yqBDD%2F4xkcsQAUxMfUQqurTGYUnK%2Fimg.png&quot; data-origin-width=&quot;582&quot; data-origin-height=&quot;272&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, 32 X 32 X 3의 크기를 갖는 image data가 있다고 해보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Convolution Filter(Kernel)라는 것을 이용하여 image를 순회하면서 dot product를 계산하고, 기존의 데이터로부터 filter를 이용하여 새로운 tensor(=activation map)를 만드는 것을 convolution 이라고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 연산에서 filter의 깊이(depth)를 receptive field라고 하는데, 이 receptive field가 깊을수록 더 깊은 계산 layer가 나오게 되고, NN의 깊은 곳에서는 더 깊은 receptive field가 발생하고, 얕은 곳에서는 얕은 receptive field가 발생한다.&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;이 conv 연산의 특징 중에 하나는 바로 weight sharing이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이미지 task에서 MLP를 이용한 방법론은 모든 노드와 layer가 이어져 있기 때문에(fully-connected) parameter의 수가 기하급수적으로 늘어났고, 또한 image에서 pixel이 조금이라도 틀어지면 기존의 parameter가 변질되기 때문에 성능이 안좋아지는 단점이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 CNN에서는 filter가 image를 순회하며 연산하기 때문에 parameter를 공유할 수 있게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고글(&lt;a href=&quot;https://techblog-history-younghunjo1.tistory.com/125&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://techblog-history-younghunjo1.tistory.com/125&lt;/a&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 특성을 weight sharing이라고 부르며 이로 인해 학습할 paramter 수가 적어지며, overfitting의 문제점도 해결할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, conv filter를 사용하다보니 local한 feature를 잘 뽑아낼 수 있다는 장점과 down-sampling에 대한 효과를 얻을 수 있다는 장점이 있다.&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;이런 conv filter를 사용하면 image로부터 어떤 feature들을 뽑아내고 activation map이 업데이트가 되면서 연산이 진행되는데, 이러한 과정을 GCN에서도 동일하게 적용하고자 한다.&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;b&gt;2.2. Update GCN&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심은 이것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 1.1에서 보았던 node feature matrix를 update하여 어떤 task를 수행하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 node들이 갖는 feature이 update되는 것이 목표라면, 앞서 2.1에서 보았던 conv layer를 이용하여 feature update를 수행하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;conv layer는 local한 부분의 feature들을 모아서 연산했다면, 이와 동일한 방식으로 graph도 주변에 있는 부분들로 update를 하자는 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1211&quot; data-origin-height=&quot;631&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqDLFi/btrb9RYyUXR/ndW4F9buq3oVILG65YaqE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqDLFi/btrb9RYyUXR/ndW4F9buq3oVILG65YaqE1/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqDLFi/btrb9RYyUXR/ndW4F9buq3oVILG65YaqE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqDLFi%2Fbtrb9RYyUXR%2FndW4F9buq3oVILG65YaqE1%2Fimg.png&quot; data-origin-width=&quot;1211&quot; data-origin-height=&quot;631&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 그림의 수식에서 W는 weight를 의미하고, l은 l번째 Layer, H는 Hidden state(=각 layer를 거치고 난 뒤의 node feature matrix)라는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;즉,&lt;/span&gt; 하늘색&lt;/span&gt;으로 표기된 항을 풀어서 설명하면, node 1의 l번째 node feature matrix에 l번째 weight를 행렬곱한 것이라고 보면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서, 위의 수식이 의미하는 것은 node1의 l+1번째 node feature matrix를 나타낸 것인데, 이는 node 1과 인접한 모든 node들의 node feature matrix에 각 weight를 곱하고 bias를 더하여 activation function을 씌워주어 업데이트하는 과정이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, 모든 node의 weight가 다 동일하기 때문에 weight sharing을 가능하게 했다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;따라서, 이 업데이트되는 과정은 convolution 연산과 같이 &lt;b&gt;local한 정보를 이용&lt;/b&gt;하고, &lt;b&gt;weight sharing&lt;/b&gt;을 한다는 특징을 가지기 때문에 GCN이라고 부르는 것이다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에, 각 node들을 업데이트하려면 해당 node의 인접한 node들의 정보, 또 그 node의 인접한 node의 정보, .... 이런식으로 연쇄적으로 연결되어 있기 때문에, 이러한 connectivity의 정보를 갖고 있는 Adjacency Matrix를 이용하여 구할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 node의 n번째 인접한(hop) node의 연결 여부를 알기 위해서는 간단하게 Adjacency Matrix를 n번 곱하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 간단한 행렬 연산으로 convolution 연산을 수행할 수 있게 된다.&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;b&gt;2.3. Readout&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1204&quot; data-origin-height=&quot;622&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1q86w/btrb7bKxyF9/lqNINrvn2DXTmDO0uukpj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1q86w/btrb7bKxyF9/lqNINrvn2DXTmDO0uukpj1/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1q86w/btrb7bKxyF9/lqNINrvn2DXTmDO0uukpj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1q86w%2Fbtrb7bKxyF9%2FlqNINrvn2DXTmDO0uukpj1%2Fimg.png&quot; data-origin-width=&quot;1204&quot; data-origin-height=&quot;622&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&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;위 그림처럼 같은 graph 구조를 갖지만 위치가 달라짐으로 인해 Adjacency Matrix가 달라지게 되는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 오류를 방지하기 위한 방법이 Readout이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른말로는 Permutation Invariance라고도 하는데 Permutation은 graph structure를 의미하고 invariance는 관계없이라는 뜻이므로, graph sturcture가 어떠하든 상관 없이 같은 위상을 갖는 graph라면 같은 결과를 내야한다는 의미이다.&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;2.2에서 보았던 것처럼 l번째 node feature matrix에 대해 MLP(=fully connected)를 씌워주어 sum을 한 후 activation을 씌우면 같은 위상에 대해서 다른 node 위치를 갖는 graph에 대해 동일한 결과를 낼 수 있다는 것이 수학적으로 증명되었다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 Readout 방법이 가장 간단하면서도 효율적인 방법이라고 하니 기억해두자.&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;2.4. Overall Structure of GCN&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1034&quot; data-origin-height=&quot;589&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MtGpe/btrb2lGSSlC/jFa0BHEYxgIKLYxLXfj0NK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MtGpe/btrb2lGSSlC/jFa0BHEYxgIKLYxLXfj0NK/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MtGpe/btrb2lGSSlC/jFa0BHEYxgIKLYxLXfj0NK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMtGpe%2Fbtrb2lGSSlC%2FjFa0BHEYxgIKLYxLXfj0NK%2Fimg.png&quot; data-origin-width=&quot;1034&quot; data-origin-height=&quot;589&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 GCN의 전체적인 구조에 대해 살펴보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 그림과 같이, Node Feature Matrix인 X와 Adjacency Matrix인 A를 갖는 graph를 input으로 하였을 때, 원하는만큼의 convolution 연산을 거치고(중간중간에 activation function이 있긴하다.), Readout을 적용한 후 fully connected layer를 거친 후 우리가 원하는 결과를 얻게된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇게 나온 output과 실제 true label 혹은 true value와의 loss를 구하고 그 loss를 minimize하게끔 weight들을 업데이트 하게끔 학습이 이루어질텐데, Readout과 fully-connected layer는 우리가 흔히 아는 weight이기 때문에 설명은 넘어가고. convolution layer에서는 각 node들의 node feature들에 대한 weight를 업데이트하게 된다.&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;여기까지가 GCN에 대한 기본적인 개념을 설명한 것이고 이후부터는 GCN을 활용한 advanced model이 나온다.&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;&lt;b&gt;3. Advanced Techniques of GCN&lt;/b&gt;&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.1. Inception&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;332&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmhoOW/btrcb9LpGEc/j6rQvINskjyUdHGkUpk5h0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmhoOW/btrcb9LpGEc/j6rQvINskjyUdHGkUpk5h0/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmhoOW/btrcb9LpGEc/j6rQvINskjyUdHGkUpk5h0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmhoOW%2Fbtrcb9LpGEc%2Fj6rQvINskjyUdHGkUpk5h0%2Fimg.png&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;332&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽에 보이는 그림이 일반적인 inception 모듈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 filter만 적용시키는 것이 아니라 여러 size의 filter들을 병렬로 적용한 후에 concat시키서 다음 layer를 만드는 모듈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좋은 발상이고 기존의 conv layer보다 좋은 성능향상을 가져왔지만, depth가 깊어지는 단점이 있고 이를 해결하기 위해 오른쪽 그림처럼 1 by 1 filter를 적용시켜서 computation efficiency를 향상시키는 방법도 등장하였다.&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;그러면 inception 모듈을 GCN에 어떻게 적용시킬 수 있을까?&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1069&quot; data-origin-height=&quot;516&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xwaAg/btrb7ax0nGU/AGXO98Npu8R0pMuCdGMH9K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xwaAg/btrb7ax0nGU/AGXO98Npu8R0pMuCdGMH9K/img.png&quot; data-alt=&quot;출처:&amp;amp;amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xwaAg/btrb7ax0nGU/AGXO98Npu8R0pMuCdGMH9K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxwaAg%2Fbtrb7ax0nGU%2FAGXO98Npu8R0pMuCdGMH9K%2Fimg.png&quot; data-origin-width=&quot;1069&quot; data-origin-height=&quot;516&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처:&amp;nbsp;https://github.com/heartcored98/Standalone-DeepLearning&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 inception 모듈은 다양한 크기의 filter를 사용하자는 것이 핵심이었고, 이를 GCN에 적용시키면 다양한 hop의 인접한 node들의 feature를 사용하는 것으로 적용시킬 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 이 다양한 hop은 어떻게 만들 수 있을까? 바로 Adjacency Matrix를 그만큼 곱해주면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이에 해당하는 GCN의 구조가 아래의 그림이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;418&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/riE0V/btrb7tRsYZn/bFM4W7mPgbzl3MWLAzrCV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/riE0V/btrb7tRsYZn/bFM4W7mPgbzl3MWLAzrCV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/riE0V/btrb7tRsYZn/bFM4W7mPgbzl3MWLAzrCV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FriE0V%2Fbtrb7tRsYZn%2FbFM4W7mPgbzl3MWLAzrCV1%2Fimg.png&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;418&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.2. Skip Connection&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;370&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bczRBY/btrb82eYf5y/QINcyHsN78Jy2ct0XTYsn1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bczRBY/btrb82eYf5y/QINcyHsN78Jy2ct0XTYsn1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bczRBY/btrb82eYf5y/QINcyHsN78Jy2ct0XTYsn1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbczRBY%2Fbtrb82eYf5y%2FQINcyHsN78Jy2ct0XTYsn1%2Fimg.png&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;370&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ResNet에서 사용되었던 Skip conncetion이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NN의 depth가 깊어질수록 성능이 오히려 감소하는 현상이 발생했었는데, 이를 skip할 수 있는 모듈을 만들어주어 성능이 오로지 우상향 할 수 있게끔 해주었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;963&quot; data-origin-height=&quot;469&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzFSnx/btrb7zLaj3t/phKcC1H8IKfiFxcx4fqgZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzFSnx/btrb7zLaj3t/phKcC1H8IKfiFxcx4fqgZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzFSnx/btrb7zLaj3t/phKcC1H8IKfiFxcx4fqgZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzFSnx%2Fbtrb7zLaj3t%2FphKcC1H8IKfiFxcx4fqgZ1%2Fimg.png&quot; data-origin-width=&quot;963&quot; data-origin-height=&quot;469&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 GCN에 동일하게 적용하면, 위 그림의 왼쪽처럼 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오른쪽은 skip을 진행할 때 trick을 적용시킨 것인데, 기존에 skip connection은 skip term과 conv layer term을 동일한 가중치를 두어 합하였다면, 오른쪽은 두 항에 대해 다른 가중치를 두어 합치게 하는 trick을 적용한 것이다.&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;b&gt;3.3. Attention&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;462&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d94VVS/btrb7bX2zL4/kacYIu91zVeahYzDE9Wcnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d94VVS/btrb7bX2zL4/kacYIu91zVeahYzDE9Wcnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d94VVS/btrb7bX2zL4/kacYIu91zVeahYzDE9Wcnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd94VVS%2Fbtrb7bX2zL4%2FkacYIu91zVeahYzDE9Wcnk%2Fimg.png&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;462&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Attention은 &quot;Attention is all you need&quot;라는 논문에서 처음 등장한 개념으로 엄밀히 말하면 CNN은 아니지만 개념을 간단히 짚고 넘어가자면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존의 GCN은 자기 자신 node를 포함하여 인접한 node의 feature를 합하여 업데이트를 진행하는데, 이 때 각 인접한 node의 feature를 동일한 가중치로 여기고 합하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 점을 개선하여, 동일한 가중치를 주지말고, 특정 비율로 합하여 업데이트를 하자는 것이 attention을 이용한 GCN의 목표이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 어느정도의 가중치를 줄것인지를 결정하는 것은 각 노드끼리의 correlation으로 정하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상관성이 높을수록 그만큼 더 높은 weight를 주어 합하게 된다.&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>개인 공부 정리/Bayesian</category>
      <category>attention</category>
      <category>gcn</category>
      <category>GNN</category>
      <category>Graph</category>
      <category>GraphConvolutionalNetwork</category>
      <category>GraphNeuralNetwork</category>
      <category>inception</category>
      <category>skipconnection</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/125</guid>
      <comments>https://signing.tistory.com/125#entry125comment</comments>
      <pubDate>Sun, 15 Aug 2021 01:23:11 +0900</pubDate>
    </item>
    <item>
      <title>Entropy as Uncertainty Measure</title>
      <link>https://signing.tistory.com/123</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1628328758144&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Is Variance Really A Measure Of Uncertainty?&quot; data-og-description=&quot;Why you should think twice about variance as a measure of uncertainty.&quot; data-og-host=&quot;towardsdatascience.com&quot; data-og-source-url=&quot;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&quot; data-og-url=&quot;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/beQyvv/hyK9DYyAUp/vLaU4aNZJOZBxYMFkwB80k/img.png?width=594&amp;amp;height=313&amp;amp;face=0_0_594_313,https://scrap.kakaocdn.net/dn/hSgve/hyK9B0Jafm/RYyeVmRmyY6KLXtlVyxm4k/img.png?width=60&amp;amp;height=40&amp;amp;face=0_0_60_40,https://scrap.kakaocdn.net/dn/bhNQpU/hyK9vTLaqj/7WPzQ5uP8zpf4K2RycboZk/img.png?width=60&amp;amp;height=40&amp;amp;face=0_0_60_40&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://towardsdatascience.com/is-variance-really-a-measure-of-uncertainty-6ec6da21bb03&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/beQyvv/hyK9DYyAUp/vLaU4aNZJOZBxYMFkwB80k/img.png?width=594&amp;amp;height=313&amp;amp;face=0_0_594_313,https://scrap.kakaocdn.net/dn/hSgve/hyK9B0Jafm/RYyeVmRmyY6KLXtlVyxm4k/img.png?width=60&amp;amp;height=40&amp;amp;face=0_0_60_40,https://scrap.kakaocdn.net/dn/bhNQpU/hyK9vTLaqj/7WPzQ5uP8zpf4K2RycboZk/img.png?width=60&amp;amp;height=40&amp;amp;face=0_0_60_40');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Is Variance Really A Measure Of Uncertainty?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Why you should think twice about variance as a measure of uncertainty.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;towardsdatascience.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1628329170489&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Entropy is a measure of uncertainty&quot; data-og-description=&quot;Eight properties, several examples and one theorem&quot; data-og-host=&quot;towardsdatascience.com&quot; data-og-source-url=&quot;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&quot; data-og-url=&quot;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/nDnhB/hyK9Bl8o3h/VsAALm1auh9X66NittzUj1/img.png?width=1200&amp;amp;height=800&amp;amp;face=0_0_1200_800,https://scrap.kakaocdn.net/dn/bsBhbK/hyK9EiQ6mX/Hr11udKwtM0KkBTukcED2k/img.png?width=1920&amp;amp;height=1280&amp;amp;face=0_0_1920_1280,https://scrap.kakaocdn.net/dn/lGPWb/hyK9BTYSPd/gdBRZK6ex1OhqOhgYkOOkk/img.png?width=640&amp;amp;height=480&amp;amp;face=0_0_640_480&quot;&gt;&lt;a href=&quot;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://towardsdatascience.com/entropy-is-a-measure-of-uncertainty-e2c000301c2c&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/nDnhB/hyK9Bl8o3h/VsAALm1auh9X66NittzUj1/img.png?width=1200&amp;amp;height=800&amp;amp;face=0_0_1200_800,https://scrap.kakaocdn.net/dn/bsBhbK/hyK9EiQ6mX/Hr11udKwtM0KkBTukcED2k/img.png?width=1920&amp;amp;height=1280&amp;amp;face=0_0_1920_1280,https://scrap.kakaocdn.net/dn/lGPWb/hyK9BTYSPd/gdBRZK6ex1OhqOhgYkOOkk/img.png?width=640&amp;amp;height=480&amp;amp;face=0_0_640_480');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Entropy is a measure of uncertainty&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Eight properties, several examples and one theorem&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;towardsdatascience.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BNN을 다루면서 그동안 uncertainty에 대해 많이 공부하였는데, 우연히 위 두 링크의 글을 읽고 uncertainty에 대해 생각을 해 볼 수 있는 기회가 생겼었다.&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;현재 가장 많이 쓰이고, 퀄리티가 좋은(?) uncertainty는 주로 MC-dropout을 이용하여 발생하는 output들의 variance를 주된 measure로써 사용하고 있었다.&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;통계학적으로 variance에 대해 생각해보면, 일단은 한글로 &quot;분산&quot;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분산은 각 data point들이 sample 평균으로부터 얼만큼 퍼저있는지에 대한 정보이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;data point들이 sample에서 떨어진 정도를 차이로 구하고, 이를 제곱하여 평균 낸 것이 분산의 정의이다.&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;한 발짝 더 나아가서 평균의 의미는 모든 data들을 더한 후, 그 data의 갯수로 나눈 통계량이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&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;/li&gt;
&lt;li&gt;기하평균&lt;/li&gt;
&lt;li&gt;조화평균&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평균의 종류를 보아하니 평균의 핵심 idea를 알 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 data point들을 동등한 확률값으로 곱한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄밀히 평균을 정의하면, 각 data의 값 * 각 data가 발생할 확률의 합으로 볼 수 있다.&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;분산은 결국 data point들이 평균으로부터 떨어진 정도를 제곱하여 단순 평균낸 통계량이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 모든 data point들이 평균으로부터 떨어진 정도를 모두 동일한 확률로 곱했다는 의미이고, 바꿔말하면 동일한 weight들로 곱해주었다는 말이고, 우리는 이 분산을 uncertainty의 한 지표로써 사용해왔다.&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;일반적으로 categorical data는 variance를 구할 수 없으므로, entropy를 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 대표적으로 tree model들이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;random forest나 XGboost와 같은 Tree 모델은 data point들을 여러 기준으로 나누고 이 때의 entropy를 구하는 방식으로 구성되어 있다.&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;하지만 그럼에도 semantic segmentation를 비롯한 여러 Task에서 variance를 사용할 수 있는 이유는 결국에 softmax등과 같은 확률값으로 output을 내기 때문이다.&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;이처럼 uncertainty의 measure를 달리 생각해보는 것도 좋은 공부법이라고 생각한다.&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/123</guid>
      <comments>https://signing.tistory.com/123#entry123comment</comments>
      <pubDate>Sat, 7 Aug 2021 19:29:34 +0900</pubDate>
    </item>
    <item>
      <title>inductive bias 참고글</title>
      <link>https://signing.tistory.com/122</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1628212941484&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[머신러닝/딥러닝] Inductive Bias란?&quot; data-og-description=&quot;Inductive Bias란 무엇일까요? 최근 논문들을 보면 그냥 Bias도 아니고 inductive Bias라는 말이 자주 나오는 것을 확인할 수 있는데요! 오늘은 해당 개념에 대해 정리해보는 시간을 가지려고 합니다.&quot; data-og-host=&quot;velog.io&quot; data-og-source-url=&quot;https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80&quot; data-og-url=&quot;https://velog.io/@euisuk-chung/Inductive-Bias란&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ERAN3/hyK8w6zZQQ/MdfFuzOWcTGZBpawYZCBGk/img.png?width=768&amp;amp;height=204&amp;amp;face=0_0_768_204,https://scrap.kakaocdn.net/dn/w2JP3/hyK8sC6OGd/gCMFdHaHLUHpmQiGdl0bg0/img.png?width=1395&amp;amp;height=370&amp;amp;face=0_0_1395_370,https://scrap.kakaocdn.net/dn/Otwz1/hyK8zWxyvh/hkrH5yvFQqLyGZEZflLYCk/img.png?width=1327&amp;amp;height=1023&amp;amp;face=0_0_1327_1023&quot;&gt;&lt;a href=&quot;https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://velog.io/@euisuk-chung/Inductive-Bias%EB%9E%80&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ERAN3/hyK8w6zZQQ/MdfFuzOWcTGZBpawYZCBGk/img.png?width=768&amp;amp;height=204&amp;amp;face=0_0_768_204,https://scrap.kakaocdn.net/dn/w2JP3/hyK8sC6OGd/gCMFdHaHLUHpmQiGdl0bg0/img.png?width=1395&amp;amp;height=370&amp;amp;face=0_0_1395_370,https://scrap.kakaocdn.net/dn/Otwz1/hyK8zWxyvh/hkrH5yvFQqLyGZEZflLYCk/img.png?width=1327&amp;amp;height=1023&amp;amp;face=0_0_1327_1023');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[머신러닝/딥러닝] Inductive Bias란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Inductive Bias란 무엇일까요? 최근 논문들을 보면 그냥 Bias도 아니고 inductive Bias라는 말이 자주 나오는 것을 확인할 수 있는데요! 오늘은 해당 개념에 대해 정리해보는 시간을 가지려고 합니다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;velog.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Inductibe Bias 참고 글&lt;/p&gt;</description>
      <category>개인 공부 정리/ML&amp;amp;Statistic</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/122</guid>
      <comments>https://signing.tistory.com/122#entry122comment</comments>
      <pubDate>Fri, 6 Aug 2021 10:22:30 +0900</pubDate>
    </item>
    <item>
      <title>Mixture Density Network  정리</title>
      <link>https://signing.tistory.com/121</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;MDN 정리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://kangbk0120.github.io/articles/2018-05/MDN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://kangbk0120.github.io/articles/2018-05/MDN&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1628080767012&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Mixture Density Network에 대한 간단한 정리와 구현&quot; data-og-description=&quot;MDN 강병규 오늘은 일반적인 딥러닝 네트워크의 변형인 Mixture Density network에 대해서 알아보고 간단한 파이토치(Pytorch) 코드로 구현해보겠습니다. 어려운 내용이라 저도 잘못 이해하고 있는 부분&quot; data-og-host=&quot;kangbk0120.github.io&quot; data-og-source-url=&quot;https://kangbk0120.github.io/articles/2018-05/MDN&quot; data-og-url=&quot;https://kangbk0120.github.io/articles/2018-05/MDN&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://kangbk0120.github.io/articles/2018-05/MDN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kangbk0120.github.io/articles/2018-05/MDN&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Mixture Density Network에 대한 간단한 정리와 구현&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;MDN 강병규 오늘은 일반적인 딥러닝 네트워크의 변형인 Mixture Density network에 대해서 알아보고 간단한 파이토치(Pytorch) 코드로 구현해보겠습니다. 어려운 내용이라 저도 잘못 이해하고 있는 부분&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kangbk0120.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;GMM 정리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=NNwkDi-2xVQ&quot;&gt;https://www.youtube.com/watch?v=NNwkDi-2xVQ&lt;/a&gt;&amp;nbsp;&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=NNwkDi-2xVQ&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/citbn9/hyK7yjd5N6/KEkzS5IuNoH88EF9paRHJ0/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/NNwkDi-2xVQ&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&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;Sampling-free with Mixture Density Network&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1709.02249.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1709.02249.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.edwith.org/bayesiandeeplearning/lecture/25296/?isDesc=false&quot;&gt;https://www.edwith.org/bayesiandeeplearning/lecture/25296/?isDesc=false&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1628120603019&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[LECTURE] Uncertainty-Aware Learning using Mixture Density Networks : edwith&quot; data-og-description=&quot;Uncertainty-Aware Learning using Mixture Density Networks &amp;nbsp; 학습목표 이번 강의에서 소개할 내용은 2017년도에 최성준님이 쓴&amp;nbsp; Un... - 커넥트재단&quot; data-og-host=&quot;www.edwith.org&quot; data-og-source-url=&quot;https://www.edwith.org/bayesiandeeplearning/lecture/25296/?isDesc=false&quot; data-og-url=&quot;http://www.edwith.org/bayesiandeeplearning/lecture/25296/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/gYh2i/hyK7xSzZFp/daXsqxFPTj66W3i6EqOv70/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080&quot;&gt;&lt;a href=&quot;https://www.edwith.org/bayesiandeeplearning/lecture/25296/?isDesc=false&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.edwith.org/bayesiandeeplearning/lecture/25296/?isDesc=false&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/gYh2i/hyK7xSzZFp/daXsqxFPTj66W3i6EqOv70/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[LECTURE] Uncertainty-Aware Learning using Mixture Density Networks : edwith&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Uncertainty-Aware Learning using Mixture Density Networks &amp;nbsp; 학습목표 이번 강의에서 소개할 내용은 2017년도에 최성준님이 쓴&amp;nbsp; Un... - 커넥트재단&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.edwith.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/121</guid>
      <comments>https://signing.tistory.com/121#entry121comment</comments>
      <pubDate>Wed, 4 Aug 2021 21:40:34 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 4.Experioments</title>
      <link>https://signing.tistory.com/120</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/118&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 1.Abstract~Related Work&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/119&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 3.Method&lt;/a&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&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;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4. Experiments&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험에 있어서 꽤 많은 실험을 진행했고, 그 결과를 담고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 절에서는 본 논문에서 주장하는 방법론(이하 OUR이라고 부르겠음)이 classification과 regression에서 uncertainty를 estimate하는데 더 빠르고 정확하다는 것을 실험적으로 입증하고 있다.&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;&lt;b&gt;4.1 Synthetic Data&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;644&quot; data-origin-height=&quot;471&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beNw4o/btraXW0Mge7/uNvO0s1rVeuhspUjKFx6ak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beNw4o/btraXW0Mge7/uNvO0s1rVeuhspUjKFx6ak/img.png&quot; data-alt=&quot;첫번째 실험: 파란색 점들은 train, 주확색 점들은 test 데이터, 빨간색으로 fitting된 선은 predict 선, 위 아래로 검은색으로 fitting된 것은 표준편차를 의미한다. 또한, 윗 그림은 본 논문에서 제안한 방법론(OUR)을 사용한 그림이고, 아래 그래프는 MC-dropout을 사용한 그림이다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beNw4o/btraXW0Mge7/uNvO0s1rVeuhspUjKFx6ak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeNw4o%2FbtraXW0Mge7%2FuNvO0s1rVeuhspUjKFx6ak%2Fimg.png&quot; data-origin-width=&quot;644&quot; data-origin-height=&quot;471&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;첫번째 실험: 파란색 점들은 train, 주확색 점들은 test 데이터, 빨간색으로 fitting된 선은 predict 선, 위 아래로 검은색으로 fitting된 것은 표준편차를 의미한다. 또한, 윗 그림은 본 논문에서 제안한 방법론(OUR)을 사용한 그림이고, 아래 그래프는 MC-dropout을 사용한 그림이다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음으로 진행한 실험은 임의의 함수를 fitting하는 실험이고, MC-dropout과의 비교를 진행했다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;single input을 넣으면 single output을 return하는 sin함수를 만들고, train할 때는 [0, 20]으로 지정하였고, 그 밖의 range에서는 test를 진행하기로 하였다.
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;add Gaussian noise ~ (&amp;mu;=0, &amp;sigma;=0.3) for output&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;사용된 모델은 hidden layer가 3개이고 각 layer의 unit은 100개로 만든 100 * 3 의 네트워크 구조를 사용하였다.&lt;/li&gt;
&lt;li&gt;비교 모델인 dropout의 dropout 비율은 p=0.1로 마지막 hidden layer에만 적용하였다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;주 비교 모델을 Yarin.Gal의 &lt;a style=&quot;color: #9d9d9d;&quot; href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Dropout as a Bayesian Approximation&lt;/a&gt; 을 많이 참고하고 이를 비교하려고 한 노력이 보인다.&lt;/s&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #9d9d9d;&quot;&gt;&lt;s&gt;분명 좋은 시도이고 괜찮은 실험이지만, 2015년 논문을 비교한다는 것에서 다소 아쉬움이 남는다.&lt;/s&gt;&lt;/span&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;그래서 performance 측면에서는 본 논문이 제안한 방법론도 epistemic uncertainty estimation을 하는데 괜찮은 방법론이라는 실험적 증거가 되는 것이다.&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;이와 관련된 appendix에서는 다음과 같은 실험자료가 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;571&quot; data-origin-height=&quot;277&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rWumb/btraQp4t9aZ/knKznf66yykgyHx1aci17K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rWumb/btraQp4t9aZ/knKznf66yykgyHx1aci17K/img.png&quot; data-alt=&quot;Appendix 자료&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rWumb/btraQp4t9aZ/knKznf66yykgyHx1aci17K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrWumb%2FbtraQp4t9aZ%2FknKznf66yykgyHx1aci17K%2Fimg.png&quot; data-origin-width=&quot;571&quot; data-origin-height=&quot;277&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Appendix 자료&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서 제안한 방법론(OUR)로 구한 variance(=uncertainty, STD)까지 MC-dropout 방법론이 수렴하려면 많은 sampling을 해야한다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;i&gt;&lt;span style=&quot;background-color: #f3c000; color: #ffffff;&quot;&gt;종합해서 보면, MC-dropout과 OUR, 두 방법론 모두 성과는 비슷하지만, sampling(computational complexity &amp;amp; time complexity) 측면에서는 OUR 방법론이 더욱 우수하다는 것을 알 수 있다.&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;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4.2 Predictive Performance&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제는 실제 데이터에 대한 실험을 진행하는데 UCI regression dataset 10개 중 9개에 대해 실험을 하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 metric은 RMSE(Root mean squared error)와 TLL(Test Log-Likelihood)를 사용하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험에 들어가기 전 저자는 OUR의 RMSE &amp;gt; MC-dropout의 RMSE 의 결과가 나오는 것을 예상했다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면, dropout sampling이 activation을 scaling하는 것보다는 더 좋은 approach이기 때문이라고 설명했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;(&quot;그에 대해 정확한 추가 설명이 논문에 나와 있지는 않지만, uncertainty의 quality 측면에서는 MC-dropout이 uncertainty에 대해 정확한 수학적 증명이 뒷받침되었기 때문이 아닌가 하는 내 개인적인 생각이다.&quot;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 TLL은 예측된 distribution의 quality를 측정하는 metric으로 볼 수 있다.&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-origin-width=&quot;1155&quot; data-origin-height=&quot;423&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfFXmn/btraRwIYZcr/N3mWDsWs1PqiTKI2R4rKOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfFXmn/btraRwIYZcr/N3mWDsWs1PqiTKI2R4rKOK/img.png&quot; data-alt=&quot;두 번째 실험&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfFXmn/btraRwIYZcr/N3mWDsWs1PqiTKI2R4rKOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfFXmn%2FbtraRwIYZcr%2FN3mWDsWs1PqiTKI2R4rKOK%2Fimg.png&quot; data-origin-width=&quot;1155&quot; data-origin-height=&quot;423&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;두 번째 실험&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&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;위 표와 같이 9개의 regression dataset에 대해 train set과 test set으로 random하게 20번씩 나눠서 실험을 진행했고, 특히 Pretein Structure는 5번의 split을 하였다고 한다.&lt;/li&gt;
&lt;li&gt;그리고 dropout rate와 &amp;tau;에 대해서 optimize는 그냥 grid-search 방법을 사용했다고 했는데 &lt;s&gt;이부분도 약간은 아쉽긴하다.&lt;/s&gt;&lt;/li&gt;
&lt;li&gt;네트워크는 50개의 unit을 가진 1개의 hidden layer를 사용했고, Protein Structure dataset에 대해서는 100개의 unit을 갖는 1개의 hidden layer를 사용했다고 한다.&lt;/li&gt;
&lt;li&gt;각 네트워크는 400 epochs씩 학습되었다.&lt;/li&gt;
&lt;li&gt;OUR 방법론이 output에 대한 단봉(unimodal)의 distribution을 갖는 parameter를 return하기 때문에, Gaussian distribution으로부터 sampling하여 TLL을 계산하였다고 한다.&lt;/li&gt;
&lt;li&gt;전 실험에서와 마찬가지로 MC-dropout에 대해 optimize를 grid search로 했다고 한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&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;OUR의 TLL은 거의 모든 dataset에 대해 MC-dropout 방법론보다 marginally 작거나, 크더라도 MC-dropout만큼을 포함할 수 있을 정도의 차이다.&lt;/li&gt;
&lt;li&gt;다만 Naval Propulsion dataset에 대해서만 유의미한 차이가 있긴하지만, RMSE를 보면 완벽하게 fitting한 것을 볼 수 있다.&lt;/li&gt;
&lt;li&gt;또한 본문에서는 강조되징 않은 부분이 있는데, 바로 runtime이다. MC방법론은 각 데이터 size 및 성질마다 다른 computing time을 갖지만, OUR은 일정하게 훨씬 더 낮은 것을 확인할 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;i&gt;&lt;span style=&quot;background-color: #f3c000; color: #ffffff;&quot;&gt;종합해서 보면, predictive performance 부분에서는 논문에서 제안한 방법론(OUR)이 MC-dropout 방법론보다 유의미한 성능 향상이 있는 것으로 볼 수 있다. 또한 주목해서 봐야할 부분은 runtime이며 획기적으로 낮은 수준임을 확인할 수 있다.&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;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;4.3 Classification Task: Bayesian SegNet&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 절에서는 분류, 특히 semantic segmantation에 관하여 실험이 진행되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;semantic segmantation task를 할때, MC-dropout은 Bayesian SegNet 아키텍쳐(&lt;a href=&quot;https://arxiv.org/pdf/1511.02680.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1511.02680.pdf&lt;/a&gt;)를 사용하였는데, Bayesian SegNet 아키텍쳐의 저자 말에 따르면, uncertainty를 구하는데 quality 측면에서는 아키텍쳐내에서 dropout의 위치는 관련이 없다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그에 따라, 본 논문에서 Bayesian SegNet을 이용하여 CamVid dataset을 학습시킬 때 두 기지 측면을 고려하여 실험을 진행하였다고 한다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Dropout after the central four encoder and decoder blocks (ENCDEC)
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;4개의 중간에 위치한 encoder와 decoder 이후에 dropout을 적용시킨 아키텍쳐&lt;/li&gt;
&lt;li&gt;이 아키텍쳔느 마지막 dropout layer가 output layer로부터 멀리 떨어져 있기 때문에 본 논문에서 제안한 방법(OUR)에 적용시키는데 어려움이 있다.&lt;/li&gt;
&lt;li&gt;그래서 OUR 방법론은 diagonal covariance matrix를 가졍하기 때문에 예측치의 variance가 자연스럽게 낮게 측정될 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;785&quot; data-origin-height=&quot;281&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XrcYs/btraZLNsC50/Equp5FJC5zP92LRKO8Lxvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XrcYs/btraZLNsC50/Equp5FJC5zP92LRKO8Lxvk/img.png&quot; data-alt=&quot;Bayesian SegNet에서 제안한 아키텍쳐(ENCDEC)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XrcYs/btraZLNsC50/Equp5FJC5zP92LRKO8Lxvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXrcYs%2FbtraZLNsC50%2FEqup5FJC5zP92LRKO8Lxvk%2Fimg.png&quot; data-origin-width=&quot;785&quot; data-origin-height=&quot;281&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Bayesian SegNet에서 제안한 아키텍쳐(ENCDEC)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;One dropout layer before the final classifier layer (CLASS)
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;하나의 dropout layer가 마지막 분류 직전에 위치한 아키텍쳐&lt;/li&gt;
&lt;li&gt;이 아키텍쳐가 OUR 아키텍쳐에는 더 적합하다. 왜냐하면 dropout layer가 output layer에 근접하기 때문인데, 이것은 오류가 날 확률을 줄여주기 때문이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;후에 실험에서 결국 두 아키텍쳐(ENCDEC, CLASS)를 사용하긴 한다.&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;그리고 본 논문에서 강조하는 것중에 하나는 이 연구는 성능 관점이 아닌 sample-free 방법론으로 epistemic uncertainty를 구하는 관점으로 진행되었기 때문에 성능 연구보다는 기존 방법론과의 비교에 대한 실험이 주를 이룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;실험 환경&lt;/b&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 120px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 20px;&quot;&gt;batch size&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 20px;&quot;&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;learning rate&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;0.1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;exponential learning rate&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;0.95&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;epochs&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;200&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;early stopping&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;TRUE, patience 50&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 20px;&quot;&gt;data processing&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 20px;&quot;&gt;down sampilng: 720 X 960 --&amp;gt; 360 X 480&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&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;아래의 실험은 uncertainty를 시각화한 것인데, 구조적으로 보면 두 방법론 간의 차이는 거의 없는 것처럼 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그만큼 MC-dropout 대비 OUR 방법론이 뒤지지 않는다는 것을 보여주고 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;485&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvQ2HG/btrbahKMdVI/1S4yCK7WI17KUuSQdwcQMk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvQ2HG/btrbahKMdVI/1S4yCK7WI17KUuSQdwcQMk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvQ2HG/btrbahKMdVI/1S4yCK7WI17KUuSQdwcQMk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvQ2HG%2FbtrbahKMdVI%2F1S4yCK7WI17KUuSQdwcQMk%2Fimg.png&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;485&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;uncertainty의 구조적인 생김새를 보면 전부 boundary에 집중되어 있는 것을 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 이 CamVid dataset을 semantic segmantation task로 만들기 위해 data labling을 해야했을텐데 사람들이 직접 각 class의 경계선을 나눴을 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;uncertainty는 이 경계선을 나누는 작업에서 발생한 불확실성을 포착한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 흔히 semantic segmantation task에서 epistemic uncertainty를 구하게되면 볼 수 있는 현상이다.&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;그리고 이 실험을 통해 sample-free uncertainty(OUR)가 sampling-based uncertainty(MC)보다 더 낮게 측정된 것을 확인할 수 있었다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연구진들이 본 현상을 해석하기로는, 마지막 dropout layer가 output과 너무 다른 결과를 냈기 때문이라고 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 구한 uncertainty의 질적 유사성(그림에서 보이는 구조적인 유사도)을 고려할 때, covariance matrix는 주 대각성분에서 벗어난 mixture term이 variance bais로 작용하는 것을 제외시킬 수 있다고 말하고 있다.&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;무슨 말이냐면, Fig.5에서 보이듯이 두 방법론에 대한 uncertainty는 정도의 차이가 있을 뿐, 비슷한 uncertainty를 포착한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 관점으로 미루어 보았을 때, covariance matrix의 주 대각성분이 아닌 항들은 분산의 편향이 생기는 것을 방지해준다는 것이다.&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;아래의 그림은 uncertainty를 구할 때의 오분류율(a)과 runtime(b)을 비교한 그림이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;491&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdhxum/btra6I3xgXT/fF8poXTWOwgctorB7Xuu20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdhxum/btra6I3xgXT/fF8poXTWOwgctorB7Xuu20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdhxum/btra6I3xgXT/fF8poXTWOwgctorB7Xuu20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbdhxum%2Fbtra6I3xgXT%2FfF8poXTWOwgctorB7Xuu20%2Fimg.png&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;491&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;a그림은 pixel의 오분류율을 quantile로 나타낸 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로 semantic segmantation은 각 pixcel마다 분류하는 것을 task로 삼는데, 이 때, 오분류 되는 것을 비율로 하여 나타낸 그림이라 보면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더불어서, 원래는 두 방법론에 대해 직접적인 비교는 불가하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면, 각 방법론을 사용하고 난 후의 uncertainty의 scale이 각각 다르기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 본 논문에서는 quantile을 사용하였고, 그 결과 두 곡선의 형태가 동일함을 알 수 있다.&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;b그림은 두 아키텍쳐(CLASS, ENCDEC)에 대한 두 방법론(MC, OUR)을 실험하였을 때 걸린 시간을 나타낸 것인데, 당연하게도 MC방법을 사용할 때, sample수가 많아질수록 선형적으로 runtime이 증가하는 것을 볼 수 있지만, 반면에 OUR 방법론은 sample수와 관련없이 항상 일정한 runtime을 갖는 것을 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계산 복잡도 및 시간 복잡도 측면에서 OUR의 방법론이 더 우수함을 알 수 있다.&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;아래 그림은 out-of-distribution에 관한 실험을 나타낸 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;624&quot; data-origin-height=&quot;461&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJvfQA/btrbbSrkQdO/9EsRedtTrZy2N2w1lKuask/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJvfQA/btrbbSrkQdO/9EsRedtTrZy2N2w1lKuask/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJvfQA/btrbbSrkQdO/9EsRedtTrZy2N2w1lKuask/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJvfQA%2FbtrbbSrkQdO%2F9EsRedtTrZy2N2w1lKuask%2Fimg.png&quot; data-origin-width=&quot;624&quot; data-origin-height=&quot;461&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;uncertainty의 주된 활용도는 out-of-distribution, 즉, 학습해보지 못한 데이터를 만났을 때, 모델이 이를 자각할 수 있는지 없는지를 알기 위한 지표로써 활용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 실험은 실험환경을 세팅하기 어려운 실험 중에 하나이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서는 이런 실험(withhold)을 일부 class를 제외하는 방법으로 실험을 진행했다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그림은 여러 class중에서 보행자와 자전거를 탄 사람 두 class를 제외시키고 학습을 시켰고, test에서의 Mean Uncertainty를 나타낸 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 Normal은 withhold class를 포함시켜 학습시킨 일반적인 실험 방법이고, Hold-out은 withhold class를 제외하고 학습시킨 실험 방법을 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;withhold class(보행자, 자전거 탄 사람)를 제외한 class에서는 비슷한 uncertainty를 보이지만, withhold class에서는 꽤나 차이가 있는 uncertainty를 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 실험에서 또 하나 언급하는 것은 class가 image 내에서 갖는 영역(area) 대비 구분선(boundary)의 비중이 높으면 그만큼 unceratinty도 높아진다고 한다.&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;
&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;
&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/120</guid>
      <comments>https://signing.tistory.com/120#entry120comment</comments>
      <pubDate>Sat, 31 Jul 2021 17:58:18 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 3.Method</title>
      <link>https://signing.tistory.com/119</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/118&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 1.Abstract~Related Work&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1627308556160&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 1.Abstract~Related Work&quot; data-og-description=&quot;https://arxiv.org/pdf/1908.00598.pdf 논문 아이디어를 생각하고 찾아보다가 좋은 논문인듯하여 공유하고자 한다. 해당 논문은 ICCV 2019에 올라온 논문으로 샘플링 없이 epistemic uncertainty를 구하는 방법에..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/118&quot; data-og-url=&quot;https://signing.tistory.com/118&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/p5eTs/hyK1pzj2Pa/A7uOmC4kKxUFcc23Mu3tsK/img.png?width=586&amp;amp;height=197&amp;amp;face=0_0_586_197,https://scrap.kakaocdn.net/dn/6ZPe8/hyK1qkGTqO/TFJCTa3CqPj5Wq17iwNuKK/img.png?width=586&amp;amp;height=197&amp;amp;face=0_0_586_197,https://scrap.kakaocdn.net/dn/PnsLC/hyK1jsmrqy/W1s2aQ6K45bfQnlrZJVLQK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/118&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/118&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/p5eTs/hyK1pzj2Pa/A7uOmC4kKxUFcc23Mu3tsK/img.png?width=586&amp;amp;height=197&amp;amp;face=0_0_586_197,https://scrap.kakaocdn.net/dn/6ZPe8/hyK1qkGTqO/TFJCTa3CqPj5Wq17iwNuKK/img.png?width=586&amp;amp;height=197&amp;amp;face=0_0_586_197,https://scrap.kakaocdn.net/dn/PnsLC/hyK1jsmrqy/W1s2aQ6K45bfQnlrZJVLQK/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 1.Abstract~Related Work&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://arxiv.org/pdf/1908.00598.pdf 논문 아이디어를 생각하고 찾아보다가 좋은 논문인듯하여 공유하고자 한다. 해당 논문은 ICCV 2019에 올라온 논문으로 샘플링 없이 epistemic uncertainty를 구하는 방법에..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 글에 이어서 이번 시간엔 방법론에 대해 살펴보고자한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 요하는 사전지식은 높지 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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3. Method&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Our goal is to estimate the epistemic uncertainty of a neural network trained with injected noise at inference time to quantify the level of trust in the predictions, in a single shot.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;--&amp;gt; 그래서 결국 본 논문에서의 Goal은&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;b&gt;원큐에 noise를 넣고 epistemic uncertainty를 구하는 것&lt;/b&gt;&lt;/u&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;본 논문에서 제안한 method의 핵심 중 하나는 error propagation이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주로 물리학에서 사용되고, 이를 NN에 적용하였다고 한다.(error = variance)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래의 그림은 error propagation의 이해를 돕기위한 간단한 graph 구조를 갖는 NN을 모형화한 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;593&quot; data-origin-height=&quot;184&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ezGa0h/btrapFZOYdh/P5AQU8PtrA0Zi2lMCz12F1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ezGa0h/btrapFZOYdh/P5AQU8PtrA0Zi2lMCz12F1/img.png&quot; data-alt=&quot;error propagation&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ezGa0h/btrapFZOYdh/P5AQU8PtrA0Zi2lMCz12F1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FezGa0h%2FbtrapFZOYdh%2FP5AQU8PtrA0Zi2lMCz12F1%2Fimg.png&quot; data-origin-width=&quot;593&quot; data-origin-height=&quot;184&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;error propagation&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 A와 B는 random variable(R.V.)로써 서로 독립인 관계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 non-linearity를 갖는 activation function인 f1, f2를 거쳐 각각 C, D를 만들게된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;R.V. A, B의 mean과 variance를 알기 때문에, C와 D의 variance도 계산할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;623&quot; data-origin-height=&quot;86&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/clOflc/btrastM3LiW/KgKRHnKIY4izWLPFrRrYh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/clOflc/btrastM3LiW/KgKRHnKIY4izWLPFrRrYh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/clOflc/btrastM3LiW/KgKRHnKIY4izWLPFrRrYh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclOflc%2FbtrastM3LiW%2FKgKRHnKIY4izWLPFrRrYh0%2Fimg.png&quot; data-origin-width=&quot;623&quot; data-origin-height=&quot;86&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 수식을 이용하면 C와 D의 variance를 구할 수 있는데, 이 때 편미분이 사용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 같은 방법으로 E의 variance도 동일하게 생각해볼 수 있지만, 한 가지 고려해야할 것은 C와 D는 독립이라는 전제가 깨진 것이다.&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;그렇기 때문에 C와 D의 variance를 얻기위해 co-variance를 구해야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 먼저, A와 B의 co-variance matrix부터 구해보면 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;192&quot; data-origin-height=&quot;71&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l7UTo/btrazNqew20/DgkgPPIrvlhaDA0AUBJMw1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l7UTo/btrazNqew20/DgkgPPIrvlhaDA0AUBJMw1/img.png&quot; data-alt=&quot;A and B covariance&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l7UTo/btrazNqew20/DgkgPPIrvlhaDA0AUBJMw1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl7UTo%2FbtrazNqew20%2FDgkgPPIrvlhaDA0AUBJMw1%2Fimg.png&quot; data-origin-width=&quot;192&quot; data-origin-height=&quot;71&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;A and B covariance&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고나서 수식 (1)을 적용하기 위해서는 행렬 편미분을 적용해야하는데, trick으로써 Jacobian 방법을 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cf) &lt;a href=&quot;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1627313458713&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Jacobian matrix and determinant - Wikipedia&quot; data-og-description=&quot;From Wikipedia, the free encyclopedia Jump to navigation Jump to search Matrix of all first-order partial derivatives of a vector-valued function In vector calculus, the Jacobian matrix (,[1][2][3] ) of a vector-valued function in several variables is the &quot; data-og-host=&quot;en.wikipedia.org&quot; data-og-source-url=&quot;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&quot; data-og-url=&quot;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Jacobian matrix and determinant - Wikipedia&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;From Wikipedia, the free encyclopedia Jump to navigation Jump to search Matrix of all first-order partial derivatives of a vector-valued function In vector calculus, the Jacobian matrix (,[1][2][3] ) of a vector-valued function in several variables is the&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;en.wikipedia.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;51&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Qn0RX/btrav6KESMw/eUAHlQZ1HlkPzUZJFlJHZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Qn0RX/btrav6KESMw/eUAHlQZ1HlkPzUZJFlJHZK/img.png&quot; data-alt=&quot;Jacobian&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Qn0RX/btrav6KESMw/eUAHlQZ1HlkPzUZJFlJHZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQn0RX%2Fbtrav6KESMw%2FeUAHlQZ1HlkPzUZJFlJHZK%2Fimg.png&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;51&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Jacobian&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 방법으로 우리는 최종적인 E에 대한 variance &lt;span&gt;&amp;sigma;&lt;/span&gt;&lt;span&gt;_E^2를 구할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이로써 우리는 output layer의 variance를 approximate 할 때 필요한 모든 tool들을 알아보았다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방법들은 Convolution layer와 ReLu와 같은 함수에 쓰일 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;image와 같이 high-dimensional feature space에서는 covariance matrix가 그 size 때문에서라도 더 필요하다.&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;추가적으로 activation과 activation 사이의 상관성의 impact를 아직 본 논문에서는 modeling하지 않았으며, NN에서 error-propagation은 variance-propagation으로 적용 가능하기까지는 향후 과제로 남겨두고 있다.&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;&lt;b&gt;3.1. Noise Layer&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 Noise Layer라고는 하지만, 결과적으로 dropout이 적용된 layer처럼 어떤 noise가 낀 layer를 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 Noise Layer의 노드들을 각각 독립이라고 가정하고 시작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 절에서는 Layer에 noise를 어떻게 주입(injection)할 것인가를 다루고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 noise를 발생시켜야 그에 대한 평균과 분산을 구하고 그 이후 종합된 분산들로 uncertainty를 구할 수 있기 때문이다.&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.Method 절에서는 Random Variable에 대해 다루었는데 이 R.V.들이 모이면 Random Vector가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;random vector는 단순 R.V.를 모아둔 집합이라고 생각하면 좋다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;random vector는 random process의 개념에서도 나오기 때문에 아래의 이전 포스팅을 활용해도 좋다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/62&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1627314448193&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&quot; data-og-description=&quot;이전 글: 2020/11/10 - [논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 1.Introduction 2. Related Work 본 논문에서 말하는 불확실성은 결국 분산으로 생각할 수..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/62&quot; data-og-url=&quot;https://signing.tistory.com/62&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dVnvgH/hyK1rcVs6V/ufXsP79O8lX4ctAfdKdDOK/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/dPlFgn/hyK1pTIKzp/mnlCjVAjhfAbjURv8inGs0/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/Ho82S/hyK1jeTe8a/H0wwOzGyCshZOFtUlvGxt1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/62&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/62&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dVnvgH/hyK1rcVs6V/ufXsP79O8lX4ctAfdKdDOK/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/dPlFgn/hyK1pTIKzp/mnlCjVAjhfAbjURv8inGs0/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/Ho82S/hyK1jeTe8a/H0wwOzGyCshZOFtUlvGxt1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;이전 글: 2020/11/10 - [논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 1.Introduction 2. Related Work 본 논문에서 말하는 불확실성은 결국 분산으로 생각할 수..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;이제부터 몇 가지 기호들이 나오는데 이를 하나씩 정리해보자.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;표기&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;내용&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;33&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ecm0D8/btrax7vGti2/cKrYl75umfT8QAazu99tlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ecm0D8/btrax7vGti2/cKrYl75umfT8QAazu99tlk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ecm0D8/btrax7vGti2/cKrYl75umfT8QAazu99tlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fecm0D8%2Fbtrax7vGti2%2FcKrYl75umfT8QAazu99tlk%2Fimg.png&quot; data-origin-width=&quot;33&quot; data-origin-height=&quot;35&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;noise layer의 random vector.&lt;br /&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;60&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bk4T2m/btraEe8bsnv/f2939GsqcKGcuH1BsuEz5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bk4T2m/btraEe8bsnv/f2939GsqcKGcuH1BsuEz5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bk4T2m/btraEe8bsnv/f2939GsqcKGcuH1BsuEz5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk4T2m%2FbtraEe8bsnv%2Ff2939GsqcKGcuH1BsuEz5K%2Fimg.png&quot; data-origin-width=&quot;60&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
라는 covariance를 갖음.&lt;br /&gt;(dependent)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;54&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uS0ZJ/btraCSRPZAT/wohXi6EvR0s4MTkVsMcDIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uS0ZJ/btraCSRPZAT/wohXi6EvR0s4MTkVsMcDIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uS0ZJ/btraCSRPZAT/wohXi6EvR0s4MTkVsMcDIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuS0ZJ%2FbtraCSRPZAT%2FwohXi6EvR0s4MTkVsMcDIK%2Fimg.png&quot; data-origin-width=&quot;54&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;X의 randomness를 나타낸 Random Vector&lt;br /&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;63&quot; data-origin-height=&quot;36&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kw3ZJ/btraImkUpTZ/zJtCrn9fX5S1OTuBQm8u40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kw3ZJ/btraImkUpTZ/zJtCrn9fX5S1OTuBQm8u40/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kw3ZJ/btraImkUpTZ/zJtCrn9fX5S1OTuBQm8u40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fkw3ZJ%2FbtraImkUpTZ%2FzJtCrn9fX5S1OTuBQm8u40%2Fimg.png&quot; data-origin-width=&quot;63&quot; data-origin-height=&quot;36&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
라는 covariance를 갖음.&lt;br /&gt;(independent)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span&gt;○&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;Hadamard product(=element wise multiplication)&lt;br /&gt;--&amp;gt; size가 동일한 두 행렬에서 위치가 동일한 원소들의 곱을 나타낸 연산자&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 본격적으로 어떻게 noise를 injection했는지에 대해 알아보도록 하자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Noise Injection에는 크게 두 가지(1.addition, 2.Hadamard product) 방법이 있다.&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;우선, addition하는 방법은 아래의 수식과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beKWGz/btraEfNRbxN/keqkIvIfQ3XLbNVp5W1LbK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beKWGz/btraEfNRbxN/keqkIvIfQ3XLbNVp5W1LbK/img.png&quot; data-alt=&quot;Noise Injection by addition&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beKWGz/btraEfNRbxN/keqkIvIfQ3XLbNVp5W1LbK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeKWGz%2FbtraEfNRbxN%2FkeqkIvIfQ3XLbNVp5W1LbK%2Fimg.png&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Noise Injection by addition&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Noise Injection은 수식 (3)과 같이 단순화할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 갖고 있던 variance에 randomness를 갖는 random vector의 variance를 더하여 다음 random vector X의 variance를 구할 수 있다.&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;다음으로, Hadamard product(=element-wise mulitplication of X vector and Z vector)은 아래 수식 (4)에 따라 구할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;616&quot; data-origin-height=&quot;115&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Zyuxx/btraBTR9ySC/ekvRfag13Qv1oR4OjAmFe0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Zyuxx/btraBTR9ySC/ekvRfag13Qv1oR4OjAmFe0/img.png&quot; data-alt=&quot;Noise Injection by Hadamard product&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Zyuxx/btraBTR9ySC/ekvRfag13Qv1oR4OjAmFe0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZyuxx%2FbtraBTR9ySC%2FekvRfag13Qv1oR4OjAmFe0%2Fimg.png&quot; data-origin-width=&quot;616&quot; data-origin-height=&quot;115&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Noise Injection by Hadamard product&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;u&gt;&lt;b&gt;수식에 대해 파기 전에 언뜻보면 수식 (4)는 마치 dropout을 연상케한다.&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;u&gt;&lt;b&gt;dropout은 (weight vector ○ Bernulli dist. random vector) 이기 때문이다.&lt;/b&gt;&lt;/u&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;수식 (4)에 대한 증명과 부가 설명은 appendix 8번 항목에 나와있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가 설명을 보고 싶지 않은 분들은 건너 뛰어도 좋다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock floatLeft&quot; data-origin-width=&quot;173&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cEk35j/btraCiRosFK/WRyFRPZ5UcFgAkkdMlWB6K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cEk35j/btraCiRosFK/WRyFRPZ5UcFgAkkdMlWB6K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cEk35j/btraCiRosFK/WRyFRPZ5UcFgAkkdMlWB6K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcEk35j%2FbtraCiRosFK%2FWRyFRPZ5UcFgAkkdMlWB6K%2Fimg.png&quot; data-origin-width=&quot;173&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 같이 새로운 Y vector를 정의해보자. 그러면 우리는 이 Y vector의 variance가 궁금한 것이다. variance의 정의는 &lt;b&gt;제평평제(제곱의 평균 - 평균의 제곱)&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 이 정의에 대입해보면, 아래 수식 (14)와 같이 나온다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;557&quot; data-origin-height=&quot;41&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cWAYsA/btraGPOt8JJ/O0Czu3T0XsYUvkpZlpdNsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cWAYsA/btraGPOt8JJ/O0Czu3T0XsYUvkpZlpdNsK/img.png&quot; data-alt=&quot;Variance of Y vector&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cWAYsA/btraGPOt8JJ/O0Czu3T0XsYUvkpZlpdNsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcWAYsA%2FbtraGPOt8JJ%2FO0Czu3T0XsYUvkpZlpdNsK%2Fimg.png&quot; data-origin-width=&quot;557&quot; data-origin-height=&quot;41&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Variance of Y vector&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;X와 Z vector에 대해 독립이라고 가정해보면, 다음의 수식 (15)를 이용할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;40&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdZ9Rc/btraFF6A5BI/8GrfeRY3AWTSAOPkF1usC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdZ9Rc/btraFF6A5BI/8GrfeRY3AWTSAOPkF1usC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdZ9Rc/btraFF6A5BI/8GrfeRY3AWTSAOPkF1usC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdZ9Rc%2FbtraFF6A5BI%2F8GrfeRY3AWTSAOPkF1usC1%2Fimg.png&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;40&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수식 (15)를 이용하여 수식 (14)를 다시 정리해보면, 수식 (16)으로 전개할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;80&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJAXHA/btraBdb91Sx/8qTdzkF19Ewlb69GqTQ0S0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJAXHA/btraBdb91Sx/8qTdzkF19Ewlb69GqTQ0S0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJAXHA/btraBdb91Sx/8qTdzkF19Ewlb69GqTQ0S0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJAXHA%2FbtraBdb91Sx%2F8qTdzkF19Ewlb69GqTQ0S0%2Fimg.png&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;80&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 별개로 X, Z vector의 variance의 Hadamard product를 전개한 식을 확인해보자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;559&quot; data-origin-height=&quot;156&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/regY4/btraCSrNqu4/okwxNuyEatqek45wrogjBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/regY4/btraCSrNqu4/okwxNuyEatqek45wrogjBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/regY4/btraCSrNqu4/okwxNuyEatqek45wrogjBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FregY4%2FbtraCSrNqu4%2FokwxNuyEatqek45wrogjBk%2Fimg.png&quot; data-origin-width=&quot;559&quot; data-origin-height=&quot;156&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수식 (17)과 수식 (16)을 이용하여 다음의 관계(수식 (18))를 정리할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;571&quot; data-origin-height=&quot;193&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b9IwNd/btraGaSR3Ep/pCCMh5cUJ1uCKVJyGsXX21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b9IwNd/btraGaSR3Ep/pCCMh5cUJ1uCKVJyGsXX21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b9IwNd/btraGaSR3Ep/pCCMh5cUJ1uCKVJyGsXX21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb9IwNd%2FbtraGaSR3Ep%2FpCCMh5cUJ1uCKVJyGsXX21%2Fimg.png&quot; data-origin-width=&quot;571&quot; data-origin-height=&quot;193&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 정리하여 우리는 마지막 수식 (19)을 얻을 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;80&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Nuelh/btraEgsrEvp/kxCvDwyEvPPR1bZLqBTblK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Nuelh/btraEgsrEvp/kxCvDwyEvPPR1bZLqBTblK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Nuelh/btraEgsrEvp/kxCvDwyEvPPR1bZLqBTblK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNuelh%2FbtraEgsrEvp%2FkxCvDwyEvPPR1bZLqBTblK%2Fimg.png&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;80&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리하여 vector Y의 variance를 구하는 수식은 수식 (4)와 수식 (19)가 동일함을 보인 것이다.&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;이렇게 noise injection을 할 때 주의해야할 점은, NN의 첫 번째 layer에는 우리가 알고 있는 prior 정보를 넣거나(센서의 noise라던가...) 혹은 noise의 합이 0으로 centered된 noise를 넣는 것이다.&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;후자의 경우에는 covariance matrix의 결과는 결국 diagonal given independent noise가 될 것이고, 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pwrh7/btraHrteGrl/H1SS8HZDHyGeUy7A5RVRLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pwrh7/btraHrteGrl/H1SS8HZDHyGeUy7A5RVRLK/img.png&quot; data-alt=&quot;合=0인 noise injection covariance matrix result&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pwrh7/btraHrteGrl/H1SS8HZDHyGeUy7A5RVRLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpwrh7%2FbtraHrteGrl%2FH1SS8HZDHyGeUy7A5RVRLK%2Fimg.png&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;合=0인 noise injection covariance matrix result&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 n은 activatin vector의 차원의 수이고, &lt;span&gt;&amp;sigma;는 각 i번째 activation의 variance를 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은 일반적인 p의 확률을 갖는 dropout을 의미한다.&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;&lt;b&gt;3.2. Affine Layers(=Fully-connected Layer) and Non-Linearities&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;noise layer의 covariance matrix를 구한 후. 필요한 작업은 output layer까지 이것을 propagate해야하는 것이다.(=error/variance/noise propagation)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 것은 일반적으로는 affine layer와 non-linearities들에 대해 적용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리는 이러한 작업을 기존에 알기로는 각 layer, node마다 미분을 때려 해당 layer나 node의 영향력을 파악하곤 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에도 마찬가지이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문에서는 fully-connected layer와 convolutional layer에 대해 살펴보고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;곧바로 이것을 적용시킬 것인데 Jacobian을 사용한 수식 (2)에 적용해보자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;46&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PUORb/btraBSr8Nuh/8BDfkuR8sGXpfgI0CQuvMK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PUORb/btraBSr8Nuh/8BDfkuR8sGXpfgI0CQuvMK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PUORb/btraBSr8Nuh/8BDfkuR8sGXpfgI0CQuvMK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPUORb%2FbtraBSr8Nuh%2F8BDfkuR8sGXpfgI0CQuvMK%2Fimg.png&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;46&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은 Jacobian을 이용한 wieght에 대한 미분이기 때문에 distribution이 포함되어 있지 않은 수식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;non-linearities는 first-order Taylor expansion을 사용하여 approximate할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇게되면. non-linearities에 대한 covariance transformation은 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkwNm9/btraCjW5oUn/OSeg7Y8TLUN3OKX4qQ3eIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkwNm9/btraCjW5oUn/OSeg7Y8TLUN3OKX4qQ3eIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkwNm9/btraCjW5oUn/OSeg7Y8TLUN3OKX4qQ3eIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkwNm9%2FbtraCjW5oUn%2FOSeg7Y8TLUN3OKX4qQ3eIK%2Fimg.png&quot; data-origin-width=&quot;561&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Taylor Expansion을 이용한 non-linearities(ReLU, Softmax, sigmoid)의 Jacobian 미분은 appendix에 다음과 같이 나와 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;580&quot; data-origin-height=&quot;643&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxTRGj/btrazuENfD3/XjXEHbV61Zp3lBzdnktt51/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxTRGj/btrazuENfD3/XjXEHbV61Zp3lBzdnktt51/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxTRGj/btrazuENfD3/XjXEHbV61Zp3lBzdnktt51/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxTRGj%2FbtrazuENfD3%2FXjXEHbV61Zp3lBzdnktt51%2Fimg.png&quot; data-origin-width=&quot;580&quot; data-origin-height=&quot;643&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;3.3. Special Case: Convlutional Layers combined with ReLU Activations&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 같이 sampling이 필요 없는 방법은 전체 covariance matrix를 구해야하는 문제 때문에, O(n^2)의 메모리 복잡도를 갖고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;많은 다른 NN 아키텍쳐에서는 conv layer에 대한 iterative한 적용이 필요하기 때문에, 본 논문에서는 컴퓨팅 계산 복잡도 부분에서는 개선시킨 점이 있다.&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;또한 보통의 affine layer들에 대해서는 full covariance를 구하는 것이 필요하지만, conv layer는 그렇지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면, conv layer는 input 전체에 대한 weight를 공유하고, 결과적으로는 각 pixel의 local한 부분만 linear transformation을 적용하기 때문이다.&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;그래서 conv layer의 covariance matrix를 구할때는, conv layer에 대한 (dropout rate와 같은)prior가 주어지면 output covariance matrix는 main diagonal entries와 일부 나머지 요소들을 제외하면 대부분 0을 갖는 sparse matrix가 된다.&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-origin-width=&quot;1179&quot; data-origin-height=&quot;488&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmonSg/btraGPOvDYe/smWmRZzpWebT3QWsy4a2dk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmonSg/btraGPOvDYe/smWmRZzpWebT3QWsy4a2dk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmonSg/btraGPOvDYe/smWmRZzpWebT3QWsy4a2dk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmonSg%2FbtraGPOvDYe%2FsmWmRZzpWebT3QWsy4a2dk%2Fimg.png&quot; data-origin-width=&quot;1179&quot; data-origin-height=&quot;488&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은 CIFAR10 image data를 가지고 conv 아키텍쳐를 이용하여 실험한 결과이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래의 그림에서 D, C, R은 각각 Dropout, Convolution, ReLU를 나타낸 것이고, 각 layer 및 연산을 진행했을 때의 평균 covariance matrix의 수치를 높을수록 노란색, 낮을수록 남색으로 하여 나타낸 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 그림은 각 activation value의 mean variance를 normalize하여 나타낸 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 그림처럼, symmetrical하게 분산되어 있는 weight가 주어진 ReLU함수는 분산 값을 0.5까지 떨어뜨리는데 기여하고, 이 결과는 ReLU함수를 사용한 Conv Layer의 수에 따라 관측된 분산의 평균을 감소시킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무슨 말이냐면, conv layer를 거치면서 Mean of Variance가 줄어들고 있다는 것이다.&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. dropout은 main diagonal element value를 강화시킨다는 것과,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. dropout layer가 추가적으로 없으면 variance가 점차 줄어든다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 결과적으로, covariance matrix의 큰 영역들은 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;또한 계산 복잡도 측면에서는 variance propagation의 계산복잡도와 일반적인 forward propagation의 계산복잡도는 비슷한 수준이라고 말하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면, covariance matrix의 main diagonal vector에 대해 propagation을 하면 되기 때문이다.&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/119</guid>
      <comments>https://signing.tistory.com/119#entry119comment</comments>
      <pubDate>Tue, 27 Jul 2021 00:53:02 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation - 1.Abstract~Related Work</title>
      <link>https://signing.tistory.com/118</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1908.00598.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1908.00598.pdf&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;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 논문은 ICCV 2019에 올라온 논문으로 샘플링 없이 epistemic uncertainty를 구하는 방법에 대해 주로 이야기하고 있다.&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;b&gt;Abstract&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;We present a sampling-free approach for computing the epistemic uncertainty of a neural network. Epistemic uncertainty is an important quantity for the deployment of deep neural networks in safety-critical applications, since it represents how much one can trust predictions on new data. Recently promising works were proposed using noise injection combined with Monte-Carlo sampling at inference time to estimate this quantity (e.g. Monte-Carlo dropout). &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;b&gt;Our main contribution is an approximation of the epistemic uncertainty estimated by these methods that does not require sampling, thus notably reducing the computational overhead&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;. We apply our approach to large-scale visual tasks (i.e., semantic segmentation and depth regression) to demonstrate the advantages of our method compared to sampling-based approaches in terms of quality of the uncertainty estimates as well as of computational overhead.&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;기존에 uncertainty를 구하는 가장 대표적인 방법은 MC-dropout을 사용하여 sampling을 하여 uncertainty를 구하는 방법이었다.(&lt;a href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&lt;/a&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, 이것의 큰 단점은 sampling을 이용한 방법 때문에 계산이 오래 걸려 학습 시간이 길어진다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;sampling이 가장 직관적이고 uncertainty를 구하는데 직관적인 방법이지만, 사람들은 sampling을 다소 부담스러워한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 본 논문은 sampling 없이 epistemic uncertainty를 구하는 것을 고안해내었고, 이것이 본 논문에서 가장 큰 contribution이다.&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;&lt;b&gt;1. Introduction&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;uncertainty에 대해 소개를 하는 절이다. 왜 uncertainty가 필요한지에 대해 설명하고, 어떤 종류가 있는지를 소개하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로 uncertainty는 데이터 기반 의사결정을 하는 모델들이 중요한 결정을 내릴 때 가장 중요시된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 자율주행에서 자율주행 모델이 주변 환경에 대해 잘못된 판단을 내리면 위험한 상황이 펼쳐질 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서, uncertainty를 적용함으로써 모델이 내린 의사결정이 믿을만한가에 대해 판단할 수 있어야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 이것이 real-time으로 적용되면 더 효율적이라고 말하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자율주행에 있어서 real-time이 아니면 실효성이 없기 때문이다.&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;이러한 uncertainty에는 두 가지 종류가 있는데 Aleatoric과 Epistemic이 있다.&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;a href=&quot;https://signing.tistory.com/62&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1627114479731&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&quot; data-og-description=&quot;이전 글: 2020/11/10 - [논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 1.Introduction 2. Related Work 본 논문에서 말하는 불확실성은 결국 분산으로 생각할 수..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/62&quot; data-og-url=&quot;https://signing.tistory.com/62&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/e4901/hyKY8r8E8s/kllXLViw62JWkwM2kFpzI1/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/betKdQ/hyKZZmNXNa/SUQ4PRMAfMBNQPsbTAhs81/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/RanOA/hyKZ4PaFMa/wsBPA43IEaFIvydE5lw9yk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/62&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/62&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/e4901/hyKY8r8E8s/kllXLViw62JWkwM2kFpzI1/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/betKdQ/hyKZZmNXNa/SUQ4PRMAfMBNQPsbTAhs81/img.png?width=692&amp;amp;height=413&amp;amp;face=0_0_692_413,https://scrap.kakaocdn.net/dn/RanOA/hyKZ4PaFMa/wsBPA43IEaFIvydE5lw9yk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 2.Related Work(1)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;이전 글: 2020/11/10 - [논문 리뷰] What uncertainties do we need in Bayesian deep learning for computer vision? - 1.Introduction 2. Related Work 본 논문에서 말하는 불확실성은 결국 분산으로 생각할 수..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;이 중에서 우리가 개선할 수 있는 uncertainty는 Epistemic Uncertainty이므로, 본 논문에서는 이 uncertainty에 집중하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 연구들은 Epistemic Uncertainty를 구하기 위해 noise를 주입하는 식의 방법을 활용했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서의 noise라고 하면, weight의 떨림을 유도하거나, data sampling을 통해 variance를 유도하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래야지 model이 내린 의사결정의 range가 결정되면서 uncertainty를 구할 수 있기 때문이다.&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;그러므로 결국 NN은 training data의 noise distribution을 측정하는 것을 학습하게 된다.&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;대부분의 이런 sampling 방법들은 MC-dropout (Monte-Carlo Dropout)에 의존하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 variational inference를 해야하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 이러한 sampling 방법은 real-time application에 적용하기 적합하지 않다.&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 본 논문에서는 아래 두 가지 contibution을 제안한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;586&quot; data-origin-height=&quot;197&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dHkqh4/btrapGLbJXu/Fa1hflgxyfgUQTZNq2McwK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dHkqh4/btrapGLbJXu/Fa1hflgxyfgUQTZNq2McwK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dHkqh4/btrapGLbJXu/Fa1hflgxyfgUQTZNq2McwK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdHkqh4%2FbtrapGLbJXu%2FFa1hflgxyfgUQTZNq2McwK%2Fimg.png&quot; data-origin-width=&quot;586&quot; data-origin-height=&quot;197&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 단순 CNN을 사용한다는 것이 다소 좀 아쉬운 부분이긴 하지만 비교하는 자체에 의미가 있다고 생각한다.&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;실험을 위해서 비교 모델로는 Bayesian-SegNet(&lt;a href=&quot;https://arxiv.org/pdf/1511.02680.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1511.02680.pdf&lt;/a&gt;)을 사용하였다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실험에 사용된 데이터는 CamVid dataset을 사용하였고, large scale의 data를 타겟으로 한 것 같았다.&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;&lt;b&gt;2. Related Work&lt;/b&gt;&lt;/h2&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;skip해도 될 것 같다.&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;a href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1627308645989&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&quot; data-og-description=&quot;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 2.Abstract [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 3.Introduce..&quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/82&quot; data-og-url=&quot;https://signing.tistory.com/82&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/xMu9a/hyKZWyKXhi/J1SyPHx5NZXinX2yYhPQ01/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddpBOd/hyKZ6ai0rn/VNQs4DtkeAQgM8jAwKDkl0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cJKZtm/hyK1h2nFUu/aFt0Lz09O0WhbFCgyjBKSk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/82&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/82&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/xMu9a/hyKZWyKXhi/J1SyPHx5NZXinX2yYhPQ01/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddpBOd/hyKZ6ai0rn/VNQs4DtkeAQgM8jAwKDkl0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cJKZtm/hyK1h2nFUu/aFt0Lz09O0WhbFCgyjBKSk/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;[논문 리뷰] Dropout as a Bayesian Approximation 설명 - 1.Prologue [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 2.Abstract [논문 리뷰] Dropout as a Bayesian Approximation 설명 - 3.Introduce..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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>개인 공부 정리/Bayesian</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/118</guid>
      <comments>https://signing.tistory.com/118#entry118comment</comments>
      <pubDate>Sat, 24 Jul 2021 16:30:00 +0900</pubDate>
    </item>
    <item>
      <title>[논문 소개] Deep Unsupervised Clustering with Gaussian Mixture Variational AutoEncoders</title>
      <link>https://signing.tistory.com/116</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/pdf/1611.02648.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://arxiv.org/pdf/1611.02648.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단히 설명하자면, 기존의 auto-encoder는 다차원 데이터를 적은 차원의 데이터로 압축시키는 것을 의미하고, variatioinal auto-encoder는 그 압축시킨 데이터를 일종의 확률로써 생각하여 정규분포로 나타낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 논문의 핵시 contribution은 그 압축시킨 distribution을 mixture model로 fitting하여 이를 clustring에 이용한 것이다.&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;해당 컨셉을 나 혼자 생각해서 &quot;아 이거다!&quot; 했는데, 찾아보니 역시 존재하는 아이디어였다ㅠ&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;&lt;b&gt;Abstract&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;We study a variant of the variational autoencoder model (VAE) with a Gaussian mixture as a prior distribution, with the goal of performing unsupervised clustering through deep generative models. We observe that the known problem of over-regularisation that has been shown to arise in regular VAEs also manifests itself in our model and leads to cluster degeneracy. We show that a heuristic called minimum information constraint that has been shown to mitigate this effect in VAEs can also be applied to improve unsupervised clustering performance with our model. Furthermore we analyse the effect of this heuristic and provide an intuition of the various processes with the help of visualizations. Finally, we demonstrate the performance of our model on synthetic data, MNIST and SVHN, showing that the obtained clusters are distinct, interpretable and result in achieving competitive performance on unsupervised clustering to the state-of-the-art results.&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;&lt;b&gt;Experiments&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;547&quot; data-origin-height=&quot;430&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l383Z/btq91M6gaHd/Oe3LTjCE3eh3wFBMwGWNQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l383Z/btq91M6gaHd/Oe3LTjCE3eh3wFBMwGWNQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l383Z/btq91M6gaHd/Oe3LTjCE3eh3wFBMwGWNQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl383Z%2Fbtq91M6gaHd%2FOe3LTjCE3eh3wFBMwGWNQk%2Fimg.png&quot; data-origin-width=&quot;547&quot; data-origin-height=&quot;430&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;참고&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;http://ruishu.io/2016/12/25/gmvae/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;http://ruishu.io/2016/12/25/gmvae/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1626738363104&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Gaussian Mixture VAE: Lessons in Variational Inference, Generative Models, and Deep Nets - Rui Shu&quot; data-og-description=&quot;Not too long ago, I came across this paper on unsupervised clustering with Gaussian Mixture VAEs. I was quite surpris...&quot; data-og-host=&quot;ruishu.io&quot; data-og-source-url=&quot;http://ruishu.io/2016/12/25/gmvae/&quot; data-og-url=&quot;http://ruishu.io/2016/12/25/gmvae/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/qBTly/hyKWSPDujA/5YuJrzQ7gwjU5k5OeKtG4K/img.png?width=3240&amp;amp;height=916&amp;amp;face=0_0_3240_916,https://scrap.kakaocdn.net/dn/cDx7Z8/hyKWJd5NbS/9fOSanDQ1M4MV67IbjykrK/img.png?width=3240&amp;amp;height=916&amp;amp;face=0_0_3240_916&quot;&gt;&lt;a href=&quot;http://ruishu.io/2016/12/25/gmvae/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;http://ruishu.io/2016/12/25/gmvae/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/qBTly/hyKWSPDujA/5YuJrzQ7gwjU5k5OeKtG4K/img.png?width=3240&amp;amp;height=916&amp;amp;face=0_0_3240_916,https://scrap.kakaocdn.net/dn/cDx7Z8/hyKWJd5NbS/9fOSanDQ1M4MV67IbjykrK/img.png?width=3240&amp;amp;height=916&amp;amp;face=0_0_3240_916');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Gaussian Mixture VAE: Lessons in Variational Inference, Generative Models, and Deep Nets - Rui Shu&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Not too long ago, I came across this paper on unsupervised clustering with Gaussian Mixture VAEs. I was quite surpris...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;ruishu.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&lt;a href=&quot;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1626738378871&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Variational autoencoder with Gaussian mixture model&quot; data-og-description=&quot;A variational autoencoder (VAE) provides a way of learning the probability distribution $p(x,z)$ relating an input $x$ to its latent representation $z$. In particular, the encoder $e$ maps an inpu...&quot; data-og-host=&quot;stats.stackexchange.com&quot; data-og-source-url=&quot;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&quot; data-og-url=&quot;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bQ0c3g/hyKWH8pHC2/oVA0TtWdD7eEiYkWCTkixk/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316&quot;&gt;&lt;a href=&quot;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://stats.stackexchange.com/questions/350921/variational-autoencoder-with-gaussian-mixture-model&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bQ0c3g/hyKWH8pHC2/oVA0TtWdD7eEiYkWCTkixk/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Variational autoencoder with Gaussian mixture model&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;A variational autoencoder (VAE) provides a way of learning the probability distribution $p(x,z)$ relating an input $x$ to its latent representation $z$. In particular, the encoder $e$ maps an inpu...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;stats.stackexchange.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&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;&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>개인 공부 정리/Bayesian</category>
      <category>bayesianVAE</category>
      <category>VAE</category>
      <category>베이지안</category>
      <category>오토인코더</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/116</guid>
      <comments>https://signing.tistory.com/116#entry116comment</comments>
      <pubDate>Tue, 20 Jul 2021 08:45:10 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] Bayesian Reinforcement Learning: A Survey - 2.Technical Background</title>
      <link>https://signing.tistory.com/115</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/114&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[논문 리뷰] Bayesian Reinforcement Learning: A Survey - 1.Introduction&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1625983914769&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[논문리뷰] Bayesian Reinforcement Learning: A Survey - 1.Introduction&quot; data-og-description=&quot;강화학습과 베이지안을 접목한 분야인 Bayesian Reinforcement Learning(이하 BRL)에 관한 서베이를 찾아서 이를 차근차근 리뷰해보고자 한다. 굉장히 짧고, 내가 이해한 것 위주로 글을 작성할 예정이니 &quot; data-og-host=&quot;signing.tistory.com&quot; data-og-source-url=&quot;https://signing.tistory.com/114&quot; data-og-url=&quot;https://signing.tistory.com/114&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/P5pDP/hyKQrym35V/jHFVLEIBvQYht0IE5KNQXk/img.png?width=674&amp;amp;height=212&amp;amp;face=0_0_674_212,https://scrap.kakaocdn.net/dn/iDpwo/hyKRFoeUkC/JxKbMHKB2uFy4xyiQVNDc0/img.png?width=674&amp;amp;height=212&amp;amp;face=0_0_674_212,https://scrap.kakaocdn.net/dn/ddUu8g/hyKQlEU0M8/WKkYTXzLykxlF2fABUPsb1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441&quot;&gt;&lt;a href=&quot;https://signing.tistory.com/114&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://signing.tistory.com/114&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/P5pDP/hyKQrym35V/jHFVLEIBvQYht0IE5KNQXk/img.png?width=674&amp;amp;height=212&amp;amp;face=0_0_674_212,https://scrap.kakaocdn.net/dn/iDpwo/hyKRFoeUkC/JxKbMHKB2uFy4xyiQVNDc0/img.png?width=674&amp;amp;height=212&amp;amp;face=0_0_674_212,https://scrap.kakaocdn.net/dn/ddUu8g/hyKQlEU0M8/WKkYTXzLykxlF2fABUPsb1/img.jpg?width=1920&amp;amp;height=1441&amp;amp;face=0_0_1920_1441');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[논문리뷰] Bayesian Reinforcement Learning: A Survey - 1.Introduction&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;강화학습과 베이지안을 접목한 분야인 Bayesian Reinforcement Learning(이하 BRL)에 관한 서베이를 찾아서 이를 차근차근 리뷰해보고자 한다. 굉장히 짧고, 내가 이해한 것 위주로 글을 작성할 예정이니&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;signing.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 시간엔 BRL의 전반적인 내용에 대해 다루었다. 이번 시간엔 RL과 Bayesian의 기본 개념적인 부분을 다루고 그 둘을 융합하는 과정을 소개하고자 한다.&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;&lt;b&gt;2.1 Multi-Armed Bandits(MAB)&lt;/b&gt;&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1.&amp;nbsp;&lt;/b&gt;&lt;/h3&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 style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;b&gt;Exploitation&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;현재의 state에서 가장 reward가 높게끔하는 action&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;vs&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;b&gt;Exploration&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;지금의 reward는 적지만 미래에 더 많은 reward를 받는 action&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;u&gt;&lt;i&gt;stochastic multi-armed bandit(MAB)&lt;/i&gt;&lt;/u&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;K-MAB 모델을 정의하기 위해 아래와 같이 정의하겠다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;706&quot; data-origin-height=&quot;240&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J7fJL/btq9f5z4A28/CA5POtDwRuantgdZE941KK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J7fJL/btq9f5z4A28/CA5POtDwRuantgdZE941KK/img.png&quot; data-alt=&quot;K-MAB model definition&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J7fJL/btq9f5z4A28/CA5POtDwRuantgdZE941KK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ7fJL%2Fbtq9f5z4A28%2FCA5POtDwRuantgdZE941KK%2Fimg.png&quot; data-origin-width=&quot;706&quot; data-origin-height=&quot;240&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;K-MAB model definition&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리가 어떤 환경에서 탐색을 하고자 할 때, 처음 그 환경은 우리가 알 수 없는 distribution을 갖기 때문에 decision-maker는 {최적이라 생각하는 arm을 고르는 것}과 {true-distribution을 알기 위해 더 많은 정보를 모으는 것} 사이에서 많은 고민을 해야한다.&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;b&gt;2.&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;703&quot; data-origin-height=&quot;304&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cAJo8r/btq9gAmfrH1/PiQVbTXqyKjFIENKKpf6cK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cAJo8r/btq9gAmfrH1/PiQVbTXqyKjFIENKKpf6cK/img.png&quot; data-alt=&quot;Regret에 대한 정의&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cAJo8r/btq9gAmfrH1/PiQVbTXqyKjFIENKKpf6cK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcAJo8r%2Fbtq9gAmfrH1%2FPiQVbTXqyKjFIENKKpf6cK%2Fimg.png&quot; data-origin-width=&quot;703&quot; data-origin-height=&quot;304&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Regret에 대한 정의&lt;/figcaption&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;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;i&gt;&lt;u&gt;&lt;b&gt;(최적이라 생각하는 action의 결과에 대한 reward - t시점에서의 action에 대한 결과에 대한 reward)를 T시점까지의 합 &lt;/b&gt;&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;i&gt;&lt;u&gt;&lt;b&gt;즉, T시점까지의 실행한 action에 대한 기회비용의 합&lt;/b&gt;&lt;/u&gt;&lt;/i&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;/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) 온라인 쇼핑몰을 개설하고 customer에 대한 정보가 없다는 것을 아래와 같이 표현할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;72&quot; data-origin-height=&quot;27&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi7uQW/btq9gp5snnG/mTkWjnaCrTnKLVkPmKKVrk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi7uQW/btq9gp5snnG/mTkWjnaCrTnKLVkPmKKVrk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi7uQW/btq9gp5snnG/mTkWjnaCrTnKLVkPmKKVrk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi7uQW%2Fbtq9gp5snnG%2FmTkWjnaCrTnKLVkPmKKVrk%2Fimg.png&quot; data-origin-width=&quot;72&quot; data-origin-height=&quot;27&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(2) 이 때의 regret minimization(기회비용 최소화) 방법은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;-&amp;nbsp; 여러 T 시점까지의 순차적인 광고(a1, a2, ..., aT) 스트리밍을 성공적으로 태워야한다.&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;b&gt;3.&lt;/b&gt;&lt;/h3&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;이를 MAB에 반영한 것이 바로 contextual bandit model이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 모델은 여러 다른 말로도 볼리는데, associative bandit model, bandit with side infomation model 이라고도 불린다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;305&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/K76i0/btq9nDaiBse/GUOTyOW33rXiC9aqdloRvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/K76i0/btq9nDaiBse/GUOTyOW33rXiC9aqdloRvK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/K76i0/btq9nDaiBse/GUOTyOW33rXiC9aqdloRvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FK76i0%2Fbtq9nDaiBse%2FGUOTyOW33rXiC9aqdloRvK%2Fimg.png&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;305&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 notation에 대한 설명은 위와 같고 contextual bandit model에 대한 정의는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;295&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dhsu4U/btq9jFAbWp0/t1RDyAO6b5wPEk0JsCkNxk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dhsu4U/btq9jFAbWp0/t1RDyAO6b5wPEk0JsCkNxk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dhsu4U/btq9jFAbWp0/t1RDyAO6b5wPEk0JsCkNxk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdhsu4U%2Fbtq9jFAbWp0%2Ft1RDyAO6b5wPEk0JsCkNxk%2Fimg.png&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;295&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;&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;b&gt;2.2 Markov Decision Process(MDP)&lt;/b&gt;&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1.&amp;nbsp;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MDP는 MAB의 확장버전이라 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;state라는 개념을 추가하여 확장한 것인데, 동적으로 action을 변경하고 system의 결과를 반영함으로써 보다 더 최선의 결과를 내는 것이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;704&quot; data-origin-height=&quot;298&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sK2y3/btq9kPCzChi/VWKlYq9gXHos0i5X031n60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sK2y3/btq9kPCzChi/VWKlYq9gXHos0i5X031n60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sK2y3/btq9kPCzChi/VWKlYq9gXHos0i5X031n60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsK2y3%2Fbtq9kPCzChi%2FVWKlYq9gXHos0i5X031n60%2Fimg.png&quot; data-origin-width=&quot;704&quot; data-origin-height=&quot;298&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 그림에서처럼 R(s,a)는 state와 action이 주어졌을 때, 즉시 받을 수 있는 reward에 대한 random variable이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 r(s,a)는 확률변수 R(s,a)의 한 원소로써 존재하고, R(s,a)의 기대값(expectation value)는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;221&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SVksR/btq9jHrgaPN/jCC3SLQT4nwC4PROt31PF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SVksR/btq9jHrgaPN/jCC3SLQT4nwC4PROt31PF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SVksR/btq9jHrgaPN/jCC3SLQT4nwC4PROt31PF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSVksR%2Fbtq9jHrgaPN%2FjCC3SLQT4nwC4PROt31PF0%2Fimg.png&quot; data-origin-width=&quot;221&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;여기서의 q는 확률이라고 보면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 우리가 얻을 수 있는 reward의 기대값은 아래와 같은 한계가 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;137&quot; data-origin-height=&quot;33&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/efCDaa/btq9f6lttG4/unqKmccz9wXrBKmd546WSK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/efCDaa/btq9f6lttG4/unqKmccz9wXrBKmd546WSK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/efCDaa/btq9f6lttG4/unqKmccz9wXrBKmd546WSK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FefCDaa%2Fbtq9f6lttG4%2FunqKmccz9wXrBKmd546WSK%2Fimg.png&quot; data-origin-width=&quot;137&quot; data-origin-height=&quot;33&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&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;&amp;nbsp;&lt;/p&gt;
&lt;h3 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;&gt;Markov라는 것은 연속적으로 관찰된 것 중에 가장 최근 state에 의존하는 distribution임을 나타내는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 보통 Markov는 stationary하다고 할 수 있고 이는 시간에 따라 변하지 않는다는 뜻이기도 하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 정적인 Markov policy는 state가 주어졌을 때의 action의 set의 확률분포라 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른말로 풀어 쓰면, 어떤 상태(state)가 주어졌을 때, 그 상황에 대응할 수 잇는 action들의 집합에 대한 distribution이라 할 수 있다는 말이다.&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;이것은 곧 deterministic하다고 말할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 모든 history에 대해 한가지 action에 의존하는 확률분포이기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 deterministic policy는 state집합에서 action의 집합을 mapping하는 것으로 볼 수 있다.&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;이제부터 notation이 많이 나오는데 한 번 정리할 필요가 있을 것 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 160px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style9&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;b&gt;Notation&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;b&gt;의미&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;29&quot; data-origin-height=&quot;36&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qQr5f/btq9gAtc0br/m5E1CFJJKMAS3yFAzk0Vz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qQr5f/btq9gAtc0br/m5E1CFJJKMAS3yFAzk0Vz0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qQr5f/btq9gAtc0br/m5E1CFJJKMAS3yFAzk0Vz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqQr5f%2Fbtq9gAtc0br%2Fm5E1CFJJKMAS3yFAzk0Vz0%2Fimg.png&quot; data-origin-width=&quot;29&quot; data-origin-height=&quot;36&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;Policy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;43&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9LEI1/btq9fXIfpsN/IUasG1c4oEaYITkFRCKSTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9LEI1/btq9fXIfpsN/IUasG1c4oEaYITkFRCKSTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9LEI1/btq9fXIfpsN/IUasG1c4oEaYITkFRCKSTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9LEI1%2Fbtq9fXIfpsN%2FIUasG1c4oEaYITkFRCKSTk%2Fimg.png&quot; data-origin-width=&quot;43&quot; data-origin-height=&quot;29&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;Markov Chain by policy mu&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;290&quot; data-origin-height=&quot;39&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Mwjxv/btq9lTx7yBI/nMg2auSzh21utFraYJPXak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Mwjxv/btq9lTx7yBI/nMg2auSzh21utFraYJPXak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Mwjxv/btq9lTx7yBI/nMg2auSzh21utFraYJPXak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMwjxv%2Fbtq9lTx7yBI%2FnMg2auSzh21utFraYJPXak%2Fimg.png&quot; data-origin-width=&quot;290&quot; data-origin-height=&quot;39&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;Reward distribution by policy mu&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;41&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Mr8Sq/btq9jwiBFVE/bNAqMdDmrCOcypiSvvYoFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Mr8Sq/btq9jwiBFVE/bNAqMdDmrCOcypiSvvYoFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Mr8Sq/btq9jwiBFVE/bNAqMdDmrCOcypiSvvYoFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMr8Sq%2Fbtq9jwiBFVE%2FbNAqMdDmrCOcypiSvvYoFk%2Fimg.png&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;41&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;Reward when state s by policy mu --&amp;gt; reward distribution의 한 원소로 표현&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;342&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c296px/btq9gzVqNuB/Y1mjfVKUSfMoYFLdXjGDs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c296px/btq9gzVqNuB/Y1mjfVKUSfMoYFLdXjGDs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c296px/btq9gzVqNuB/Y1mjfVKUSfMoYFLdXjGDs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc296px%2Fbtq9gzVqNuB%2FY1mjfVKUSfMoYFLdXjGDs1%2Fimg.png&quot; data-origin-width=&quot;342&quot; data-origin-height=&quot;34&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;state와 action을 한 쌍으로 보는 변수 z&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;343&quot; data-origin-height=&quot;43&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/85LNh/btq9nDhgmU1/EwrU80DKjhoi8gC3JEVTGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/85LNh/btq9nDhgmU1/EwrU80DKjhoi8gC3JEVTGK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/85LNh/btq9nDhgmU1/EwrU80DKjhoi8gC3JEVTGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F85LNh%2Fbtq9nDhgmU1%2FEwrU80DKjhoi8gC3JEVTGK%2Fimg.png&quot; data-origin-width=&quot;343&quot; data-origin-height=&quot;43&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;z 변수에 대한 density&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px; text-align: center;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;37&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uv4gH/btq9fdkudij/LbvarlCzjNKfOllJSczkCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uv4gH/btq9fdkudij/LbvarlCzjNKfOllJSczkCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uv4gH/btq9fdkudij/LbvarlCzjNKfOllJSczkCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fuv4gH%2Fbtq9fdkudij%2FLbvarlCzjNKfOllJSczkCK%2Fimg.png&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;37&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;시점 T에 대한 모든 z 변수의 집합&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&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;b&gt;3.&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;408&quot; data-origin-height=&quot;90&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cjSnOk/btq9jG662OU/gEhwjOpyFmKx3besmxN1uK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cjSnOk/btq9jG662OU/gEhwjOpyFmKx3besmxN1uK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cjSnOk/btq9jG662OU/gEhwjOpyFmKx3besmxN1uK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjSnOk%2Fbtq9jG662OU%2FgEhwjOpyFmKx3besmxN1uK%2Fimg.png&quot; data-origin-width=&quot;408&quot; data-origin-height=&quot;90&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Markov chain에 대한 수식이라 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세히 뜯어보면 초기값에 나머지 확률들을 곱한 것으로 볼 수 있는데, Chain을 걸듯이 계속해서 곱해나가는 꼴이다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;i&gt;&lt;b&gt;policy를 $\mu$라고 했을 때,&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;i&gt;&lt;b&gt;초기 확률 * 모든 시점 T에 대해 {(t-1)번째 state와 action이 주어졌을 때, t번째에서 state와 action이 발생할 확률}&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;i&gt;&lt;b&gt;=&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;i&gt;&lt;b&gt;policy=$\mu$ 일때, Markov chain의 확률분포&lt;/b&gt;&lt;/i&gt;&lt;/span&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;4.&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 RL을 공부하다보면 trajactory라는 단어가 자주 보이는데, 직역하면 &quot;(탄두의) 궤적&quot; 이라는 뜻을 가지고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 관련된 글을 stackoverflow(&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;a style=&quot;color: #006dd7;&quot; href=&quot;https://ai.stackexchange.com/questions/7359/what-is-a-trajectory-in-reinforcement-learning&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://ai.stackexchange.com/questions/7359/what-is-a-trajectory-in-reinforcement-learning&lt;/a&gt;&lt;/span&gt;)에서 발견했는데 정리하면 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;강화학습은 sequential하게 학습하면서 그때그때마다의 정보를 반영하는 학습 방법이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;212&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r0TDm/btq9nBX3A9O/84qTgyXfuvJa1KKYp0eG2k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r0TDm/btq9nBX3A9O/84qTgyXfuvJa1KKYp0eG2k/img.png&quot; data-alt=&quot;RL process(참조: https://www.researchgate.net/figure/Reinforcement-learning-schematic-Reinforcement-learning-RL-can-be-formulated-as-a_fig4_322424392)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r0TDm/btq9nBX3A9O/84qTgyXfuvJa1KKYp0eG2k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr0TDm%2Fbtq9nBX3A9O%2F84qTgyXfuvJa1KKYp0eG2k%2Fimg.png&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;212&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;RL process(참조: https://www.researchgate.net/figure/Reinforcement-learning-schematic-Reinforcement-learning-RL-can-be-formulated-as-a_fig4_322424392)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면서 (s1, a1, r1), (s2, a2, r2), (s3, a3, r3), .... 등과 같이 어떤 로그?라는 것이 남는데 이런 일련의 과정을 trajectory라고 하며, 또는 path라는 표현을 쓰기도 한다.&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;b&gt;5.&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리는 이러한 path의 결과값에 대한 것들을 함수로써 아래와 같이 표현할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;421&quot; data-origin-height=&quot;40&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MLTYQ/btq9jwv8IlK/dkOngrOGG3ep3qRxPSg7Kk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MLTYQ/btq9jwv8IlK/dkOngrOGG3ep3qRxPSg7Kk/img.png&quot; data-alt=&quot;path 결과값&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MLTYQ/btq9jwv8IlK/dkOngrOGG3ep3qRxPSg7Kk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMLTYQ%2Fbtq9jwv8IlK%2FdkOngrOGG3ep3qRxPSg7Kk%2Fimg.png&quot; data-origin-width=&quot;421&quot; data-origin-height=&quot;40&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;path 결과값&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 &lt;span&gt;&amp;xi;에 대해 &lt;/span&gt;&lt;span&gt;&amp;rho;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&amp;xi;&lt;/span&gt;&lt;span&gt;)라는 return값이 주어지고, &amp;xi;는 random variable로 기대값은 아래와 같이 나타낼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;280&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cDtMVk/btq9gY8zNMC/hzCnfKYj3LBINcIYnNkDsk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cDtMVk/btq9gY8zNMC/hzCnfKYj3LBINcIYnNkDsk/img.png&quot; data-alt=&quot;path의 결과값에 대한 기대값&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cDtMVk/btq9gY8zNMC/hzCnfKYj3LBINcIYnNkDsk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDtMVk%2Fbtq9gY8zNMC%2FhzCnfKYj3LBINcIYnNkDsk%2Fimg.png&quot; data-origin-width=&quot;280&quot; data-origin-height=&quot;44&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;path의 결과값에 대한 기대값&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;path의 결과값과 그에 대한 기대값에서 &lt;span&gt;&amp;gamma;(Gamma: 감마)는 discount factor로써, 오래된 reward의 가치를 적게 주기 위한 factor라고 볼 수 있다.&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;&amp;nbsp;&lt;/p&gt;
&lt;h3 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;&gt;이 때, policy가 mu로 주어졌을 때의 기대값은 아래와 같이 정의할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;442&quot; data-origin-height=&quot;68&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QI2We/btq9lTro63U/HbwqRN9l1wPGtFYndTkAmk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QI2We/btq9lTro63U/HbwqRN9l1wPGtFYndTkAmk/img.png&quot; data-alt=&quot;expected return of a policy mu&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QI2We/btq9lTro63U/HbwqRN9l1wPGtFYndTkAmk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQI2We%2Fbtq9lTro63U%2FHbwqRN9l1wPGtFYndTkAmk%2Fimg.png&quot; data-origin-width=&quot;442&quot; data-origin-height=&quot;68&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;expected return of a policy mu&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;한 편, 위의 식에서 &amp;rho; ̅&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&amp;xi;&lt;/span&gt;&lt;span&gt;)는 5번에서 정의한 것처럼 random variable인 &lt;span&gt;&amp;rho;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&amp;xi;)의 기대값이다.&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;eta;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&amp;mu;&lt;/span&gt;&lt;span&gt;)에 대한 해석은 &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;policy &lt;/b&gt;&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;&amp;mu;를 적용했을 때의 현재부터 기대되는 reward에 대한 기대값&lt;/b&gt;&lt;/i&gt;&lt;/u&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;한 편, 이와 비슷하게 state에 대한 결과의 기대값도 아래와 같이 구해볼 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;94&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2byCw/btq9jGTCS4C/yWuxCHXuzqMrIiYdIKkPD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2byCw/btq9jGTCS4C/yWuxCHXuzqMrIiYdIKkPD1/img.png&quot; data-alt=&quot;expected return of a state under policy mu&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2byCw/btq9jGTCS4C/yWuxCHXuzqMrIiYdIKkPD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2byCw%2Fbtq9jGTCS4C%2FyWuxCHXuzqMrIiYdIKkPD1%2Fimg.png&quot; data-origin-width=&quot;773&quot; data-origin-height=&quot;94&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;expected return of a state under policy mu&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 수식을 풀어서 해석하자면, &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;policy가 mu이고 state가 S일 때의 reward에 대한 sum&lt;/b&gt;&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;으로 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 D(s)의 기대값은 policy mu의 value function이라고도 불린다.&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-origin-width=&quot;678&quot; data-origin-height=&quot;86&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czhEZG/btq9tIC0iRU/Ufz2kYxGNZKBg5GKLpCeb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czhEZG/btq9tIC0iRU/Ufz2kYxGNZKBg5GKLpCeb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czhEZG/btq9tIC0iRU/Ufz2kYxGNZKBg5GKLpCeb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczhEZG%2Fbtq9tIC0iRU%2FUfz2kYxGNZKBg5GKLpCeb0%2Fimg.png&quot; data-origin-width=&quot;678&quot; data-origin-height=&quot;86&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 수식을 풀어서 설명하자면, 일단 total expected discounted reward로 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;agent가 처음 시작할 때, state s, action a, policy mu가 주어졌을 때의 식임을 알 수 있다.&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;u&gt;total expected discounted reward에 대한 &lt;b&gt;벨만 방정식&lt;/b&gt;&lt;/u&gt;을 구할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;649&quot; data-origin-height=&quot;101&quot; data-ke-mobilestyle=&quot;widthOrigin&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJnu07/btq9PTdLeqp/JGuQ0qMdPIGsqdS7crznk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJnu07/btq9PTdLeqp/JGuQ0qMdPIGsqdS7crznk0/img.png&quot; data-alt=&quot;Bellman equation for V^mu&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJnu07/btq9PTdLeqp/JGuQ0qMdPIGsqdS7crznk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJnu07%2Fbtq9PTdLeqp%2FJGuQ0qMdPIGsqdS7crznk0%2Fimg.png&quot; data-origin-width=&quot;649&quot; data-origin-height=&quot;101&quot; data-ke-mobilestyle=&quot;widthOrigin&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;/&gt;&lt;/span&gt;&lt;figcaption&gt;Bellman equation for V^mu&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;&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;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>bayesian</category>
      <category>BRL</category>
      <category>learning</category>
      <category>reinforcement</category>
      <category>RL</category>
      <category>강화학습</category>
      <category>베이지안</category>
      <author>Signing</author>
      <guid isPermaLink="true">https://signing.tistory.com/115</guid>
      <comments>https://signing.tistory.com/115#entry115comment</comments>
      <pubDate>Sun, 11 Jul 2021 16:56:55 +0900</pubDate>
    </item>
  </channel>
</rss>