제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [YouPlace 팀] : 카프카와 스파크를 활용한 유튜브 영상 속 제주 명소 검색 BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 YouPlace팀에서는 아래와 같은 프로젝트를 진행했습니다.
<aside>
이젠 검색도 유튜브 시대
제주여행을 계획할 때 브이로그 영상을 많이 참고하실텐데요
수많은 영상들과 영상 속 분산된 명소들을 하나 하나 찾으려 생각하면 막막하지 않으셨나요?
이러한 고민을 갖고 계신 분들을 위해, 유튜브 브이로거들이 찾아간 여행 명소들을 지도에서 한 눈에 파악할 수 있도록 만들었어요
(github : https://github.com/Boaz-Youplace)
16기 엔지니어링 고은서 | 중앙대학교 소프트웨어학부
16기 엔지니어링 류정화 | 성신여자대학교 융합보안공학과
16기 엔지니어링 송경민 | 국민대학교 소프트웨어학과
2018년 6월 24일 "백수들의 Conference"에서 발표한 개발자를 위한 (블로그) 글쓰기 intro입니다
좋은 글을 많이 보는 노하우 + 꾸준히 글을 작성하는 노하우에 대해 주로 이야기했습니다! (어떻게 글을 작성하는가는 없어요!)
피드백은 언제나 환영합니다 :)
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [개미야 뭐하니?팀] : 투자자의 반응을 이용한 실시간 등락 예측(feat. 카프카)BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 개미야 뭐하니? 팀에서는 아래와 같은 프로젝트를 진행했습니다.
[Web 발신] 5분 후, 당신이 투자한 주식이 떨어집니다!
실시간으로 내 주식의 등락을 알려주는 ai가 있다?
이것만 있으면 나도 주린이 탈출
개미와 함께하는 최적의 매도 매수 타이밍
지금 이 순간, 내 주식의 미래를 볼 수 있다
(신청: https://github.com/jayleenym/AYOA)
16기 강지수 동덕여자대학교 정보통계학과
16기 김서민 숙명여자대학교 컴퓨터과학과
16기 김윤기 한양대학교 대학원 컴퓨터소프트웨어학과
16기 문예진 서강대학교 경제학과 / 빅데이터 사이언스
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [YouPlace 팀] : 카프카와 스파크를 활용한 유튜브 영상 속 제주 명소 검색 BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 YouPlace팀에서는 아래와 같은 프로젝트를 진행했습니다.
<aside>
이젠 검색도 유튜브 시대
제주여행을 계획할 때 브이로그 영상을 많이 참고하실텐데요
수많은 영상들과 영상 속 분산된 명소들을 하나 하나 찾으려 생각하면 막막하지 않으셨나요?
이러한 고민을 갖고 계신 분들을 위해, 유튜브 브이로거들이 찾아간 여행 명소들을 지도에서 한 눈에 파악할 수 있도록 만들었어요
(github : https://github.com/Boaz-Youplace)
16기 엔지니어링 고은서 | 중앙대학교 소프트웨어학부
16기 엔지니어링 류정화 | 성신여자대학교 융합보안공학과
16기 엔지니어링 송경민 | 국민대학교 소프트웨어학과
2018년 6월 24일 "백수들의 Conference"에서 발표한 개발자를 위한 (블로그) 글쓰기 intro입니다
좋은 글을 많이 보는 노하우 + 꾸준히 글을 작성하는 노하우에 대해 주로 이야기했습니다! (어떻게 글을 작성하는가는 없어요!)
피드백은 언제나 환영합니다 :)
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [개미야 뭐하니?팀] : 투자자의 반응을 이용한 실시간 등락 예측(feat. 카프카)BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 개미야 뭐하니? 팀에서는 아래와 같은 프로젝트를 진행했습니다.
[Web 발신] 5분 후, 당신이 투자한 주식이 떨어집니다!
실시간으로 내 주식의 등락을 알려주는 ai가 있다?
이것만 있으면 나도 주린이 탈출
개미와 함께하는 최적의 매도 매수 타이밍
지금 이 순간, 내 주식의 미래를 볼 수 있다
(신청: https://github.com/jayleenym/AYOA)
16기 강지수 동덕여자대학교 정보통계학과
16기 김서민 숙명여자대학교 컴퓨터과학과
16기 김윤기 한양대학교 대학원 컴퓨터소프트웨어학과
16기 문예진 서강대학교 경제학과 / 빅데이터 사이언스
서울시 챗봇팀이 개발한 ‘청년정책봇’은 시나리오 기반이 아닌 딥러닝 기반의 챗봇 서비스다. ETRI에서 개발한 KorBERT를 통해 언어 처리 모델을 대신하고, 형태소 분석 API를 통해 질문 문장에 대한 의도를 분석하였다. 카카오에서 배포한 khaii 형태소 분석기 적용을 통해 구문분석 정확도를 향상을 확인할 수 있었다. 또한, 위키 QA API를 통해 일반적인 질의응답을 위한 기능을 추가했다. 현재 상용화된 챗봇서비스의 대부분은 미리 구성된 시나리오(Flowchart)를 따라가는 방식을 활용하며, 자연어 처리 기술은 신뢰도가 낮아 사용되지 않고 있다. 그에 반해, ‘청년정책봇’은 cdQA 파이프라인을 접목해 유사도 높은 문서를 언어 처리 모델에 적용하는 방식으로 접근해 신뢰도를 높일 수 있었다. 기존 빌더를 통해, 상용화된 서비스 대비 두 가지 장점이 있다. 첫 번째 장점은 딥러닝 모델에 따른 발전 가능성으로써 ETRI KorBERT의 지속적인 개선에 따라 청년정책봇의 기계 독해 성능도 같이 개선된다는 것이다. 두 번째 장점은 서비스 지속 가능성으로써 cdQA 파이프라인에 기반해 주기적인 웹 크롤링을 통해 데이터 추가가 가능하기 때문에 소프트웨어 유지 보수에 필요한 자원을 최소화할 수 있다는 것이다. 청년정책 챗봇을 통해 cdQA 파이프라인과 ETRI BERT 모델을 활용해 기존의 데이터 인풋 제한을 극복하고 기계 독해에 대한 솔루션을 제시할 수 있었다.
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [쇼미더뮤직 팀] : 텍스트 감정추출을 통한 노래 추천BOAZ Bigdata
데이터 분석 프로젝트를 짆애한 쇼미더뮤직 팀에서는 아래와 같은 프로젝트를 진행했습니다.
내 하루의 감정을 통해 노래를 추천받을 수 있다면 얼마나 좋을까?
자연어처리와 추천시스템 기법의 collaboration..
여러분의 감정을 추출하고, 어울리는 노래를 추천해드립니다.
**쇼미더뮤직!**
16기 김양경 건국대학교 기술경영학과
15기 김은선 세종대학교 데이터사이언스학과
16기 유수빈 동덕여자대학교 정보통계학과
16기 이상민 경희대학교 소프트웨어융합학과
16기 조하늘 동덕여자대학교 국제경영학과, 정보통계학과
16기 최 리 건국대학교 응용통계학과
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용Susang Kim
도입
AI Chatbot 소개
Chatbot Ecosystem
Closed vs Open Domain
Rule Based vs AI
Chat IF Flow and Story Slot
AI기반의 학습을 위한 Data 구성 방법
Data를 구하는 법 / Train을 위한 Word Representation
Data의 구성 / Data Augmentation(Intent, NER)
자연어처리 위한 AI 적용 방안
Intent (Char-CNN) / QnA (Seq2Seq)
Named Entity Recognition (Bi-LSTM CRF) / Ontology (Graph DB)
Chatbot Service를 위한 Architecture 구성
Chatbot Architecture
NLP Architecture
Web Service Architecture
Bot builder / Chatbot API
Test Codes for Chatbot
실무에서 발생하는 문제와 해결 Tips
Ensemble and voting / Trigger / Synonym(N-Gram)
Tone Generator / Parallel processing / Response Speed
마무리
[설명 코드]
Text Augmentation / Slot Bot / QA Bot / Graph DB / Response Generator
Little Big Data #1 다양한 사람들의 데이터 사이언스 이야기에서 발표한 자료입니다
궁금한 것은 언제나 문의주세요 :)
행사 후기는 https://zzsza.github.io/etc/2018/04/21/little-big-data/ 에 있습니다!
(2018.5 내용 추가) 현재 회사가 없으니, 제게 관심있으신 분들도 연락 환영합니다 :)
넥슨코리아 사내 발표자료로 왓 스튜디오에서 파이썬으로 《야생의 땅: 듀랑고》 서버를 비롯한 여러가지 도구를 만든 경험을 공유합니다.
- 게임서버와 각종 툴, 테스트/빌드/배포 시스템을 만들 때 사용한 재료
- 파이썬 코드 품질 개선, 디버깅, 프로파일링, 최적화
- 파이썬 오픈소스 생태계와 왓 스튜디오가 하는 오픈소스 활동
제 16회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Stalker 팀] : 감정분석을 통한 MBTI 기반 개인별 투자 성향 분석BOAZ Bigdata
데이터 분석 프로젝트를 진행한 Stalker 팀에서는 아래와 같은 프로젝트를 진행했습니다.
감정분석을 통한 MBTI 기반 개인별 투자 성향 분석
16기 김지원 명지대학교 산업경영공학과
17기 곽윤경 홍익대학교 디자인경영융합학부
17기 김나현 서울대학교 언어학과
17기 유승희 중앙대학교 응용통계학과
17기 조수연 연세대학교 통계데이터사이언스학과
서울시 챗봇팀이 개발한 ‘청년정책봇’은 시나리오 기반이 아닌 딥러닝 기반의 챗봇 서비스다. ETRI에서 개발한 KorBERT를 통해 언어 처리 모델을 대신하고, 형태소 분석 API를 통해 질문 문장에 대한 의도를 분석하였다. 카카오에서 배포한 khaii 형태소 분석기 적용을 통해 구문분석 정확도를 향상을 확인할 수 있었다. 또한, 위키 QA API를 통해 일반적인 질의응답을 위한 기능을 추가했다. 현재 상용화된 챗봇서비스의 대부분은 미리 구성된 시나리오(Flowchart)를 따라가는 방식을 활용하며, 자연어 처리 기술은 신뢰도가 낮아 사용되지 않고 있다. 그에 반해, ‘청년정책봇’은 cdQA 파이프라인을 접목해 유사도 높은 문서를 언어 처리 모델에 적용하는 방식으로 접근해 신뢰도를 높일 수 있었다. 기존 빌더를 통해, 상용화된 서비스 대비 두 가지 장점이 있다. 첫 번째 장점은 딥러닝 모델에 따른 발전 가능성으로써 ETRI KorBERT의 지속적인 개선에 따라 청년정책봇의 기계 독해 성능도 같이 개선된다는 것이다. 두 번째 장점은 서비스 지속 가능성으로써 cdQA 파이프라인에 기반해 주기적인 웹 크롤링을 통해 데이터 추가가 가능하기 때문에 소프트웨어 유지 보수에 필요한 자원을 최소화할 수 있다는 것이다. 청년정책 챗봇을 통해 cdQA 파이프라인과 ETRI BERT 모델을 활용해 기존의 데이터 인풋 제한을 극복하고 기계 독해에 대한 솔루션을 제시할 수 있었다.
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [쇼미더뮤직 팀] : 텍스트 감정추출을 통한 노래 추천BOAZ Bigdata
데이터 분석 프로젝트를 짆애한 쇼미더뮤직 팀에서는 아래와 같은 프로젝트를 진행했습니다.
내 하루의 감정을 통해 노래를 추천받을 수 있다면 얼마나 좋을까?
자연어처리와 추천시스템 기법의 collaboration..
여러분의 감정을 추출하고, 어울리는 노래를 추천해드립니다.
**쇼미더뮤직!**
16기 김양경 건국대학교 기술경영학과
15기 김은선 세종대학교 데이터사이언스학과
16기 유수빈 동덕여자대학교 정보통계학과
16기 이상민 경희대학교 소프트웨어융합학과
16기 조하늘 동덕여자대학교 국제경영학과, 정보통계학과
16기 최 리 건국대학교 응용통계학과
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용Susang Kim
도입
AI Chatbot 소개
Chatbot Ecosystem
Closed vs Open Domain
Rule Based vs AI
Chat IF Flow and Story Slot
AI기반의 학습을 위한 Data 구성 방법
Data를 구하는 법 / Train을 위한 Word Representation
Data의 구성 / Data Augmentation(Intent, NER)
자연어처리 위한 AI 적용 방안
Intent (Char-CNN) / QnA (Seq2Seq)
Named Entity Recognition (Bi-LSTM CRF) / Ontology (Graph DB)
Chatbot Service를 위한 Architecture 구성
Chatbot Architecture
NLP Architecture
Web Service Architecture
Bot builder / Chatbot API
Test Codes for Chatbot
실무에서 발생하는 문제와 해결 Tips
Ensemble and voting / Trigger / Synonym(N-Gram)
Tone Generator / Parallel processing / Response Speed
마무리
[설명 코드]
Text Augmentation / Slot Bot / QA Bot / Graph DB / Response Generator
Little Big Data #1 다양한 사람들의 데이터 사이언스 이야기에서 발표한 자료입니다
궁금한 것은 언제나 문의주세요 :)
행사 후기는 https://zzsza.github.io/etc/2018/04/21/little-big-data/ 에 있습니다!
(2018.5 내용 추가) 현재 회사가 없으니, 제게 관심있으신 분들도 연락 환영합니다 :)
넥슨코리아 사내 발표자료로 왓 스튜디오에서 파이썬으로 《야생의 땅: 듀랑고》 서버를 비롯한 여러가지 도구를 만든 경험을 공유합니다.
- 게임서버와 각종 툴, 테스트/빌드/배포 시스템을 만들 때 사용한 재료
- 파이썬 코드 품질 개선, 디버깅, 프로파일링, 최적화
- 파이썬 오픈소스 생태계와 왓 스튜디오가 하는 오픈소스 활동
제 16회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Stalker 팀] : 감정분석을 통한 MBTI 기반 개인별 투자 성향 분석BOAZ Bigdata
데이터 분석 프로젝트를 진행한 Stalker 팀에서는 아래와 같은 프로젝트를 진행했습니다.
감정분석을 통한 MBTI 기반 개인별 투자 성향 분석
16기 김지원 명지대학교 산업경영공학과
17기 곽윤경 홍익대학교 디자인경영융합학부
17기 김나현 서울대학교 언어학과
17기 유승희 중앙대학교 응용통계학과
17기 조수연 연세대학교 통계데이터사이언스학과
‘관계맺기’의 관점에서 비즈니스 바라보기Hangil Kim
1. (연결) '같음'으로 사람을 모으고 '다름'으로 가치를 제공하라
- 유사한 관심사를 중심으로 사람을 모으되, 구성원의 배경이나 관점의 다양성을 유지해야 커뮤니티 가치가 상승할 수 있다.
2. (연결) 장벽을세워라
- 일정 수준의 진입장벽은 외부자들에게는 커뮤니티에 대한 흥미와 가치를 높여줌과 동시에 내부자들에게는 소속감을 부여해준다
- '이상한’ 사람이 유입되었을 때, 지불해야하는 비용은 엄청남
3. (교류) 관계수준에 차등을 부여할 수 있는 기회를 제공하라
- 한 사람이 안정적으로 유지할 수 있는 사회적 관계에는 한계가 존재 (150명(던바의 수))
- 누구나 다 연결한다고 좋은 것은 아니다. 차등적 관계맺음의 기회 제공 필요
4 . (교류) 경계를 지켜라
- 사적영역과 분리되었을 때 오히려 진솔한 교류 가능
- 특정 시공간에 한정적인, 그러나 강렬한! "선데이 크리스챤 모임"이 필요
5 . (교류) 여전히 오프라인은 중요하다
- 온라인을 통한 교류가 일상이 되었지만 장기적/강도높은 교류가 필요하다면 오프라인을 통한 감성적 교감은 필수
- 하지만 한 번 오프라인 만남으로 감성적 교감이 이루어진 후에는 온라인으로도 충분히 관계 유지 가능
6 . (성장) 커뮤니티를 관통하는 하나의 가치를 만들어라
- 소모임을 넘어 거대 커뮤니티를 만들 수 있는 방법은 무엇일까?
- 이들이 공유할 수 있는 비전/가치를 만들어내야 한다. <이기적 유전자>에서 말한 meme!
K-MOOC는 국내 최고 수준의 고등교육을 무료로 공개하여 누구나 어디서든 학습하고 소통할 수 있도록 돕는
한국형 온라인 공개강좌 플랫폼입니다.
모바일 앱 마켓에서 "K-MOOC"를 검색하시거나 아래 주소로 접속하시면 이용가능합니다.
-iOS : https://goo.gl/jgMrC1
-Android : https://goo.gl/1dJyQS
1. 한국어 문서 추출요약 AI 경진대회
참가 후기
김한길
Photo by Sudan Ouyang on Unsplash
2. 대회 개요 및 제한조건
• 대회명: 한국어 문서 추출요약 AI 경진대회
• 대회 기간: 2020.11.11 ~ 2020.12.09 18:00
• 데이터: 뉴스기사 데이터셋 + 요약문(사람 생성)
• 규정
• 평가지표: ROUGE-1(점수1), ROUGE-2(점수2), ROUGE-L(점수3)별 개별 순위 합산 역순
• 추출요약: 주어진 본문 내 문장 중 3개를 선택하여 그대로 제출
• 외부 데이터 및 사전 학습 모델
• 외부 데이터 사용 불가
• 지정된 Pre-trained 모델(ETRI-BERT, SKT-BERT, SKT-GPT)만 사용만 가능
2
3. Data 개요 및 EDA
3
https://colab.research.google.com/drive/1Z8MoApNT4C
JnsPN5bAiKm7XOlUic0kl9?usp=sharing
4. Data 개요 및 EDA
4
article_original(원문) 분포
• Sentences
• Words
5. Data 개요 및 EDA
5
abstractive(정답요약문) 분포
• Sentences: 대부분 1문장으로 구성되어 있음(일부 2~3문장 존재)
• Words
6. Data 개요 및 EDA
6
Abstractive extractive_sents no_extractive_sents
7. 모델: BERTSUMEXT
• 논문 및 코드
• [BERTSum] Fine-tune BERT for Extractive Summarization; Code
• [PreSumm] Text Summarization with Pretrained Encoders; Code
7
8. 모델: BERTSUMEXT
• 특징1: 기 Pre-trained BERT를 summarization task 수행을 위한 embedding layer로 활용하려면?
→ 여러 sentence를 하나의 인풋으로 넣어줘야 함
• Input document에서 매 문장의 앞에 [CLS] 토큰을 삽입
( [CLS] 토큰에 대응하는 BERT 결과값(T[CLS])을 각 문장별 representation으로 간주)
• 매 sentence마다 다른 segment embeddings 토큰을 더해주는 interval segment embeddings
8
10. 모델: BERTSUMEXT
• 모델 선정 이유
• BERT-based pre-trained model을 그대로 활용할 수 있음
• ‘간단한 구조를 가지고 있으니 한국어 모델로 바꾸는게 쉽지 않을까?’
• Pre-trained BERT로 KoBERT(SKTBERT) 사용
• BERTSUMEXT 코드를 살펴보니 Huggingface transformers 라이브러리를 사용하여 Pre-trained
BERT 이용하고 있었음
→ ‘Transformers(monologg)를 통해 Huggingface transformers 라이브러리를 지원하는
KoBERT와 연결이 용이하지 않을까?’
• 관련 코드: https://github.com/SKTBrain/KoBERT
10
11. 초기 시도: eng -> kor
11
데이터 형태 맞춰주기
한글 전처리 적용 + 기타 각종 버그 해결했더니
돌아는가더라!
토크나이저 변경
모델 변경
12. But… 15~20위권에서 왔다갔다…
12
혼자 하다 보니 문제가 무엇인지 파악이 어려움
- 전처리가 부족한가? 잘못됐나?
- 정답 sentence로 ext를 사용했어야 했나?
- BERT 연결 부분이 잘못됐나? Special token 설정을 잘못했나?
- KoBERT가 구린가? KorBERT로 바꿔볼까?
- BERTSUMEXT 모델이 구린가?
13. 대회 마감 당일 새벽… 심각한 버그 발견 → 수정
• 어떻게 하면 gold summary(사람이 직접 생성한 Abstractive sentence)를
Oracle summary(extract sentence)로 전환할 것인가?
→ 보통 greedy selection 방식을 선택
• 이를 선택하기 전 클리닝 단계에서 한글이 모두 제외되는 문제 발견 -> 수정
• 성능을 높이고 대회규정을 충족시켜주기 위해 mix_selection 구현
• greedy 방식으로 무조건 3문장까지 추출되도록
• 추출한 3문장의 모든 조합(3!)에 대해 rouge1+rouge2+rougeL score가 가장 높은 경우를 선정
13
14. 대회 마감 당일 새벽… 심각한 버그 발견 → 수정
Unused token 이용 문제
• BERTSUMEXT은 기 BERT 모델에서 고려되지 않은 TGT용(정답 summary sentence에 사용되는)
special token인 tgt_bos, tgt_eos, tgt_sent_split을 추가로 사용
• KoBERT는 vocab에 unused token을 포함하고 있지 않음
→ 기존 vocab중 (1) 주어진 train data set에 등장하지 않고, (2) 의미가 유사한 vocab으로 대체 후
fine-tuning하여 이용
14
16. Preprocessing
관련 주요 파일 목록
• src/make_data.py, preprocess.py : Preprocessing 실행 및 기본 데이터 변환
• Src/prepro/data_builder.py, tokenization_kobert.py : BERT 입력용 데이터 포맷 생성
16
17. Preprocessing: Cleaning
• Pre-trained BERT를 이용함에 따라 Cleaning은 최소한으로 적용
• html 삭제
• tgt special token으로 사용한 문자열( ¶, ----------------, ;) 제거
• 여기서 삽질을 엄청 오랜시간동안 함
17
18. Preprocessing: 정답(oracle) summary 문장 만들기
• 주어진 데이터셋에서 정답 문장으로 "extractive"가 아닌 "abstractive" 문장을 이용
① abstractive 문장들은 문장간 구분이 되어 있지 않게 주어졌기 때문에 kss를 수정한 함수를 적용하여
문장 토크나이징 수행
18
src/make_data.py
19. Preprocessing: 정답(oracle) summary 문장 만들기
② abstractive 문장에 대해
(1) greedy한 방식으로 rouge score를 높일 수 있는 문장 3개 추출,
(2) 선택한 3개 문장의 모든 조합(permutaion)에 대해서 rouge score를 최대로 하는 조합을 구함
③ BERT 입력용 데이터 생성하기( 앞 "PreSumm" 설명 참조)
19
srcpreprodata_builder.py
20. Fine-tuning
관련 주요 파일 목록
• src/make_data.py, preprocess.py : Preprocessing 실행 및 기본 데이터 변환
Training parameters
• batch_size: 3000
• learning rate: warmup 방식 사용
0.0000001부터 50 step당 0.0000001씩 증가하여 10000step까지 0.00002로 증가하다가 다시
감소하는 방식 사용
결과
• 총 50000 step까지 training
• validation set으로 테스트한 결과 7000 step에서 가장 좋은 성능을 보임
20
22. 후기
배운점
• KoBERT 사용법 및 장단점 파악
• Pre-trained Model을 사용함에 있어서 Pre-training 관련 정보(전처리, 토크나이저)가 얼마나 중요한지!
• 오랜 시간 모델 트레이닝을 위한 기법들
• Distributed를 통한 GPU 활용
• Logger 중요성
• 빠른 실험 반복을 위한 파이프라인 구축
• ‘모델에 대한 이해’와 ‘구현’은 다른 문제다.
다시 한다면…
• 언론사 정보 반영
• 하이퍼파라미터 튜닝
• KorBERT(ETRI) 또는 적용해보기, do_lower_case를 False로 하고 해보기
22
23. 실행 환경
• E5-2620 v4 @ 2.10GHz x 16
• NVIDIA Quadro RTX 5000 x 2
• Ubuntu 18.04
23
24. 실행방법 안내
24
1. 필요 라이브러리 설치하기
python main.py -task install
2. 데이터 Preprocessing
# 2-1. 데이터를 ext/data/raw 에 넣어주기
# 2-2. Data preprocessing
# n_cpus 인자값을 이용할 CPU 수로 변경해주기
python main.py -task make_data -n_cpus 2
3. Fine-tuning
python main.py -task train -target_summary_sent abs -visible_gpus 0
4. Inference & make submissioon file
# visible_gpus 인자값을 이용할 GPU index 값으로 변경해주기
# 예(GPU 3개를 이용할 경우): -visible_gpus 0,1,2
python main.py -task test -test_from 1209_1236/model_step_7000.pt -visible_gpus 0
5. 최종 결과 파일 확인
경로: ext/data/results/submission_날짜_시간.csv