SlideShare a Scribd company logo
1 of 59
Download to read offline
파이썬과 커뮤니티와 한국어 오픈데이터
2019-08-17
박은정
박은정 a.k.a. lucypark, echojuliett, e9t
• 기계번역을 하는 머신러닝 엔지니어
• 데이터로 지식의 장벽을 낮추고 싶은 사람
• Yak shaver
2
때는 2019년 5월
• 기회가 된다면 하고 싶은 말이 있었어!
• "제안해주셔서 감사합니다! 어떤 얘기를 해야할지 확신이 들지는 않지만 유
익한 얘기를 할 수 있도록 준비해볼게요."
• 발표까지 3개월이나 있으니 준비할 시간도 충분하다!
3
꼼꼼한 계획
• 한국어 NLP의 오픈소스/데이터에 대한 서베이를 해서, 현황을 공유하고
다 같이 발전시켜나가자고 제안해야겠어!
• 키노트라면 정보를 전달하기보다는 포용inclusion, 다양성diversity, 커뮤니티와
같은 가치를 부각하는 발표면 좋을 것 같아
• 그런데 또 파이콘이니까 파이썬에 대한 얘기도 해야지
• 그렇다면 3년만에 konlpy도 좀 업데이트 해볼까? 각종 데이터셋을
konlpy.download에 포함해서 사람들이 쉽게 다운로드 받게 하면 좋을 것
같다!
4
그리고 2019년 8월
• konlpy는 고칠게 너무 많다... 같이 만들어가요!
• 아직 발표자료도 없네... ㅠㅠ
• 다행히 이른 아침의 첫 발표니까 사람이 별로 안올거야...
5
오늘 할 이야기
• 문제 의식 공유
• 커뮤니티에 작게나마 기여할 수 있었던 개인적인 경험 공유 옛날 얘기
• 한국어 오픈데이터 이야기도 조금 주변 사람들은 맨날 들었던 얘기
Image source: Sandra and Woo, Richard's guide to software development, 2012. 6
여러분은 프로그래밍을 왜 하시나요?
7
프로그래밍은 왜 하는가?
• 취미
• 먹고사니즘
• 개인의 성장
• 나의 커뮤니티에 기여하기
이 항목들은 상호배타적이지 않다! 8
옛날 이야기 하나: 팀포퐁
파이썬을 좋아한 시빅 해커들
9
때는 2011년
10
11
12
잠깐, 자료가 부족하다고요?
13
여기에 다 있는데요? http://likms.assembly.go.kr
14
하지만 너무 어렵고 재미없음 누가 누군지도 모르겠고
2014년 당시 캡쳐 화면입니다. 지금의 의안정보시스템은 좀 더 편리하게 바뀌었어요!
!
15
문서는 접근성이 떨어짐 논문 느낌 물씬 나는 PDF
16
검색엔진이 접근할 수 없는 정책 하지만 국회 자료는 공공재. 국민이 검색할 수 있어야!
17
우리가 가진 기술을 이용해서 세상을 바꿔보자!
18
팀포퐁 http://popong.com
• 예비 디자이너, 개발자, 기획자 등으로 구성된 학생 10여 명
• 기술로써 대한민국 정치를 뒤흔드는게 목표
• 직접 서비스를 만들어보면서 우리가 성장하는 것은 덤! (또는 더 큰 목적)
POPONG = "Public Open POlitical engineeriNG" 19
서비스 프로토타이핑을 하고
당시 핫했던 프로토타이핑 툴 Balsamiq
!
프로토타이핑 과정이 궁금하면 여기로 가주세요. 20
의원 네트워크 분석도 하고
Read more about this here. 21
매주 토요일마다 모여 기획과 토론과 스터디
대다수가 입법과정 대해 아는게 하나도 없었거든요
그렇게 2번의 크리스마스를 함께 맞이한 후...
22
웹서비스 "대한민국 정치의 모든 것" 탄생 이것 때문에 크롤링도 열심히 하고
아쉽게도 지금은 효용 대비 비용이 많이 지출된다고 판단해서 2018년 12월부터 out of service 하지만 팀포퐁 3기가 다시 심폐소생 중이라 다시 세상에 나올 수도 있어요! 23
웹서비스 "대한민국 정치의 모든 것" 탄생 프론트엔드도 배우고
24
웹서비스 "대한민국 정치의 모든 것" 탄생 D3와 NLP에도 관심을 가지게 되고
25
웹서비스 "대한민국 정치의 모든 것" 탄생 PDF 파싱도 익히고
26
South Korea/Seoul Maps 데이터 공개 메르카토르 같은 투영법도 배움
shp 파일을 TopoJSON으로 바꾸는데만 1년이나 걸렸어요
!
27
국회의원/의안 데이터 REST API
• 사실 웹서비스는 쇼케이스
• 이게 원래 진행하려던 프로젝트
• 더 많은 사람들이 정치 데이터를 분석하거나
활용해서 서비스를 만들기를 바랬음
아쉽게도 지금은 이것도 out of service고 코드만 남아있지만, 이제는 국회에서 직접 데이터를 제공합니다!
(회의록, 의안, 의원) 28
오픈소스, 오픈데이터: 모든 것을 공유하려는 노력
29
대한민국 정치를 뒤흔들겠다고 생각한 패기 넘치는 청년들은
• 한편으로는 주변의 작은 사회로부터 인정을 받기도 했지만
• 세상은 그렇게 쉽게 변하는게 아니라는 것을 배웠고 서버 비용이 비싸다는것도 알게 되고
• 무엇보다도 소중한 좋은 친구를 얻고
30
그 어떤 경험보다 값진 좋은 개발 문화를 배웠습니다
• 문서화 해주세요. 팀 내외와 소통하는 방법
• Git의 좋은 프랙티스는 이거래요. 팀 내외와 소통할 때 지키면 좋은 매너
• 새 프로젝트에서는 Flask라는 프레임워크를 써볼까요? 새로운 도구를 익히는 방법
• 아이디어는 working prototype으로 보여주세요. 탁상공론을 벗어나 팀을 움직이는 방법
• 그 코드/데이터 라이센스가 뭐에요? 타인의 저작물을 존중하는 자세
31
세상을 바꾸는 것
나와 내 주변을 바꾸는 것
32
시간이 좀 걸려도 괜찮다
모르는 건 배우면 된다
33
오픈소스가 큰 의미를 가지듯이
데이터를 가공해서 오픈데이터로
릴리즈하는 것도 의미있다
34
옛날 이야기 둘: KoNLPy
필요가 탄생시킨 파이썬 라이브러리
35
때는 2014년
• 제 전공이 원래 텍스트랑은 상관없고 숫자를 분석하는 데이터마이닝
• 학교 프로젝트를 수행하던 중 한국어 분석을 편리하게 하기 위해 시작
• 한국어 분석을 하려면 일단 토크나이징을 해야하는데 어떻게 하지?
• 형태소 분석을 하면 된다는데 오픈소스는 있나?
• 몇 가지가 있는 것 같은데 성능은 어떻게 다르지?
36
Enter KoNLPy
>>> from konlpy.tag import Okt
>>> okt = Okt()
>>> okt.pos('만나서 반가워요!')
[('만나서', 'Verb'), ('반가워요', 'Adjective'), ('!', 'Punctuation')]
• 각종 오픈소스 형태소 분석기를 모음
• nltk 등 다른 라이브러리와 같이 편리하게 쓸 수 있게 인터페이스를 통일
• 한글을 다룰 때 필요한 각종 util을 추가함
37
KoNLPy와 첫번째 PyCon KR
• 당시 파이썬 스승: "파이콘이 한국에서 처음 열린대!"
• 나: "나와 비슷한 불편함을 겪고 있는 사람이 많지 않을까?"
• 만들던 걸 잘 패키징해서 공개해보자!
38
39
사람들은 왜 KoNLPy를 사용했을까?
• 초보자: 사용법이 쉬워서? 더 쉬우면 좋겠네요
• 학생: 보고 따라할 예시가 있어서?
• 실무자: 다양한 구현체 간 성능 비교가 편해서?
• 외국인: 문서가 영어로도 쓰여 있어서?
• 환경적 요인: 이후 파이썬이 국내외에서 한창 인기몰이를 해서?
40
내가 필요한 도구는
내가 만들어 공유한다
그러면 생각지도 못한 도움을 주고 받을 수 있다!
41
이듬해에 두번째 PyCon KR
• 개인적 동기: 첫 파이콘 경험이 너무 좋았다
• 당시 학계에서는 representation learning이 핫해진 시점
• word2vec, doc2vec을 국내의 파이썬 커뮤니티에 소개해볼까?
• 작년에 오픈소스로 KoNLPy를 공개했지만 막상 토이데이터가 별로 없다.
일단 한국어로 된 데이터셋을 만들어보자!
42
한국어 영화평 데이터 nsmc
$ head ratings_train.txt
id document label
9976970 아 더빙.. 진짜 짜증나네요 목소리 0
3819312 흠...포스터보고 초딩영화줄....오버연기조차 가볍지 않구나 1
10265843 너무재밓었다그래서보는것을추천한다 0
9045019 교도소 이야기구먼 ..솔직히 재미는 없다..평점 조정 0
6483659 사이몬페그의 익살스런 연기가 돋보였던 영화!스파이더맨에서 늙어보이기만 했던 커스틴 던스트가 너무나도 이뻐보였다 1
5403919 막 걸음마 뗀 3세부터 초등학교 1학년생인 8살용영화.ㅋㅋㅋ...별반개도 아까움. 0
7797314 원작의 긴장감을 제대로 살려내지못했다. 0
9443947 별 반개도 아깝다 욕나온다 이응경 길용우 연기생활이몇년인지..정말 발로해도 그것보단 낫겟다 납치.감금만반복반복.. 0
7156791 액션이 없는데도 재미 있는 몇안되는 영화 1
• 주어진 영화평을 긍정 또는 부정으로 분류하는 데이터셋
• Maas et al. 2011의 IMDB 데이터셋(영어)을 벤치마크
43
내가 가진 기술이 대단하지 않아도
커뮤니티에 기여할 수 있다
누구나 무엇이든!
44
마지막으로
요즘 한국어 오픈데이터 이야기
45
들어가기에 앞서
꼭 하고 싶었던 이야기
46
알파벳은 영어가 아니다!
Alphabet NLP가 아니라 English NLP
47
한글은 한국어가 아니다!
Hangul NLP가 아니라 Korean NLP
한글은 문자, 한국어가 언어
48
한국어 오픈데이터 현황: Sequence classification / labeling
공개시기 이름 목적 크기 라이센스
2007 세종코퍼스 품사태깅 838k sentences CC BY-NC-ND 4.0
2012 KOSAC 감성분류
(감성어 사전도 배포)
7.7k sentences Custom
2015 nsmc 감성 분류 200k sentences
(Train: 150k, Test: 50k)
CC0
(Public Domain)
2016 KoreanNERCorpus NER 3.5k sentences -
2018 nlp-challenge NER 90k sentences -
2018 nlp-challenge SRL 35k sentences -
2018 Question pair Paraphrase detection 7k sentence pairs -
라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다. 49
한국어 오픈데이터 현황: Sequence generation
공개시기 이름 목적 크기 라이센스
2015 JPO patent corpus 기계번역
ja-ko, 특허 도메인
257k
sentence pairs
Custom
(상업적 이용 불가)
2017 Korean parallel corpora 기계번역
ko-{en, fr, ja}
각 언어쌍별
0.7k, 95k, 0.2k
sentence pairs
CC BY-NC-ND 3.0
(상업적 사용 불가)
2018 KSS 음성 합성/인식 12.9k pairs CC BY-NC-SA 4.0
(상업적 이용 불가)
2018 Chatbot data 대화 12k pairs -
2018 OpenSubtitles2018 기계번역
ko-*
1.3m sentence pairs
(For ko-en only)
-
2019 AIHub 한국어-영어 번역 병렬
말뭉치
기계번역
ko-en
16k sentence pairs
(To be 1.6m within 2019)
-
라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다.
AIHub의 경우 라이센스가 명시되어 있지 않지만, "중소기업, 벤처기업, 스타트업, 개인개발자, 연구자" 등이 타겟유저인 정부 사업이므로 CC0 또는 CC BY이지 않을까 추측해봅니다.
또, 제가 기계번역에 관심이 있어서 다른 분야에 비해 상대적으로 더 나열할 수 있는 것 같은데 놓친 좋은 데이터셋이 있다면 awesome-korean-nlp 같은 리스트에 공유해주세요 50
한국어 오픈데이터 현황: Others
공개시기 이름 목적 크기 라이센스
2018 KorQUAD MRC 66k Q/A pairs -
2019? AIHub 기계독해 MRC 450k Q/A pairs -
2019 cc-kedict 한영 사전 13.7k entries CC BY-SA 3.0
2019 kosentences Self-supervised
learning
31m sentences MIT
+ GNU Free
Documentation
+ CC BY-NC-SA
라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다.
이 중 몇 가지는 제가 직접 이용해보지 못했습니다. 51
생각보다 많다!
!
더 많으면 좋겠지만...
52
좋은 사례 1: KorQUAD https://korquad.github.io/
• 충분한 양의 데이터 공개
• 심지어 리더보드까지 공유!
53
좋은 사례 2: KSS https://kaggle.com/bryanpark/korean-single-speaker-speech-...
• 국내 최초의 음성 오픈데이터
• 제법 많은 분량
• 라이센스가 뚜렷하게 명시되어 있어서 무엇을 할 수 있고 없는지가 명확함
54
왜 오픈데이터가 중요한가요?
1. 벤치마크가 될 수 있기 때문!
• ML 모델들은 데이터와 지표가 같아야 모델 간 서로 비교가 가능
• 비교가 가능해지면 기술 발전이 온다
2. 누구나 바로 분석이나 모델링을 시작할 수 있기 때문!
• 프로그래밍에서 reinventing the wheel이 종종 경계의 대상이 되듯
• 모두가 데이터 취득과 정제를 할 필요는 없잖아요
55
데이터를 공개할 때 확인하면 좋은 점
1. 사용자가 바로 다운로드해서 사용할 수 있는가?
• 가급적이면 회원가입, 이용동의 절차 없이 바로 사용할 수 있게 함
2. 원문에 개인정보/저작권 문제는 없는가?
• 오픈데이터는 기술 발전을 위해 매우 중요하지만 개인정보와 저작권도
존중받고 지켜져야 함!
3. 가급적이면 라이센스를 꼭 명시해주세요!
• 이용자의 별도의 문의없이 가능한 것, 불가능한 것을 알리기 위함
56
오픈데이터를 사용할 때 확인하면 좋은 점
1. 데이터가 충분히 큰가? 충분히 의미있는 결과를 낼 수 있는 정도로 충분한가?
2. 라이센스가 무엇인가? 재배포가 가능한가? 상업용으로 이용해도 되는가?
57
Call for partipation
• 한국어 NLP 같이 발전시켜요!
• 오픈소스로도, 오픈데이터로도 기여할 수 있습니다
• 오픈소스는 파이썬이어도 좋지만 꼭 파이썬은 아니어도 됩니다
• 오픈데이터는 정부, 기업, 학교 모두 함께해요 물론 개인 개발자도
• 한국어 NLP 말고 다른 재밌는 분야도 많이 기여하고 서로 공유해요!
58
감사합니다
@echojuliett
https://lucypark.kr
슬라이드를 보고 귀중한 피드백을 주신 @lovit, @shurain 님께 감사드립니다. 59

More Related Content

What's hot

The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)Eunjeong (Lucy) Park
 
GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역Byeong il Ko
 
Python을 활용한 챗봇 서비스 개발 1일차
Python을 활용한 챗봇 서비스 개발 1일차Python을 활용한 챗봇 서비스 개발 1일차
Python을 활용한 챗봇 서비스 개발 1일차Taekyung Han
 
Writing Fast Code (KR)
Writing Fast Code (KR)Writing Fast Code (KR)
Writing Fast Code (KR)Younggun Kim
 
파이썬을 활용한 챗봇 서비스 개발 3일차
파이썬을 활용한 챗봇 서비스 개발 3일차파이썬을 활용한 챗봇 서비스 개발 3일차
파이썬을 활용한 챗봇 서비스 개발 3일차Taekyung Han
 
문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의Kwangyoun Jung
 
1.Introduction to Python and TensorFlow
1.Introduction to Python and TensorFlow1.Introduction to Python and TensorFlow
1.Introduction to Python and TensorFlowHaesun Park
 
Python을 활용한 챗봇 서비스 개발 2일차
Python을 활용한 챗봇 서비스 개발 2일차Python을 활용한 챗봇 서비스 개발 2일차
Python을 활용한 챗봇 서비스 개발 2일차Taekyung Han
 
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현태현 임
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016Taehoon Kim
 
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용
Python과 Tensorflow를 활용한  AI Chatbot 개발 및 실무 적용Python과 Tensorflow를 활용한  AI Chatbot 개발 및 실무 적용
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용Susang Kim
 
H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요KTH
 
모두의 JIT 컴파일러
모두의 JIT 컴파일러모두의 JIT 컴파일러
모두의 JIT 컴파일러우경 성
 
20150306 파이썬기초 IPython을이용한프로그래밍_이태영
20150306 파이썬기초 IPython을이용한프로그래밍_이태영20150306 파이썬기초 IPython을이용한프로그래밍_이태영
20150306 파이썬기초 IPython을이용한프로그래밍_이태영Tae Young Lee
 

What's hot (19)

The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)The beginner’s guide to 웹 크롤링 (스크래핑)
The beginner’s guide to 웹 크롤링 (스크래핑)
 
GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역GNMT로 알아보는 신경망 기반 기계번역
GNMT로 알아보는 신경망 기반 기계번역
 
Python을 활용한 챗봇 서비스 개발 1일차
Python을 활용한 챗봇 서비스 개발 1일차Python을 활용한 챗봇 서비스 개발 1일차
Python을 활용한 챗봇 서비스 개발 1일차
 
파이썬과 자연어 1 | Word Cloud
파이썬과 자연어 1 | Word Cloud파이썬과 자연어 1 | Word Cloud
파이썬과 자연어 1 | Word Cloud
 
Writing Fast Code (KR)
Writing Fast Code (KR)Writing Fast Code (KR)
Writing Fast Code (KR)
 
파이썬을 활용한 챗봇 서비스 개발 3일차
파이썬을 활용한 챗봇 서비스 개발 3일차파이썬을 활용한 챗봇 서비스 개발 3일차
파이썬을 활용한 챗봇 서비스 개발 3일차
 
서울 R&D 캠퍼스 자연어 수업자료
서울 R&D 캠퍼스 자연어 수업자료서울 R&D 캠퍼스 자연어 수업자료
서울 R&D 캠퍼스 자연어 수업자료
 
문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의
 
1.Introduction to Python and TensorFlow
1.Introduction to Python and TensorFlow1.Introduction to Python and TensorFlow
1.Introduction to Python and TensorFlow
 
Python을 활용한 챗봇 서비스 개발 2일차
Python을 활용한 챗봇 서비스 개발 2일차Python을 활용한 챗봇 서비스 개발 2일차
Python을 활용한 챗봇 서비스 개발 2일차
 
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
 
메이크챗봇 자연어기초
메이크챗봇 자연어기초메이크챗봇 자연어기초
메이크챗봇 자연어기초
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
 
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용
Python과 Tensorflow를 활용한  AI Chatbot 개발 및 실무 적용Python과 Tensorflow를 활용한  AI Chatbot 개발 및 실무 적용
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용
 
파이썬을 활용한 자연어 분석 - 2차
파이썬을 활용한 자연어 분석 - 2차파이썬을 활용한 자연어 분석 - 2차
파이썬을 활용한 자연어 분석 - 2차
 
H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요
 
모두의 JIT 컴파일러
모두의 JIT 컴파일러모두의 JIT 컴파일러
모두의 JIT 컴파일러
 
파이썬을 활용한 자연어 분석 - 추가분
파이썬을 활용한 자연어 분석 - 추가분파이썬을 활용한 자연어 분석 - 추가분
파이썬을 활용한 자연어 분석 - 추가분
 
20150306 파이썬기초 IPython을이용한프로그래밍_이태영
20150306 파이썬기초 IPython을이용한프로그래밍_이태영20150306 파이썬기초 IPython을이용한프로그래밍_이태영
20150306 파이썬기초 IPython을이용한프로그래밍_이태영
 

Similar to 파이썬과 커뮤니티와 한국어 오픈데이터

3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO
3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO 3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO
3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO 양 한빛
 
AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?Myuserable
 
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님NAVER D2
 
NDC17 장창완(최종)
NDC17 장창완(최종)NDC17 장창완(최종)
NDC17 장창완(최종)창완 장
 
진화하는 소셜 큐레이션 서비스와 관련 기술
진화하는 소셜 큐레이션 서비스와 관련 기술진화하는 소셜 큐레이션 서비스와 관련 기술
진화하는 소셜 큐레이션 서비스와 관련 기술Taegon Kim
 
OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 YoChun YoChun
 
EveryBody Tensorflow module1 GIST Jan 2018 Korean
EveryBody Tensorflow module1 GIST Jan 2018 KoreanEveryBody Tensorflow module1 GIST Jan 2018 Korean
EveryBody Tensorflow module1 GIST Jan 2018 KoreanJaewook. Kang
 
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치Seoul National University
 
클로져 소개 강의 (한국정보통신산업노동조합)
클로져 소개 강의 (한국정보통신산업노동조합)클로져 소개 강의 (한국정보통신산업노동조합)
클로져 소개 강의 (한국정보통신산업노동조합)Sang-Kyu Park
 
PyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challengePyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challengeYoongi Kim
 
131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원NAVER D2
 
모던 마크업 개발
모던 마크업 개발모던 마크업 개발
모던 마크업 개발Toby Yun
 
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)Jaewon Choi
 
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기Seokjae Lee
 
격변하는 프로그래밍 언어, 이제는 Let it go
격변하는 프로그래밍 언어, 이제는 Let it go격변하는 프로그래밍 언어, 이제는 Let it go
격변하는 프로그래밍 언어, 이제는 Let it goChris Ohk
 
『고성능 파이썬』 - 맛보기
『고성능 파이썬』 - 맛보기『고성능 파이썬』 - 맛보기
『고성능 파이썬』 - 맛보기복연 이
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Jinsoo Jung
 
OKKY_송년회_발표자료
OKKY_송년회_발표자료OKKY_송년회_발표자료
OKKY_송년회_발표자료Dexter Jung
 
『Modern PHP』 - 미리보기
『Modern PHP』 - 미리보기『Modern PHP』 - 미리보기
『Modern PHP』 - 미리보기복연 이
 

Similar to 파이썬과 커뮤니티와 한국어 오픈데이터 (20)

3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO
3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO 3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO
3. RTFM, 나는프로그래머다 Meetup 2016_비트패킹컴퍼니, 정민영 CTO
 
AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?
 
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
 
NDC17 장창완(최종)
NDC17 장창완(최종)NDC17 장창완(최종)
NDC17 장창완(최종)
 
진화하는 소셜 큐레이션 서비스와 관련 기술
진화하는 소셜 큐레이션 서비스와 관련 기술진화하는 소셜 큐레이션 서비스와 관련 기술
진화하는 소셜 큐레이션 서비스와 관련 기술
 
OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료
 
EveryBody Tensorflow module1 GIST Jan 2018 Korean
EveryBody Tensorflow module1 GIST Jan 2018 KoreanEveryBody Tensorflow module1 GIST Jan 2018 Korean
EveryBody Tensorflow module1 GIST Jan 2018 Korean
 
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
 
클로져 소개 강의 (한국정보통신산업노동조합)
클로져 소개 강의 (한국정보통신산업노동조합)클로져 소개 강의 (한국정보통신산업노동조합)
클로져 소개 강의 (한국정보통신산업노동조합)
 
PyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challengePyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challenge
 
131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원
 
모던 마크업 개발
모던 마크업 개발모던 마크업 개발
모던 마크업 개발
 
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
 
2206 Modupop!
2206 Modupop!2206 Modupop!
2206 Modupop!
 
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
 
격변하는 프로그래밍 언어, 이제는 Let it go
격변하는 프로그래밍 언어, 이제는 Let it go격변하는 프로그래밍 언어, 이제는 Let it go
격변하는 프로그래밍 언어, 이제는 Let it go
 
『고성능 파이썬』 - 맛보기
『고성능 파이썬』 - 맛보기『고성능 파이썬』 - 맛보기
『고성능 파이썬』 - 맛보기
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212
 
OKKY_송년회_발표자료
OKKY_송년회_발표자료OKKY_송년회_발표자료
OKKY_송년회_발표자료
 
『Modern PHP』 - 미리보기
『Modern PHP』 - 미리보기『Modern PHP』 - 미리보기
『Modern PHP』 - 미리보기
 

파이썬과 커뮤니티와 한국어 오픈데이터

  • 1. 파이썬과 커뮤니티와 한국어 오픈데이터 2019-08-17 박은정
  • 2. 박은정 a.k.a. lucypark, echojuliett, e9t • 기계번역을 하는 머신러닝 엔지니어 • 데이터로 지식의 장벽을 낮추고 싶은 사람 • Yak shaver 2
  • 3. 때는 2019년 5월 • 기회가 된다면 하고 싶은 말이 있었어! • "제안해주셔서 감사합니다! 어떤 얘기를 해야할지 확신이 들지는 않지만 유 익한 얘기를 할 수 있도록 준비해볼게요." • 발표까지 3개월이나 있으니 준비할 시간도 충분하다! 3
  • 4. 꼼꼼한 계획 • 한국어 NLP의 오픈소스/데이터에 대한 서베이를 해서, 현황을 공유하고 다 같이 발전시켜나가자고 제안해야겠어! • 키노트라면 정보를 전달하기보다는 포용inclusion, 다양성diversity, 커뮤니티와 같은 가치를 부각하는 발표면 좋을 것 같아 • 그런데 또 파이콘이니까 파이썬에 대한 얘기도 해야지 • 그렇다면 3년만에 konlpy도 좀 업데이트 해볼까? 각종 데이터셋을 konlpy.download에 포함해서 사람들이 쉽게 다운로드 받게 하면 좋을 것 같다! 4
  • 5. 그리고 2019년 8월 • konlpy는 고칠게 너무 많다... 같이 만들어가요! • 아직 발표자료도 없네... ㅠㅠ • 다행히 이른 아침의 첫 발표니까 사람이 별로 안올거야... 5
  • 6. 오늘 할 이야기 • 문제 의식 공유 • 커뮤니티에 작게나마 기여할 수 있었던 개인적인 경험 공유 옛날 얘기 • 한국어 오픈데이터 이야기도 조금 주변 사람들은 맨날 들었던 얘기 Image source: Sandra and Woo, Richard's guide to software development, 2012. 6
  • 8. 프로그래밍은 왜 하는가? • 취미 • 먹고사니즘 • 개인의 성장 • 나의 커뮤니티에 기여하기 이 항목들은 상호배타적이지 않다! 8
  • 9. 옛날 이야기 하나: 팀포퐁 파이썬을 좋아한 시빅 해커들 9
  • 11. 11
  • 12. 12
  • 14. 여기에 다 있는데요? http://likms.assembly.go.kr 14
  • 15. 하지만 너무 어렵고 재미없음 누가 누군지도 모르겠고 2014년 당시 캡쳐 화면입니다. 지금의 의안정보시스템은 좀 더 편리하게 바뀌었어요! ! 15
  • 16. 문서는 접근성이 떨어짐 논문 느낌 물씬 나는 PDF 16
  • 17. 검색엔진이 접근할 수 없는 정책 하지만 국회 자료는 공공재. 국민이 검색할 수 있어야! 17
  • 18. 우리가 가진 기술을 이용해서 세상을 바꿔보자! 18
  • 19. 팀포퐁 http://popong.com • 예비 디자이너, 개발자, 기획자 등으로 구성된 학생 10여 명 • 기술로써 대한민국 정치를 뒤흔드는게 목표 • 직접 서비스를 만들어보면서 우리가 성장하는 것은 덤! (또는 더 큰 목적) POPONG = "Public Open POlitical engineeriNG" 19
  • 20. 서비스 프로토타이핑을 하고 당시 핫했던 프로토타이핑 툴 Balsamiq ! 프로토타이핑 과정이 궁금하면 여기로 가주세요. 20
  • 21. 의원 네트워크 분석도 하고 Read more about this here. 21
  • 22. 매주 토요일마다 모여 기획과 토론과 스터디 대다수가 입법과정 대해 아는게 하나도 없었거든요 그렇게 2번의 크리스마스를 함께 맞이한 후... 22
  • 23. 웹서비스 "대한민국 정치의 모든 것" 탄생 이것 때문에 크롤링도 열심히 하고 아쉽게도 지금은 효용 대비 비용이 많이 지출된다고 판단해서 2018년 12월부터 out of service 하지만 팀포퐁 3기가 다시 심폐소생 중이라 다시 세상에 나올 수도 있어요! 23
  • 24. 웹서비스 "대한민국 정치의 모든 것" 탄생 프론트엔드도 배우고 24
  • 25. 웹서비스 "대한민국 정치의 모든 것" 탄생 D3와 NLP에도 관심을 가지게 되고 25
  • 26. 웹서비스 "대한민국 정치의 모든 것" 탄생 PDF 파싱도 익히고 26
  • 27. South Korea/Seoul Maps 데이터 공개 메르카토르 같은 투영법도 배움 shp 파일을 TopoJSON으로 바꾸는데만 1년이나 걸렸어요 ! 27
  • 28. 국회의원/의안 데이터 REST API • 사실 웹서비스는 쇼케이스 • 이게 원래 진행하려던 프로젝트 • 더 많은 사람들이 정치 데이터를 분석하거나 활용해서 서비스를 만들기를 바랬음 아쉽게도 지금은 이것도 out of service고 코드만 남아있지만, 이제는 국회에서 직접 데이터를 제공합니다! (회의록, 의안, 의원) 28
  • 29. 오픈소스, 오픈데이터: 모든 것을 공유하려는 노력 29
  • 30. 대한민국 정치를 뒤흔들겠다고 생각한 패기 넘치는 청년들은 • 한편으로는 주변의 작은 사회로부터 인정을 받기도 했지만 • 세상은 그렇게 쉽게 변하는게 아니라는 것을 배웠고 서버 비용이 비싸다는것도 알게 되고 • 무엇보다도 소중한 좋은 친구를 얻고 30
  • 31. 그 어떤 경험보다 값진 좋은 개발 문화를 배웠습니다 • 문서화 해주세요. 팀 내외와 소통하는 방법 • Git의 좋은 프랙티스는 이거래요. 팀 내외와 소통할 때 지키면 좋은 매너 • 새 프로젝트에서는 Flask라는 프레임워크를 써볼까요? 새로운 도구를 익히는 방법 • 아이디어는 working prototype으로 보여주세요. 탁상공론을 벗어나 팀을 움직이는 방법 • 그 코드/데이터 라이센스가 뭐에요? 타인의 저작물을 존중하는 자세 31
  • 32. 세상을 바꾸는 것 나와 내 주변을 바꾸는 것 32
  • 33. 시간이 좀 걸려도 괜찮다 모르는 건 배우면 된다 33
  • 34. 오픈소스가 큰 의미를 가지듯이 데이터를 가공해서 오픈데이터로 릴리즈하는 것도 의미있다 34
  • 35. 옛날 이야기 둘: KoNLPy 필요가 탄생시킨 파이썬 라이브러리 35
  • 36. 때는 2014년 • 제 전공이 원래 텍스트랑은 상관없고 숫자를 분석하는 데이터마이닝 • 학교 프로젝트를 수행하던 중 한국어 분석을 편리하게 하기 위해 시작 • 한국어 분석을 하려면 일단 토크나이징을 해야하는데 어떻게 하지? • 형태소 분석을 하면 된다는데 오픈소스는 있나? • 몇 가지가 있는 것 같은데 성능은 어떻게 다르지? 36
  • 37. Enter KoNLPy >>> from konlpy.tag import Okt >>> okt = Okt() >>> okt.pos('만나서 반가워요!') [('만나서', 'Verb'), ('반가워요', 'Adjective'), ('!', 'Punctuation')] • 각종 오픈소스 형태소 분석기를 모음 • nltk 등 다른 라이브러리와 같이 편리하게 쓸 수 있게 인터페이스를 통일 • 한글을 다룰 때 필요한 각종 util을 추가함 37
  • 38. KoNLPy와 첫번째 PyCon KR • 당시 파이썬 스승: "파이콘이 한국에서 처음 열린대!" • 나: "나와 비슷한 불편함을 겪고 있는 사람이 많지 않을까?" • 만들던 걸 잘 패키징해서 공개해보자! 38
  • 39. 39
  • 40. 사람들은 왜 KoNLPy를 사용했을까? • 초보자: 사용법이 쉬워서? 더 쉬우면 좋겠네요 • 학생: 보고 따라할 예시가 있어서? • 실무자: 다양한 구현체 간 성능 비교가 편해서? • 외국인: 문서가 영어로도 쓰여 있어서? • 환경적 요인: 이후 파이썬이 국내외에서 한창 인기몰이를 해서? 40
  • 41. 내가 필요한 도구는 내가 만들어 공유한다 그러면 생각지도 못한 도움을 주고 받을 수 있다! 41
  • 42. 이듬해에 두번째 PyCon KR • 개인적 동기: 첫 파이콘 경험이 너무 좋았다 • 당시 학계에서는 representation learning이 핫해진 시점 • word2vec, doc2vec을 국내의 파이썬 커뮤니티에 소개해볼까? • 작년에 오픈소스로 KoNLPy를 공개했지만 막상 토이데이터가 별로 없다. 일단 한국어로 된 데이터셋을 만들어보자! 42
  • 43. 한국어 영화평 데이터 nsmc $ head ratings_train.txt id document label 9976970 아 더빙.. 진짜 짜증나네요 목소리 0 3819312 흠...포스터보고 초딩영화줄....오버연기조차 가볍지 않구나 1 10265843 너무재밓었다그래서보는것을추천한다 0 9045019 교도소 이야기구먼 ..솔직히 재미는 없다..평점 조정 0 6483659 사이몬페그의 익살스런 연기가 돋보였던 영화!스파이더맨에서 늙어보이기만 했던 커스틴 던스트가 너무나도 이뻐보였다 1 5403919 막 걸음마 뗀 3세부터 초등학교 1학년생인 8살용영화.ㅋㅋㅋ...별반개도 아까움. 0 7797314 원작의 긴장감을 제대로 살려내지못했다. 0 9443947 별 반개도 아깝다 욕나온다 이응경 길용우 연기생활이몇년인지..정말 발로해도 그것보단 낫겟다 납치.감금만반복반복.. 0 7156791 액션이 없는데도 재미 있는 몇안되는 영화 1 • 주어진 영화평을 긍정 또는 부정으로 분류하는 데이터셋 • Maas et al. 2011의 IMDB 데이터셋(영어)을 벤치마크 43
  • 44. 내가 가진 기술이 대단하지 않아도 커뮤니티에 기여할 수 있다 누구나 무엇이든! 44
  • 46. 들어가기에 앞서 꼭 하고 싶었던 이야기 46
  • 47. 알파벳은 영어가 아니다! Alphabet NLP가 아니라 English NLP 47
  • 48. 한글은 한국어가 아니다! Hangul NLP가 아니라 Korean NLP 한글은 문자, 한국어가 언어 48
  • 49. 한국어 오픈데이터 현황: Sequence classification / labeling 공개시기 이름 목적 크기 라이센스 2007 세종코퍼스 품사태깅 838k sentences CC BY-NC-ND 4.0 2012 KOSAC 감성분류 (감성어 사전도 배포) 7.7k sentences Custom 2015 nsmc 감성 분류 200k sentences (Train: 150k, Test: 50k) CC0 (Public Domain) 2016 KoreanNERCorpus NER 3.5k sentences - 2018 nlp-challenge NER 90k sentences - 2018 nlp-challenge SRL 35k sentences - 2018 Question pair Paraphrase detection 7k sentence pairs - 라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다. 49
  • 50. 한국어 오픈데이터 현황: Sequence generation 공개시기 이름 목적 크기 라이센스 2015 JPO patent corpus 기계번역 ja-ko, 특허 도메인 257k sentence pairs Custom (상업적 이용 불가) 2017 Korean parallel corpora 기계번역 ko-{en, fr, ja} 각 언어쌍별 0.7k, 95k, 0.2k sentence pairs CC BY-NC-ND 3.0 (상업적 사용 불가) 2018 KSS 음성 합성/인식 12.9k pairs CC BY-NC-SA 4.0 (상업적 이용 불가) 2018 Chatbot data 대화 12k pairs - 2018 OpenSubtitles2018 기계번역 ko-* 1.3m sentence pairs (For ko-en only) - 2019 AIHub 한국어-영어 번역 병렬 말뭉치 기계번역 ko-en 16k sentence pairs (To be 1.6m within 2019) - 라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다. AIHub의 경우 라이센스가 명시되어 있지 않지만, "중소기업, 벤처기업, 스타트업, 개인개발자, 연구자" 등이 타겟유저인 정부 사업이므로 CC0 또는 CC BY이지 않을까 추측해봅니다. 또, 제가 기계번역에 관심이 있어서 다른 분야에 비해 상대적으로 더 나열할 수 있는 것 같은데 놓친 좋은 데이터셋이 있다면 awesome-korean-nlp 같은 리스트에 공유해주세요 50
  • 51. 한국어 오픈데이터 현황: Others 공개시기 이름 목적 크기 라이센스 2018 KorQUAD MRC 66k Q/A pairs - 2019? AIHub 기계독해 MRC 450k Q/A pairs - 2019 cc-kedict 한영 사전 13.7k entries CC BY-SA 3.0 2019 kosentences Self-supervised learning 31m sentences MIT + GNU Free Documentation + CC BY-NC-SA 라이센스가 안 적혀 있는 줄은 라이센스가 명시되어 있지 않거나 제가 못 찾은 경우입니다. 이 중 몇 가지는 제가 직접 이용해보지 못했습니다. 51
  • 53. 좋은 사례 1: KorQUAD https://korquad.github.io/ • 충분한 양의 데이터 공개 • 심지어 리더보드까지 공유! 53
  • 54. 좋은 사례 2: KSS https://kaggle.com/bryanpark/korean-single-speaker-speech-... • 국내 최초의 음성 오픈데이터 • 제법 많은 분량 • 라이센스가 뚜렷하게 명시되어 있어서 무엇을 할 수 있고 없는지가 명확함 54
  • 55. 왜 오픈데이터가 중요한가요? 1. 벤치마크가 될 수 있기 때문! • ML 모델들은 데이터와 지표가 같아야 모델 간 서로 비교가 가능 • 비교가 가능해지면 기술 발전이 온다 2. 누구나 바로 분석이나 모델링을 시작할 수 있기 때문! • 프로그래밍에서 reinventing the wheel이 종종 경계의 대상이 되듯 • 모두가 데이터 취득과 정제를 할 필요는 없잖아요 55
  • 56. 데이터를 공개할 때 확인하면 좋은 점 1. 사용자가 바로 다운로드해서 사용할 수 있는가? • 가급적이면 회원가입, 이용동의 절차 없이 바로 사용할 수 있게 함 2. 원문에 개인정보/저작권 문제는 없는가? • 오픈데이터는 기술 발전을 위해 매우 중요하지만 개인정보와 저작권도 존중받고 지켜져야 함! 3. 가급적이면 라이센스를 꼭 명시해주세요! • 이용자의 별도의 문의없이 가능한 것, 불가능한 것을 알리기 위함 56
  • 57. 오픈데이터를 사용할 때 확인하면 좋은 점 1. 데이터가 충분히 큰가? 충분히 의미있는 결과를 낼 수 있는 정도로 충분한가? 2. 라이센스가 무엇인가? 재배포가 가능한가? 상업용으로 이용해도 되는가? 57
  • 58. Call for partipation • 한국어 NLP 같이 발전시켜요! • 오픈소스로도, 오픈데이터로도 기여할 수 있습니다 • 오픈소스는 파이썬이어도 좋지만 꼭 파이썬은 아니어도 됩니다 • 오픈데이터는 정부, 기업, 학교 모두 함께해요 물론 개인 개발자도 • 한국어 NLP 말고 다른 재밌는 분야도 많이 기여하고 서로 공유해요! 58
  • 59. 감사합니다 @echojuliett https://lucypark.kr 슬라이드를 보고 귀중한 피드백을 주신 @lovit, @shurain 님께 감사드립니다. 59