SlideShare una empresa de Scribd logo
1 de 33
Dynamic Word Cloud
Reflecting Flow of Time
Using Word2Vec
4팀 : 장민욱, 장하진, 김범수
목차
- 지난 발표 요약
- Pain & Needs
- Model 결과 분석
- Word Cloud 구현 이슈
- Word Cloud 결과 분석
팀원 소개
• 장민욱 : 응용 시나리오, 데이터 수집, 처리
• 김범수 : Word2Vec 구현 담당
• 장하진 : 데이터 시각화, 다이나믹스 담당
지난 발표 요약
• 왜 Word Cloud를 Word2Vec으로 만드는가?
• Text8과 4월 자료에 대한 결과 분석
• 평가에 대한 질문
Data Visualization
Data Visualization
Why WordCloud?
• 기존의 것은 정적이다
• 워듴클라우드를 직접 만들기 어렵다. 기존의 것들은 직접 입력
해줘야 함.
• 데이터 시각화를 해주는 또 하나의 자료
DataSet
Wikimedia dump service
• 한 달에 두 번, dump file을 제작, 배포
• Pages-meta-currnet.xml.bz2
• 모든 문서의 최신 버전
• 25.2GB
• Pages-articles.xml.bz2
• 일반 문서의 최신 버전
• 전체 편집 역사는 들어있지 않음
• 12.0GB
https://dumps.wikimedia.org/enwiki/
Using WikiExtractor
• Install WikiExtractor
Git clone https://github.com/attardi/wikiextractor.git
Cd wikiextractor/
sudo python setup.py install
• Using
WikiExtractor.py -o enwiki enwiki-latest-pages-articles.xml.bz2
Test DataSet
1. Enwiki-170220-pages.articles.xml.bz2
2. Enwiki-170420-pages.articles.xml.bz2
3. Enwiki-170620-pages.articles.xml.bz2
Google Hot Topic
2017.02 2017.04
검증 (02.20 / 04.20 / 06.01)
• Keyword
• 1) Japan
• 2) Summer
• 3) Text
• 4) Data
Word2Vec 결과 분석
• 왜 이런 값이 나왔는지?
• Training Set 크기에 따른 결과 분석
• 날짜에 따른 결과 분석
Wiki dump
• Wiki에서 만든 덤프를 이용해 text corpus생성
• Stemming, stopword 처리 X
• 12GB
• 20억개의 단어, 380만개의 단어 종류
구현 이슈
• 한 덤프당 12GB.
• 학습시간 1시간(cbow, hierarchical softmax 적용)
• 시간에 따른 특성이 명확하게 보이지 않음
• 최신 문서임에 따라 overwatch 게임이 연관성을 띌것으로 기대
• 위키문서의 특성상, 오래된 정보도 새로운 정보와 동일한 학습
을 거치게 된다.
• 새롭게 update된 정보만을 학습하는 기법이 필요할것이라 생각
됨
• 한 덤프당 12GB를 차지하다보니 동시에 여러 학습을 진행하기
힘들다.
• 여러 가상머신을 사용해서 학습만을 진행하는 머신과 서버 역
할을 하는 머신을 구분할 필요가 있다.
Word Cloud 구현 목표
• 1. Dynamic Word Cloud 구현
• 2. 시간의 변화량 표현
• 직관적인 시각적 효과 적용
1. Dynamic Word Cloud - 요구사항
• 일반적인 Word Cloud는 ‘단어’와 ‘단어의 빈도’가 기준.
• 우리가 목표로 하는 Word Cloud는 ‘키워드’와 ‘유사어 및 유사
도’를 기준으로 사용한다.
• 벡터화된 단어를 이해하고, 시간의 변화량을 표현할 수 있는
Word Cloud 라이브러리를 사용 또는 제작해야 한다.
Frequency와 Vector의 차이
• 지난 시간 질문 중
“Word2Vec을 이용한 Word Cloud는 어떤 의미가 있는가?”
• 단어를 Vector로 표현하여 Semantic을 고려할 수 있다.
• Google Hot Topic를 기준으로 활용
2. 시간의 변화량 표현 - 요구사항
• 일정한 간격으로 수집된 데이터의 변화량을 어떻게 표현할 것
인가?
• 단어의 크기, 위치, 색 등 정적인 요소를 동적으로 변화시켜 시
간의 흐름을 나타낼 수 있다.
3. 직관적인 시각적 효과 - 요구사항
• Word Cloud를 볼 사람들이 한눈에 제작자가 어떤 내용을 전달
하려 하는지를 이해할 수 있어야 한다.
구현 이슈
• 다양한 Word Cloud 라이브러리가 존재한다.
• JS : D3-Cloud, WordCloud2.js
• Python : pytagcloud, wordcloud
• C# : Sparc.TagCloud
• 기존 라이브러리 사용 vs 자체 라이브러리 제작
구현 이슈
• 기존 Word Cloud 라이브러리들은 정적 이미지만 제작이 가능.
• 기술적 요구사항인 “시간의 변화량 표현”을 충족하지 못함.
• 이를 만족하기 위해선 Word Cloud를 직접 만들어야 한다.
구현 결과
• 기존 라이브러리 사용시
구현 결과
• 새 구현체
개선점 및 향후 방향
• 다양한 DataSet 및 확장
• 보고서 등 활용할 수 있도록 다양한 시나리오
• Word Cloud 출력 형태 개선
친절한 설명
• 1) 창의성
• 기존 Frequency 기반 Word cloud의 개념을 전복
• 퀄리티
• 2) 기술적 완성도
• 구현 및 테스트
• Word Cloud 자체 구현
• 3) 기여도
• Word2Vec 구현 정도에 따른 성능 비교
• 개선점 제안
• Wiki dump를 사용하기 위한 튜토리얼 제시
Q & A
감사합니다
https://github.com/fromme0528/DataScience_Word2Vec

Más contenido relacionado

Similar a Dynamic Word Cloud Using Word2Vec - Final Presentation

Cloud DW technology trends and considerations for enterprises to apply snowflake
Cloud DW technology trends and considerations for enterprises to apply snowflakeCloud DW technology trends and considerations for enterprises to apply snowflake
Cloud DW technology trends and considerations for enterprises to apply snowflake
SANG WON PARK
 
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
자바스크립트 개발자가 되기 위한 플랜 강은심
자바스크립트 개발자가 되기 위한  플랜 강은심자바스크립트 개발자가 되기 위한  플랜 강은심
자바스크립트 개발자가 되기 위한 플랜 강은심
은심 강
 

Similar a Dynamic Word Cloud Using Word2Vec - Final Presentation (20)

비대면 MSA / CNA 강의 - Contactless Microservices Architecture Learning
비대면 MSA / CNA 강의 - Contactless Microservices Architecture Learning비대면 MSA / CNA 강의 - Contactless Microservices Architecture Learning
비대면 MSA / CNA 강의 - Contactless Microservices Architecture Learning
 
Cloud DW technology trends and considerations for enterprises to apply snowflake
Cloud DW technology trends and considerations for enterprises to apply snowflakeCloud DW technology trends and considerations for enterprises to apply snowflake
Cloud DW technology trends and considerations for enterprises to apply snowflake
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
 
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
Data Center to Cloud - AWS 마이그레이션 자동화 방법 및 도구 - AWS Summit Seoul 2017
 
누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...
누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...
누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...
 
SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
Prepo
PrepoPrepo
Prepo
 
클라우드 이야기1 2 20160823-신인철_slideshare
클라우드 이야기1 2 20160823-신인철_slideshare클라우드 이야기1 2 20160823-신인철_slideshare
클라우드 이야기1 2 20160823-신인철_slideshare
 
Word2Vec 개요 및 활용
Word2Vec 개요 및 활용Word2Vec 개요 및 활용
Word2Vec 개요 및 활용
 
Cloud for Kubernetes : Session1
Cloud for Kubernetes : Session1Cloud for Kubernetes : Session1
Cloud for Kubernetes : Session1
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
도메인 주도 설계 - DDD
도메인 주도 설계 - DDD도메인 주도 설계 - DDD
도메인 주도 설계 - DDD
 
Krnet2018 kakao container cloud dkos
Krnet2018 kakao container cloud dkosKrnet2018 kakao container cloud dkos
Krnet2018 kakao container cloud dkos
 
도메인주도설계
도메인주도설계도메인주도설계
도메인주도설계
 
자바스크립트 개발자가 되기 위한 플랜 강은심
자바스크립트 개발자가 되기 위한  플랜 강은심자바스크립트 개발자가 되기 위한  플랜 강은심
자바스크립트 개발자가 되기 위한 플랜 강은심
 
Fabric Server 제품소개
Fabric Server 제품소개Fabric Server 제품소개
Fabric Server 제품소개
 
KGC 2013 DevSisters
KGC 2013 DevSistersKGC 2013 DevSisters
KGC 2013 DevSisters
 
객체지향프로그래밍 특강
객체지향프로그래밍 특강객체지향프로그래밍 특강
객체지향프로그래밍 특강
 
SoftLayer에서 VM 생성해보기!
SoftLayer에서 VM 생성해보기!SoftLayer에서 VM 생성해보기!
SoftLayer에서 VM 생성해보기!
 

Dynamic Word Cloud Using Word2Vec - Final Presentation

  • 1. Dynamic Word Cloud Reflecting Flow of Time Using Word2Vec 4팀 : 장민욱, 장하진, 김범수
  • 2. 목차 - 지난 발표 요약 - Pain & Needs - Model 결과 분석 - Word Cloud 구현 이슈 - Word Cloud 결과 분석
  • 3. 팀원 소개 • 장민욱 : 응용 시나리오, 데이터 수집, 처리 • 김범수 : Word2Vec 구현 담당 • 장하진 : 데이터 시각화, 다이나믹스 담당
  • 4. 지난 발표 요약 • 왜 Word Cloud를 Word2Vec으로 만드는가? • Text8과 4월 자료에 대한 결과 분석 • 평가에 대한 질문
  • 7. Why WordCloud? • 기존의 것은 정적이다 • 워듴클라우드를 직접 만들기 어렵다. 기존의 것들은 직접 입력 해줘야 함. • 데이터 시각화를 해주는 또 하나의 자료
  • 9. Wikimedia dump service • 한 달에 두 번, dump file을 제작, 배포 • Pages-meta-currnet.xml.bz2 • 모든 문서의 최신 버전 • 25.2GB • Pages-articles.xml.bz2 • 일반 문서의 최신 버전 • 전체 편집 역사는 들어있지 않음 • 12.0GB https://dumps.wikimedia.org/enwiki/
  • 10. Using WikiExtractor • Install WikiExtractor Git clone https://github.com/attardi/wikiextractor.git Cd wikiextractor/ sudo python setup.py install • Using WikiExtractor.py -o enwiki enwiki-latest-pages-articles.xml.bz2
  • 11. Test DataSet 1. Enwiki-170220-pages.articles.xml.bz2 2. Enwiki-170420-pages.articles.xml.bz2 3. Enwiki-170620-pages.articles.xml.bz2
  • 13. 검증 (02.20 / 04.20 / 06.01) • Keyword • 1) Japan • 2) Summer • 3) Text • 4) Data
  • 14. Word2Vec 결과 분석 • 왜 이런 값이 나왔는지? • Training Set 크기에 따른 결과 분석 • 날짜에 따른 결과 분석
  • 15. Wiki dump • Wiki에서 만든 덤프를 이용해 text corpus생성 • Stemming, stopword 처리 X • 12GB • 20억개의 단어, 380만개의 단어 종류
  • 16. 구현 이슈 • 한 덤프당 12GB. • 학습시간 1시간(cbow, hierarchical softmax 적용) • 시간에 따른 특성이 명확하게 보이지 않음
  • 17.
  • 18.
  • 19. • 최신 문서임에 따라 overwatch 게임이 연관성을 띌것으로 기대 • 위키문서의 특성상, 오래된 정보도 새로운 정보와 동일한 학습 을 거치게 된다. • 새롭게 update된 정보만을 학습하는 기법이 필요할것이라 생각 됨
  • 20. • 한 덤프당 12GB를 차지하다보니 동시에 여러 학습을 진행하기 힘들다. • 여러 가상머신을 사용해서 학습만을 진행하는 머신과 서버 역 할을 하는 머신을 구분할 필요가 있다.
  • 21. Word Cloud 구현 목표 • 1. Dynamic Word Cloud 구현 • 2. 시간의 변화량 표현 • 직관적인 시각적 효과 적용
  • 22. 1. Dynamic Word Cloud - 요구사항 • 일반적인 Word Cloud는 ‘단어’와 ‘단어의 빈도’가 기준. • 우리가 목표로 하는 Word Cloud는 ‘키워드’와 ‘유사어 및 유사 도’를 기준으로 사용한다. • 벡터화된 단어를 이해하고, 시간의 변화량을 표현할 수 있는 Word Cloud 라이브러리를 사용 또는 제작해야 한다.
  • 23. Frequency와 Vector의 차이 • 지난 시간 질문 중 “Word2Vec을 이용한 Word Cloud는 어떤 의미가 있는가?” • 단어를 Vector로 표현하여 Semantic을 고려할 수 있다. • Google Hot Topic를 기준으로 활용
  • 24. 2. 시간의 변화량 표현 - 요구사항 • 일정한 간격으로 수집된 데이터의 변화량을 어떻게 표현할 것 인가? • 단어의 크기, 위치, 색 등 정적인 요소를 동적으로 변화시켜 시 간의 흐름을 나타낼 수 있다.
  • 25. 3. 직관적인 시각적 효과 - 요구사항 • Word Cloud를 볼 사람들이 한눈에 제작자가 어떤 내용을 전달 하려 하는지를 이해할 수 있어야 한다.
  • 26. 구현 이슈 • 다양한 Word Cloud 라이브러리가 존재한다. • JS : D3-Cloud, WordCloud2.js • Python : pytagcloud, wordcloud • C# : Sparc.TagCloud • 기존 라이브러리 사용 vs 자체 라이브러리 제작
  • 27. 구현 이슈 • 기존 Word Cloud 라이브러리들은 정적 이미지만 제작이 가능. • 기술적 요구사항인 “시간의 변화량 표현”을 충족하지 못함. • 이를 만족하기 위해선 Word Cloud를 직접 만들어야 한다.
  • 28. 구현 결과 • 기존 라이브러리 사용시
  • 30. 개선점 및 향후 방향 • 다양한 DataSet 및 확장 • 보고서 등 활용할 수 있도록 다양한 시나리오 • Word Cloud 출력 형태 개선
  • 31. 친절한 설명 • 1) 창의성 • 기존 Frequency 기반 Word cloud의 개념을 전복 • 퀄리티 • 2) 기술적 완성도 • 구현 및 테스트 • Word Cloud 자체 구현 • 3) 기여도 • Word2Vec 구현 정도에 따른 성능 비교 • 개선점 제안 • Wiki dump를 사용하기 위한 튜토리얼 제시
  • 32. Q & A

Notas del editor

  1. 디지털 시대의 학습자는 영상, 디지털 매체를 비롯해 SNS, 클라우드 서비스 등을 통한 무한정의 데이터에 노출되어 있으며 이와 같은 환경의 변화에 따라 데이터 표현과 수용방식의 변화가 요구되고 있다. 다시 말해 수많은 정보들을 시각적으로 묘사하고 필요한 정보를 효율적이고 명확하게 제공하는 데이터 시각화의 필요성이 증가하고 있다. [1] 최근 빅데이터 기술시장의 성장과 함께 시각화 기술도 중요한 기술요소로 자리잡고 있다. 또한 전통적인 시각화 기술은 주로 시스템 로그나 실험 분석 결과 등에 대한 통계정보를 그래프로 보여주는 방식인데 반해, 빅데이터의 시각화 측면에서는 모든 데이터를 살펴보는 것에 제약이 따르기 때문에 시각화의 기술적인 요소와 더불어 데이터를 요약하고, 한 눈에 살펴볼 수 있도록 돕는 시각화 방법론적 요소의 중요성이 커지고 있다. [2] 데이터 시각화에서는 미적 형태와 기능성 두 가지를 모두 가져가는 것으로 대개 데이터들의 연결과 그룹핑을 표현하는데 초점을 둔다.[3]
  2. 디지털 시대의 학습자는 영상, 디지털 매체를 비롯해 SNS, 클라우드 서비스 등을 통한 무한정의 데이터에 노출되어 있으며 이와 같은 환경의 변화에 따라 데이터 표현과 수용방식의 변화가 요구되고 있다. 다시 말해 수많은 정보들을 시각적으로 묘사하고 필요한 정보를 효율적이고 명확하게 제공하는 데이터 시각화의 필요성이 증가하고 있다. [1] 최근 빅데이터 기술시장의 성장과 함께 시각화 기술도 중요한 기술요소로 자리잡고 있다. 또한 전통적인 시각화 기술은 주로 시스템 로그나 실험 분석 결과 등에 대한 통계정보를 그래프로 보여주는 방식인데 반해, 빅데이터의 시각화 측면에서는 모든 데이터를 살펴보는 것에 제약이 따르기 때문에 시각화의 기술적인 요소와 더불어 데이터를 요약하고, 한 눈에 살펴볼 수 있도록 돕는 시각화 방법론적 요소의 중요성이 커지고 있다. [2] 데이터 시각화에서는 미적 형태와 기능성 두 가지를 모두 가져가는 것으로 대개 데이터들의 연결과 그룹핑을 표현하는데 초점을 둔다.[3]
  3. 디지털 시대의 학습자는 영상, 디지털 매체를 비롯해 SNS, 클라우드 서비스 등을 통한 무한정의 데이터에 노출되어 있으며 이와 같은 환경의 변화에 따라 데이터 표현과 수용방식의 변화가 요구되고 있다. 다시 말해 수많은 정보들을 시각적으로 묘사하고 필요한 정보를 효율적이고 명확하게 제공하는 데이터 시각화의 필요성이 증가하고 있다. [1] 최근 빅데이터 기술시장의 성장과 함께 시각화 기술도 중요한 기술요소로 자리잡고 있다. 또한 전통적인 시각화 기술은 주로 시스템 로그나 실험 분석 결과 등에 대한 통계정보를 그래프로 보여주는 방식인데 반해, 빅데이터의 시각화 측면에서는 모든 데이터를 살펴보는 것에 제약이 따르기 때문에 시각화의 기술적인 요소와 더불어 데이터를 요약하고, 한 눈에 살펴볼 수 있도록 돕는 시각화 방법론적 요소의 중요성이 커지고 있다. [2] 데이터 시각화에서는 미적 형태와 기능성 두 가지를 모두 가져가는 것으로 대개 데이터들의 연결과 그룹핑을 표현하는데 초점을 둔다.[3]
  4. 이 중 2번까지 완료된 상태. 왜 이러한 목표를 선정하였는가? -> 요구사항에서 설명
  5. 여기부턴 이 목표를 세우며 고민했던 점들 d3-cloud 등 기존 라이브러리 사용시, Word Cloud에 사용된 데이터가 수정되면 반드시 새로 그려야 함. 이 과정에서 위치, 색 등 유지되어야 할 값들이 파괴됨.
  6. 색, 모양 등의 커스터마이징이 가능해야 한다. 한눈에 보고 단어를 읽기 쉬워야 한다.
  7. 다양한 언어가 다양한 Word Cloud 라이브러리를 가지고 있습니다. 우리 조는 기존 라이브러리를 활용할지, 자체로 제작할지 중 하나를 골라야 하는 상황에 직면했습니다.
  8. Lorem, ipsum 등 가장 많이 등장하는 단어의 위치가 바뀌는 문제가 있으며, 이러한 변화가 연속적이지 않다 (사진 2장이 전부)
  9. (동영상) 데이터가 왜 더미나면, Word2Vec 쪽이 아직 바뀌고 있기 때문.