목차
파이콘 2019
올해로 두번째 참여하게된 파이콘! 다양한 분야의 파이썬 사용자들이 모이는 축제와도 같은 컨퍼런스이다. 토일 모두 참여하려니까 다음 날 출근해서 굉장히 엄청나게 피곤했지만 그 정도는 감수할만큼 재미있었고 데이터사이언스 공부에 대해 동기부여를 잔뜩 받고 왔다. 사실 발표야 나중에 영상으로도 많이 볼 수 있다지만 현장에서만 느껴지는 바이브 같은 것들이 즐거운 행사다. 앞으로도 쭉 참석해야지-! 언젠간.. 발표도?! ㅋㅋ
키노트 & 발표 세션
주로 초급 레벨의 데이터사이언스 카테고리의 세션들을 많이 들었고, 특히 다양한 분야에서 파이썬을 활용한 사례가 있다면 우선적으로 선택했다. 작년에 들었던 발표와 연결성을 갖는 발표들이 몇가지 있어서 재밌는 포인트들이 있었다
2019-08-17 1일차 발표
키노트: 반병현
•
카이스트에서 인공지능 전공으로 석사를 마치시고 사회복무요원(aka 공익) 근무를 하시는 발표자님이 비효율적인 관공서 업무에 업무 자동화프로그램 도입을 시도하면서 겪은 일들에 대한 이야기
•
워낙 흥미로운 얘기다보니 브런치(‘코딩하는공익’)에 이에 대한 글을 연재하면서 화제가 되어 언론 인터뷰 같은 것도 많이 하시고 책도 출간할 예정이신 것 같다
•
공무원 조직의 민낯(관공서의 비효율적인 업무 프로세스)과 희망(그래도 혁신을 해나가려는 움직임들이 보인다고)을 동시에 볼 수 있었음
키노트: 캐롤 나슬룬드 윌링
•
Python Software Foundation 회원, Project Jupyter 운영위원회 활동, JupyterHub와 mybinder.org 핵심개발자 등 엄청난 역할들을 하고 계시는 발표자님께서 새로운 파이썬 3.8, Jupyter, nteract, Binder 등에 대해 다양한 이야기를 해주심
데이터 분석 사례(지하철역 환기실 공조기 고장 감지)
•
발표자: 김민중 | 발표자료 링크
•
국가수리과학연구소에서 근무하시는 발표자분께서 서울교통공사에서 개발하여 운영중인 SAMBA(지하철 기계설비 자동제어 빅데이터 분석시스템) 고도화 프로젝트를 진행함
•
문제: 지하철 역사 내 기계설비 고장을 감지하거나 사전 예측하는 모델 개발
◦
공조기(Air handling unit)를 대상으로 함
•
공조기 모터에서 수집된 전류 데이터를 이용해서 공조기 모터의 이상을 감지
◦
스케줄에 의해 자동으로 on/off 되는데, 켜질 때 전류값이 크게 뛰는 점 이용
•
공조기 V벨트 탈락 및 슬립 감지 알고리즘 연구는 실제로 V벨트를 한줄 한줄 제거하면서 만들어낸 데이터를 이용
•
공조기 모터 주요 부품의 이상(상태) 감지(교체시기 감지) 알고리즘은 샘플 장비 데이터를 통해서 universal한 모델 생성 가능
•
결과 정확도는 95% 이상이라고 발표하셨는데 정확도 metric이 무엇인지 명시가 되어있지 않아 좀 궁금했고, test 정확도가 맞는건지 불분명했다. 이 내용 질문하신 분이 있었던 것 같은데 마지막에 잘 듣지 못했ㅎㅎ
뚱뚱하고 굼뜬 판다스(Pandas)를 위한 효과적인 다이어트 전략
실용적인 측면에서 나에게 가장 유용한 발표가 아니었나 싶다. 당장 내일부터 적용해볼 수 있는 꿀팁들이 많았다.
•
•
pandas는 정말 편리하지만 쓰다보면 데이터를 읽지못하거나, 너무 느리거나 하는 문제가 발생한다.
•
그 원인은 여러가지
◦
memory mapping issue
◦
auto garbage collecting
◦
data processing in memory at once
◦
single CPU process
◦
등등
•
판다(pandas)의 다이어트를 위한 pandas way!
식사량 조절 (Memory Optimization)
식이요법 (Enhancing Performance)
생활습관 (Adopting Convention)
from banksalad import python
•
발표자: 황성현
•
작년 파이콘 발표 “학습하는 조직”에 대한 얘기도 재미있게 들었는데, 이번 발표도 역시 재미있었다.
•
2015년부터 지금까지 뱅크샐러드의 서비스가 어떻게 만들어지고 업그레이드되어 왔는지 대장정을 되짚어가면서 이야기해줌
•
일단 모범답안은 아니어도 시도해보고, 안될 경우에 빨리 다른 길로 틀자!라는 마인드로 한 걸음 한 걸음 나아가는 모습이 되게 바람직한 스타트업 같다고 느껴졌당
라이트닝 토크 1일차
•
박조은님의 발표가 기억에 남는다. 워킹맘으로서 치열하게 시간을 쪼개서 공부하고, 유튜브까지 하시는 모습 응원하고 싶다! 동기부여 뿜뿜
2019-08-18 2일차 발표
100억건의 카카오톡 데이터로 똑똑한 일상대화 인공지능 만들기
스캐터랩 후원사 부스에서도 굉장히 좋은 느낌 받았는데, 역시 이 회사 NLP 맛집이었나보다! 앞으로 어떻게, 얼마나 발전해나갈지가 궁금한 핑퐁이었다!
•
일단 회사의 다른 서비스로부터 얻은 100억건의 카톡 데이터라는 엄청난 자산이
•
일상대화 인공지능은 기능대화에 비해 예측가능성이 낮음 (무한의 context)
•
일상대화 인공지능의 모델은 다음의 두 부분으로 나누어 볼 수 있음
◦
대화를 이해하는 모델
◦
대답할 수 있는 모델
•
대화 이해 모델: BERT로 학습 → 대화의 문맥을 이해할 수 있음
•
대답 모델: 리액션 모델을 통해 query coverage를 늘림
•
실제 성능 예시를 보면 사회적인 개념, 긴문장이나 이전 대화의 맥락을 이해하는 답변이 가능함
꼬마 모차르트가 되어보자(Feat. Magenta)
•
Magenta project는 머신러닝으로 예술작품을 생성할 수 있게 하는 도구를 제공하는 오픈소스 인프라라고. 이번에 처음 들어봤는데 꽤 흥미로웠다.
•
이 magenta 라이브러리를 이용해서 피아노 연주를 미디 파일로 만들어주는 모델을 만듦
집에서 만든 머신러닝 기반 자동번역기 (NO 딥러닝)
•
Koreanizer라는 이름으로 로마자로 표기된 우리말을 한글로 변환해주는 Ro-Ko Transliterator를 개발하신 이야기. 진지하게 생각해본 적이 없는 문제인데, 은근히 쓰임새가 있을 것 같다고 생각된다.
•
우선 이 모델의 기반이 되는 Statistical Machine Translation의 구성 요소 - language model, translation model, decoder에 대해 잘 설명해주심
•
외국어를 로마자로 변환하는 것은 Romanization, 반대로 로마자를 외국어로 변환하는 것을 Back-romanization이라고 한다. 이 중 Ro-Ko Transliteration은 Korean Back-romanization에 해당하는 것.
•
Ro-Ko trnasliteration은 가능한 로마자-한글의 매칭이 꼭 1:1이 아니라는 점, 음절 구분이 애매하다는 점에서 쉽지 않은 문제
•
training data를 구한 아이디어가 괜찮았던 것 같은데, 유튜브에 외국인을 대상으로 올려주는 k-pop 가사의 로마자 독음 데이터를 수집해서 사용하셨다고
•
http://koreanizer.herokuapp.com 여기에서 당분간 직접 결과물을 테스트해볼 수 있다고 한다!
온라인 뉴스 댓글은 정말 사람들의 목소리일까? - PART2
작년에 이 발표를 재미있게 들었던터라 이번 PART2 발표도 망설임 없이 선택! 파이썬을 활용해서 데이터를 통해 세상을 분석하는 아주 흥미로운 사례!!!
•
네이버 뉴스의 댓글 데이터를 엄청난 양으로 크롤링해서 다양한 통계분석을 하신 프로젝트 이야기 - 사람이 볼 수 있는 규모의 데이터라면 자동으로 볼 수 있게 하고, 사람이 볼 수 없는 규모라면 그동안 보지 못하던 새로운 것을 찾아보자는 접근
•
AWS에서 서버리스로 데이터 크롤링
•
총 38283개 기사에서 170만명 이상 유저의 5천만개 이상의 댓글을 수집
•
뉴스 댓글엔 생각보다 다양한 데이터가 담겨 있다.
◦
숫자로 표현 가능한 좋아요/싫어요 수, 답글 수 같은 numeric data
◦
작성시간, 기사 게시시간과 댓글 작성시간의 차이 등 time data
◦
댓글의 내용 그 자체의 text data
◦
안타깝지만 User data는 7월부로 식별화하는 방법이 완전히 사라졌다고.
•
수집한 댓글에서 outlier를 찾아보기 + political lean 쪼개보기 두 가지 방향으로 접근
•
아웃라이어를 찾는 아이디어
◦
댓글에 URL을 많이 쓰는 경우: 확실한 아웃라이어들이 존재. 청와대 청원 게시글이나 특정 기사/매체로 유입을 유도
◦
댓글의 text 길이: 300자 한도에 가득 채워 쓰는 아웃라이어가 보이고, 정치적 내용이 많음
◦
사용하는 어구/어휘의 다양성
▪
계속해서 비슷한 댓글을 달고다니는 유저가 존재
▪
올 해에는 여러 유저가 같은 말을 많이 하는 경우도 분석했는데, 비슷한 말을 하는 유저들을 네트워크 그래프로 그렸을 때 아주 도드라지게 중심에 묶이는 그룹이 강다니엘 응원 그룹이었더라는 데에서 모두 빵터졌다ㅋㅋ. 강다니엘 정말 대단쓰
▪
뉴스에 얼마나 빨리 댓글을 다는가
•
뉴스가 올라오자마자 댓글을 다는 경우, 한 사람이 댓글을 다는 간격이 너무 짧은 경우 존재
•
political lean 쪼개보기의 경우, 크롤링한 데이터 전부에 보수/진보 라벨링을 하는 것이 불가능하기 때문에 일부 샘플 유저를 라벨링해서 그 유저의 데이터를 가져와 분석했으며, 보수와 진보의 댓글 수 비율이 거의 10:1 정도였기 때문에 undesrsampling 필요
◦
웹에서 유저들이 interactive하게 정치성향을 태깅할 수 있는 웹서비스 개발 중!
법률을 디버깅하다(Debugging law)
이 발표도 작년에 같은 분이 발표하신 세션의 후속편이라고 볼 수 있을 것 같다. 나에겐 이렇게 다양한 분야에서 파이썬과 데이터 과학이 쓰인 사례에 대한 발표가 역시 흥미로운 것 같다!
•
’법률’을 하나의 개발 프로젝트로 보고 에러를 디버깅한다는 컨셉으로 세 가지 연구를 수행
•
분석1: 법률간 충돌 자동 검사
◦
특례제한법의 별표와 개별법 조문이 정확히 매칭되지 않는 경우를 검출. 정말 훌륭한 파이썬 활용 데이터 분석 사례가 아닌가!!
•
분석2: 형벌 규정 전수조사
◦
과잉범죄화(형벌규정이 증가하는 것)와 과잉형벌화(처벌의 강도가 상향되는 것)에 대한 첫번째 전수조사라고.
•
분석3: 법률 네트워크 분석2 (2018 PyCon 후속편)
◦
작년 발표에서 하셨던 30년간 우리나라 법률간 인용관계 네트워크 분석 결과를 네트워크 그래프로 시각화
•
일찍이 귀도 반 로썸은 “Computer Programming for Everybody”(1999)라고 말했다! 법률의 복잡성은 나날이 커져가고 있으므로, 파이썬과는 아무 관련이 없을 것 같은 법률가들에게도 파이썬은 훌륭한 도구가 될 수 있는 것이다!