당신의 생각을 정리해드립니다 - 인생을 바꾸는 생각정리스킬
복주환 지음 / 비즈니스북스 / 2021년 3월
평점 :
장바구니담기


“꼭 읽어야 할 책”

다소 노골적이지만 단도 직입적인 소개로 시작해 보았다. 책 속에 인생을 성공으로 이끌기 위한 기회가 너무 많이 숨어 있기 때문이다. 이 책은 사실 리뷰도 필요없다. 첫번째 이유는 무조건 읽어야 할 책이기 때문이고, 두번째 이유는 아래 그림이 리뷰 역할을 대신 해주기 때문이다.개요

이 만다라트 도식은 책에서 알려주는 스킬을 활용해 저자가 직접 이 책을 구상할 때 적용해 본 그림으로 재귀적 발상이 돋보인다. 네모칸을 중심부터 하나하나씩 따라 읽어가면 책에서 말하고자 하는 내용은 물론 그 효과가 어떤지 하나의 그림으로 절반은 이해할 수 있을 것이다. 믿고 볼 수 있는 책이라는 증거이기도 하다.

“생각정리”라는 주제를 다루는 책의 격에 어울리게 읽기가 너무 편했다. 만다라트 도식으로 이미 생각을 정리하고 책으로 표현했으니 논리적인 전개나 매끄러움, 통일성이 일품이다. 약 300페이지의 전체 분량을 읽는 데 채 2시간이 걸리지 않았다. 반면 비교적 짧은 시간에 어느 책보다도 완성도 높은 이해가 가능했다. 저자가 제시하는 전략을 현실로 입증한 셈이니 신뢰가 가지 않을 수 없다.

책을 이해하는 데 장황한 설명보다는 저자가 알려주는 생각의 도구들을 먼저 정리하는 것이 나을 듯 하다. 이어서 저자가 제시하는 인생에 도움되는 몇가지 인상깊은 인사이트들을 요약해 본다.


  • 원페이지
    생각정리가 어려운 이유는 눈에 보이지 않기 때문이다. 마치 집 정리를 할 때 처럼, 어떤 물건들이 있는지 꺼내 나열하고, 비슷한 것들끼리 분류하고, 우선순위를 생각해 배열하듯이 손으로 쓰면서 시각화 하여 눈에 보이게 하는 과정이 필요하다. 더불어 쓰는 것만으로도 불안감이 해소되고 마음이 편안해지는 효과가 있다.

    가장 먼저 소개하고 싶은 저자의 도구는 원페이지이다. 개인적으로 읽으며 가장 마음에 들었던 정리 도구로 생각정리에 대한 저자의 노하우가 집대성된 느낌이다. 작성하는 방법을 간략히 정리해 보았다.원페이지

    • A4용지를 반으로 총 5번 접는다. (2^(5-1)=32, 위 그림처럼 총 32칸이 나온다.)
    • 왼쪽 16칸에 업무와 관련된 생각을 나열하고, 오른쪽에는 일상과 관련된 생각들을 나열해 본다.
    • 나열된 생각들을 분류해보자. 일반적으로 4가지로 분류된다.
      • 해야 하는 일 / 하고 싶은 일 / 고민 / 아이디어
      • 위 4가지 중 어떤 유형에 해당하는지 각각 ○, □, △, ☆ 으로 덧대어 그려본다.
    • 하지 말아야 할 일이나 불필요한 생각들은 X표시를 하며 지워버린다.
    • 우선순위를 배열한다. 위 그림처럼 중요한 것 부터 1,2,3,… 숫자를 매긴다.
    • 하나의 네모칸을 상, 중, 하로 나눠 “하고 싶은 이유, 책임자, 기간”을 아래 그림처럼 적는다.상중하
    • 종이를 뒤집는다. 우선순위에 입각하여 4개를 선정한 뒤 각각에 대해 시간순으로 7가지 실행 스텝을 세운다. 실전에서 어디서 병목현상이 생기는지 알 수 있으며, 강약점을 구분할 수 있다. 마찬가지로 책임자와 소요시간을 적되 시간은 1.5배 정도로 여유를 둔다. 최종 결과는 아래 그림과 같을 것이다.뒷면

  • 마인드맵
    데이터를 우리 뇌와 유사한 모양으로 만들면 우리 뇌가 처리하기 쉬워진다. 뉴런과 시냅스의 동작 및 구성은 마인드맵과 유사하여 우리 뇌가 이해하기 안성맞춤인 시각화 도구이다. 요즘 AI 분야에서 가장 핫한 딥러닝도 데이터를 뇌 구조와 비슷하게 재구성한다. 이 역시 효과는 기존 머신러닝 성능을 압도한다.

    특히, 마인드맵 그리기에 실패하는 이유를 밝혀주고 있어 크게 도움이 되었다. 요소들을 연결하는 선의 역할이 다양하기 때문인데 나는 그동안 이 책에서 말하는 분류가지에만 초점을 맞추고 있었음을 알 수 있었다. 책에서 말하는 선의 종류는 크게 3가지로 나뉜다.

    • 연상가지
      • 느슨한 연상 : 창의적 연상. 예) 원숭이 -> (빨가면 사과, 사과는 맛있어,…) -> 기차
      • 강한 연상 : 논리적 연상. 예) 여름 -> 휴가
      • 유사 연상 : 비슷한 것을 떠올림. 예) 유리구슬 -> 물방울
      • 반대 연상 : 반대 개념. 예) 흑 -> 백
    • 분류가지
      상하관계 혹은 목적 등의 기준으로 분류
    • 질문가지 질문의 꼬리를 이어나가며 생각을 구체화 하는 기법

    그 외 마인드맵을 활용하는 다양한 예제가 2 ~ 3장에 걸쳐 등장하고 있어 주어진 정보로 스스로 마인드맵을 그려보고 책이 알려주는 정답 그림과 비교한다면 보다 빠른 습득이 가능할 것 같다.

    마인드맵


  • 로직트리
    • What Tree(현황파악) : 문제의 전체 상황을 그려보며 구성요소를 분해한다.
    • Why Tree(원인분석) : 문제의 진짜 원인이 어디에 있는지 꼬리를 물며 질문을 이어나간다. 질문에 대답한 답에 Why를 연달아 5번 이상 시전한다.
    • How Tree(해결방법) : 자유로운 분위기, 비판금지, 질보다 양, 결합과 개선 속에 방법을 찾는다.로직트리

  • 만다라트
    맨 윗 부분에서 이미 설명한 바 있다. 목표설정, 의사결정, 아이디어 발상, 콘텐츠 기획 등에 사용된다.
    • 중심 토픽 선정
    • 주요 토픽 선정 : 입문서(이해도), 개론서(큰틀), 전문서(지식), 경험과 비교 및 대조 과정을 거친다. 책이나 강의로 주요 토픽의 밸런스를 잡을 수 있는 도메인 지식을 사전에 확보할 필요가 있다.
    • 하위토픽 : SMART(구체적, 측정가능, 행동가능, 현실적으로 타당, 마감기한)
    • 우선순위 정하기
    • 5W3H 질문 던지기(누가, 언제, 어디서, 무엇을, 왜, 어떻게, 얼마나 많이, 비용)

  • 사명선언문
    “인생은 왜 사는가”에 대한 답변 혹은 인생 전체의 계획을 세우기 위한 용도로 적합하다.
    • 사명 : 존재의 이유
    • 가치 : 사명을 실현하기 위한 신념. 다른사람과 차별화, 생활신조, 살면서 지키고자 하는 나만의 원칙 등
    • 비전 : 꿈꾸는 이상적인 미래 모습. 3 ~ 10년 뒤 이상적인 모습
    • 목표 : 비전을 위한 도전과제사명선언문

  • 전략
    • 시간관리
      • 시간도 가계부를 쓸 필요가 있다.
      • 저자의 시간관리 방법 특히, 시간관리 체크리스트에서 많은 인사이트를 얻었다.
      • 스티븐 코비의 시간관리 매트릭스를 그려보고, 긴급하지 않으나 중요한 일에 투자한다.
    • 목표정리
      • 역산적으로 미래 모습을 먼저 상상 후 현재의 모습으로 엮어본다.
      • 미래를 예측할 수 있는 유일한 방법은 스스로 미래를 창조하는 것 (by 피터드러거)
      • SMART
        • 구체적 : 6W (누가, 무엇, 어디서, 시간, 조건과 제약, 이유와 목적, 보상)
        • 측정가능 : 수량, 횟수, 기간 등의 숫자
        • 행동가능 : 7스텝 단계적 방안 마련
        • 현실적으로 타당 : 작은 습관 부터
        • 마감기한 : 월, 주, 일 단위
    • 문제정리
      • SWOT를 활용하여 OS, TS, OW, TW 전략을 세워본다.
      • 로직트리를 활용하여 즉흥적인 해결책, 즉, 쓸모없는 How가 도출되지 않도록 유의한다.
    • 인생의 주요영역 8가지 : 건강, 재무, 가족 및 사회 관계, 주거, 직업 및 경력, 학습 및 자기계발, 사회참여 및 봉사, 여가 및 영적활동

    • 메모
      생각정리가 어려운 또 하나의 이유는 기억의 휘발성 때문이다. 이를 위해 필요한 것이 메모이며 도구는 가리지 않는다. 메모지, 녹음기, 에버노트, 카카오톡 나에게 보내기, 여백, … 등. 단기기억을 담당하는 해마에 3번 이상 반복되면 중요 정보로 인식하여 장기 기억이 가능해진다.

    • 행동
      • 시작
        나는 개인적으로 30대를 지나며 주위 지인들이 2개 그룹으로 쪼개진다는 사실을 느꼈다. 성공 그룹, 그리고 나머지 보통 그룹. 성공 그룹은 일단 하고 싶은, 해야 하는 일이 생기면 주저하지 않고 고민할 시간에 일단 뛰어들고 본다. 그리고 나머지 애로사항은 버티며, 적응하며, 견뎌내더라. 이 책에서 말하는 바도 같다. 두려움 없이, 겁 없이, 확신을 갖고 시작한 사람들만 이 시장에서 버티고 남게 된다.

      • 공개선언효과
        SNS 매체를 이용한다. 가능한 많은 사람들에게, 반복해서, 다양한 방법으로, 스토리텔링을 동원하며, 도움을 요청하고, 실패 시 치뤄야 할 대가를 끔찍한 것으로 정해서, 대가도 공개한다.

      • 생각은 20%, 행동은 80%!


나름 짧게 핵심만 요약한 것임에도 내용이 상당히 길어졌다. 그만큼 읽는 내내 저자가 던지는 메시지가 강렬했고 조언 하나하나 버릴 것이 없었다. 특히, 원론적인 내용이 아닌 인생을 위한 실행 가능한 도구와 방법을 알려주고 있다는 점이 가장 큰 장점이다.

마지막으로 인상깊었던 저자의 에필로그를 인용하며 리뷰를 마친다.

하루에는 144번의 10분이 있다. 그 중 한번이라도 생각정리에 사용해 보자. 그 작은 시간들이 모여 생각이 바뀌고, 생각이 바뀌면 행동이 바뀌며, 행동이 바뀌면 습관이 바뀌고, 결국 운명이 바뀐다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
빅데이터 시대, 성과를 이끌어 내는 데이터 문해력 - 그래프와 도표만 바라보는 당신에게
카시와기 요시키 지음, 강모희 옮김 / 프리렉 / 2021년 2월
평점 :
장바구니담기


리터러시(literacy; 문해력)이란 주어진 정보를 이해하고 활용할 수 있는 능력을 의미하며, 이 책에서는 데이터 리터러시를 집중적으로 다룬다. 공통적으로 누구에게나 데이터 속에 숨은 진짜 의미를 알아내거나 자신의 업무에 데이터를 활용할 수 있는 능력을 키워주는 책이자, 더 나아간다면 데이터 관련 직군 초보자들이 문제, 원인, 해결책 등의 본질에서 벗어나 분석 기법이나 딥러닝과 같은 기술에만 매달리는 현상에서 탈피하는데에도 도움을 주는 내용을 담고 있다.

책에서 말하고자 하는 핵심은 아래 도표로 설명된다. 문제를 명확히 파악한 후, 지표 및 데이터를 일치시켜 현 상태를 파악 및 평가한 후, 원인을 찾아, 해결방안을 제시할 수 있어야 한다는 것이 이 책에서 말하는 메인 아이디어이다.핵심

여기에서는 데이터 리터러시가 부족한 일반인들이 자주 범하는 개선할 수 있는 인상깊은 사례 몇가지를 소개하는 것으로 책 소개를 대신하고자 한다.


  • 여러분은 아래 데이터(그래프)를 어떻게 활용할 생각인가?
    예제

    대부분의 답은 “츠바메시의 아동 인구밀도가 산조시보다도 2배나 많다.”등의 결론을 내린다. 하지만 그 결론이 무슨 의미가 있을까? 여기서 파악해야 할 핵심은

    “이 그래프를 작성한 사람은 무엇을 말하고 싶었을까요?” 이다. 대부분의 사람은 이처럼 주어진 자료를 보는 관점부터 문제가 있는 셈이다. 그래서 분석 자체가 목적이 되는 우를 범한다.

  • 활용의 성공과 실패를 가르는 접근법
    • (X) 데이터를 가공 => 데이터에서 무엇을 알 수 있을지 생각한다.
    • (O) 데이터에서 무엇을 알 수 있을지 생각한다. => 데이터를 가공한다.
    • (X) 데이터 => 가설
    • (o) 가설 => 데이터
  • 문제의 핵심은 “나는 무엇을 알고 싶은가? 무엇을 해결하고자 하는가?”이다.

  • 지표를 정할 때 범하는 실수
    • 고객 불편사항에 대한 개선이 이루어지지 않고 있다. => 지표 : 클레임수 클레임 수를 지표로 정한 것 자체가 원인으로 단정한 것으로 주관이 개입되는 우를 범했다.
    • 광고에 대한 반응이 적다 => 지표 : 문의 수 문의 수는 반응의 일부일 뿐이다.
  • 평균값의 함정
    • 서비스 A의 평균 만족도는 4.1이고, B의 평균 만족도는 3.5이다. 위 문장만 놓고 봤을 때 누가봐도 A가 좋다는 결론을 내리겠지만, 분포를 확인하니 아래 그림과 같았다.편차
      과연 확실히 A가 좋은 것일까? 편차가 크다는 것은 불안정성을 의미하기도 하지만 그만큼 발전 가능성으로 볼 수도 있다.
  • 비교의 기술 : 크기, 추이, 편차, 비율

  • 목표는 행동!
    • 이 젤라토는 섭씨 18.7도 이상, 습도 43.92% 이상일 때 잘 팔린다.
    • 매출은 3,500만원이다. 이 정보는 큰 의미가 없다. 행동을 취할 수 없기 때문이다. 즉, 데이터 정리에서 끝나고 마는 것을 지양해야 한다.

    • 해결책 : 원인 후보 열거 > 지표 결정 > 관련성 확인 예) 경쟁사가 가격 변동을 몇 차례에 걸쳐 반복하고 있다. => 지표 : 가격 변동과 매출 변화의 관계성 파악을 위한 가격 변동률 데이터를 활용한다.

    • 관련성 파악 방법
      • 산점도를 통한 경향
      • 그룹화 : 상위 그룹군의 특성을 하위 그룹군에 반영하며 효과를 기대해본다.
      • 이상치에 주목한다.
      • 변화점(분기점)을 찾는다.
      • 상관계수를 활용한다.
  • 도전문제로 원인 찾아보기
    • 문제 : 처음에는 주 1일만 활동한다고 들었는데, 실제 주 3일도 넘게 활동하고 있다. 거짓말 한 것도 기분 나쁘고, 고문 역할을 그만두는 것이 어떨까?
    • 답안의 한 예시답안
    • “만약 XXX가 아니라면?”이라는 꼬리를 무는 질문을 계속 던져본다.
  • 주의해야 할 몇가지 사항
    • 직접적인 관계인지, 간접 관계인지? 예) 홈페이지 업데이트 빈도 => (블로거가 블로그 게재) => 점포 방문객 수 증가
    • 원인은 여럿이거나 복잡할 수도 있다.
    • 선형 관계가 아닌 경우
    • 상관관계와 인과관계 구별하기
    • 현재 상태를 파악 후 바로 해결방안을 모색하고 있진 않은지? (단계 건너뛰기, 맨 윗 그림 참조)
    • 데이터로 설명 가능한 범위인가?
    • 인지편향(심리학적 선입견 등)

위에 소개한 사례들은 맛만 볼 수 있는 예제 몇가지에 불과하지만 책이 어떤 내용을 담고 있는지 소개하는 정도로는 충분할 것이다. 이 책은 위 예시와 같이 일반인들의 잘못된 데이터 접근방식의 예시를 들며 맨 위에 제시했던 그림에 해당하는 메인 아이디어를 서술해 나가는 책이다. 독자들이 감을 잡고 실무 분석에 있어 직접적인 도움이 될 수 있도록 알기 쉬운 예시 중심으로 구성된 점이 책의 장점이자 특징이라고 할 수 있다.

AI, 빅데이터 시대라 불리는 요즘 데이터에 대한 교양을 쌓고 싶거나, 혹은 데이터에 대한 감각이 부족하다거나, 기술 위주의 편식으로 인사이트를 도출하기 어려운 실무자에게 추천하고 싶은 책임을 강조하며 본 리뷰를 마친다.




댓글(0) 먼댓글(0) 좋아요(2)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
데이터 쓰기의 기술 - 따라 하면 끝나는 단계별 데이터 분석 10
차현나 지음 / 청림출판 / 2021년 3월
평점 :
장바구니담기


데이터 관련 코딩은 이제 어느 정도 알겠는데 이를 어떻게 적용할 것인지 고민해 본 적이 있다면 이 책이 큰 도움을 줄 것이다. 이 책은 제목에서 알 수 있듯 데이터 활용 스킬을 다루는 책이기 때문이다.

저자의 서문을 인용해 보자. 무작정 엑셀을 배웠다고 변화가 생기는 건 아니다. 무언가를 위해 편리한 엑셀을 이용하는 것인데, 그 무언가를 모르는채 Python이나 머신러닝 알고리즘에 집중한다면 목적 잃은 반쪽자리 노력이 되어 언젠가 살아있는 공부를 다시 필요로 하게 될지 모른다.

저자는 스타벅스커피코리아, 빅히트엔터테인먼트에서 근무한 데이터 사이언티스트로, 전작 “문과생, 데이터 사이언티스트 되다”와 “데이터 읽기의 기술”의 저자로도 유명하다.

반걸음 먼저 간 사람으로서 들려줄 수 있는 이야기라고 겸손하게 표현하고 있지만 개인적으로는 더 많은 데이터 사이언티스트 분들이 각자의 현업에서 데이터를 다루는 방법을 공유하는 이런 유형의 책들이 더 많이 나와줬으면 한다. 연구, 기술과 관련된 책은 많지만 경험을 다루는 책은 좀처럼 찾기 어렵기 때문이다.

책에서 다루는 가장 중요한 주제는 데이터 활용을 위한 10가지 스킬으로 각자의 실무에서 적용해 볼만한 유익한 템플릿이다. 10가지 질문을 아래와 같이 간추려 정리해 보았다.


  • 1. 디자인 - 질문하기
    매출이 감소했는데 내가 잘못해서 그런 걸까? 다른 원인은 없을까?

  • 2. 디자인 - 문장 쪼개기
    • 매출이 감소했는데 : 언제보다 감소했는가?
    • 내가 잘못해서 그런 걸까? : 매출감소 요인이 무엇일까? 인테리어? 메뉴, 간판, 식기, 광고, 홍보, 판매하는 사람, 진열이나 구성, 서비스나 맛 등이 변하진 않았나?
    • 다른 원인은 없을까? : 외부요인은? 시장 상황은? 방문자 수는? 경쟁업체가 생겼나?
  • 3. 디자인 - 데이터 찾기
    • 매출이 감소했는데 : 연월일시가 표시된 매출 데이터를 확보해야 한다.
    • 내가 잘못해서 그런 걸까? : 매장의 요소를 나누는 리스트를 만들어 본다.
    • 다른 원인은 없을까? : 상권의 유동인구 변화, 지역 인구 변화, 주요 유통채널의 매출 증감 등
  • 4. 디자인 - 데이터 분석하기
    • 낱개 분석 진행 : 시간별 패턴, 시간대별 판매 비교 등
  • 5. 스토리텔링 - 데이터 퍼즐 맞추기
    • 낱개 분석 흩었다가 모아보기
    • 앞뒤로 논리가 맞는지 확인
    • 작년 동기 대비 무어이 감소했는지를 밝혀야 한다.
  • 6. 스토리텔링 - 변화를 만들 제언하기
    • 출퇴근 고정 고객이 확보되었는데 왜 주말에는 상권이 활성화되지 않는가?
    • 주말 고객층을 다시 끌어들일 방법은 없을까?
    • 각각의 분석을 이어 이야기를 만들어내고 방향성을 제시한다.
  • 7. 스토리텔링 - 데이터에 옷 입히기
    • PPT나 문서 등 공유 및 발표를 위한 핵심을 정리해 본다.
  • 8. 의사결정 - 액션 아이템 만들기
    • 잘 팔리는 제품을 더 잘팔리게 하거나, 안팔리는 제품이 팔리도록 하기
  • 9. 의사결정 - 현장의 변화 만들기
    • 1회 2만원 구매 금액이 많을 경우, 3만원 이상 구매 시 혜택을 주고 반응을 살피기
  • 10. 의사결정 - 소비자의 반응 포착하기
    • 구매까지 연결된 고객은 이전보다 거의 늘지 않았다고 가정 시, 금액대가 높은 것이 문제인건지, 제품이 내키지 않아서 인지, 남은 제품이 집에 있기 때문인지에 따라 개선점이 달라진다. 주말마다 각기 다른 액션을 취한 후 분석을 다시 시작한다.

책은 총 4개의 챕터로 나누어져 있으며 이 중 챕터4가 가장 유익했다. 위의 10가지 스킬이 실전 사례에 적용되어 설명되기 때문이다. 한 두개의 실례에 적용이 된다면 처음엔 감이 안올 수도 있는데 10가지의 케이스에 적용을 시도한다.

10가지 케이스는 전작 “데이터 읽기의 기술”에서 선보인 데이터가 알려주는 소비자의 마음 10가지에 소개된 주제들이다.

  • 매출 데이터, 영수증, 날씨, 거짓말, 장소, 시간, 성별, 나이, 요소, 반응속도, 모바일

소비자의 마음을 대표하는 가장 중요한 데이터를 토대로 10가지 스킬을 적용하기 때문에 읽다보면 실무에서 부족했던 것이 무엇이었는지 깨닫게 되기도 하고, 꽉 막혀 더이상 진척이 어려운 부분에 희미한 길이 보이기도 한다. 무엇보다 실전 사례를 토대로 구체적이고, 현실적인 방안들을 제시하고 있어 이해가 쉽다.

나머지 1 ~ 3장은 10가지 스킬 각각에 대한 원론적인 설명이다. 책을 읽는 순서는 처음부터 읽기보다 4장의 10개 케이스 중 평소 궁금하거나 관심 있는 케이스를 선정해 먼저 읽어본 후 1 ~ 3장을 읽는 것을 추천한다. 구체적인 사례가 먼저 바탕이 되기에 읽기 한결 편하고 이해에 더 많은 도움이 될 것이다.

누구보다도 데이터 분석을 처음으로 접하는 사람이나 활용보다는 기술이나 스킬에 치우친 이들에게 추천하고 싶다. 분명 부족한 무언가를 든든하게 채울 수 있을 것이다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
GAN 첫걸음 - 파이토치 신경망 입문부터 연예인 얼굴 생성까지
타리크 라시드 지음, 고락윤 옮김 / 한빛미디어 / 2021년 3월
평점 :
절판


GAN(Generative Adversarial Network, 생성적 적대 신경망)은 서로 경쟁하는 두 개의 신경망(생성자, 판별자)으로 구현된다. 생성자는 새로운 데이터를 생성하며, 판별자는 가짜와 실제를 구별한다. 생성자와 판별자는 서로 이기려는 경쟁을 지속하는데 위조범이 그럴듯한 모조품을 만들면 판별자가 잡아내는 식의 경쟁이다.

말이 쉽지 GAN을 배우려고 책을 펴면 이상한 것들을 새로 배워야 한다. 오토인코더 부터 시작해서 G와 D가 팽팽하게 서로 당기고 있는 이상한 긴 수식, Likelihood에서 부터 각종 확률과 분포 등등..

반면 이 책은 GAN을 처음 접하거나 어려워 포기했던 이들에게 제 격인 책인 것 같다. 내 기억이 맞다면 오토 인코더라는 말은 한마디도 안나왔다. 대표적으로 눈에 띄는 장점을 정리하면 다음과 같다.

  • GAN의 핵심을 3단계로 정리하고 예제로 구현하는 부분은 그 어느 책보다도 전달력이 뛰어났다.

  • 반드시 필요한 것만 간추려 알려주고 있어 완급 조절이 훌륭한 책이다.

  • 계보(AE, VAE, GAN, DCGAN, MMGAN, NSGAN, WGAN, WGAN-GP, ProGAN, SGAN, CGAN, CycleGAN, RGAN, SAGAN, BigGAN에 이르는…) 흐름이 아닌 모드 붕괴, 경사하강법 등 문제 인식에 초점을` 맞춘 접근법이 마음에 들었다.

  • 난이도는 쉬운 반면, 다루는 깊이는 논쟁이 되고 있는 연구까지 다루고 있다.

  • 아마도 GAN, 딥러닝, PyTorch 셋 다 몰라도 이 책이라면 무난히 GAN의 세계에 입성할 수 있을 것 같다. 정말 쉽다.

간단한 장점만으로는 설명이 부족한 것 같아 전체적인 구성 및 책을 읽으며 인상깊었던 핵심 내용들을 위주로 아래와 같이 정리해 보았다.


  • 파트 1 : 준비과정
    먼저 PyTorch와 Colab의 기초를 배운다. Define By Run 방식의 계산 그래프를 토대로 자동 미분을 실습하는 과정을 통해 PyTorch의 활용법과 직관적인 장점을 느낄 수 있다.

    다음으로 MNIST 손글씨 분류 신경망을 만들어 본다. Pandas와 Matplotlib으로 MNIST 데이터가 어떻게 생겼는지 열어본 후, 기본적인 네트워크를 구성한다. 오차를 정의하는 손실함수, 가중치 학습 방법인 옵티마이저, train() 함수 등을 만들며 신경망의 기본을 다진다.

    이어서 만든 모델의 성능을 단계적으로 아래와 같이 향상시킨다.

    • 손실함수 : MSE -> BCE
    • 활성화함수 : Sigmoid -> LeakyReLU
    • 옵티마이저 : SGD -> Adam
    • 정규화 적용 : LayerNorm()
      위 단계를 거쳐 모델의 성능을 87%에서 97%까지 끌어올리는데, 딥러닝의 성능 개선을 위한 일반적인 방법을 핵심만 잘 간추리고 있다.

    다음으로 CUDA는 어떻게 활용하는지, 성능은 얼마나 향상되는지 측정해본다.

    • Vectorization : Python(for) -> Numpy(행렬) / 1500배 성능 향상
    • CUDA : Numpy(CPU) -> CUDA(GPU) / 150배 성능 향상

    파트1은 정리하자면 딥러닝과 PyTorch의 기본을 복습하는 장이다. 이미 둘을 잘 알고 있다면 건너 뛰어도 무방하다.

    하지만 스스로 딥러닝이 부족하다고 느껴진다면 반드시 꼼꼼하게 익히고 넘어가야 한다. 판별자가 딥러닝 모델과 거의 유사하기 때문이다. 판별자도 제대로 만들기 어렵다면 더욱 까다로운 생성자 혹은 판별자와 생성자 간 통신을 이해하기 어려울 것이다.

    GAN을 배우고 처음으로 맞닥드렸던 난관이 모드 붕괴였는데 아마 대부분 공통적으로 겪는 현상이 아닌가 싶다. 뒤에 이를 해결하기 위해서 딥러닝의 성능 개선 방법을 미리 익혀두는 것은 필수이며, 이를 확실히 알기 위해서는 딥러닝의 기초가 필수다. 또 이를 위해 PyTorch이나 Colab 실습 환경 사용법을 숙지해야 함은 말할 필요도 없다.

    이처럼 큰 집을 만들기 위해 초보자들도 쉽게 따라할 수 있도록 벽돌을 아래부터 하나씩 차곡차곡 쌓아올리는 구성이 인상적이었다.


  • 파트2 : GAN의 핵심
    먼저 GAN의 핵심 개념을 살펴보자.
    • MNIST 신경망이 아무 그림이나 Input으로 받아 0 ~ 9(10개)를 Output으로 내보내는 과정은 정보가 줄어드는 압축이라고 볼 수 있다. 이를 뒤집어 10개의 숫자를 입력하여 어떤 그림이 나오도록 확대하면 이미지를 만들어 낼 수 있을 것이다. 원핫 인코딩 벡터가 그 예인데, 대신 평균적인 같은 결과만 나온다는 것이 문제이다. 3을 넣으면 항상 똑같이 생긴 3 모양의 그림이 나오는 셈이다.

    • 여기에서 착안된 구조가 GAN이다. 책에서는 GAN의 핵심을 다음과 같이 3단계로 잘 정리하고 있다.

      • 1단계 : 실제 데이터로 판별기 학습. 레이블은 True(1).1단계_107p

      • 2단계 : 생성기가 만든 데이터로 판별기 학습. 레이블은 False(0).2단계_108p

      • 3단계 : 생성기 생성 및 훈련. 생성기의 결과를 판별기가 판단 후 오차 역전파법으로 생성기 가중치 업데이트. 단, 판별자의 가중치는 업데이트 하지 않음.3단계_108p

    이어서 3개의 예제를 실습한다. 코드 구현을 통해 핵심 개념을 파악할 수 있음은 물론, GAN에서 겪게 되는 어려움인 모드 붕괴 등의 해결책을 익힐 수 있다.

    • 1010패턴
      [1,0,1,0]의 데이터를 입력받아 동일한 [1,0,1,0]을 생성하는 심플한 GAN을 만들어 본다.(엄밀히 1은 0.8 ~ 1.0의 임의의 수치를, 0은 0.0 ~ 0.2의 임의 수치를 의미한다.)

      비슷한 결과를 만들어내는 이 작업이 무슨 의미가 있냐 할 수 있겠지만 군더더기를 다 걷어냄으로써 핵심만 볼 수 있는 효과가 있는 매력적인 예제이다. 위의 3단계 핵심 개념에 맞춰 구현한 소스 코드는 아래와 같다. PyTorch답게 직관적이다.

          # 1단계 : 판별기 훈련(참 데이터)
          D.train(generate_real(), torch.FloatTensor([1.0]))
          # 2단계 : 판별기 훈련(거짓(생성기) 데이터)
          # D가 훈련되지 않도록 detach()로 계산 그래프에서 떼어내므로 자동 미분 불가
          # 생성기 인자가 0.5이므로 [1,0,1,0] 패턴은 등장하기 어렵다
          D.train(G.forward(torch.FloatTensor([0.5])).detach(), torch.FloarTensor([0.0]))
          # 3단계 : 생성기 훈련
          # D의 오차가 전달되어 G의 가중치를 갱신
          G.train(D, torch.FloatTensor([0.5]), torch.FloatTensor([1.0]))
      

      이 예제에서 또 하나의 눈여겨볼 점은 손실 그래프를 그리면 0.25 값이 나온다는 사실이다. G의 인자로 활용된 0.5가 평균제곱(MSE)되어 0.25가 되었기 때문이다.

    • MNIST
      이 예제의 핵심은 모드 붕괴이다. 아래 그림과 같이 생성기가 하나 혹은 일부 클래스만 만들게 되는 현상으로 아직도 연구가 진행중이다.

      모드붕괴_146p

      생성기가 판별기 성능을 앞선 후, 실제에 결과가 가깝게 나오는 꿀 지점을 발견하여 그 이미지를 계속 만들어 낸다는 것이 이를 설명하는 그럴듯한 이론이다.

      예제에서는 손실함수 및 활성화함수 변경, 정규화, 생성기 입력을 정규화 하고 늘리는 방법 등을 통해 모드 붕괴를 개선한다.

      또 눈여겨 볼 점은 G와 D의 균형점에서 BCELoss()의 값이 0.693 정도의 값으로 수렴하는 것이 이상적임을 설명해준다. 이는 이진 교차 엔트로피에서 예상되는 손실 ln(2)의 값으로 부록 “이상적인 손실값” 부분에서 보다 심도 있게 다룬다.

      더불어 입력 시드를 더할 경우 이미지가 겹쳐 보이는(예를 들면 : 3모양 + 5모양 = 겹치면 8 모양) 현상이 나타나지만, 뺄 경우 직관적으로 예측이 불가능한 결과를 보이는 연구도 언급한다.

      이처럼 난이도는 쉬운 반면 다루는 깊이는 논쟁이 되고 있는 연구에 이르고 있어 이 또한 책의 장점이라 할 수 있겠다.

    • 얼굴이미지 생성
      이 예제의 핵심은 RGB, HDF5, CUDA 활용이다. 그리고 드디어 Likelihood의 개념이 등장하기 시작한다. (재미있는 것은 저자분이 예제마다 운이 좋게도 테슬라 T4를 얻었다고 자랑하신다. 아무래도 코랩 Pro나 유료 서비스를 이용하시는 것 같은데 은근 귀여우심..ㅎㅎ)

      얼굴_189p


  • 파트3 : 합성곱과 조건부 GAN
    이 파트에서는 GAN의 품질을 조금 더 높힐 수 있는 방법들을 다룬다. CNN을 활용하는 DCGAN, 메모리 공간복잡도 측정법, GELU 활성화 함수가 소개된다.

    특히, CNN의 구조를 직관적으로 잘 설명하고 있고 - 왠만한 딥러닝만 집중으로 다루는 책보다 훨씬 낫다 - 부록에서는 CNN 네트워크 설계 방법과 관련된 Tip을 다루고 있다. 예전에 들었던 앤드루 응 교수님의 코세라 대표 강의 Deep Learning Specialization보다도 핵심을 더 잘 요약했다고 생각한다.부록_264p

    CNN의 적용한 결과 위 얼굴이미지 예제에 비해 윤곽선이 또렸해 졌음을 확인할 수 있다.CNN적용_222p

    이어서 조건부 GAN 파트에서는 레이블과 Input 관계를 학습하는 것에 초점을 맞춰 특정 레이블에만 조건부로 집중하여 품질을 향상시켜 본다.

    마지막으로 부록에서는 위에 언급한 것들을 제외하고도 GAN의 우도 학습이나, f = xy 같은 심플한 함수로 불안정한 학습과 경사학습법의 한계를 다룬다. GAN의 심화 단계로 넘어가기 위한 필수 개념들을 심플하게 잘 전달하고 있다.부록_268p


끝으로 대부분의 기술서들과 달리 열정만 있으면 실력이 없어도 익힐 수 있는 차별화된 장점을 갖춘 멋진 책이라는 점을 강조하며 리뷰를 마친다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
코딩 진로 - IT 진로를 꿈꾸는 이들을 위한 지침서
류채윤.맹윤호.박민수 지음 / 호모루덴스 / 2021년 2월
평점 :
품절


“내가 국문학과 전공자였다면 저자와 같은 IT 커리어를 쌓을 수 있었을까?”

결론부터 말하자면 이 책은 IT 진로에 뜻을 품은 사람이면 누구나 읽어야 할 필독서이다. 대학 졸업을 앞둔 취준생, 이직을 고려하는 직장인, 심지어 IT분야 종사자까지 누구에게나 도움이 될만한 소중한 글이 가득하다.

  • “지피지기면 백전불태(百戰不殆)”
    이 책의 구성은 다소 독특하다. 취업이라는 전장에서 적군(?)은 사측과 인사담당자다. 아군은 나 자신이니 열심히 노력하면 되지만 그것만으로는 조금 부족하다. 뛰어난 참모가 필요하다. 뛰어난 취업컨설턴트가 지원해 준다면 천군만마가 아닐까? 마지막으로 전쟁터를 알아둬야 하는데 산전수전을 겪은 IT 전문가가 있다. 이 세 분야의 출중한 경력자들이 저자로 뭉쳤다.

  • 책의 최고 장점은 무엇일까?
    취업을 위한 소소한 Tip부터 흔히 알려지지 않은 정보, 노하우, 저자들의 간접 경험까지 모두 담겨있는 바 사실 어느 하나도 중요하지 않은 것이 없다. 하지만 개인적으로는,

    스스로의 내면과 진솔하게 대화할 수 있는 기회를 제공해준다는 점

    을 본 도서 최고의 장점으로 꼽고 싶다.

    내면과 대화한다는 의미는 정말 하고 싶은 일을 찾았는지 스스로에게 되묻는 과정을 표현한 것이다. 저자들은 독자 내면에 숨은 진짜 하고 싶은 일을 찾아주는 것에 최선의 목표를 두고 있는 듯 했다.

    이를 위해 저자는 스스로 겪었던 진로탐색의 여정을 진솔하게 들려준다. 책을 자주 읽는 독자로써 세상에 좋은 정보가 담긴 책은 많지만 알리고 싶지 않은 개인의 경험까지 진솔하게 담는 책은 드물다는 생각을 종종 한다.

    실패는 성공의 어머니라는 진부한 진리대로라면 세상에 출간된 대부분의 책들은 개인이 겪은 실패와 아픔을 진솔하게 담아야 한다고 예전부터 생각했다. 독자가 유사한 상황에 처했을 때 올바른 선택을 할 수 있도록 도와줘야 하기 때문이다.

    그런데 대부분의 서적은 개개인의 사정과 현실, 실패라는 과정을 건너뛴 채 저자들의 찬란한 성공만 기록하고 있다. 다행스럽게도 이 책에는 과정이 실려있어 독자인 나의 현실과 비교해보고 검증할 수 있게 도와준다. 저자의 용기에 박수를 보내고 싶다.

    또 다른 저자는 스스로의 퇴사 경험을 들려준다. 직장생활의 첫 이직. 겪어보면 상당히 가슴 아프고 투입한 시간과 노력이 아까워 힘들기도 하지만 스스로를 많이 성장시켜준다.

    비록 간접 경험일지라도 누군가의 생생한 퇴직 경험담을 듣고 같은 이유로 퇴사하지 않도록 직업을 선택할 수 있다면 스스로에게 큰 수확이 될 수 있다. 저자는 독자로 하여금 같은 전철을 밟지 않도록 스스로 원하는 일을 찾는 일이 얼마나 중요한 것인지 수 없이 강조한다.

    그리고 진정 원하는 일을 찾기 위한 저자만의 진로탐색 노하우를 아낌없이 방출한다. 여기서 그치지 않고 IT 업계의 전망이 좋다는 팩트를 분명히 알려주면서도, 업계 현실의 이야기도 들려주어 간접 경험을 통해 전망이 밝다는 이유로 스스로의 내면을 무시한 채 무작정 IT 진로를 선택하지 않도록 마치 스스로의 진로를 고민하듯 독자에게 종용한다.

  • IT 분야에 특화된 커리어 서적
    또 하나의 뛰어난 장점을 꼽으라면 IT 분야에 특화된 커리어 서적이라는 점을 들 수 있겠다. 2부, 3부에 해당하는 내용은 일반적으로 어느 직업에나 공통으로 일반화될 수 있는 방법들이기도 하지만 주제와 예시가 모두 IT 업계에 포커스를 맞추고 있기에 여타 다른 서적에선 찾기 어려운 희소성을 지닌다고 생각한다.

이제 보다 구체적인 책 내용을 살펴보겠다. 책은 400p의 적지 않은 분량을 담고 있기에 이 중에서 개인적으로 인상 깊었던 점 몇가지를 추려보았다. 총 4개의 파트로 구성되어있으며 1 ~ 3 부는 각각 개발자, 취업컨설턴트, 인사담당자의 시선에서 바라 본 조언들이 담겨있다. 마지막 4부에는 IT 업계의 전망에 대한 견해가 실려있다.


  • 1부. 개발자의 시선
    • 진솔함이 묻어나는 한계 극복 여정
      나는 우연찮게 여러 경로를 통해 파트1의 저자 분을 이미 알고 있다. 페이스북 개발자 관련 그룹의 활동도 활발하시고, 한빛미디어 DevGround 2019 행사에서 발표자로 뵌 적도 있다. 마이크로소프트웨어 간행이 부활된 이후 깃허브 잔디 관련 기고 글을 읽기도 했고, 특히 내 블로그 첫 리뷰 글인 “하이퍼레저 블록체인 개발”의 감수를 맡으신 분이기에 잘 기억하고 있다.

      그럼에도 저자가 국어국문학과 전공이라는 사실을 전혀 몰랐다. 내 눈엔 완성된 전문가만 보였을 뿐. 그런 핸디캡(?)을 겪고 지금의 전문가가 되기까지 진솔한 여정이 담겨있는데 본받을 점이 많았다.

      윗 글에서도 밝혔듯 저자는 스스로 원하는 진로를 탐색하기 위한 여러 객관적인 팁을 제공한다. 그 방법으로 저자는 스스로 다음 5가지의 직업을 골랐고 가장 적합한 진로를 찾기까지의 여정이 매우 과학적이고, 적극적이고, 체계적이어서 놀랐다.

      • 교사, 배우, 소설가, 카페창업, 개발자여정_79p

      나는 한 사람의 경험과 노력을 오롯이 흡수할 수 있는 자서전 형태의 글을 좋아하는데 이 책도 유사한 방식으로 쓰여 있어 참 감동이었다.

      더불어 저자가 국어국문학과 전공이기 때문인지 필력이 좋아 글도 잘 읽힌다. 어느새 저자의 진솔함이 전달되어서일까? 저자의 학부 전공이 이렇게 저술서에서 빛을 발하게 되어 나도 모르게 기뻤다.

    • 저자만의 차별화 전략
      일개 독자의 입장으로서 감히 면면이 훌륭한 저자를 평가할 순 없겠지만 책을 읽고 느낀 것이 있다. 저자가 IT 업계 최고의 전문가라고 칭할 수 없을지는 몰라도 IT분야 커리어 개척에 있어서는 No.1 전문가가 아닐까 생각했다. 정말 이 책에 딱 어울리는 저자란 생각이 든다.

      니체는 저서 “우상의 황혼 : 망치를 들고 철학하는 법”에서 유명한 말을 남겼다.

      “나를 죽이지 못하는 한 모든 시련은 나를 한층 더 강하게 만든다.”

      무엇이 저자를 IT 커리어 분야의 No.1으로 만들었을까? 아마 국어국문학과 전공이 모티브가 되지 않았을까? 덕분에 저자만이 가진 만한 차별화된 커리어 몇가지가 눈에 띄었는데 책을 읽게 된다면 유심히 살펴보고 배울 만한 점이라 강조하고 싶다.

      • 해커톤 준우승 경험
      • 포트폴리오를 관리하는 방법
      • Git Award 파이썬 분야 글로벌 상위 5% 랭킹을 보유한 과정
      • 남들은 수료증 내기 급급할 때 강의 이력 증명서를 제출한 차별화된 강점
    • 커리어를 위한 정보들
      책에는 저자 경험만큼이나 유익한 커리어를 위해 도움이 되는 정보와 노하우가 가득하다.
      • 콘퍼런스 참여 방법
      • 워크넷 활용법 : 대표적인 830여개의 직업
      • AHP(Analytic Hierarchy Process) : 내가 정말 원하는 직업을 찾는 방법
      • 개발언어 선택 방법
      • 깃허브 관리 및 운영 방법
      • 코딩인터뷰 준비
      • 블로그 구축 안내
      • 오픈소스 활동
      • 대학원 : 체계적으로 정리가 잘 되어있어 직장인인 내게 너무도 유익한 정보였다.대학원_140p
    • 실행력
      저자의 커리어 여정을 읽어보며 나에게 부족한 약점이자 저자의 특출난 강점을 하나 뽑을 수 있었는데 그것이 바로 실행력이다.

      최근에 읽고 있는 책 중에 아마존의 성공법칙을 담은 “순서 파괴”라는 책에는 다음의 구절이 등장한다.

      “일단 시작하고, 실수는 나중에 고쳐라!”

      저자와 너무 잘 어울리는 어귀라는 생각을 했다. 지금까지의 커리어 발전은 아마도 이런 적극적인 실행력에서 비롯되었던 것이 아닐까?


  • 2부. 취업컨설턴트의 시선
    • 퇴사의 간접경험
      위에서 설명했듯 저자의 퇴사 경험을 읽고 간접 경험해보는 것은 스스로의 시행착오를 줄일 수 있는 좋은 경험이 된다. 그 과정을 통해 스스로의 내면이 진정으로 원하는 길을 찾는데 도움이 될 것이라 생각한다. 더불어 그 길을 찾는 과정을 상세히 담고 있어 유익했다.

    • 취업 시장의 현 위치
      직업상담사 1급 취업컨설턴트답게 취업 시장의 현 위치를 잘 일반화하여 담고 있다. 2020년 미래 일자리 보고서, 세계경제포럼 연차총회 직업의 미래 보고서, 4차 산업혁명 9대 국가 전략 프로젝트 등 각종 공신력 있는 객관적 자료를 토대로 저자의 경험을 녹여 취업 시장의 감각을 익히기에 좋다.

    • 선배의 취업준비 꿀팁
      직장생활부터 취준생들을 상담하며 얻은 노하우가 잘 정리되어 있다. 특히, 시간 활용과 관련된 노하우는 직장인인 내게도 도움되는 부분이 많았다. 요즘 육아와 연구, 직장생활에 시간 내기가 빠듯했는데 일상에 적용해볼만한 좋은 아이디어를 얻을 수 있었다.

    • 취업준비컨설팅 A to Z
      파트2의 가장 주옥같은 부분이라 할 수 있다. 이력서는 물론 자기소개서, 포트폴리오, 경력기술서, 면접에 이르기까지 상세한 노하우가 잘 정리되어 있으며 활용할 수 있는 예시가 담겨있어 구체적인 도움이 될 수 있을 듯 하다. 아래 그림은 이 중 경험을 정리하는 예시이다.경험정리_220p


  • 3부. 인사담당자 HR의 시선
    • 외국계 기업의 채용 유형
      피플앤잡스 사이트 등 외국계 취업 정보를 얻기 위한 방법 및 공채에서 수시, 상시채용으로의 트렌드 변화를 잘 짚어준다.

    • 영문 이력서와 Cover Letter 작성법
      3부는 다른 파트와 달리 정보성 노하우가 상당한 비중을 차지한다. 특히 글로벌 취업에 도움이 되는 영어 관련 정보가 많은데 IT의 중요한 한 축이자 개발자들은 대부분 영어를 두려워 하기에 추후 큰 도움이 될 수 있을 듯하다.

      이력서에서 Cover Letter에 이르기까지 인사담당자가 읽는 포커스를 중심으로 서술하기에 선택과 집중에 유리한 전술을 활용하는데 도움이 된다. 아래 그림은 Action Verb를 정리한 부분인데 이처럼 짧은 시간 내에 고품질의 이력서를 쓸 수 있도록 잘 정리된 방법들이 인상적이었다.ActionVerb_314p

    • 영어 인터뷰
      영어 실력, 기술, 인성, 프로젝트 크게 4가지의 유형으로 나눠 설명해주는 구성이 유익했다. 세부적인 Tip들이 쏠쏠한데 특히 코로나 이후 온라인 인터뷰가 대세가 된 만큼 온라인 부분에서 사전에 준비할 사항들을 꼼꼼히 챙겨주고 있어 마음에 들었다.


  • 4부. 각자가 바라본 IT 전망
    세 분야 전문가의 경험을 토대로 IT 업계의 전망과 대비해야 할 사항들을 정리하고 있는데 미래는 대응할 뿐 예측하는 영역이 아니기에 맹신보다는 새로운 시각에 도움이 된다는 생각으로 접근하면 좋을 듯 하다. 뉴럴링크와 같은 최신 기술 정보도 다수 소개된다.

지금까지 칭찬 일색으로 일관했기에 아쉬운 점도 한가지 덧붙이고 싶다. 내용과 구성 상 부족한 점 하나 찾기 어려운 책이지만 다루고 있는 범위와 관련하여 국내 업계 인사담당자의 시선도 추가되었다면 더욱 완벽한 책이 되지 않았을까 싶다.

개인적으로 IT 분야에서 15년 이상 몸담고 있는 정년이 보장된 직장인으로써 취준생이 아님에도 이 책을 읽고 싶었던 이유는 평생 직장이라는 개념이 모호해지고 있는 현 상황 때문이다.

언제든 이직을 전제로 한다면 미래에 나도 또 한명의 취준생이 될 것이기에 커리어를 발전시킬 수 있는 고수들의 경험과 조언을 듣고 싶었다. 그리고 과분할 정도로 많은 인사이트와 정보를 얻을 수 있었다.

마지막으로 수미쌍관으로 다시 한 번 강조하고 싶다. IT 분야에 조금이라도 관련이 있거나 관심 있는 분이라면 반드시 일독을 권한다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo