Link
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 작업형2
- 컨테이너
- dataq
- 파이썬셋
- 공공빅데이터청년인턴
- 파이썬입출력
- 백준1920
- 딕셔너리
- 파이썬AHP
- 2회기출
- 빅분기
- 예측모델링
- 빅분기실기
- konlpy
- set시간복잡도
- 공빅데
- 파이썬
- 백준 2164
- 태블로
- 워드클라우드
- 행별속성합계
- 파이썬딕셔너리
- 실기
- 공빅데기관매칭
- csv병합
- 빅데이터분석기사
- 튜플
- 파이썬튜플
- 리스트
- 셋
- Today
- Total
Data Science
[디버깅] 형태소 분석 메모리 문제 본문
남양주 SNS 데이터 분석
약 72만개의 SNS 크롤링된 데이터를 형태소 분석하고 명사에 따라 카운팅을 해야했다.
문제는
형태소 분석시 샘플데이터로는 수월하게 작동했지만 전체를 한꺼번에 분석을 시도했더니 데이터양이 많아 시간이 오래걸리고, 아무런 응답도 되지않고, 메모리 오류가 발생했다.
이 오류는 메모리에 값들이 누적되면서 메모리가 초과되는 이슈가 발생한것으로 파악된다.
이를 해결하기 위해
분석양을 줄여가면서 10만개 까지는 한 번에 분석이 가능한것으로 파악되었다.
루프를 한번 돌때마다 해당 루프에서 분석한 row에 대해서 명사의 카운트를 반환하는 형태의 코드를 큰 틀에서 최대한 바꾸지 않고 해결하는 방안을 찾는 방법을 모색했다.
따라서 전체 데이터를 N등분하여 루프를 돌리기로 했다.
또한 한 루프를 마치면 담겨있던 변수들을 초기화 해주었다.
첫 n만개의 분석결과를 csv 파일로 저장을 하고 다음 루프 실행시 기존 csv 파일에 append 하는 형태로 해결되었다.
루프를 한 번 돌때마다 분석한 row에 대해서 명사의 카운트를 반환하기에 모두 append 된 csv 에서 명사기준 group by 해줘야 했다.
Comments