<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Emily's Tistory</title>
    <link>https://sysout.tistory.com/</link>
    <description>AI, Big Data, Web Programming 에 관심이 많은 데이터 사이언티스트입니다.</description>
    <language>ko</language>
    <pubDate>Tue, 26 May 2026 02:02:36 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>emily_ju</managingEditor>
    <image>
      <title>Emily's Tistory</title>
      <url>https://tistory1.daumcdn.net/tistory/2557266/attach/150b40ef9a2449b393f9ac679de82b3d</url>
      <link>https://sysout.tistory.com</link>
    </image>
    <item>
      <title>[책 리뷰] 파이썬으로 배우는 통계학 교과서 (2판)</title>
      <link>https://sysout.tistory.com/111</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;&gt;&lt;a href=&quot;https://www.hanbit.co.kr/store/books/look.php?p_code=B6819729468&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bH2lAV/btsLyT9Friu/cbvHqfMXqLNenMgxtLH8kk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbH2lAV%2FbtsLyT9Friu%2FcbvHqfMXqLNenMgxtLH8kk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;200&quot; height=&quot;257&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;/&gt;&lt;/a&gt;&lt;figcaption&gt;파이썬으로 배우는 통계학 교과서 (2판) / 바바 신야 / 한빛미디어&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&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;굳이굳이 리뷰 제목에 '2판'을 추가한 이유는 초판에 비하여 많은 내용들이 개편되었기 때문이다. 이전보다 초보자가 이해하기 쉽도록 쓰여졌고 (독자가 여러 이유로 통계학을 이해하지 못하는 일이 없도록 구성하였다고 자신있게 기술하였다) 실습 코드도 새롭게 추가되고 자세해졌다. 실제로 챕터 2에서 환경 셋업과 함께 파이썬 기본 문법을 소개하고 있어, 코드 작성을 처음 해 보는 사람에게도 추천할 만하다. 이 책이 처음이든, 초판을 읽었든 두 케이스 모두 읽을만한 가치가 있는 통계 바이블이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챕터 5부터는 다소 어려워지는데, 개인적으로 최근에 준비했었던 빅데이터분석기사 시험에도 많은 도움을 줄 것이라고 생각되었다. 특히 실습 3유형은 광범위하면서도 통계적 수준이 어느정도 있었었어야 하는데, 당시 시험볼때는 용어-코드 달달 외우기만 했었다. 이렇게 개념과 함께 실습을 하니 다시금 이해가 되었다.&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;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1.2.1 기술통계가 필요한 이유&lt;/b&gt;&lt;br /&gt;기술통계는&amp;nbsp;데이터&amp;nbsp;해석이나&amp;nbsp;데이터&amp;nbsp;간의&amp;nbsp;비교를&amp;nbsp;간단하게&amp;nbsp;하면서도&amp;nbsp;가능한&amp;nbsp;한&amp;nbsp;정보를&amp;nbsp;잃지&amp;nbsp;않게&amp;nbsp;위해&amp;nbsp;필요한&amp;nbsp;이론입니다. &lt;br /&gt;현대&amp;nbsp;사회에서&amp;nbsp;다루는&amp;nbsp;데이터의&amp;nbsp;크기는&amp;nbsp;대개&amp;nbsp;수천,&amp;nbsp;수만&amp;nbsp;혹은&amp;nbsp;그&amp;nbsp;이상일&amp;nbsp;수&amp;nbsp;있습니다.&amp;nbsp;이러한&amp;nbsp;데이터를&amp;nbsp;하나씩&amp;nbsp;확인하는&amp;nbsp;것은&amp;nbsp;너무&amp;nbsp;비효율적입니다.&amp;nbsp;따라서&amp;nbsp;데이터의&amp;nbsp;특징을&amp;nbsp;파악하는&amp;nbsp;데&amp;nbsp;유용한&amp;nbsp;몇&amp;nbsp;가지&amp;nbsp;지표를&amp;nbsp;계산하는&amp;nbsp;것이&amp;nbsp;일반적입니다. &lt;br /&gt;이러한 지표를 문맥에 따라 데이터의 대푯값, 요약 통계량 또는 단순히 통계량이라고 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1.3.1 추론통계가 필요한 이유&amp;nbsp;&lt;/b&gt;&lt;br /&gt;추론통계는 아직 얻지 못한 미지의 데이터에 대해 논의할 때 필요한 이론입니다. 조사 방법에는 크게 전수조사와 표본조사 두 종류가 있습니다. ...(중략)... 또한 특정 동물 종의 생태를 조사할 때 전 세계의 모든 개체를 대상으로 조사하는 것은 불가능합니다. 이처럼 추론통계는 비즈니스와 연구 활동 모두에게서 필수적이고 중요한 기술입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가로,예제소스가 github에는 따로 없고, 한빛미디어 자료실에서 다운받을 수 있다.&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1735292995574&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;한빛출판네트워크&quot; data-og-description=&quot;사람을 잇고 지식과 경험을 엮어 세상을 바꾸는 디지털 콘텐츠 기업, 한빛+ :: 한빛미디어, 한빛아카데미, 한빛비즈, 한빛라이프, 한빛에듀, 한빛앤&quot; data-og-host=&quot;www.hanbit.co.kr&quot; data-og-source-url=&quot;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&quot; data-og-url=&quot;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/GfD0O/hyXSpN5ntP/k652mTfMeRJuD7fmCXMDwk/img.jpg?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/b1479n/hyXSx6qYtb/gAJDUwRK4eZkjSFGDTKi30/img.jpg?width=203&amp;amp;height=260&amp;amp;face=0_0_203_260&quot;&gt;&lt;a href=&quot;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.hanbit.co.kr/support/supplement_survey.html?pcode=B6819729468&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/GfD0O/hyXSpN5ntP/k652mTfMeRJuD7fmCXMDwk/img.jpg?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/b1479n/hyXSx6qYtb/gAJDUwRK4eZkjSFGDTKi30/img.jpg?width=203&amp;amp;height=260&amp;amp;face=0_0_203_260');&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;한빛출판네트워크&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;사람을 잇고 지식과 경험을 엮어 세상을 바꾸는 디지털 콘텐츠 기업, 한빛+ :: 한빛미디어, 한빛아카데미, 한빛비즈, 한빛라이프, 한빛에듀, 한빛앤&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.hanbit.co.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;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;CHAPTER&amp;nbsp;1&amp;nbsp;통계학&amp;nbsp;기본 &lt;br /&gt;_1.1&amp;nbsp;통계학 &lt;br /&gt;_1.2&amp;nbsp;왜&amp;nbsp;기술통계가&amp;nbsp;필요한가 &lt;br /&gt;_1.3 왜 추론통계가 필요한가&lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;2&amp;nbsp;파이썬과&amp;nbsp;주피터&amp;nbsp;노트북 &lt;br /&gt;_2.1&amp;nbsp;환경&amp;nbsp;구축 &lt;br /&gt;_2.2&amp;nbsp;주피터&amp;nbsp;노트북 &lt;br /&gt;_2.3&amp;nbsp;파이썬&amp;nbsp;프로그래밍 &lt;br /&gt;_2.4 넘파이와 팬더스&lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;3&amp;nbsp;기술통계 &lt;br /&gt;_3.1&amp;nbsp;데이터&amp;nbsp;분류 &lt;br /&gt;_3.2&amp;nbsp;수식을&amp;nbsp;읽는&amp;nbsp;방법 &lt;br /&gt;_3.3&amp;nbsp;도수분포 &lt;br /&gt;_3.4&amp;nbsp;1변량&amp;nbsp;데이터&amp;nbsp;통계량 &lt;br /&gt;_3.5&amp;nbsp;다변량&amp;nbsp;데이터&amp;nbsp;통계량 &lt;br /&gt;_3.6&amp;nbsp;층화분석 &lt;br /&gt;_3.7&amp;nbsp;그래프&amp;nbsp;활용 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;4&amp;nbsp;확률과&amp;nbsp;확률분포 &lt;br /&gt;_4.1&amp;nbsp;확률론 &lt;br /&gt;_4.2&amp;nbsp;확률분포 &lt;br /&gt;_4.3&amp;nbsp;이항분포 &lt;br /&gt;_4.4&amp;nbsp;정규분포 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;5&amp;nbsp;통계적&amp;nbsp;추정 &lt;br /&gt;_5.1&amp;nbsp;통계적&amp;nbsp;추론의&amp;nbsp;개념 &lt;br /&gt;_5.2&amp;nbsp;모집단에서&amp;nbsp;표본추출&amp;nbsp;시뮬레이션 &lt;br /&gt;_5.3&amp;nbsp;모평균&amp;nbsp;추정 &lt;br /&gt;_5.4&amp;nbsp;모분산&amp;nbsp;추정 &lt;br /&gt;_5.5&amp;nbsp;정규모집단에서&amp;nbsp;파생된&amp;nbsp;확률분포 &lt;br /&gt;_5.6&amp;nbsp;구간추정 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;6&amp;nbsp;통계적&amp;nbsp;가설검정 &lt;br /&gt;_6.1&amp;nbsp;모평균에&amp;nbsp;대한&amp;nbsp;단일표본&amp;nbsp;t검정 &lt;br /&gt;_6.2&amp;nbsp;평균값&amp;nbsp;차이&amp;nbsp;검정 &lt;br /&gt;_6.3&amp;nbsp;분할표&amp;nbsp;검정 &lt;br /&gt;_6.4 검정 결과 해석&lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;7&amp;nbsp;통계모델 &lt;br /&gt;_7.1&amp;nbsp;통계모델&amp;nbsp;기본 &lt;br /&gt;_7.2&amp;nbsp;선형모델을&amp;nbsp;만드는&amp;nbsp;방법 &lt;br /&gt;_7.3&amp;nbsp;데이터&amp;nbsp;표현과&amp;nbsp;모델&amp;nbsp;명칭 &lt;br /&gt;_7.4&amp;nbsp;파라미터&amp;nbsp;추정:&amp;nbsp;가능도&amp;nbsp;최대화 &lt;br /&gt;_7.5&amp;nbsp;파라미터&amp;nbsp;추정:&amp;nbsp;손실&amp;nbsp;최소화 &lt;br /&gt;_7.6&amp;nbsp;예측&amp;nbsp;정확도&amp;nbsp;평가와&amp;nbsp;변수&amp;nbsp;선택 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;8&amp;nbsp;정규선형모델 &lt;br /&gt;_8.1&amp;nbsp;연속형&amp;nbsp;독립변수가&amp;nbsp;하나인&amp;nbsp;모델:&amp;nbsp;단순회귀 &lt;br /&gt;_8.2&amp;nbsp;정규선형모델&amp;nbsp;평가 &lt;br /&gt;_8.3&amp;nbsp;분산분석 &lt;br /&gt;_8.4&amp;nbsp;독립변수가&amp;nbsp;여럿인&amp;nbsp;모델 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;9&amp;nbsp;일반화선형모델 &lt;br /&gt;_9.1&amp;nbsp;일반화선형모델&amp;nbsp;기본 &lt;br /&gt;_9.2&amp;nbsp;로지스틱&amp;nbsp;회귀 &lt;br /&gt;_9.3&amp;nbsp;일반화선형모델&amp;nbsp;평가 &lt;br /&gt;_9.4&amp;nbsp;푸아송&amp;nbsp;회귀 &lt;br /&gt;&lt;br /&gt;CHAPTER&amp;nbsp;10&amp;nbsp;통계학과&amp;nbsp;머신러닝 &lt;br /&gt;_10.1&amp;nbsp;머신러닝&amp;nbsp;기본 &lt;br /&gt;_10.2&amp;nbsp;정규화와&amp;nbsp;리지&amp;nbsp;회귀,&amp;nbsp;라소&amp;nbsp;회귀 &lt;br /&gt;_10.3&amp;nbsp;파이썬을&amp;nbsp;이용한&amp;nbsp;리지&amp;nbsp;회귀와&amp;nbsp;라소&amp;nbsp;회귀 &lt;br /&gt;_10.4&amp;nbsp;선형모델과&amp;nbsp;신경망&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;background-color: #f3c000;&quot;&gt;&quot;한빛미디어&amp;nbsp;&amp;lt;나는리뷰어다&amp;gt;&amp;nbsp;활동을&amp;nbsp;위해서&amp;nbsp;책을&amp;nbsp;제공받아&amp;nbsp;작성된&amp;nbsp;서평입니다.&quot;&lt;/span&gt;&lt;/p&gt;</description>
      <category>BOOK</category>
      <category>It</category>
      <category>머신러닝</category>
      <category>수학</category>
      <category>인공지능</category>
      <category>통계학</category>
      <category>파이썬</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/111</guid>
      <comments>https://sysout.tistory.com/111#entry111comment</comments>
      <pubDate>Fri, 27 Dec 2024 18:51:44 +0900</pubDate>
    </item>
    <item>
      <title>[구간최대/최소/구간합] Sqrt Decomposition과 Segment Tree</title>
      <link>https://sysout.tistory.com/110</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;배열이 업데이트 되면서서 구간 최대, 최소, 합을 구하는 문제를 효율적으로 풀기 위한 Sqrt Decomposition과 Segment Tree 알고리즘에 대하여 알아보겠습니다.&amp;nbsp;&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;style1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Square Root Decomposition&lt;/b&gt;은 특정 유형의 쿼리 및 업데이트 작업을 효율적으로 처리하기 위한 기법으로, 주로 정적 배열에서 동작합니다. 이 기법은 배열을 고정된 크기의 블록으로 나누어 각 블록에 대한 일부 계산을 미리 수행하여 시간 복잡도를 줄이는 방식으로 동작합니다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;1. &lt;b&gt;블록 크기&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;배열의 길이를 n이라 할 때, 각 블록의 크기는 &amp;radic;n으로 설정합니다. 이는 시간 복잡도를 O(&amp;radic;n)으로 유지하기 위해서입니다.&lt;/li&gt;
&lt;li&gt;Python 코드에서는 math.ceil(math.sqrt(n))을 사용하여 블록 크기를 정수로 계산합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2. &lt;b&gt;블록 구조&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;배열을 &amp;radic;n 크기의 블록으로 나누며, 각 블록의 &lt;b&gt;합&lt;/b&gt;을 별도로 저장합니다.&lt;/li&gt;
&lt;li&gt;블록의 인덱스는 i // block_size로 계산됩니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;예: 배열 [1, 3, 5, 7, 9, 11]을 block_size=3으로 나누면,&lt;br /&gt;블록 0: [1, 3, 5] &amp;rarr; 합: 9&lt;br /&gt;블록 1: [7, 9, 11] &amp;rarr; 합: 27&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3. &lt;b&gt;쿼리 처리&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;쿼리 범위 [l, r]에 대해:
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;시작점 l부터 블록 경계까지의 값은 직접 계산.&lt;/li&gt;
&lt;li&gt;완전히 포함된 블록의 합은 블록 합을 바로 사용.&lt;/li&gt;
&lt;li&gt;남은 범위 [r]의 값은 다시 직접 계산.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;4. &lt;b&gt;업데이트 처리&lt;/b&gt;&lt;/h4&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;예를 들어, 인덱스 i가 블록 0에 속하면, 블록 0의 합에서 기존 값을 빼고 새 값을 더해 갱신합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;시간 복잡도&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;쿼리&lt;/b&gt;: O(&amp;radic;n) (최대 2&amp;radic;n 만큼의 작업)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;업데이트&lt;/b&gt;: O(1) (블록 합만 갱신)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;구간 합 예제 코드&lt;/h3&gt;
&lt;pre id=&quot;code_1733907487146&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import math


class SqrtDecomposition:
    def __init__(self, arr):
        self.arr = arr
        self.n = len(arr)
        self.block_size = int(math.sqrt(self.n))  # 블록 크기
        self.blocks = [0] * (self.n // self.block_size)  # 각 블록의 합 저장

        # 각 블록의 합 계산
        for i in range(self.n):
            self.blocks[i // self.block_size] += self.arr[i]

    def query(self, l, r):
        &quot;&quot;&quot;
        배열에서 인덱스 [l, r] 범위의 합을 반환합니다.
        &quot;&quot;&quot;
        sum_ = 0

        # 시작 지점에서 블록 경계를 벗어나지 않는 범위 처리
        while l &amp;lt;= r and l % self.block_size != 0:
            sum_ += self.arr[l]
            l += 1

        # 블록 단위로 합 계산
        while l + self.block_size - 1 &amp;lt;= r:
            sum_ += self.blocks[l // self.block_size]
            l += self.block_size

        # 남은 마지막 범위 처리
        while l &amp;lt;= r:
            sum_ += self.arr[l]
            l += 1

        return sum_

    def update(self, index, value):
        &quot;&quot;&quot;
        배열의 특정 인덱스 값을 업데이트하고 관련 블록 값을 갱신합니다.
        &quot;&quot;&quot;
        block_index = index // self.block_size
        self.blocks[block_index] += value - self.arr[index]
        self.arr[index] = value


# 사용 예시
arr = [1, 3, 5, 7, 9, 11, 13, 15]
sd = SqrtDecomposition(arr)

# 쿼리: 인덱스 1부터 6까지의 합
print(&quot;Query(1, 6):&quot;, sd.query(1, 6))  # 출력: 50

# 업데이트: 인덱스 3의 값을 10으로 변경
sd.update(3, 10)
print(&quot;Query(1, 6) after update:&quot;, sd.query(1, 6))  # 출력: 53&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sqrt Decomposition도 충분히 효율적인 알고리즘이지만, 배열이 블록 크기가 고정되어 있어 배열 크기가 매우 크거나 작을 때 비효율적일 수 있다는 단점이 있습니다. 해당 알고리즘은 중소 규모의 문제에 적합하며, 좀 더 복잡하거나 큰 배열을 다룰 때에는 Segment Tree가 효과적입니다.&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;style1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Segment Tree는 이진 트리 형태로 배열의 특정 구간에 대한 연산 결과(예: 합, 최소값, 최대값 등)를 저장합니다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;구조&lt;/b&gt;&lt;/h4&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;리프 노드(Leaf Node):&lt;/b&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;span&gt;&lt;span&gt;n&lt;/span&gt;&lt;/span&gt;이라면, 트리의 리프 노드는 &lt;span&gt;&lt;span&gt;n&lt;/span&gt;&lt;/span&gt;개입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;내부 노드(Internal Node):&lt;/b&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;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;트리의 크기:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Segment Tree는 배열의 크기 &lt;span&gt;&lt;span&gt;nn&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot;&gt;&lt;span&gt;&lt;span&gt;n&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;에 대해 최대 &lt;span&gt;&lt;span&gt;4n&lt;/span&gt;&lt;/span&gt;크기의 배열에 저장됩니다.&lt;/li&gt;
&lt;li&gt;이는 트리의 균형성과 이진 분할 방식에서 발생하는 여유 공간 때문입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적으로 이진트리 기반으로 구현됩니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;시간 복잡도&lt;/b&gt;&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;구간 질의:&lt;/b&gt; &lt;span&gt;&lt;span&gt;O(log⁡n)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;값 업데이트:&lt;/b&gt; &lt;span&gt;&lt;span&gt;O(log⁡n)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;트리 빌드:&lt;/b&gt; &lt;span&gt;&lt;span&gt;O(n)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;pre id=&quot;code_1733906572790&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 구간의 최대값을 효율적으로 수행하는 세그먼트 트리
class SegmentTreeMax:
    def __init__(self, arr, N):
        self.tree = [0] * 2 * N
        self.n = N
        for i in range(N):
            self.tree[N+i] = arr[i]
        # pre-calculate tree
        for i in range(N-1, 0, -1):
            # i&amp;lt;&amp;lt;1 = i*2, i&amp;lt;&amp;lt;1|1 = i*2+1
            self.tree[i] = max(self.tree[i&amp;lt;&amp;lt;1], self.tree[i&amp;lt;&amp;lt;1|1])

    def update(self, index, value):
        i = index + self.n
        self.tree[i] = value
        while i &amp;gt; 1:
            # i^1 = leaf 노드(원본 data)의 형제/자매 노드를 의미
            self.tree[index&amp;gt;&amp;gt;1] = max(self.tree[i], self.tree[i^1])
            i &amp;gt;&amp;gt;= 1

    def query(self, l, r):
        l += self.n; r += self.n; _res = 0
        while l &amp;lt;= r:
            # left가 홀수인 경우: 최댓값 정보 수집 후 1 증가
            if l &amp;amp; 1:
                _res = max(_res, self.tree[l])
                l += 1
            # right가 짝수인 경우: 최댓값 정보 수집 후 1 감소
            if not (r &amp;amp; 1):
                _res = max(_res, self.tree[r])
                r -= 1
            # 부모 노드로 올라감
            l &amp;gt;&amp;gt;= 1
            r &amp;gt;&amp;gt;= 1
        return _res​&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;두 알고리즘 모두 build - query - update 크게 3개의 축으로 구분됨에 유의하면 더 기억하기 쉽습니다!&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PROGRAMMING/Algorithm</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/110</guid>
      <comments>https://sysout.tistory.com/110#entry110comment</comments>
      <pubDate>Wed, 11 Dec 2024 17:59:03 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] ChatGPT 제대로 써먹기</title>
      <link>https://sysout.tistory.com/109</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;585&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XXZ2N/btsKgOs6aCc/TeK9TcgX2sX2D8AKkipku1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XXZ2N/btsKgOs6aCc/TeK9TcgX2sX2D8AKkipku1/img.jpg&quot; data-alt=&quot;ChatGPT 제대로써먹기 - 생존을위한 생성형 AI 실무 스킬 만들기 챌린지 / 조민정 / 한빛미디어&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XXZ2N/btsKgOs6aCc/TeK9TcgX2sX2D8AKkipku1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXXZ2N%2FbtsKgOs6aCc%2FTeK9TcgX2sX2D8AKkipku1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;186&quot; height=&quot;272&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;585&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;ChatGPT 제대로써먹기 - 생존을위한 생성형 AI 실무 스킬 만들기 챌린지 / 조민정 / 한빛미디어&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;총평&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 책은 일상에서부터 실무, 콘텐츠 생성까지 다양한 상황에서 ChatGPT를 효과적으로 사용하는 방법을 프롬프트와 함께 알기 쉽게 소개한다. 다만, prompt engineering 등 기술적인 부분은 많이 포함되어 있지 않고 초반에 GPT의 원리를 제외하고는 철저히 개발자가 아닌 일반 사용자 를 대상으로 쓰여진 책이다. 80% 정도의 분량이 GPT 스토어에 기반한 프롬프트 예제와 시나리오 소개로 이루어져 있다. 정말 &amp;lsquo;써먹기&amp;rsquo; 워딩에 대해서는 충실한 책이라고 할 수 있다. &lt;s&gt;(&amp;lsquo;제대로&amp;rsquo;는 살짝 아쉽다.)&lt;/s&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이미 충분히 GPT가 대중화가 된 만큼 이미 알고 있는 내용도 많지만, 흥미로운 예제가 몇몇 존재했다.가려령,&amp;nbsp; 'Personal Color Analaysis GPT'는 글이나 사진으로 퍼스너 컬러 진단을 받을 수 있다. 필자는 한창퍼스널컬러가 유행할 때 4만원 주고 강남역에서 진단을 받았었는데, 이제는 AI로 간단하게 집에서도 진단을 받는 시대라니 생각지 못한 시나리오였다. 글쓰기 관련 GPT로는 'Humanize AI'가 있는데, 무려 'AI가 생성한 텍스트를 사람이 쓴 콘텐츠처럼 변경해서 AI 탐지기를 통과하는 데 특화된 맞춤형 GPT'라고 소개된다. 텍스트를 생성하는 AI가 있고, AI가 만들었는지 탐지하는 AI가 있고, 다시 그걸 통과하는 AI라니, 이건 끝이 없는 싸움이겠구나-생각이 든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 책의 막바지에서는 빅테크 기업들의 책임감 있는 AI (Responsible AI) 를 소개하고, 그 이후의 미래에 대해 얘기하고 책은 끝이 난다. 당장의 2-3년도 예측이 되지 않는 요즘이라, 나도 그 미래가 무척이나 궁금하다. 또한 정책이나 규제적인 부분이 기술의 발전 속도를 따라가지 못해, 이 부분도 정말 주목해야 할 부분이라고 생각한다. 얼마 전에는 구글이 미국 정부를 대상으로 '반독점 패소'를 당했는데, 앞으로 구글이라는 거대하고도 대단한 회사가 어떻게 될지, 정말로 고소를 당해도 쉴드를 칠 만한 무기나 방패가 없었는지 귀추가 궁금하다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;br /&gt;책갈피&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초전도체의 개념을 5살 아이, 고등학생에게 설명해보라는 프롬프트가 흥미로워서 실습해 보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&lt;/a&gt;&lt;br /&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1729951331957&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;ChatGPT - 초전도체 아이에게 설명하기&quot; data-og-description=&quot;Shared via ChatGPT&quot; data-og-host=&quot;chatgpt.com&quot; data-og-source-url=&quot;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&quot; data-og-url=&quot;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eCNLmM/hyXlKF84CU/k0T9HnhtkB7GlGsp7BoeGK/img.jpg?width=1600&amp;amp;height=900&amp;amp;face=0_0_1600_900&quot;&gt;&lt;a href=&quot;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://chatgpt.com/share/671b4b96-c324-8008-be7d-c09da92d5100&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eCNLmM/hyXlKF84CU/k0T9HnhtkB7GlGsp7BoeGK/img.jpg?width=1600&amp;amp;height=900&amp;amp;face=0_0_1600_900');&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;ChatGPT - 초전도체 아이에게 설명하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Shared via ChatGPT&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;chatgpt.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;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1부 챗GPT 이해하기&lt;/b&gt;&lt;br /&gt;&lt;b&gt;1장 생성형 AI와 GPT의 탄생&lt;/b&gt;&lt;br /&gt;&amp;nbsp;1.1 생성형 AI의 정의&lt;br /&gt;&amp;nbsp;1.2 생성형 AI가 언어를 이해하는 방법&lt;br /&gt;&amp;nbsp;1.3 생성형 AI가 답변을 생성하는 방법&lt;br /&gt;&lt;b&gt;2장 챗GPT가 점점 더 똑똑해진 이유&lt;/b&gt;&lt;br /&gt;2.1 세상을 놀라게 한 챗GPT: GPT-1부터 GPT-3.5까지&lt;br /&gt;2.2 보고, 듣고, 말하는 챗GPT: GPT-4&lt;br /&gt;2.3 실시간으로 보고, 듣고, 감정을 이해하고 감정을 실어서 말하는 챗GPT: GPT-4o]&lt;br /&gt;&lt;b&gt;3장 챗GPT의 화가, DALL&amp;middot;E 이야기&lt;/b&gt;&lt;br /&gt;3.1 텍스트에 딱 맞는 이미지를 생성하는 DALL&amp;middot;E&lt;br /&gt;3.2 디퓨전 모델을 이용해 더 사실적이고 정확한 이미지를 생성하는 DALL&amp;middot;E 2&lt;br /&gt;3.3 사용자의 의도를 더욱 잘 파악하는 DALL&amp;middot;E 3&lt;br /&gt;&lt;b&gt;2부 챗GPT와 친해지기&lt;/b&gt;&lt;br /&gt;&lt;b&gt;4장 챗GPT 시작하기&lt;/b&gt;&lt;br /&gt;4.1 챗GPT 설정하기&lt;br /&gt;4.2 챗GPT 기본 구성 알아보기&lt;br /&gt;4.3 모바일 앱&lt;br /&gt;4.4 데스크톱 앱&lt;br /&gt;&lt;b&gt;5장 챗GPT의 다양한 기능&lt;/b&gt;&lt;br /&gt;5.1 챗GPT 무료 버전과 챗GPT 플러스의 차이점&lt;br /&gt;5.2 텍스트 대화, 음성 대화, 이미지 입력 및 이미지 생성&lt;br /&gt;5.3 인터넷 검색&lt;br /&gt;5.4 고급 데이터 분석&lt;br /&gt;5.5 파일 업로드&lt;br /&gt;5.6 맞춤형 GPT(GPTs)와 GPT 스토어&lt;br /&gt;5.7 다양한 기능의 복합적 활용&lt;br /&gt;&lt;b&gt;6장 챗GPT와 효과적으로 대화하기&lt;/b&gt;&lt;br /&gt;6.1 효과적인 프롬프트 작성하기&lt;br /&gt;6.2 챗GPT 맞춤 설정과 맞춤형 GPT 활용하기&lt;br /&gt;6.3 챗GPT에게 시킬 일 파악하기&lt;br /&gt;6.4 한계 이해하고 사용하기&lt;br /&gt;&lt;b&gt;3부 챗GPT 제대로 써먹기&lt;/b&gt;&lt;br /&gt;&lt;b&gt;7장 일상에서 제대로 써먹기&lt;/b&gt;&lt;br /&gt;7.1 일상생활 팁&lt;br /&gt;7.2 계획 세우기&lt;br /&gt;7.3 추천받기&lt;br /&gt;7.4 기타&lt;br /&gt;7.5 일상생활 분야의 인기 있는 맞춤형 GPT&lt;br /&gt;&lt;b&gt;8장 일할 때 제대로 써먹기&lt;/b&gt;&lt;br /&gt;8.1 보고서 작성&lt;br /&gt;8.2 파워포인트 발표 준비&lt;br /&gt;8.3 데이터 분석&lt;br /&gt;8.4 의사소통 보조&lt;br /&gt;8.5 구직/이직 준비&lt;br /&gt;8.6 업무 분야의 인기 있는 맞춤형 GPT&lt;br /&gt;&lt;b&gt;9장 공부할 때 제대로 써먹기&lt;/b&gt;&lt;br /&gt;9.1 새로운 개념 학습&lt;br /&gt;9.2 영어 등 외국어 학습&lt;br /&gt;9.3 강의/수업 준비에 활용&lt;br /&gt;9.4 학습 분야의 인기 있는 맞춤형 GPT&lt;br /&gt;&lt;b&gt;10장 콘텐츠를 만들 때 제대로 써먹기&lt;/b&gt;&lt;br /&gt;10.1 글 생성&lt;br /&gt;10.2 이미지 생성&lt;br /&gt;10.3 동영상/음성 오디오/음악 생성&lt;br /&gt;10.4 콘텐츠 제작 분야의 인기 있는 맞춤형 GPT&lt;br /&gt;&lt;b&gt;11장 코딩할 때 제대로 써먹기&lt;/b&gt;&lt;br /&gt;11.1 코드 작성&lt;br /&gt;11.2 코드 검토 및 디버깅, 주석 작성&lt;br /&gt;11.3 코딩 학습&lt;br /&gt;11.4 프로그래밍 분야의 인기 있는 맞춤형 GPT&lt;br /&gt;&lt;b&gt;4부 AI와 함께 살아가기&lt;/b&gt;&lt;br /&gt;&lt;b&gt;12장 생성형 AI가 그리는 미래&lt;/b&gt;&lt;br /&gt;12.1 생성형 AI가 가져올 자동화 및 경제 성장 전망&lt;br /&gt;12.2 범용인공지능과 책임감 있는 AI 사용&lt;br /&gt;&lt;b&gt;13장 미래를 향한 준비&lt;/b&gt;&lt;br /&gt;13.1 AI에 대한 열린 마음가짐&lt;br /&gt;13.2 일단 시작해보기&lt;br /&gt;13.3 마치며&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #f9f9f9; color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span&gt;&lt;b&gt;&quot;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;한빛미디어&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;&amp;lt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;나는리뷰어다&lt;/b&gt;&lt;span&gt;&lt;b&gt;&amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;활동을 위해서 책을 제공받아 작성된 서평입니다&lt;/b&gt;&lt;span&gt;&lt;b&gt;.&quot;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>BOOK</category>
      <category>ai</category>
      <category>ChatGPT</category>
      <category>GPT</category>
      <category>인공지능</category>
      <category>챗지피티</category>
      <category>프롬프트</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/109</guid>
      <comments>https://sysout.tistory.com/109#entry109comment</comments>
      <pubDate>Sat, 26 Oct 2024 23:01:09 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] 코드 밖 커뮤니케이션</title>
      <link>https://sysout.tistory.com/108</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dQhjdd/btsJrPVTGdJ/fXOXn54RShm801gYq3iNQ1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dQhjdd/btsJrPVTGdJ/fXOXn54RShm801gYq3iNQ1/img.jpg&quot; data-alt=&quot;코드 밖 커뮤니케이션 - 팀원 온보딩부터 UML 활용법, 글쓰기 스킬, 원격 근무 노하우까지 / 재퀴 리드 / 한빛미디어&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dQhjdd/btsJrPVTGdJ/fXOXn54RShm801gYq3iNQ1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdQhjdd%2FbtsJrPVTGdJ%2FfXOXn54RShm801gYq3iNQ1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;250&quot; height=&quot;321&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;코드 밖 커뮤니케이션 - 팀원 온보딩부터 UML 활용법, 글쓰기 스킬, 원격 근무 노하우까지 / 재퀴 리드 / 한빛미디어&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;br /&gt;총평&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혼자 할 수 있는 프로젝트에는 한계가 있으며, 개발자도 결국 회사의 일원이다. 마1인 개발자라면 hard skill만으로 충분할 수 있지만, 대부분의 경우에는 그렇지 않고 결국에는 soft skill의 중요성이 대두된다. 본인은 이러한 커뮤니케이션 스킬에 관한 책을 몇 차례 읽었었는데, &lt;span style=&quot;background-color: #f6e199;&quot;&gt;이 책은 soft skill의 이론적인 부분부터 writing, verbal 영역까지 모든 케이스를 총망라했다고 볼 수 있다.&lt;/span&gt; 챕터는 시각적 커뮤니케이션 (architecture적인 부분들) 에서 시작해서 멀티모달 커뮤니케이션, 지식 전달로 이어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 챕터같은 경우는 트렌디하면서도 흔치 않은 '&lt;b&gt;원격 근무 환경에서의 커뮤니케이션 기술&lt;/b&gt;'에 대한 부분을 다루고 있는데, 꽤나 새롭고 유용하다. 잠깐 다른 얘기를 하자면, 최근 국내뿐만 아니라 아마존까지 재택근무 방식에서 대면근무로 전환하고 있으며 전체적으로 그런 추세를 따르고 있다. 작년, 올해 초까지만 해도 재택근무가 선진 IT 기업의 문화라는 일부 인식이 있었고 해당 챕터도 그런 세태를 반영한 것일텐데 또다시 기조가 바뀌고 있다. Covid19로 인해 생긴 비정상화의 정상화, 그리고 다시 정상화가 이루어지나 싶다. 이제 개인적인 생각으로는 재택근무라는 개념은 생산성 향상이라기보다는 복지에 가까운 듯하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;꽤나 범용적인 얘기들을 다루고 있어서 챕터 1을 제외하고는 개발자가 아닌 일반 직장인도 읽을 수 있고 그 부분에서는 수사학, 심리학적 지식도 포함된다. 이에 대한 일부 내용을 책갈피에서 소개한다. 조금의 비평을 덧붙이자면, 일부 개발자에게 피로하게 느껴지는 부분이 존재하긴 한다. 가령 '색상에 의존한 커뮤니케이션' 부분에서 모든 사람이 색을 똑같이 인식한다고 볼 수 없다, 인구의 4.5%가 색맹을 앓고 있고 광 공포증, 원추각막, 녹내장 등의 개인적인 부분을 고려해서 색상 팔레트, 배치를 잘 해야 한다-라고 소개하기도 한다. 또한 챕터 1에서 UML diagram을 설명하는 부분이 일부 반복적으로 느껴졌다.&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;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;책갈피&lt;/h2&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;수사학 3요소&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아리스토텔레스의 수사학 3요소인 &lt;b&gt;'에토스'&lt;/b&gt;(Ethos, 인품&amp;middot;인격), &lt;b&gt;'파토스'&lt;/b&gt;(Pathos, 감성), &lt;b&gt;'로고스'&lt;/b&gt;(Logos, 이성)에 대해 들어봤을 것이다. 이 세 개념은 설득의 기술에 대한 아리스토텔레스의 연구의 핵심이었으며 고대 그리스부터 효과적인 커뮤니케이션을 위한 기본 도구로 간주해왔다. 그렇다면 이것이 아키텍트나 개발자와는 어떤 관련이 있을까?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수사학 삼각형(rhetoric triangle) 은 설득의 세 가지 핵심 요소인 에토스, 파토스, 로고스를 이해하기 위한 기초다. 에토스는 화자의 신뢰성과 신빙성, 파토스는 청중을 몰입시키기 위한 감정적 호소, 로고스는 논리적이고 이성적인 논거를 의미한다. 이 세 가지 요소 간의 균형과 상호작용을 마스터하면 청중을 효과적으로 설득하며 원하는 결과를 얻을 수 있다. 수사학 3요소에 대한 연구는 고대 그리스 학생들에게 필수였으며, 거의 2,500년이 지난 지금도 설득력 있는 커뮤니케이션 능력을 향상시키고자 하는 모든 사람이 유용하게 사용하고 있다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;확증 편향&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;확증 편향(confirmation bias)은 새로운 정보를 기존의 신념과 의견에 대한 확증으로 해석하는 편향이 있다. 우리의 뇌는 자신의 신념을 뒷받침하는 정보를 리터리하여 사실을 왜곡할 가능성이 높다. 많은 검색 및 소셜 미디어 알고리즘이 사용자가 보고 싶은 것만 정확하게 보여주도록 개발된 어 검색 버블(search bubble)과 에코 체임버( echo chamber)가 형성된다. 사용자가 이미 믿고 있는 것과 반대되는 정보는 거의 볼 수 없기 때문에 온라인에서는 매우 주의해야 한다. 잘못된 정보가 사방에서 물결치는 상황에서 사람들이 어떻게 속는지 쉽게 알 수 있다.&lt;br /&gt;&lt;br /&gt;새로운 기술을 조사하거나 ADR을 작성하거나 콘퍼런스에 참석할 때는 확증 편향에 유의해야 한다. 콘퍼런스 간에 흥미를 끌 수 없는 사실을 있는 그대로 받아들이는 것만으로도 받아들여지는 정보에 본별력을 키울 수 있다. 동의하지 않는 내용을 찾아서 메모해두자. 그것이 여러분에게 새로운 방향이 될 수도 있다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;사후 확신 편향&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사후 확신 편향(hindsight bias)은 일어난 일에 대해 원래 모두 알고 있었던듯이 말하거나 생각하는 경향을 의미한다. 이러한 편향은 다음과 같이 다양한 강도로 나타난다.&lt;br /&gt;&lt;br /&gt;- &quot;업그레이드가 상황을 악화시킬 줄 알았다&quot; (예측 가능성)&lt;br /&gt;- &quot;그 업그레이드는 상황을 더 악화시킬 수밖에 없었다&quot; (불가피성)&lt;br /&gt;- &quot;그 업그레이드를 적용하면 상황이 더 나빠질 거라고 했다&quot; (기억 왜곡 &amp;mdash; 잘못된 기억)&lt;br /&gt;&lt;br /&gt;일이 심각하게 잘못되거나 믿을 수 없을 정도로 잘 풀릴 때, 또는 고객이 무언가에 대해 마음을 바꾸면 이러한 편견에 빠지기 쉽다.&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;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;[1부 | 시각적 커뮤니케이션] &lt;br /&gt;1장&amp;nbsp;커뮤니케이션의&amp;nbsp;핵심 &lt;br /&gt;_독자&amp;nbsp;이해하기 &lt;br /&gt;_추상화&amp;nbsp;레벨&amp;nbsp;혼합 &lt;br /&gt;_표현의&amp;nbsp;일관성 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;2장&amp;nbsp;난잡함&amp;nbsp;정리하기 &lt;br /&gt;-색의&amp;nbsp;과부하 &lt;br /&gt;_상자&amp;nbsp;속&amp;nbsp;상자&amp;nbsp;속&amp;nbsp;상자 &lt;br /&gt;_관계&amp;nbsp;거미줄 &lt;br /&gt;_텍스트&amp;nbsp;균형&amp;nbsp;잡기 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;3장&amp;nbsp;접근성 &lt;br /&gt;_색상에&amp;nbsp;의존한&amp;nbsp;커뮤니케이션 &lt;br /&gt;_범례를&amp;nbsp;추가하자 &lt;br /&gt;_레이블&amp;nbsp;적절히&amp;nbsp;사용하기 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;4장&amp;nbsp;내러티브 &lt;br /&gt;_큰&amp;nbsp;그림이&amp;nbsp;먼저다 &lt;br /&gt;_다이어그램&amp;nbsp;흐름을&amp;nbsp;기대에&amp;nbsp;맞추자 &lt;br /&gt;_명확한&amp;nbsp;관계 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;5장&amp;nbsp;표기법 &lt;br /&gt;_아이콘으로&amp;nbsp;의미&amp;nbsp;전달하기 &lt;br /&gt;_특별한&amp;nbsp;이유&amp;nbsp;없이&amp;nbsp;UML&amp;nbsp;사용하기 &lt;br /&gt;_동작과&amp;nbsp;구조&amp;nbsp;뒤섞기 &lt;br /&gt;_예상에&amp;nbsp;어긋나기 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;6장&amp;nbsp;문장의&amp;nbsp;구성 &lt;br /&gt;_가독성이&amp;nbsp;떨어지는&amp;nbsp;다이어그램 &lt;br /&gt;_스타일&amp;nbsp;커뮤니케이션 &lt;br /&gt;_불분명한&amp;nbsp;문장&amp;nbsp;구성 &lt;br /&gt;_시각적&amp;nbsp;균형&amp;nbsp;만들기 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;[2부&amp;nbsp;|&amp;nbsp;멀티모달&amp;nbsp;커뮤니케이션] &lt;br /&gt;7장&amp;nbsp;서면&amp;nbsp;커뮤니케이션 &lt;br /&gt;_단순한&amp;nbsp;언어 &lt;br /&gt;_축약어&amp;nbsp;지옥 &lt;br /&gt;_구조화하기 &lt;br /&gt;_기술&amp;nbsp;문서&amp;nbsp;작성&amp;nbsp;구문 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;8장&amp;nbsp;언어적&amp;nbsp;및&amp;nbsp;비언어적&amp;nbsp;커뮤니케이션 &lt;br /&gt;_메시지&amp;nbsp;인코딩하기 &lt;br /&gt;_메시지&amp;nbsp;디코딩하기 &lt;br /&gt;_영향력과&amp;nbsp;설득 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;9장&amp;nbsp;수사학&amp;nbsp;3요소 &lt;br /&gt;_에토스 &lt;br /&gt;_파토스 &lt;br /&gt;_로고스 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[3부&amp;nbsp;|&amp;nbsp;지식&amp;nbsp;전달하기] &lt;br /&gt;10장&amp;nbsp;지식&amp;nbsp;관리의&amp;nbsp;원칙 &lt;br /&gt;_프로젝트보다&amp;nbsp;프로덕트 &lt;br /&gt;_텍스트보다&amp;nbsp;추상화 &lt;br /&gt;_관점&amp;nbsp;중심&amp;nbsp;문서화 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;11장&amp;nbsp;지식과&amp;nbsp;사람 &lt;br /&gt;_피드백은&amp;nbsp;일찍,&amp;nbsp;자주&amp;nbsp;받자 &lt;br /&gt;_짐을&amp;nbsp;나누기 &lt;br /&gt;_JIT&amp;nbsp;아키텍처 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;12장&amp;nbsp;모범&amp;nbsp;사례 &lt;br /&gt;_아키텍처&amp;nbsp;결정&amp;nbsp;레코드 &lt;br /&gt;_아키텍처&amp;nbsp;특성 &lt;br /&gt;_모든&amp;nbsp;문서를&amp;nbsp;코드처럼 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[4부&amp;nbsp;|&amp;nbsp;원격으로&amp;nbsp;소통하기] &lt;br /&gt;13장&amp;nbsp;원격&amp;nbsp;시간 &lt;br /&gt;_시간&amp;nbsp;동기화하기 &lt;br /&gt;_근무&amp;nbsp;패턴&amp;nbsp;존중하기 &lt;br /&gt;_에너지&amp;nbsp;및&amp;nbsp;생산성&amp;nbsp;향상 &lt;br /&gt;요약 &lt;br /&gt;&lt;br /&gt;14장&amp;nbsp;원격&amp;nbsp;근무의&amp;nbsp;원칙 &lt;br /&gt;_동기식&amp;nbsp;회의 &lt;br /&gt;_비동기식&amp;nbsp;사고 &lt;br /&gt;_원격&amp;nbsp;우선 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;15장&amp;nbsp;원격&amp;nbsp;채널 &lt;br /&gt;_대칭&amp;nbsp;이메일 &lt;br /&gt;_온라인&amp;nbsp;발표 &lt;br /&gt;_원격&amp;nbsp;도구와&amp;nbsp;거버넌스 &lt;br /&gt;_요약 &lt;br /&gt;&lt;br /&gt;[부록] &lt;br /&gt;ADR&amp;nbsp;템플릿&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #9feec3;&quot;&gt; &lt;b&gt;&amp;nbsp;&quot;한빛미디어&amp;nbsp;&amp;lt;나는리뷰어다&amp;gt;&amp;nbsp;활동을 위해서 책을 제공받아 작성된 서평입니다.&quot;&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;</description>
      <category>BOOK</category>
      <category>개발자</category>
      <category>원격근무</category>
      <category>자기계발</category>
      <category>책</category>
      <category>한빛미디어</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/108</guid>
      <comments>https://sysout.tistory.com/108#entry108comment</comments>
      <pubDate>Wed, 25 Sep 2024 22:05:16 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] 개발자를 위한 커리어 관리 핸드북</title>
      <link>https://sysout.tistory.com/106</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;584&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XLoql/btsHBV3i1Qn/BIDZDSKm0NZTdxk6fF6rCK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XLoql/btsHBV3i1Qn/BIDZDSKm0NZTdxk6fF6rCK/img.jpg&quot; data-alt=&quot;개발자를 위한 커리어 관리 핸드북 / 마이클 롭 / 한빛미디어 (2024)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XLoql/btsHBV3i1Qn/BIDZDSKm0NZTdxk6fF6rCK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXLoql%2FbtsHBV3i1Qn%2FBIDZDSKm0NZTdxk6fF6rCK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;211&quot; height=&quot;308&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;584&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;개발자를 위한 커리어 관리 핸드북 / 마이클 롭 / 한빛미디어 (2024)&lt;/figcaption&gt;
&lt;/figure&gt;
&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;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;이제는 개발자도 Soft Skill이 필요하다는 것을 인지해야 하고, 가볍게 읽을 수 있고, &lt;br /&gt;매우 귀감과 공감이 되며, 노하우가 충분히 집대성 된 참고 서적&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실리콘밸리 개발자의 소프트 스킬 노하우 - 라는 부제가 참 잘 어울린다는 생각이 든다. 공학도로서 화려한 마케팅적 언어를 쓰지 않고 담백한 fact 기반의 표제를 좋아하는 편이다. (요즈음은 AI 때문인지 허울뿐인 제목들이 넘쳐나서 그에 대한 피로를 느껴서일지도..)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개발자들은 새로운 기술이 계속해서 업데이트 되는 분야에 있기 때문에 직업 특성 상 평생 공부해야 하는 직업이고, 이에 따라 커리어 관련해서도 고민이 많은 직업이기도 하다. 어떤 도구를 사용할지, 직장 내 인간관계를 어떻게 관리할지 같은 일상적인 고민부터 &lt;i&gt;&amp;lsquo;스타트업으로 이직해야 할까?&amp;rsquo;, &amp;lsquo;관리자가 되어야 할까?&amp;rsquo;&lt;/i&gt;와 같은 굵직한 커리어 선택까지 크고 작은 선택에 직면하게 된다. 필자도 그러한 고민을 했었고 결과적으로 7년차가 된 지금 모험보다는 안정성을 기반으로 도메인에 변화를 준 선택을 했다. ㅎㅎ 저자는 슬랙, 핀터레스트, 애플 등 실리콘밸리의 쟁쟁한 회사에서 개발자로 일한 능력자이고 그동안의 경험과 노하우를 46가지 에피소드로 전하고 있다. 한창 일할 때인 3~5~7년차, 관리자를 앞둔 또는 관리자가 된 지 얼마 되지 않은 사람에게 특히 추천하고 싶다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 챕터에서는, 아무래도 미국 사회와 한국 사회는 다른 점이 있기에 출판사 측에서 옮길 때 개발자 10인의 특별 부록이 수록되었다. 한빛미디어 리뷰어로서 이번 달에 해당 책을 고른 이유 중에 하나로, N사에 재직하며 대학교 겸임교수로 활동하고 있는, 커리어적으로 존경하는 대학교 선배가 10인 중 한 명으로 참여하였다. 많관부  &lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;책갈피&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공감되는 글이 많아서 개인 SNS에 공유하였는데, 지인들도 알게 모르게 공감을 했는지 하트&amp;lt;3를 많이 눌러주더랬다.&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/dcj0ao/btsHB5Y0T1C/Jir2Pij3guaGRQTXNSFYNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dcj0ao/btsHB5Y0T1C/Jir2Pij3guaGRQTXNSFYNk/img.png&quot; data-origin-width=&quot;1170&quot; data-origin-height=&quot;2532&quot; data-is-animation=&quot;false&quot; width=&quot;400&quot; height=&quot;866&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/dcj0ao/btsHB5Y0T1C/Jir2Pij3guaGRQTXNSFYNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdcj0ao%2FbtsHB5Y0T1C%2FJir2Pij3guaGRQTXNSFYNk%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;1170&quot; height=&quot;2532&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ctoz7G/btsHBVvv6FJ/jOSA3cpZWSxTkuwQ3bkOQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ctoz7G/btsHBVvv6FJ/jOSA3cpZWSxTkuwQ3bkOQk/img.png&quot; data-origin-width=&quot;1170&quot; data-origin-height=&quot;2532&quot; data-is-animation=&quot;false&quot; width=&quot;400&quot; height=&quot;866&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ctoz7G/btsHBVvv6FJ/jOSA3cpZWSxTkuwQ3bkOQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fctoz7G%2FbtsHBVvv6FJ%2FjOSA3cpZWSxTkuwQ3bkOQk%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;1170&quot; height=&quot;2532&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/bcXLMd/btsHBNYPPSH/8xFhDbQ1KibZNAYl8qSf81/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bcXLMd/btsHBNYPPSH/8xFhDbQ1KibZNAYl8qSf81/img.png&quot; data-origin-width=&quot;1170&quot; data-origin-height=&quot;2532&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/bcXLMd/btsHBNYPPSH/8xFhDbQ1KibZNAYl8qSf81/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcXLMd%2FbtsHBNYPPSH%2F8xFhDbQ1KibZNAYl8qSf81%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;1170&quot; height=&quot;2532&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4LKEM/btsHBQadgQ1/M7c9viblvIR6Z52Io3zkD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4LKEM/btsHBQadgQ1/M7c9viblvIR6Z52Io3zkD1/img.png&quot; data-origin-width=&quot;1170&quot; data-origin-height=&quot;2532&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/4LKEM/btsHBQadgQ1/M7c9viblvIR6Z52Io3zkD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4LKEM%2FbtsHBQadgQ1%2FM7c9viblvIR6Z52Io3zkD1%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;1170&quot; height=&quot;2532&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;[1부 | 커리어를 위한 안내 지침]&lt;/b&gt;&lt;br /&gt;1장 승리하는 전략&lt;br /&gt;2장 커리어 관리를 위한 철학 3가지&lt;br /&gt;3장 이직의 신호&lt;br /&gt;4장 건전성 검사: 면접 준비와 평가&lt;br /&gt;5장 면접에서 긴장감 이겨내기&lt;br /&gt;6장 면접관의 유형과 버튼&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;[2부 | 관리 해부하기]&lt;/b&gt;&lt;br /&gt;7장 채용 제안서 파헤치기&lt;br /&gt;8장 집중의 중요성&lt;br /&gt;9장 조직 문화&lt;br /&gt;10장 관리자 관리&lt;br /&gt;11장 에스컬레이션&lt;br /&gt;12장 리퍼: 변명과 진실&lt;br /&gt;13장 상사의 유형&lt;br /&gt;14장 불가능한 일&lt;br /&gt;15장 동료의 반응과 후속 조치&lt;br /&gt;16장 지루해지기 위한 투자&lt;br /&gt;17장 게임 시스템&lt;br /&gt;18장 인간관계 속 마피아 관리하기&lt;br /&gt;19장 BAB 게임: 일하지 않고도 경험을 얻는 방법&lt;br /&gt;20장 네트워킹: 내 사람 찾기&lt;br /&gt;21장 채용하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;[3부 | 일상적인 도구들]&lt;/b&gt;&lt;br /&gt;22장 빌런의 역설: 빌런을 바라보는 관점 바꾸기&lt;br /&gt;23장 리더의 역할&lt;br /&gt;24장 관리자에게 필요한 친절과 리더십의 핵심&lt;br /&gt;25장 너드 설명서&lt;br /&gt;26장 개발자의 하루 일과&lt;br /&gt;27장 트리클 목록 만들기&lt;br /&gt;28장 우리가 잃어버린 것&lt;br /&gt;29장 사용하는 도구에 관한 몇 가지 규칙&lt;br /&gt;30장 아무것도 하지 않기&lt;br /&gt;31장 발표를 망치지 않는 방법&lt;br /&gt;32장 성공적인 발표를 위한 4가지 조언&lt;br /&gt;33장 프로젝트 관리의 삼각형: 코드, 기능, 진실&lt;br /&gt;34장 엄청난 아이디어 시연하기&lt;br /&gt;35장 사보타주 목록 만들기&lt;br /&gt;36장 결정과 리더십&lt;br /&gt;37장 결정을 내릴 수 없다면&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;[4부 | 커리어의 다음 단계]&lt;/b&gt;&lt;br /&gt;38장 회의실의 골칫거리&lt;br /&gt;39장 성과 리뷰&lt;br /&gt;40장 신중한 커리어 선택을 위한 3가지 질문&lt;br /&gt;41장 실리콘밸리의 저주&lt;br /&gt;42장 관리자가 되는 과정&lt;br /&gt;43장 동료의 이탈과 공백&lt;br /&gt;44장 영감의 원천&lt;br /&gt;45장 대규모 탈출&lt;br /&gt;46장 밝은 미래에 대한 나쁜 소식&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;에필로그 | &amp;nbsp;서두르세요!&lt;br /&gt;붙임 | 백 앨리 브리지 게임 규칙&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;[특별 부록 | 국내 개발자 10인의 커리어 이야기]&lt;/b&gt;&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;심리학 전공생이 해외 빅테크에서 일하는 개발자가 되기까지(고예슬, 틱톡 솔루션 엔지니어)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;20대 마케터에서 30대 주니어 개발자로(공슬기, 백엔드 개발자)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;끊임없이 도전하고 끝까지 완성하기(박지은, 프런트엔드 개발자)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;덜 후회하는 커리어 관리(박정환, 데이터 엔지니어)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;커리어에서 신뢰는 자본입니다(안재영, 트위니 로봇 관제 플랫폼 개발자)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;초보 팀장의 사소한 성장 팁(양창규, 게임 개발자)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;나를 그리는 방법(우태강, 네이버 커머스AI 테크 리더)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;나다운 색깔을 만든다는 것(임동준, 우아한형제들 웹 프런트엔드 교육)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;운 좋은 사람이 되는 방법(조민규, 토스 서버 개발자)&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;커리어 스토리 개발하기(한치영, 스타트업 CTO)&lt;/p&gt;
&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: #f6e199;&quot;&gt;&lt;b&gt;&amp;nbsp;&quot;한빛미디어&amp;nbsp;&amp;lt;나는 리뷰어다&amp;gt; 활동을 위해서 책을 제공받아 작성된 서평입니다.&quot;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>BOOK</category>
      <category>programmer</category>
      <category>softskill</category>
      <category>개발자</category>
      <category>소프트스킬</category>
      <category>실리콘밸리</category>
      <category>자기계발</category>
      <category>프로그래밍</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/106</guid>
      <comments>https://sysout.tistory.com/106#entry106comment</comments>
      <pubDate>Sun, 26 May 2024 18:33:06 +0900</pubDate>
    </item>
    <item>
      <title>[논문 리뷰] LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement</title>
      <link>https://sysout.tistory.com/105</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;복학을 하고 &lt;s&gt;(추가등록도 하고)&lt;/s&gt; 졸업준비를 하면서 최근에 스터디 2개를 열심히 돌리고 있다. 그 중 하나는 한 스타트업이 진행하는 스터디 방식을 차용한 흥미로운 방식으로 진행하고 있는데, 각자 논문을 준비해서 15분~20분간 읽고 15분간 의견을 공유하면서 퀵하게 진행하는 방식이다. 이번주면 3주차인데, 해 본 결과 15분이라는 시간 자체가 논문 하나를 정독하기에는 버겁고 빠르게 skimming해야 해서 집중력이 장난 아니다. 혼자서 1시간동안 흐린 눈으로 붙잡고 읽는 것보다 훨씬 효율이 좋아서 애정하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각설하고, 스터디 중 그냥 최근에 나온 LLM 논문을 무심코 읽어봤는데 (무려 arXiv:2403.15042!) 너무 마음에 들었던 논문이 있어서 휴일에 다시 정독하면서 꼭꼭 씹어 먹어본 결과를 공유하고자 한다.&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;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Abstract&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 논문은 제한된 데이터에서 대규모 언어 모델(LLM)의 성능을 향상시키는 방법에 관한 것이며 LLM2LLM이라는 일종의 프레임워크를 제시한다. LLM2LLM은 Teacher LLM을 사용하여 Student LLM이 맞추지 못한 문제를 다시금 augmentation하여 데이터를 생성한다. 그 후 해당 데이터를 Student LLM을 미세 조정하는 데 사용하면서 iteration을 도는 방식이다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;(1) fine-tunes a baseline student LLM on the initial seed data,&amp;nbsp;&lt;br /&gt;(2)&amp;nbsp;evaluates&amp;nbsp;and&amp;nbsp;extracts&amp;nbsp;data&amp;nbsp;points&amp;nbsp;that&amp;nbsp;the&amp;nbsp;model&amp;nbsp;gets&amp;nbsp;wrong,&amp;nbsp;and&amp;nbsp;&lt;br /&gt;(3) uses a teacher LLM to generate synthetic data based on these incorrect data points&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Introduction&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다양한 benchmark와 dataset에서 LLM이 활약하는 요즘, 그 한계를 꼬집으면서 시작한다. 하나의 극작품을 읽는 것처럼 굉장히 웅장하게(?) 시작해서 이 부분이 상당히 흡입력 있다고 생각했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Prompting strategy는 one-size-fits-all solution이 아니며ㅡ가령 context length의 제한이라던지ㅡ RAG를 사용하여 이러한 어려움을 해결하고자 하지만 때때로 관련이 없는 문맥을 retrieve 하기도 하고, 본질적으로 latency나 cost issue를 해결해주지는 않는다. Cost 최적화라고 함은 또 PEFT(Parameter Efficient Fine-Tuning)가 빠질 수 없는데, 결국에는 성공적인 fine-tuning은 training data가 충분할 때 이루어진다-라는 일종의 교착에 빠지게 된다. 결국 우리가 직면한 question은: &lt;i&gt;how should we increase the user's training data to be enough for fine-tuning?&lt;/i&gt; 이라는 내용.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Data augmentation은 NLP에서 그동안 다양한 형태로 시도되었는데,&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Synonym replacement&lt;/li&gt;
&lt;li&gt;Character replacement&lt;/li&gt;
&lt;li&gt;Random swapping&lt;/li&gt;
&lt;li&gt;Back translation ...&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;이러한 접근법들은 새로운 데이터 또는 특화된 task에서 효과적으로 동작하지 않는다. 이에 Teacher-Student LLM 구조를 이용하면서 self-instruct &amp;amp; boosting style의 data augmentation을 제안한다. 심지어 기존의 방법 대비 30%를 순회하는 성능을 보여준다고 한다.&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;Methodology&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;655&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7o3M0/btsGuOyQEhw/U4VOIPKWXRiD0Mj7YZqjzk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7o3M0/btsGuOyQEhw/U4VOIPKWXRiD0Mj7YZqjzk/img.png&quot; data-alt=&quot;LLM2LLM 아키텍쳐&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7o3M0/btsGuOyQEhw/U4VOIPKWXRiD0Mj7YZqjzk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7o3M0%2FbtsGuOyQEhw%2FU4VOIPKWXRiD0Mj7YZqjzk%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;1280&quot; height=&quot;655&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;655&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LLM2LLM 아키텍쳐&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;734&quot; data-origin-height=&quot;306&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q1vKP/btsGxCpSVUx/MWSPgcgw6wpkBY5zbIYjBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q1vKP/btsGxCpSVUx/MWSPgcgw6wpkBY5zbIYjBk/img.png&quot; data-alt=&quot;LLM2LLM 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q1vKP/btsGxCpSVUx/MWSPgcgw6wpkBY5zbIYjBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq1vKP%2FbtsGxCpSVUx%2FMWSPgcgw6wpkBY5zbIYjBk%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;734&quot; height=&quot;306&quot; data-origin-width=&quot;734&quot; data-origin-height=&quot;306&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LLM2LLM 알고리즘&lt;/figcaption&gt;
&lt;/figure&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;b&gt;훈련 데이터로 모델을 훈련하고 평가한다. &lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;훈련 데이터에서 틀린 답변을 선택하여 교사 모델과 스타일이 비슷한 추가 샘플을 생성하는 데 입력으로 사용한다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;이제 이전 훈련 데이터와 새로 생성된 샘플을 결합하여 새로운 학생 모델을 훈련한다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;모델을 미세 조정한 후 평가하여 모델이 틀린 질문을 찾는다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;교사 모델은 잘못된 예시를 기반으로 유사한 개념과 아이디어를 테스트하는 추가 데이터 포인트를 생성하는 데 사용된다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;이러한 합성 데이터 포인트는 훈련 데이터 세트로 다시 삽입된다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;이 프로세스는 반복되면서 학생 모델은 점점 더 세분화된 데이터 포인트로 훈련된다.&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 방법은 EDA(Easy Data Augmentation)과 AugGPT와 비교분석하여 기술된다. 두 논문은 추가적으로 읽어보려 한다. 특히 AugGPT는 가능한 모든 data point에 대하여 prompted LLM을 사용했으나, 본 LLM2LLM은 &lt;span style=&quot;background-color: #f6e199;&quot;&gt;Student LLM이 맞추지 못한 challenging examples에 대하여 augment를 사용했다&lt;/span&gt;는 점을 강조하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 &lt;span style=&quot;background-color: #f6e199;&quot;&gt;LLM2LLM은 knowledge distillation과는 다르다&lt;/span&gt;는 점이 흥미로웠는데, 이 부분은 skimming 할 때 알지 못했던 부분이었다! 심지어 같이 스터디했던 친구도 언뜻 듣고 knowledge distillation 논문이네~ 라고 단정지었는데, 해당 분야로 치기에는 일반적으로 teacher model이 이미 high accuracy임을 가정한 상태에서 적용 가능하다고 한다. Domain-specific fine-tuning을 위한 저자의 자부심..이 엿보인다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;729&quot; data-origin-height=&quot;109&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cb6rfD/btsGwcexg6b/fUDDm5IEIBzK3OP3kEj3w0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cb6rfD/btsGwcexg6b/fUDDm5IEIBzK3OP3kEj3w0/img.png&quot; data-alt=&quot;모든 면에서 난 다르고 특별해! 라고 말하는 느낌.ㅋㅋ&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cb6rfD/btsGwcexg6b/fUDDm5IEIBzK3OP3kEj3w0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcb6rfD%2FbtsGwcexg6b%2FfUDDm5IEIBzK3OP3kEj3w0%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;729&quot; height=&quot;109&quot; data-origin-width=&quot;729&quot; data-origin-height=&quot;109&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;모든 면에서 난 다르고 특별해! 라고 말하는 느낌.ㅋㅋ&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Results&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1318&quot; data-origin-height=&quot;679&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvlAal/btsGvUyyvfr/EJKJBkcqXg5n6SkrTaJ4l1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvlAal/btsGvUyyvfr/EJKJBkcqXg5n6SkrTaJ4l1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvlAal/btsGvUyyvfr/EJKJBkcqXg5n6SkrTaJ4l1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvlAal%2FbtsGvUyyvfr%2FEJKJBkcqXg5n6SkrTaJ4l1%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;1318&quot; height=&quot;679&quot; data-origin-width=&quot;1318&quot; data-origin-height=&quot;679&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;920&quot; data-origin-height=&quot;171&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5ABcn/btsGuId9iI5/Djx4y7r0IK8rBjxOx8KffK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5ABcn/btsGuId9iI5/Djx4y7r0IK8rBjxOx8KffK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5ABcn/btsGuId9iI5/Djx4y7r0IK8rBjxOx8KffK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5ABcn%2FbtsGuId9iI5%2FDjx4y7r0IK8rBjxOx8KffK%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;920&quot; height=&quot;171&quot; data-origin-width=&quot;920&quot; data-origin-height=&quot;171&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 데이터셋과 방법론에 대하여 간략하게 덧붙여 정리하였다. 다른 augmentaion 방법론과 비교해서 20%~50%의 성능 향상으로, 실로 놀라운 결과를 보여주었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Student LLM으로는 LLaMA-2-7B를, Teacher LLM으로는 GPT-3.5 (1106 release) 를 사용하였고 더 좋은 모델을 쓸수록 성능이 향상된다고 언급하였다. 개인적으로 dataset과 inference 비용으로 때려박는 각박한 세상 속(?) 영세한 환경에서 LLM을 돌리는 나에게 sLLM을 기준으로 실험한 점이 마음에 들었다. ┏ (゜&amp;omega;゜)=☞&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;Ablation Studies&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 실험에서는 아래 3가지 결과를 보여주었다. 첫번째와 두번째는 이론적으로 그럴 것 같고, 실제로도 그러하다 느낌으로 넘어갔는데 마지막 실험에서 countinuous 방식보다 from-scratch 방식이 더 잘 나온다는 사실은 나름 흥미로웠다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Iterative Augmentation &amp;gt; One-Shot Augmentation&lt;/li&gt;
&lt;li&gt;Data Augmentation with Seed Data &amp;gt; Augmented Data&lt;/li&gt;
&lt;li&gt;From-Scratch Fine-tuning &amp;gt; Continuous Fine-tuning&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;924&quot; data-origin-height=&quot;277&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1Ypkr/btsGw6khl25/O12p2dHJUFW3xBJTPg9371/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1Ypkr/btsGw6khl25/O12p2dHJUFW3xBJTPg9371/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1Ypkr/btsGw6khl25/O12p2dHJUFW3xBJTPg9371/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1Ypkr%2FbtsGw6khl25%2FO12p2dHJUFW3xBJTPg9371%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;924&quot; height=&quot;277&quot; data-origin-width=&quot;924&quot; data-origin-height=&quot;277&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 기술했던 실험 결과를 정리하면서 future work로 LLM2LLM framework에서의 hyperparameter 조정, 그리고 prompt tuning이나 few-shot learning과 같은 다른 LLM 테크닉과의 결합을 제안한다.&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;Related Documents&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://arxiv.org/abs/2403.15042&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://arxiv.org/abs/2403.15042&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1712758246992&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;LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement&quot; data-og-description=&quot;Pretrained large language models (LLMs) are currently state-of-the-art for solving the vast majority of natural language processing tasks. While many real-world applications still require fine-tuning to reach satisfactory levels of performance, many of the&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2403.15042&quot; data-og-url=&quot;https://arxiv.org/abs/2403.15042v1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bahF6W/hyVMObGZWR/puodkiHqU59yHjKDFuhsbk/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/bZG8XI/hyVMUiGG1u/PeqksW3PRZ7KS5C9R5yw6k/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/2403.15042&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2403.15042&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bahF6W/hyVMObGZWR/puodkiHqU59yHjKDFuhsbk/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/bZG8XI/hyVMUiGG1u/PeqksW3PRZ7KS5C9R5yw6k/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;LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Pretrained large language models (LLMs) are currently state-of-the-art for solving the vast majority of natural language processing tasks. While many real-world applications still require fine-tuning to reach satisfactory levels of performance, many of 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;&lt;a href=&quot;https://github.com/SqueezeAILab/LLM2LLM&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/SqueezeAILab/LLM2LLM&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1712757325126&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 - SqueezeAILab/LLM2LLM: LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement&quot; data-og-description=&quot;LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement - SqueezeAILab/LLM2LLM&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/SqueezeAILab/LLM2LLM&quot; data-og-url=&quot;https://github.com/SqueezeAILab/LLM2LLM&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/qn6fW/hyVMX7xZC6/wMBrSsYDf4s3MSSKKZM6Ok/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/SqueezeAILab/LLM2LLM&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/SqueezeAILab/LLM2LLM&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/qn6fW/hyVMX7xZC6/wMBrSsYDf4s3MSSKKZM6Ok/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_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;GitHub - SqueezeAILab/LLM2LLM: LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;LLM2LLM: Boosting LLMs with Novel Iterative Data Enhancement - SqueezeAILab/LLM2LLM&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://arxiv.org/abs/2302.13007&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://arxiv.org/abs/2302.13007&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1712758226512&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;AugGPT: Leveraging ChatGPT for Text Data Augmentation&quot; data-og-description=&quot;Text data augmentation is an effective strategy for overcoming the challenge of limited sample sizes in many natural language processing (NLP) tasks. This challenge is especially prominent in the few-shot learning scenario, where the data in the target dom&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/2302.13007&quot; data-og-url=&quot;https://arxiv.org/abs/2302.13007v3&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bs8l6B/hyVMOJwMG5/MNiH6LGiNOclP3RHi8xam1/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/crGipx/hyVMVaPulr/VDBNhOco8qVreKYryScOw1/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/2302.13007&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/2302.13007&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bs8l6B/hyVMOJwMG5/MNiH6LGiNOclP3RHi8xam1/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/crGipx/hyVMVaPulr/VDBNhOco8qVreKYryScOw1/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;AugGPT: Leveraging ChatGPT for Text Data Augmentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Text data augmentation is an effective strategy for overcoming the challenge of limited sample sizes in many natural language processing (NLP) tasks. This challenge is especially prominent in the few-shot learning scenario, where the data in the target dom&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://arxiv.org/abs/1901.11196&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://arxiv.org/abs/1901.11196&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1712759827788&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;EDA: Easy Data Augmentation Techniques for Boosting Performance on Text Classification Tasks&quot; data-og-description=&quot;We present EDA: easy data augmentation techniques for boosting performance on text classification tasks. EDA consists of four simple but powerful operations: synonym replacement, random insertion, random swap, and random deletion. On five text classificati&quot; data-og-host=&quot;arxiv.org&quot; data-og-source-url=&quot;https://arxiv.org/abs/1901.11196&quot; data-og-url=&quot;https://arxiv.org/abs/1901.11196v2&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/fOhFF/hyVMLF3jwr/IGTdq6HfimNmKrvRsYNlCK/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/jfqmj/hyVM1a1C0t/I7zgbaXgfzDP5kJeAZPYQ0/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/1901.11196&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://arxiv.org/abs/1901.11196&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/fOhFF/hyVMLF3jwr/IGTdq6HfimNmKrvRsYNlCK/img.png?width=1200&amp;amp;height=700&amp;amp;face=0_0_1200_700,https://scrap.kakaocdn.net/dn/jfqmj/hyVM1a1C0t/I7zgbaXgfzDP5kJeAZPYQ0/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;EDA: Easy Data Augmentation Techniques for Boosting Performance on Text Classification Tasks&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;We present EDA: easy data augmentation techniques for boosting performance on text classification tasks. EDA consists of four simple but powerful operations: synonym replacement, random insertion, random swap, and random deletion. On five text classificati&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;</description>
      <category>BIG DATA &amp;amp; AI/NLP</category>
      <category>ai</category>
      <category>ML</category>
      <category>nlp</category>
      <category>논문</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/105</guid>
      <comments>https://sysout.tistory.com/105#entry105comment</comments>
      <pubDate>Wed, 10 Apr 2024 23:32:48 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] 인사이드 머신러닝 인터뷰</title>
      <link>https://sysout.tistory.com/104</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AqpW7/btsGpHsuXDM/L2dgiklYdDX7mrTSkqBQbk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AqpW7/btsGpHsuXDM/L2dgiklYdDX7mrTSkqBQbk/img.jpg&quot; data-alt=&quot;인사이드 머신러닝 인터뷰 / 펑 샤오 / 한빛미디어 (2024)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AqpW7/btsGpHsuXDM/L2dgiklYdDX7mrTSkqBQbk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAqpW7%2FbtsGpHsuXDM%2FL2dgiklYdDX7mrTSkqBQbk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;200&quot; height=&quot;257&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;514&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;인사이드 머신러닝 인터뷰 / 펑 샤오 / 한빛미디어 (2024)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;총평&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;알고리즘 인터뷰 책과 강의는 수도 없이 쏟아지는데, &lt;br /&gt;머신러닝 엔지니어를 위한 인터뷰는 도대체 언제 나올까? &amp;rarr; &lt;b&gt;나왔다&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혼자 준비하기 답답했던 ML 엔지니어들에게 한 줄기 빛 같은 책이다. 본인도 최근 구직을 하면서 각종 구글링과 지인 네트워크를 통해 겨우겨우 정보를 얻어 준비했었고, 앞으로 머신러닝 엔지니어의 공급은 더 많아질 텐데 언제쯤 나올까 했던 책이 드디어 나왔다! 전형을 마무리한 후에 이 책을 보게 된 건 슬프지만, 인터뷰 준비 뿐만 아니라 옆에 두고 ML essential 다지기에도 너무 괜찮은 책이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저자의 이름이 재미있게도(?) 최근에 화제가 되는 샤오미 전기차의 이름과 동일한데, 이 분 굉장히 대단한 분이다. Amazon 등 빅테크에서 ML 엔지니어로 활동했으며 중간에 Roxy Device라는 스타트업을 창업을 하고 개발팀이 트위터(현 X)에 인수되어 ML ranking, modeling, serving 등 전반적인 ML 업무를 맡으며 천 명에 가까운 지원자를 면접봤다고 한다. 얼마나 많은 경험과 노하우가 들어있을지 기대하며 책을 폈었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고등학교 때 남들이 수학의 정석을 보는 반면 본인은 수학의 바이블을 굉장히 좋아했는데, 오랜만에 마음에 드는 전공 서적을 찾은 느낌이었다. 몇 번의 ML면접을 경험해본 바 정말 필요한 내용들이 집약적으로 담겨 있다. 해당 전형이 왜 필요한지, 무엇이 중심 내용인지부터 스토리텔링으로 이해와 암기를 자연스럽게 연결시켰다. 이 책은 사기적이다. 정말 솔직히 말하면 포트폴리오와 논문 실적이 어느정도 존재한다는 가정 하에, 이 책을 달달 외운다면 왠만한 IT기업은 다 뚫지 않을까 싶다. 개인적으로 요즘은 AI 인재 포화상태라고 생각하며 인터뷰도 기본 3-4번 보고 신중하게 뽑는 추세여서 면접 기준이 점점 더 높아지고 있는데, 주변의 ML 엔지니어 구직자에게 이 책을 강력 추천하고 싶다!&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;너무 찬사를 남발했는데 요즘 &lt;s&gt;한국 사회 한정으로&lt;/s&gt; 육각형을 갖춘 이상형을 다들 원하고 찾지만 실제로는 없듯이 아쉬운 점이 있다면, 일반적인 ML 엔지니어를 대상으로 하고 있기 때문에 세부 분야인 NLP, CV, Multi-Modal 등에 대해서는 깊게 다루고 있지 않다. 최근에는 단순 ML 엔지니어 외에도 특정 분야의 전문가를 영입하기 위해 NLP 중에서도 LLM 전문가, Multilingual 전문가, Prompting 전문가 등 JD를 꽤나 구체적으로 적어서 뽑는 추세인데 분량상 이 부분까지 커버하기는 버거운 것 같다. (개인적으로 Part.2가 나왔으면 하는 바램도 있다.) 또한&amp;nbsp; 비교적 최근에 출간한 도서라 LLM까지 다루고 있지만, ChatGPT의 RLHF, instruction fine-tuning까지만 담겨 있는 것도 참고 바란다.&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;style1&quot; /&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;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 질문을 생각해 봅시다. &quot;분류 문제 X에 가장 유용한 피처를 어떻게 찾을 수 있나요?&quot;&lt;br /&gt;질문에 답하기 위해 지원자는 전공 지식이나 업계에서 배운 경험을 활용합니다. 전공 지식이 있다면 카이제곱 검정이나 정보 이득과 같은 통계 기법을 거론할 테고 반대로 업계 경험이 있다면 피처값을 교란하거나 절제 연구를 수행하는 등의 직접적인 접근 방식을 제안할 수 있겠죠. 또한 지원자는 피처의 유효성만 고려할 것이 아니라 시스템 제약 아래 오프라인 수집이 용이한지, 프로덕션 환경의 온라인 추론을 위해 빠르고 안정적으로 수화&lt;i&gt;(hydration, ML pipeline에서 피처값들이 얼마나 막힘없이 잘 '흐르는지'에 대한 개념)&lt;/i&gt;가 가능한지도 고려해야 한다는 점을 알 수 있습니다.&lt;br /&gt;- 지은이의 말 中&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;경사하강법 최적화&amp;gt;&lt;br /&gt;&lt;b&gt;Q. 경사하강법을 어떻게 최적화하나요?&lt;/b&gt;&lt;br /&gt;A. 경사하강법의 문제를 해결하는 최적화 알고리즘은 다음과 같습니다.&lt;br /&gt;- &lt;b&gt;모멘텀(Momentum)&lt;/b&gt; : 이전 시간 스템의 가중치 업데이트량의 일부를 현재 가중치 업데이트에 추가합니다. 손실함수의 경사에 적응하는 것으로 볼 수도 있습니다. 더 빨리 수렴하도록 하지만 잘못된 방향으로 방황할 수도 있습니다.&lt;br /&gt;- &lt;b&gt;네스테로프 모멘텀(Nesterov Momentum)&lt;/b&gt; : 모멘텀 기법의 일종으로, 가중치에 모멘텀 업데이트를 적용한 후 경사를 계산합니다. 수렴 속도를 희생하지 않으면서 가중치 업데이트의 정확성을 높이기 위해 모멘텀에 수정을 가하는 것으로 볼 수 있습니다.&lt;br /&gt;- 그 외 &lt;b&gt;에이다그래드(AdaGrad), 에이다델타(AdaDelta)와 RMSProp, 애덤(Adam)&lt;/b&gt; 등이 있습니다. (후략)&lt;br /&gt;p50: ML 기본 지식&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;모델 최적화&amp;gt;&lt;br /&gt;&lt;b&gt;Q. 매우 짧은 지연 시간을 갖도록 학습한 모델을 최적화하는 방법에는 무엇이 있나요?&lt;/b&gt;&lt;br /&gt;A. 피처 선택, 레이어 수 감소시키기, 레이어 크기 감소시키기 등 기존 기법은 이미 적용되었다고 가정할 때 서빙을 위해 모델을 추가로 최적화하는 기법은 다음과 같습니다.&lt;br /&gt;- &lt;b&gt;모델 정리&lt;/b&gt; : 모델의 예측 경로에 존재하는 불필요한 구성 요소를 제거합니다. 예를 들어 사용되지 않는 노드, 중복 노드, 학습에 필요했지만 예측에는 더 이상 필요하지 않은 기타 구성 요소 등이 있습니다. 또 다른 단계는 항상 상수 표현식으로 평가되는 모델 내 하위 그래프를 찾는 것입니다. 이러한 하위 그래프는 해당 상숫값으로 대체될 수 있습니다. 또한 배치 정규화의 곱셈을 이전 레이어의 가중치 곱셈에 통합시키는 것도 도움이 됩니다.&lt;br /&gt;- &lt;b&gt;입력 압축&lt;/b&gt; : 프로덕션 랭킹 모델은 수천~수만 개의 입력 피처를 사용하는 경우가 많습니다. 다양한 소스에서 피처를 수화하고 네트워크를 통해 모델 서버로 전송해야 하므로 추론 중에 상당한 지연 시간이 발생하기도 합니다. 이 문제를 해결하기 위해 학습 중에 대상 및 후보 피처에 대한 밀집 임베딩을 저장해뒀다가 추론 시에 그 임베딩들만 가져옵니다. (중략)&lt;br /&gt;- 그 외 &lt;b&gt;효율적 캐싱 전략, 일괄 추론, 투 타워, 양자화(quantization), 효율적인 신경망 제품군, 모델 압축&lt;/b&gt; 등이 있습니다. (후략)&lt;br /&gt;p256: ML 인프라 설계&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;/h2&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;1장 ML 면접에 임하기&lt;/b&gt;&lt;br /&gt;테크니컬 폰 스크린&lt;br /&gt;ML 기본 지식 면접&lt;br /&gt;ML 코딩 면접&lt;br /&gt;ML 시스템 설계 면접&lt;br /&gt;기타 면접&lt;br /&gt;우수한 답변의 필수 요소&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;2장 ML 기본 지식&lt;/b&gt;&lt;br /&gt;Q2.1 데이터셋 수집 단계&lt;br /&gt;Q2.2 데이터 수집 시 문제&lt;br /&gt;Q2.3 데이터 수집 시 고려 사항&lt;br /&gt;Q2.4 레이블 불균형 처리&lt;br /&gt;Q2.5 누락된 레이블 처리&lt;br /&gt;Q2.6 입력 피처 유형&lt;br /&gt;Q2.7 피처 선택과 중요도&lt;br /&gt;Q2.8 피처 선택 방법&lt;br /&gt;Q2.9 누락된 피처값&lt;br /&gt;Q2.10 모델링 알고리즘&lt;br /&gt;Q2.11 로지스틱 회귀 작동 방식&lt;br /&gt;Q2.12 로지스틱 회귀 손실 함수&lt;br /&gt;Q2.13 경사하강법 최적화&lt;br /&gt;Q2.14 하이퍼파라미터 튜닝&lt;br /&gt;Q2.15 모델 과적합 처리&lt;br /&gt;Q2.16 정규화 기법&lt;br /&gt;Q2.17 선형 회귀와 로지스틱 회귀&lt;br /&gt;Q2.18 신경망 활성화 함수&lt;br /&gt;Q2.19 의사 결정 트리, 랜덤 포레스트, 그래디언트 부스팅 결정 트리&lt;br /&gt;Q2.20 부스팅과 배깅&lt;br /&gt;Q2.21 비지도 학습 기법&lt;br /&gt;Q2.22 k-평균 작동 방식&lt;br /&gt;Q2.23 준지도 학습 기법&lt;br /&gt;Q2.24 손실 함수 유형&lt;br /&gt;Q2.25 손실 함수 볼록성&lt;br /&gt;Q2.26 분류 모델 평가 지표&lt;br /&gt;Q2.27 회귀 모델 평가 지표&lt;br /&gt;Q2.28 모델 최적화&lt;br /&gt;Q2.29 모델 성능 개선&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;3장 ML 코딩&lt;/b&gt;&lt;br /&gt;Q3.1 k-평균&lt;br /&gt;Q3.2 k-최근접 이웃&lt;br /&gt;Q3.3 의사 결정 트리&lt;br /&gt;Q3.4 선형 회귀&lt;br /&gt;Q3.5 평가 지표&lt;br /&gt;Q3.6 저수지 샘플링&lt;br /&gt;Q3.7 확률 문제&lt;br /&gt;Q3.8 해시 테이블과 분산 프로그래밍 문제&lt;br /&gt;Q3.9 그래프 문제&lt;br /&gt;Q3.10 문자열 문제&lt;br /&gt;Q3.11 배열 문제&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;4장 ML 시스템 설계 1 - 추천 시스템&lt;/b&gt;&lt;br /&gt;Q4.1 시스템 목적&lt;br /&gt;Q4.2 시스템 지표&lt;br /&gt;Q4.3 추천 콘텐츠 유형&lt;br /&gt;Q4.4 추천 콘텐츠 혼합&lt;br /&gt;Q4.5 시스템 운영 매개변수&lt;br /&gt;Q4.6 시스템 구성 요소&lt;br /&gt;Q4.7 콜드 스타트 문제&lt;br /&gt;Q4.8 데이터셋 유형&lt;br /&gt;Q4.9 데이터셋 수집 기법&lt;br /&gt;Q4.10 데이터셋 편향&lt;br /&gt;Q4.11 서빙 편향 완화&lt;br /&gt;Q4.12 위치 편향 완화&lt;br /&gt;Q4.13 추천 후보 출처&lt;br /&gt;Q4.14 추천 후보 생성 단계&lt;br /&gt;Q4.15 추천 후보 생성 알고리즘&lt;br /&gt;Q4.16 임베딩 기술&lt;br /&gt;Q4.17 대규모 추천 시스템의 후보 스코어링&lt;br /&gt;Q4.18 신규 콘텐츠 색인화&lt;br /&gt;Q4.19 추천 후보 병합 및 정리&lt;br /&gt;Q4.20 사전 랭킹 모델 학습&lt;br /&gt;Q4.21 사전 랭킹 모델 평가 지표&lt;br /&gt;Q4.22 사전 랭킹 모델 알고리즘&lt;br /&gt;Q4.23 사전 랭킹 모델 최적화&lt;br /&gt;Q4.24 랭킹 모델 주요 피처&lt;br /&gt;Q4.25 텍스트 또는 ID 기반 피처&lt;br /&gt;Q4.26 횟수 기반 피처&lt;br /&gt;Q4.27 헤비 랭킹 모델 학습&lt;br /&gt;Q4.28 헤비 랭킹 모델 알고리즘&lt;br /&gt;Q4.29 랭킹 모델 아키텍처&lt;br /&gt;Q4.30 랭킹 모델 예측값 보정&lt;br /&gt;Q4.31 랭킹 모델 평가 지표&lt;br /&gt;Q4.32 다중 작업 모델과 개별 모델&lt;br /&gt;Q4.33 모델 서빙 시스템&lt;br /&gt;Q4.34 캐싱&lt;br /&gt;Q4.35 모델 업데이트&lt;br /&gt;Q4.36 온라인 실험&lt;br /&gt;Q4.37 모델 로드&lt;br /&gt;Q4.38 모델 실험 고려 사항&lt;br /&gt;Q4.39 오프라인 평가 지표&lt;br /&gt;Q4.40 온라인 성능 저하&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;5장 ML 시스템 설계 2 - 응용&lt;/b&gt;&lt;br /&gt;Q5.1 문서 파싱&lt;br /&gt;Q5.2 감성 분석&lt;br /&gt;Q5.3 토픽 모델링 기법&lt;br /&gt;Q5.4 문서 요약&lt;br /&gt;Q5.5 자연어 이해&lt;br /&gt;Q5.6 지도 학습 레이블&lt;br /&gt;Q5.7 비지도 학습 피처&lt;br /&gt;Q5.8 판별적 문제 피처&lt;br /&gt;Q5.9 생성 모델 피처&lt;br /&gt;Q5.10 정보 추출 모델 구축&lt;br /&gt;Q5.11 정보 추출 평가 지표&lt;br /&gt;Q5.12 분류 모델 구축&lt;br /&gt;Q5.13 회귀 모델 구축&lt;br /&gt;Q5.14 토픽 할당&lt;br /&gt;Q5.15 토픽 모델링 평가 지표&lt;br /&gt;Q5.16 문서 클러스터링 모델 구축&lt;br /&gt;Q5.17 클러스터링 평가 지표&lt;br /&gt;Q5.18 텍스트 생성 모델 구축&lt;br /&gt;Q5.19 텍스트 생성 평가 지표&lt;br /&gt;Q5.20 모델링 워크플로&lt;br /&gt;Q5.21 오프라인 예측&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;6장 ML 인프라 설계&lt;/b&gt;&lt;br /&gt;Q6.1 모델 개발 가속화&lt;br /&gt;Q6.2 모델 학습 가속화&lt;br /&gt;Q6.3 모델 학습 분산&lt;br /&gt;Q6.4 모델 학습 파이프라인 평가&lt;br /&gt;Q6.5 분산 학습 오류&lt;br /&gt;Q6.6 모델 업데이트&lt;br /&gt;Q6.7 모델 최적화&lt;br /&gt;Q6.8 서빙 시스템 구성 요소&lt;br /&gt;Q6.9 서빙 시 문제&lt;br /&gt;Q6.10 피처 수화 개선&lt;br /&gt;Q6.11 지연 시간 개선&lt;br /&gt;Q6.12 많은 요청 처리하기&lt;br /&gt;Q6.13 서빙 시 모델 업데이트&lt;br /&gt;Q6.14 모델 배포와 롤백&lt;br /&gt;Q6.15 서버 모니터링&lt;br /&gt;Q6.16 서빙 시 성능 저하&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;7장 고급 ML 문제&lt;/b&gt;&lt;br /&gt;Q7.1 지연된 레이블&lt;br /&gt;Q7.2 레이블 없이 학습하기&lt;br /&gt;Q7.3 가격 모델&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;부록 A 생성 모델: 노이지 채널 모델에서 LLM까지&lt;/b&gt;&lt;br /&gt;A.1 기계 번역(MT)&lt;br /&gt;A.2 자동 음성 인식(ASR)&lt;br /&gt;A.3 트랜스포머로의 수렴&lt;br /&gt;A.4 현실의 과제를 위한 미세 조정&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1712649623174&quot; class=&quot;xml&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;한빛미디어 서평단 &amp;lt;나는리뷰어다&amp;gt; 활동을 위해서 책을 제공 받아 작성된 서평입니다.&lt;/code&gt;&lt;/pre&gt;</description>
      <category>BOOK</category>
      <category>ai</category>
      <category>MachineLearning</category>
      <category>ML</category>
      <category>도서</category>
      <category>리뷰</category>
      <category>머신러닝</category>
      <category>인공지능</category>
      <category>책</category>
      <category>한빛미디어</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/104</guid>
      <comments>https://sysout.tistory.com/104#entry104comment</comments>
      <pubDate>Tue, 9 Apr 2024 17:00:58 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] GPT-4를 활용한 인공지능 앱 개발</title>
      <link>https://sysout.tistory.com/103</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;458&quot; data-origin-height=&quot;588&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XJi8E/btsEDnXhfOO/ZXl53PosVTMCMPOFVJ9Ink/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XJi8E/btsEDnXhfOO/ZXl53PosVTMCMPOFVJ9Ink/img.jpg&quot; data-alt=&quot;GPT-4를 활용한 인공지능 앱 개발 / 올리비에 케일린 외 / 한빛미디어 (2023)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XJi8E/btsEDnXhfOO/ZXl53PosVTMCMPOFVJ9Ink/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXJi8E%2FbtsEDnXhfOO%2FZXl53PosVTMCMPOFVJ9Ink%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;200&quot; height=&quot;257&quot; data-origin-width=&quot;458&quot; data-origin-height=&quot;588&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;GPT-4를 활용한 인공지능 앱 개발 / 올리비에 케일린 외 / 한빛미디어 (2023)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;총평&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 책은 &lt;span style=&quot;background-color: #f6e199;&quot;&gt;LLM(Large Language Model)에 입문하고자 하는 개발자에게 아주 적합한 책이다-심지어 머신러닝, NLP 백그라운드가 없어도!-&lt;/span&gt;. OpenAI에서 제공하는 MaaS(Model as a Service) API를 활용한 간단한 프로젝트부터, 프롬프트 엔지니어링, Few-shot, Fine-Tuning, RAG 등 활용에 대한 전반적인 부분을 다루어 아이디어와 방법론들을 많이 얻어갈 수 있다. 서론에서 기존의 NLP 흐름과 transformer를 간략하면서도 핵심 내용만 전달하고 다양한 활용 사례로 시작하는 부분도 좋았다. 책의 분량 자체는 179 페이지 정도로 짧지만 빠르게 입문하기에 좋은 책이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인적인 요즘의 LLM 흐름에 대한 인사이트를 공유하자면, 최근 대규모 언어 모델로 넘어오고 나서는 이전에 존재했던 Pre-trained Model 기반으로 Fine-Tuning하는 기법은 일반 기업, 개인에게, 심지어 기존의 대기업에게도 리소스의 부담이 있다. 엔비디아 주가는 매년 천장을 뚫고 올라가고 있고, 나날이 비싸지는 GPU 비용과 촉각을 다투는 기술 개발의 속도, 최근 줄어든 IT호황의 분위기 등으로 순수한 연구로서의 AI연구는 소수에게만 열려 있는 분위기인듯 하다. 이제는 인공지능을 어떻게 활용하여 사업에 적용할 것인지, AI를 활용한 비즈니스 모델과 함께 모델을 최적화하여 기존 산업과 결합하는 분야로 정착하는 양상을 보인다. 그래서 최근에는 PEFT(Parameter-Efficient Fine-Tuning) 기법을 활용하여 LLM을 FT하거나, RAG시스템을 결합하여 hallucination을 해소하고 풍부한 답변을 얻는 등의 연구개발이 활발히 이루어 진다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 최근 LLM 프로젝트를 하면서 개인적으로 prompt engineernig에 대한 기술적인 회의감이 있었다. 멋지게(?) 모델링을 하기 보다는 전처리와 프롬프트 튜닝이라는, 꼭 머신러닝 엔지니어가 아니어도 할 수 있는 듯한 기술적인 부분이 부족한 분야라는 약간의 선입견을 갖고 있었다. 하지만 LLM의 추론 원리와 작동 방식을 기반으로 한 설명을 읽으니 이 부분도 연구 분야로써의 가치가 충분하겠다-라는 인사이트를 얻을 수 있었다. (&lt;i&gt;책갈피#2 참고&lt;/i&gt;)&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;/h2&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;#1 Prompt Engineering&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프롬프트 엔지니어링(Prompt Engineering)은 프로그래밍의 한 방식으로, LLM이 최대한 적합한 출력을 생성할 수 있도록 최적의 입력 형태와 사례를 개발하는 데 중점을 둔 새로운 분야입니다. (중략) 일반적으로 프롬프트에 role, context, job이라는 세 가지 요소를 정의합니다. 세 가지 요소가 항상 필요하지는 않으며 순서도 변경할 수 있습니다. 프롬프트를 잘 구성하고 요소를 잘 정의한다면 좋은 결과를 얻을 수 있습니다. 이 세 가지 요소를 사용하더라도 복잡한 작업에는 제로샷 러닝, 퓨샷 러닝, 파인 튜닝 등을 사용해야 할 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT-4는 연산에 적합하지 않습니다. 숫자를 텍스트 토큰처럼 간주할 뿐이며 수학적 논리가 없습니다.&lt;br /&gt;LLM의 추론 능력을 높이는 비결이 있습니다. 예를 들어 모델이 369 * 1,235를 풀라는 요청을 받으면 한 번에 답을 찾으려고 시도하는데, 사실 사람이 직접 계산할 때는 연필과 종이를 사용해 여러 단계를 거쳐 정답에 이를 때가 많습니다. 이처럼 LLM도 프롬프트를 통해 중간 추론을 하도록 유도할 수 있습니다. 연필과 종이를 사용해 계산하는 사람처럼 모델도 추론할 시간을 주면 좀 더 복잡한 문제를 해결할 수 있습니다.&lt;br /&gt;프롬프트 끝에 'Let's think step by step'을 추가하면 모델이 더 복잡한 추론 문제를 해결할 수 있다는 점이 경험적으로 입증됐습니다. &lt;a href=&quot;https://arxiv.org/pdf/2205.11916.pdf&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Large Language Models are Zero-Shot Reasoners [Takeshi Kojima et al, 2023]&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;#2 Fine-Tuning vs Few-shot Learning&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파인 튜닝은 특정 도메인에 특화된 데이터셋으로 기존 모델을 추가적으로 학습시킴으로써 성능을 개선하고 답변을 더 정확하게 만드는 프로세스입니다. 즉, 파인 튜닝으로 모델의 내부 파라미터를 업데이트합니다. 앞서 살펴봤듯이 퓨샷 러닝은 입력 프롬프트를 활용해 모델에 제한된 개수의 예시를 제공하고, 모델은 이 예시를 기반으로 원하는 결과를 생성합니다. 퓨샷 러닝에서 모델의 내부 파라미터는 수정되지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파인 튜닝과 퓨샷 러닝 모두 GPT 모델의 성능 개선에 도움이 됩니다. 파인 튜닝은 추가한 데이터가 많을 때 이상적인 성능 개선 방법으로, 출력값이 대상 도메인의 전문 용어나 패턴, 어조에 더욱 적합해집니다. 퓨샷 러닝은 모델 자체를 다시 학습시키지 않아도 되므로 더 유연하고 데이터 및 비용 효율적인 접근 방식입니다. 이 기술은 제한된 예시만 안내하면 되거나 다양한 작업에 빠르게 적응해야 할 때 유용합니다. 파인 튜닝과 퓨샷 러닝 중 하나를 선택해야 할 때 비용이 중요한 요소가 될 수 있는데, 파인 튜닝은 모델을 다시 학습시키는 작업이므로 비용이 발생합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;#3 프로젝트: &amp;lt;젤다의 전설&amp;gt; 전문가 만들기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/lee-monster/developing-apps-with-GPT-4/blob/main/Chapter3/03_QuestionAnsweringOnPDF.py&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/lee-monster/developing-apps-with-GPT-4/blob/main/Chapter3/03_QuestionAnsweringOnPDF.py&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;#4 LangChain과 Plugin으로 LLM 기능 향상하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/malywut/gpt_examples/blob/main/Chap5_01_LangChain/run.py&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/malywut/gpt_examples/blob/main/Chap5_01_LangChain/run.py&lt;/a&gt;&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;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;Chapter&amp;nbsp;1)&amp;nbsp;GPT-4와&amp;nbsp;챗GPT의&amp;nbsp;핵심&amp;nbsp;요소 &lt;br /&gt;_1.1&amp;nbsp;LLM&amp;nbsp;소개 &lt;br /&gt;__1.1.1&amp;nbsp;언어&amp;nbsp;모델과&amp;nbsp;NLP&amp;nbsp;기초 &lt;br /&gt;__1.1.2&amp;nbsp;트랜스포머&amp;nbsp;아키텍처와&amp;nbsp;LLM에서의&amp;nbsp;역할 &lt;br /&gt;__1.1.3&amp;nbsp;GPT&amp;nbsp;모델의&amp;nbsp;토큰화&amp;nbsp;및&amp;nbsp;예측&amp;nbsp;단계 &lt;br /&gt;_1.2&amp;nbsp;GPT&amp;nbsp;모델의&amp;nbsp;역사 &lt;br /&gt;__1.2.1&amp;nbsp;GPT-1 &lt;br /&gt;__1.2.2&amp;nbsp;GPT-2 &lt;br /&gt;__1.2.3&amp;nbsp;GPT-3 &lt;br /&gt;__1.2.4&amp;nbsp;GPT-3,&amp;nbsp;인스트럭트GPT &lt;br /&gt;__1.2.5&amp;nbsp;GPT-3.5,&amp;nbsp;코덱스,&amp;nbsp;챗GPT &lt;br /&gt;__1.2.6&amp;nbsp;GPT-4 &lt;br /&gt;_1.3&amp;nbsp;LLM&amp;nbsp;사용&amp;nbsp;사례 &lt;br /&gt;__1.3.1&amp;nbsp;비마이아이즈 &lt;br /&gt;__1.3.2&amp;nbsp;모건&amp;nbsp;스탠리 &lt;br /&gt;__1.3.3&amp;nbsp;칸&amp;nbsp;아카데미 &lt;br /&gt;__1.3.4&amp;nbsp;듀오링고 &lt;br /&gt;__1.3.5&amp;nbsp;야블 &lt;br /&gt;__1.3.6&amp;nbsp;웨이마크 &lt;br /&gt;__1.3.7&amp;nbsp;인월드&amp;nbsp;AI &lt;br /&gt;_1.4&amp;nbsp;AI&amp;nbsp;할루시네이션 &lt;br /&gt;_1.5&amp;nbsp;GPT&amp;nbsp;모델&amp;nbsp;최적화 &lt;br /&gt;_1.6&amp;nbsp;정리 &lt;br /&gt;&lt;br /&gt;Chapter&amp;nbsp;2)&amp;nbsp;GPT-4와&amp;nbsp;챗GPT의&amp;nbsp;API &lt;br /&gt;_2.1&amp;nbsp;필수&amp;nbsp;개념 &lt;br /&gt;_2.2&amp;nbsp;오픈AI&amp;nbsp;API에서&amp;nbsp;사용&amp;nbsp;가능한&amp;nbsp;모델 &lt;br /&gt;_2.3&amp;nbsp;오픈AI&amp;nbsp;플레이그라운드로&amp;nbsp;GPT&amp;nbsp;모델&amp;nbsp;사용하기 &lt;br /&gt;_2.4&amp;nbsp;시작하기:&amp;nbsp;오픈AI&amp;nbsp;파이썬&amp;nbsp;라이브러리 &lt;br /&gt;__2.4.1&amp;nbsp;오픈AI&amp;nbsp;접근&amp;nbsp;및&amp;nbsp;API&amp;nbsp;키 &lt;br /&gt;__2.4.2&amp;nbsp;&amp;lsquo;Hello&amp;nbsp;World&amp;rsquo;&amp;nbsp;예제 &lt;br /&gt;_2.5&amp;nbsp;GPT-&amp;nbsp;4와&amp;nbsp;챗GPT&amp;nbsp;사용하기 &lt;br /&gt;__2.5.1&amp;nbsp;채팅&amp;nbsp;완성&amp;nbsp;엔드포인트의&amp;nbsp;입력&amp;nbsp;옵션 &lt;br /&gt;__2.5.2&amp;nbsp;채팅&amp;nbsp;완성&amp;nbsp;엔드포인트의&amp;nbsp;결과&amp;nbsp;출력&amp;nbsp;형식 &lt;br /&gt;__2.5.3&amp;nbsp;텍스트&amp;nbsp;완성에서&amp;nbsp;함수까지 &lt;br /&gt;_2.6&amp;nbsp;다른&amp;nbsp;텍스트&amp;nbsp;완성&amp;nbsp;모델&amp;nbsp;사용하기 &lt;br /&gt;__2.6.1&amp;nbsp;텍스트&amp;nbsp;완성&amp;nbsp;엔드포인트의&amp;nbsp;입력&amp;nbsp;옵션 &lt;br /&gt;__2.6.2&amp;nbsp;텍스트&amp;nbsp;완성&amp;nbsp;엔드포인트의&amp;nbsp;출력&amp;nbsp;결과&amp;nbsp;형식 &lt;br /&gt;_2.7&amp;nbsp;고려&amp;nbsp;사항 &lt;br /&gt;__2.7.1&amp;nbsp;사용료와&amp;nbsp;토큰&amp;nbsp;한도 &lt;br /&gt;__2.7.2&amp;nbsp;보안과&amp;nbsp;개인&amp;nbsp;정보&amp;nbsp;보호 &lt;br /&gt;_2.8&amp;nbsp;기타&amp;nbsp;오픈AI&amp;nbsp;API&amp;nbsp;및&amp;nbsp;기능 &lt;br /&gt;__2.8.1&amp;nbsp;임베딩 &lt;br /&gt;__2.8.2&amp;nbsp;모더레이션&amp;nbsp;모델 &lt;br /&gt;__2.8.3&amp;nbsp;위스퍼와&amp;nbsp;DALL-E &lt;br /&gt;_2.9&amp;nbsp;정리&amp;nbsp;및&amp;nbsp;치트&amp;nbsp;시트 &lt;br /&gt;&lt;br /&gt;Chapter&amp;nbsp;3)&amp;nbsp;GPT-4와&amp;nbsp;챗GPT로&amp;nbsp;애플리케이션&amp;nbsp;구축하기 &lt;br /&gt;_3.1&amp;nbsp;애플리케이션&amp;nbsp;개발&amp;nbsp;개요 &lt;br /&gt;__3.1.1&amp;nbsp;API&amp;nbsp;키&amp;nbsp;관리 &lt;br /&gt;__3.1.2&amp;nbsp;보안&amp;nbsp;및&amp;nbsp;데이터&amp;nbsp;개인&amp;nbsp;정보&amp;nbsp;보호 &lt;br /&gt;_3.2&amp;nbsp;소프트웨어&amp;nbsp;아키텍처&amp;nbsp;설계&amp;nbsp;원칙 &lt;br /&gt;_3.3&amp;nbsp;LLM&amp;nbsp;기반&amp;nbsp;애플리케이션&amp;nbsp;취약점 &lt;br /&gt;__3.3.1&amp;nbsp;입출력&amp;nbsp;분석하기 &lt;br /&gt;__3.3.2&amp;nbsp;프롬프트&amp;nbsp;인젝션의&amp;nbsp;불가피성 &lt;br /&gt;_3.4&amp;nbsp;프로젝트&amp;nbsp;예제 &lt;br /&gt;__3.4.1&amp;nbsp;프로젝트&amp;nbsp;1:&amp;nbsp;뉴스&amp;nbsp;생성&amp;nbsp;솔루션&amp;nbsp;구축 &lt;br /&gt;__3.4.2&amp;nbsp;프로젝트&amp;nbsp;2:&amp;nbsp;유튜브&amp;nbsp;동영상&amp;nbsp;요약 &lt;br /&gt;__3.4.3&amp;nbsp;프로젝트&amp;nbsp;3:&amp;nbsp;〈젤다의&amp;nbsp;전설〉&amp;nbsp;전문가&amp;nbsp;만들기 &lt;br /&gt;__3.4.4&amp;nbsp;프로젝트&amp;nbsp;4:&amp;nbsp;음성&amp;nbsp;제어 &lt;br /&gt;_3.5&amp;nbsp;정리 &lt;br /&gt;&lt;br /&gt;Chapter&amp;nbsp;4)&amp;nbsp;GPT-4와&amp;nbsp;챗GPT의&amp;nbsp;고급&amp;nbsp;기법 &lt;br /&gt;_4.1&amp;nbsp;프롬프트&amp;nbsp;엔지니어링 &lt;br /&gt;__4.1.1&amp;nbsp;효과적인&amp;nbsp;프롬프트&amp;nbsp;설계 &lt;br /&gt;__4.1.2&amp;nbsp;단계별&amp;nbsp;사고 &lt;br /&gt;__4.1.3&amp;nbsp;퓨샷&amp;nbsp;러닝&amp;nbsp;구현 &lt;br /&gt;__4.1.4&amp;nbsp;프롬프트&amp;nbsp;효과&amp;nbsp;향상 &lt;br /&gt;_4.2&amp;nbsp;파인&amp;nbsp;튜닝 &lt;br /&gt;__4.2.1&amp;nbsp;시작하기 &lt;br /&gt;__4.2.2&amp;nbsp;오픈AI&amp;nbsp;API로&amp;nbsp;파인&amp;nbsp;튜닝하기 &lt;br /&gt;__4.2.3&amp;nbsp;파인&amp;nbsp;튜닝을&amp;nbsp;활용한&amp;nbsp;애플리케이션 &lt;br /&gt;__4.2.4&amp;nbsp;파인&amp;nbsp;튜닝&amp;nbsp;예제 &lt;br /&gt;__4.2.5&amp;nbsp;파인&amp;nbsp;튜닝&amp;nbsp;비용 &lt;br /&gt;_4.3&amp;nbsp;정리 &lt;br /&gt;&lt;br /&gt;Chapter&amp;nbsp;5)&amp;nbsp;랭체인과&amp;nbsp;플러그인으로&amp;nbsp;LLM&amp;nbsp;기능&amp;nbsp;향상하기 &lt;br /&gt;_5.1&amp;nbsp;랭체인&amp;nbsp;프레임워크 &lt;br /&gt;__5.1.1&amp;nbsp;다이내믹&amp;nbsp;프롬프트 &lt;br /&gt;__5.1.2&amp;nbsp;에이전트와&amp;nbsp;도구 &lt;br /&gt;__5.1.3&amp;nbsp;메모리 &lt;br /&gt;__5.1.4&amp;nbsp;임베딩 &lt;br /&gt;_5.2&amp;nbsp;GPT-4&amp;nbsp;플러그인 &lt;br /&gt;__5.2.1&amp;nbsp;개요 &lt;br /&gt;__5.2.2&amp;nbsp;API &lt;br /&gt;__5.2.3&amp;nbsp;플러그인&amp;nbsp;매니페스트 &lt;br /&gt;__5.2.4&amp;nbsp;OpenAPI&amp;nbsp;사양 &lt;br /&gt;__5.2.5&amp;nbsp;설명 &lt;br /&gt;_5.3&amp;nbsp;정리 &lt;br /&gt;_5.4&amp;nbsp;결론 &lt;br /&gt;&lt;br /&gt;부록&amp;nbsp;A)&amp;nbsp;GPT의&amp;nbsp;새로운&amp;nbsp;기능과&amp;nbsp;개선&amp;nbsp;사항(OpenAI&amp;nbsp;DevDay) &lt;br /&gt;A.1&amp;nbsp;신규&amp;nbsp;모델&amp;nbsp;공개 &lt;br /&gt;A.2&amp;nbsp;어시스턴트API&amp;nbsp;공개 &lt;br /&gt;A.3&amp;nbsp;신규&amp;nbsp;모달리티가&amp;nbsp;가능한&amp;nbsp;API &lt;br /&gt;A.4&amp;nbsp;모델&amp;nbsp;커스터마이징&amp;nbsp;지원 &lt;br /&gt;A.5&amp;nbsp;사용료&amp;nbsp;및&amp;nbsp;지원&amp;nbsp;정책&amp;nbsp;변경 &lt;br /&gt;A.6&amp;nbsp;GPTs&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;한빛미디어 서평단 &amp;lt;나는리뷰어다&amp;gt; 활동을 위해서 책을 제공 받아 작성된 서평입니다.&lt;/blockquote&gt;</description>
      <category>BOOK</category>
      <category>ai</category>
      <category>LLM</category>
      <category>nlp</category>
      <category>도서리뷰</category>
      <category>생성형ai</category>
      <category>인공지능</category>
      <category>한빛미디어</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/103</guid>
      <comments>https://sysout.tistory.com/103#entry103comment</comments>
      <pubDate>Tue, 20 Feb 2024 16:22:24 +0900</pubDate>
    </item>
    <item>
      <title>[책 리뷰] 파이썬과 엑셀로 시작하는 딥러닝</title>
      <link>https://sysout.tistory.com/102</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGjQx6/btso10XeHiy/xolGWYWzxdDVIKVFTqQJg0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGjQx6/btso10XeHiy/xolGWYWzxdDVIKVFTqQJg0/img.jpg&quot; data-alt=&quot;파이썬과 엑셀로 시작하는 딥러닝 / 홍재권 외 / 정보문화사 / 2023&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGjQx6/btso10XeHiy/xolGWYWzxdDVIKVFTqQJg0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGjQx6%2Fbtso10XeHiy%2FxolGWYWzxdDVIKVFTqQJg0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.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;205&quot; height=&quot;258&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파이썬과 엑셀로 시작하는 딥러닝 / 홍재권 외 / 정보문화사 / 2023&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;총평&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;이 책은 머신러닝 초보자에게는 차근차근 따라갈 수 있는 지침서이며, 추상화에 익숙해져버린 머신러닝 개발자들에게는 충격을 안겨 준다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥러닝을 자주 접하는 사람이 이 책을 본다면, &lt;i&gt;&quot;너무 쉬운 주제만 다루는 거 아니야?&quot;&lt;/i&gt; 라고 생각할 수 있을 것이다. 딥러닝의 가장 기초인 gradient descent부터 CNN, RNN까지 다루고 있다. 결론부터 말하자면 &lt;b&gt;이 책은 결코 쉽지 않다&lt;/b&gt;. 요즈음의 딥러닝은 scikit-learn, tensorflow 그리고 pytorch라는 빛과 소금같은, 어떻게 보면 극히 추상화된 라이브러리로 단 N줄만에 모델을 구성하고, 테스트하는 환경에 익숙해져 있기 때문이다. 하지만 이 추상화 덕분에 머신러닝 개발자들은 오히려 high level로만 모델을 알고 있고, 저 밑에 어떤 부분에서 어떤 일이 일어나는지 모르며, 어떤 포인트 때문에 학습과 테스트가 오래 걸리는지 모른다. 결국엔 다시 기초가 부족해지는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 책은 머신러닝 초보자에게는 차근차근 따라갈 수 있는 지침서이며, 앞서 언급했던 (본인이 모든 것을 만들었다고 생각하는) 머신러닝 개발자들에게는 충격을 안겨 준다. 그 충격이라 함은, 추상화된 이미 알려진 방법론-모델에 대하여 무려 numpy, pandas를 통해 scratch부터 구현하기 때문이다. 모듈이 있으면 갖다 쓰면 되지 않냐, 왜 집(모델)을 처음부터 짓냐? 하면 하나하나 벽돌을 쌓는 과정을 통해 집이 어떻게 지어지는 지, 어떤 기둥이 가장 중요한지 알게 되는 '경험'이라고 답할 수 있을 것이다. 개인적으로 개발 서적을 많이 봤어서 그런지 엑셀과 코드를 비교하는 컨셉은 많이 못 본 것 같은데... 이런 면에서 저자의 노고가 엿보이는 순간이었다.&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;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;책갈피&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;b&gt;경사 하강법(Gradient Descent):&lt;/b&gt;&lt;/i&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;아주 어두운 산길에 혼자 서있다고 생각합니다. 너무 어두워서 앞이 보이지 않으면, 어떻게 산 아래로 내려갈 수 있을까요? 지면의 기울기의 방향을 보고 내려가는 곳을 알 수 있을 것입니다. 따라서 내려가는 방향의 지면 쪽으로 움직이면 언젠가 제일 아래쪽으로 도착할 것입니다. 그런데 한 가지 조건을 더 추가해 주어야 합니다. 아래로 내려올수록 내려오는 속도를 조금씩 줄여야 합니다. 그렇지 않고 빠르게 내려온다면 저점을 지나서 오히려 반대 방향으로 오를 수도 있습니다. 지면으로 내려가는 방향은 수학적으로 순간 기울기 즉 미분값으로 정의할 수 있습니다. (p57)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;b&gt;활성화 함수(Activation Function):&lt;/b&gt;&lt;/i&gt; 학습 과정에서 무엇을 놓쳤을까요? 예측하려는 함수는 선형 함수가 아닙니다. ...(이하 생략)... 뉴런(신경세포)에 대해 조금 더 공부해 보겠습니다. 생물 시간에 공부한 내용이 기억나겠지만, 이 신경세포는 앞단에서 들어온 자극을 그대로 뒤 신경세포에 전달하지 않습니다. 어느 일정 값 (임계값) 이 넘어서는 자극만 전달합니다. 그럼으로써 비선형을 만들 수 있습니다. (p92)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;&lt;b&gt;CNN - 패딩(Padding):&lt;/b&gt; &lt;/i&gt;보통의 CNN에서 패딩 기법을 활용하는 이유는 다음과 같습니다.&lt;br /&gt;* 컨볼루션 연산을 수행할 때, 입력 이미지의 크기가 출력 이미지의 크기보다 작아지는 경우가 발생합니다. 이 때, 패딩을 추가하여 입력 이미지의 크기를 보존하면 출력 이미지의 크기도 입력 이미지와 동일하게 유지됩니다.&lt;br /&gt;* 합성곱 연산을 수행할 때, 입력 이미지 경계 부분의 픽셀은 주변의 픽셀보다 적게 사용됩니다. 이 때, 패딩을 추가하여 입력 이미지의 경계를 채우면 경계 부분의 픽셀도 충분히 사용될 수 있습니다.&lt;br /&gt;* 패딩을 적용하지 않으면 앞의 그림에서 볼 수 있듯이 합성곱 연산을 수행할 때 출력 이미지가 입력 이미지보다 작아지게 되고 네트워크에서 다음 레이어로 전달되는 정보의 양이 줄어듭니다. 패딩을 사용하면 입력 이미지와 출력 이미지의 크기를 일치시킬 수 있습니다. 이는 입력 이미지와 출력 이미지를 서로 연결하여 더 깊은 구조의 CNN 모델을 설계할 수 있습니다. (p257)&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;Related Links&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;링크 &amp;gt; 샘플 자료 다운로드&lt;br /&gt;&lt;a href=&quot;http://infopub.co.kr/new/include/detail.asp?sku=06000248&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;http://infopub.co.kr/new/include/detail.asp?sku=06000248&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure id=&quot;og_1690427248948&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;[정보문화사] IT 도서의 새로운 패러다임&quot; data-og-description=&quot;&quot; data-og-host=&quot;infopub.co.kr&quot; data-og-source-url=&quot;http://infopub.co.kr/new/include/detail.asp?sku=06000248&quot; data-og-url=&quot;http://infopub.co.kr/new/include/detail.asp?sku=06000248&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dacNjv/hyTrOdgQ5L/yKcp4Kn8prPjGpeMENw4TK/img.jpg?width=208&amp;amp;height=251&amp;amp;face=0_0_208_251&quot;&gt;&lt;a href=&quot;http://infopub.co.kr/new/include/detail.asp?sku=06000248&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;http://infopub.co.kr/new/include/detail.asp?sku=06000248&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dacNjv/hyTrOdgQ5L/yKcp4Kn8prPjGpeMENw4TK/img.jpg?width=208&amp;amp;height=251&amp;amp;face=0_0_208_251');&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;[정보문화사] IT 도서의 새로운 패러다임&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;infopub.co.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Q&amp;amp;A 게시판 (재권님 프로젝트 명에 오타가 있네요....ㅎㅎ)&lt;br /&gt;&lt;a href=&quot;https://github.com/HongJaeKwon/exel_deep_learning/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/HongJaeKwon/exel_deep_learning/issues&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure id=&quot;og_1690427332229&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 - HongJaeKwon/exel_deep_learning: learn deep-learing with exel&quot; data-og-description=&quot;learn deep-learing with exel. Contribute to HongJaeKwon/exel_deep_learning development by creating an account on GitHub.&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/HongJaeKwon/exel_deep_learning/issues&quot; data-og-url=&quot;https://github.com/HongJaeKwon/exel_deep_learning&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bXk1cO/hyTrOxyztf/9n4eJk3Rcsa8pGKO1k2iak/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/HongJaeKwon/exel_deep_learning/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/HongJaeKwon/exel_deep_learning/issues&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bXk1cO/hyTrOxyztf/9n4eJk3Rcsa8pGKO1k2iak/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_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;GitHub - HongJaeKwon/exel_deep_learning: learn deep-learing with exel&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;learn deep-learing with exel. Contribute to HongJaeKwon/exel_deep_learning development by creating an account on GitHub.&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;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;PART 0 개발 환경 구축&lt;br /&gt;1. 파이썬 설치&lt;br /&gt;01. Windows OS 버전&lt;br /&gt;02. Mac OS 버전&lt;br /&gt;2. 필요 패키지 설치&lt;br /&gt;01. 주피터(Jupyter)&lt;br /&gt;02. xlwings&lt;br /&gt;03. 사이킷런(Scikit-Learn)&lt;br /&gt;04. OpenCV 및 Numpy&lt;br /&gt;05. Matplotlib&lt;br /&gt;3. 파이썬-엑셀 연동 실습&lt;br /&gt;01. 셀 내 중복값 제거 실습&lt;br /&gt;02. 웹캠 이미지 엑셀 출력&lt;br /&gt;&lt;br /&gt;PART 1 넘파이(Numpy)&lt;br /&gt;1. 배열(ndarray)&lt;br /&gt;01. arange 함수&lt;br /&gt;02. reshape 함수&lt;br /&gt;03. array indexing&lt;br /&gt;2. 연산&lt;br /&gt;01. 행렬의 사칙연산과 행렬곱&lt;br /&gt;02. eye 함수&lt;br /&gt;03. 전치 행렬(Transpose)&lt;br /&gt;04. flip 함수&lt;br /&gt;05. pad 함수&lt;br /&gt;3. 미분&lt;br /&gt;01. 함수의 기울기&lt;br /&gt;02. 미분 프로그래밍&lt;br /&gt;&lt;br /&gt;PART 2 딥러닝 개요&lt;br /&gt;1. 딥러닝 학습&lt;br /&gt;2. y = wx 학습&lt;br /&gt;01. 엑셀 데이터 준비&lt;br /&gt;02. 손실 함수(Loss)의 정의&lt;br /&gt;03. 경사 하강법(Gradient Descent)&lt;br /&gt;04. 모델 구현&lt;br /&gt;3. y = wx + b 학습&lt;br /&gt;01. 편미분&lt;br /&gt;02. 확률적 경사 하강법(Stochastic Gradient Descent)&lt;br /&gt;03. 모델 구현&lt;br /&gt;4. y = w1 &amp;times; 1 + w2 &amp;times; 2 + b 학습&lt;br /&gt;01. 행렬 표현&lt;br /&gt;02. 행렬 연산의 이해&lt;br /&gt;03. 모델 구현&lt;br /&gt;5. 임의의 함수 학습&lt;br /&gt;01. 딥러닝(Deep Learning)&lt;br /&gt;02. 체인룰(CHAIN RULE), 순전파(Forward Propagation), 역전파(Back Propagation)&lt;br /&gt;03. 활성화 함수(Activation Function)&lt;br /&gt;04. 모델 구현&lt;br /&gt;&lt;br /&gt;PART 3 회귀 예제&lt;br /&gt;1. 당뇨병 예측 데이터&lt;br /&gt;01. 데이터 확인 및 모델 만들기&lt;br /&gt;02. 데이터 정규화&lt;br /&gt;03. 하이퍼 파라미터(Hyper Parameter) 설정&lt;br /&gt;04. 과소/과대 적합 방지&lt;br /&gt;2. 체력 검사 데이터&lt;br /&gt;01. 데이터 확인&lt;br /&gt;02. 다중 출력 모델 설계&lt;br /&gt;03. 다중 출력 모델의 역전파&lt;br /&gt;&lt;br /&gt;PART 4 분류 개요&lt;br /&gt;1. 이진 분류&lt;br /&gt;01. 시그모이드(Sigmoid)&lt;br /&gt;02. 분류의 역전파&lt;br /&gt;03. 모델 구현&lt;br /&gt;04. 시그모이드를 중간층의 활성화 함수로 사용하지 않는 이유 1&lt;br /&gt;2. 다중 분류&lt;br /&gt;01. 소프트맥스(Softmax)&lt;br /&gt;02. 카테고리컬 크로스 엔트로피(Categorical Cross Entropy)&lt;br /&gt;03. 모델구현&lt;br /&gt;&lt;br /&gt;PART 5 분류 예제&lt;br /&gt;1. 붓꽃 분류&lt;br /&gt;01. 데이터 확인&lt;br /&gt;02. 원핫인코딩(One-hot Encoding)&lt;br /&gt;03. 모델 구현&lt;br /&gt;2. 손글씨 분류&lt;br /&gt;01. 데이터 확인&lt;br /&gt;02. 데이터 전처리&lt;br /&gt;03. 모델 구현&lt;br /&gt;04. 모델 검증 및 한계&lt;br /&gt;&lt;br /&gt;PART 6 CNN&lt;br /&gt;1. 이미지 데이터 특성&lt;br /&gt;2. 필터와 합성곱(Convolution) 연산&lt;br /&gt;3. 합성곱의 역전파&lt;br /&gt;4. 모델 구현&lt;br /&gt;5. CNN 추가 정보&lt;br /&gt;01. 행렬로 표현&lt;br /&gt;02. Stride&lt;br /&gt;03. 패딩(Padding)&lt;br /&gt;04. 풀링(Pooling)&lt;br /&gt;05. 채널&lt;br /&gt;&lt;br /&gt;PART 7 RNN&lt;br /&gt;1. RNN 구조&lt;br /&gt;2. 순전파와 역전파 연산&lt;br /&gt;&lt;br /&gt;부록 1 Google Spreadsheet 사용&lt;br /&gt;부록 2 Tensorflow 사용&lt;/blockquote&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: #009a87;&quot;&gt;본 서평은 출판사로부터 책을 제공받아 작성된 서평입니다.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>BOOK</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/102</guid>
      <comments>https://sysout.tistory.com/102#entry102comment</comments>
      <pubDate>Thu, 27 Jul 2023 14:10:24 +0900</pubDate>
    </item>
    <item>
      <title>GPT가 로봇으로, 그림 그려주는 AI '스케처 X' | CES 2023 | 판교 현대백화점</title>
      <link>https://sysout.tistory.com/100</link>
      <description>&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/l5HYn/btsh2setCRP/6mvdIOgyorKxhUp49Lhas1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l5HYn/btsh2setCRP/6mvdIOgyorKxhUp49Lhas1/img.png&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;1333&quot; style=&quot;width: 49.4186%;&quot; data-is-animation=&quot;false&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l5HYn/btsh2setCRP/6mvdIOgyorKxhUp49Lhas1/img.png&quot; alt=&quot;&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl5HYn%2Fbtsh2setCRP%2F6mvdIOgyorKxhUp49Lhas1%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;1000&quot; height=&quot;1333&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nOCwT/btsh030ATdG/ZKnflDYk0HVKXvKsMkMKw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nOCwT/btsh030ATdG/ZKnflDYk0HVKXvKsMkMKw0/img.png&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;1333&quot; style=&quot;width: 49.4186%;&quot; data-is-animation=&quot;false&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nOCwT/btsh030ATdG/ZKnflDYk0HVKXvKsMkMKw0/img.png&quot; alt=&quot;&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnOCwT%2Fbtsh030ATdG%2FZKnflDYk0HVKXvKsMkMKw0%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;1000&quot; height=&quot;1333&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주말에 비가 와서 자연스럽게 백화점으로 향하게 되었다. 그러다가 'GPT가 탑재된 그림 그려주는 AI'가 있다는 소문(?)을 듣고, AI를 공부하는 사람으로서 그냥 지나칠 수 없어 밥먹고 바-로 10층으로 향했다.&lt;br /&gt;생각보다 로봇을 구경하는 사람들이 많았고, (그냥 백화점에 사람이 많았던 것일수도 있다) 특히 그림 그리는 AI는 웨이팅을 해야 할 정도로 인기 폭발이었다.&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/bEoutF/btshZuYsmce/sfNR389boW1KL5BeYIdilk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEoutF/btshZuYsmce/sfNR389boW1KL5BeYIdilk/img.png&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;1333&quot; style=&quot;width: 49.4186%;&quot; data-is-animation=&quot;false&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEoutF/btshZuYsmce/sfNR389boW1KL5BeYIdilk/img.png&quot; alt=&quot;&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEoutF%2FbtshZuYsmce%2FsfNR389boW1KL5BeYIdilk%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;1000&quot; height=&quot;1333&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJ3ZKZ/btsh17ocDkD/qo6S4IRpwOMeWLNQpCYHj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJ3ZKZ/btsh17ocDkD/qo6S4IRpwOMeWLNQpCYHj1/img.png&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;1333&quot; style=&quot;width: 49.4186%;&quot; data-is-animation=&quot;false&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJ3ZKZ/btsh17ocDkD/qo6S4IRpwOMeWLNQpCYHj1/img.png&quot; alt=&quot;&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJ3ZKZ%2Fbtsh17ocDkD%2Fqo6S4IRpwOMeWLNQpCYHj1%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;1000&quot; height=&quot;1333&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;AI 그리고 사람들이 그린 초상화들&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웨이팅 주변에는 AI가 그린 초상화가 붙어 있었고, 또 그냥 기본 얼굴형에 자유롭게 그림을 그릴 수 있는 공간이 마련되어 있었다. 왼쪽 사진에서 가운데 붙여진 그림 2점은 분명히 미대생이 그렸으리라.  &lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/438432239&quot; data-video-thumbnail=&quot;https://thumb.kakaocdn.net/dna/kamp/source/rvto527wzmkulf4tqr0dxv2lm/thumbs/4.jpg?credential=TuMuFGKUIcirOSjFzOpncbomGFEIdZWK&amp;amp;expires=33242357525&amp;amp;signature=STD0ySAMKv%2BkS3LIdBkCQtV8tr0%3D&quot; data-video-width=&quot;450&quot; data-video-height=&quot;600&quot; data-video-origin-width=&quot;1440&quot; data-video-origin-height=&quot;1920&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/438432239?service=daum_tistory&quot; width=&quot;450&quot; height=&quot;600&quot; frameborder=&quot;0&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;로봇의 생김새는 생각보다 기이했는데, 가운데에 카메라가 놓여져 있고 왼쪽에는 로봇 팔, 오른쪽에는 목에 얼굴만 붙어 있어서 LED로 표정과 입모양을 연기하는 형상이었다. 가디언즈 오브 갤럭시를 본 지가 얼마 되지 않아서 그런지, 고통 받는 네뷸라가 생각났달까..? 나는 얼굴에 팔만 달린, 심미적인 요소는 배제하고 가격을 최소화 했다- 또는 디자이너 없이 공대생들끼리 로봇을 만들었을 것이다- 라는 생각이 들었었는데, 생각보다 사람들은 로봇의 생김새에는 거부감이 없어 보였다.&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;style1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AI가 그려준 초상화라니, 신기하고 재미있는 경험이었다. 특히 해당 로봇은 마커펜을 사용해서 초상화를 그렸는데, 마커펜의 특징이 세로줄과 가로줄을 그릴 때 굵기가 다르다는 것인데 이를 이해하고 그린 듯한 모습이 인상적이었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;562&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4UYTM/btsh02U0UqH/a7lkuCXLhskbGI5uL1pP60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4UYTM/btsh02U0UqH/a7lkuCXLhskbGI5uL1pP60/img.png&quot; data-alt=&quot;그 외 부스는 교육용 로봇들이 많았다&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4UYTM/btsh02U0UqH/a7lkuCXLhskbGI5uL1pP60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4UYTM%2Fbtsh02U0UqH%2Fa7lkuCXLhskbGI5uL1pP60%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;1000&quot; height=&quot;562&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;562&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;그 외 부스는 교육용 로봇들이 많았다&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 전시에서 얻은 또 다른 인사이트는,&amp;nbsp; '요즘 아이들은 AI와 함께 자라겠구나' 이다. 마치 우리 세대가 컴퓨터와 함께 자란 것 처럼 말이다. 'AI교육'이라는 개념을, 소문으로만 들었지 실제로 보는 건 처음이라, 새삼스럽게도 새로웠다. 그 동안은 그저 사업 투자에 눈이 먼 이름만 갖다 붙인 허물뿐인 AI 느낌이었는데 이제는 아이들이 전자칠판에 색칠을 하면 그대로 스티커가 프린트 되어서 나오더라. (사실 이 중에 뭐가 AI 인지는 모르겠지만 ㅋㅋ 과거와 달리 상용기술이 발전한 건 확실하다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아무튼 비가 와서 심심할 뻔한 주말에 색다른 경험도 하고 좋았다. CES 쇼에 전시된 제품을 백화점에서 보게 되다니! 열일하는 현대백화점   나도 이제 열공하러 가야지... 이만 줄입니다.&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;style1&quot; /&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;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.trendhunter.com/trends/sketcher-x&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;https://www.trendhunter.com/trends/sketcher-x&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;Artistic AI Robots&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;sketcher x - XORBIS, a South Korean design and innovation lab, showcased the &amp;lsquo;Sketcher X,&amp;rsquo; a humanoid robotic arm with artistic capabilities, at CES...&quot; data-og-host=&quot;www.trendhunter.com&quot; data-og-source-url=&quot;https://www.trendhunter.com/trends/sketcher-x&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/deACUM/hySNbO7QjR/LdgB9hBkcqKaTua1aUttnK/img.jpg?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/VZpEc/hySM6tuyrn/1Kj8OUOFlyynFNuZGouUHK/img.jpg?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449&quot; data-og-url=&quot;https://www.trendhunter.com/trends/sketcher-x&quot;&gt;&lt;a href=&quot;https://www.trendhunter.com/trends/sketcher-x&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.trendhunter.com/trends/sketcher-x&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/deACUM/hySNbO7QjR/LdgB9hBkcqKaTua1aUttnK/img.jpg?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449,https://scrap.kakaocdn.net/dn/VZpEc/hySM6tuyrn/1Kj8OUOFlyynFNuZGouUHK/img.jpg?width=800&amp;amp;height=449&amp;amp;face=0_0_800_449');&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;Artistic AI Robots&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;sketcher x - XORBIS, a South Korean design and innovation lab, showcased the &amp;lsquo;Sketcher X,&amp;rsquo; a humanoid robotic arm with artistic capabilities, at CES...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.trendhunter.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://www.yna.co.kr/view/AKR20230108009700091&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;https://www.yna.co.kr/view/AKR20230108009700091&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;[CES 2023] 그림 그려주고 커피 내리고&amp;hellip;로봇의 진화 | 연합뉴스&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;(라스베이거스=연합뉴스) 김태종 특파원 = 미국 라스베이거스 컨벤션센터(LVCC)에서 열리고 있는 세계 최대 가전&amp;middot;IT(정보기술) 박람회 CES...&quot; data-og-host=&quot;www.yna.co.kr&quot; data-og-source-url=&quot;https://www.yna.co.kr/view/AKR20230108009700091&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/CseFb/hySPprrpnt/nu8OoCzx4wZuI4LmNlTAM1/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=622_187_809_390,https://scrap.kakaocdn.net/dn/bqNwM4/hySPjY3JYo/81ut9wSdkkDA9BBoZQuoQ1/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=622_187_809_390,https://scrap.kakaocdn.net/dn/iFagB/hySNf42kPx/nxGIaN8OS1K0BtxjpU3blK/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=0_0_1024_768&quot; data-og-url=&quot;https://www.yna.co.kr/view/AKR20230108009700091&quot;&gt;&lt;a href=&quot;https://www.yna.co.kr/view/AKR20230108009700091&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.yna.co.kr/view/AKR20230108009700091&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/CseFb/hySPprrpnt/nu8OoCzx4wZuI4LmNlTAM1/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=622_187_809_390,https://scrap.kakaocdn.net/dn/bqNwM4/hySPjY3JYo/81ut9wSdkkDA9BBoZQuoQ1/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=622_187_809_390,https://scrap.kakaocdn.net/dn/iFagB/hySNf42kPx/nxGIaN8OS1K0BtxjpU3blK/img.jpg?width=1024&amp;amp;height=768&amp;amp;face=0_0_1024_768');&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;[CES 2023] 그림 그려주고 커피 내리고&amp;hellip;로봇의 진화 | 연합뉴스&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;(라스베이거스=연합뉴스) 김태종 특파원 = 미국 라스베이거스 컨벤션센터(LVCC)에서 열리고 있는 세계 최대 가전&amp;middot;IT(정보기술) 박람회 CES...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.yna.co.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>BIG DATA &amp;amp; AI</category>
      <author>emily_ju</author>
      <guid isPermaLink="true">https://sysout.tistory.com/100</guid>
      <comments>https://sysout.tistory.com/100#entry100comment</comments>
      <pubDate>Tue, 30 May 2023 21:22:57 +0900</pubDate>
    </item>
  </channel>
</rss>