[23파이썬특강] 7강. TNA 5단계
텍스트 연결망 분석 5단계도
0. 연구 목표의 설정
- “개벽” 논조의 사회주의화 양상 고찰 (양상, 시점 등)
1. 방법: 텍스트 연결망 분석
- 선택: “개벽” 논조의 사회주의화를 어떻게 살펴볼 것인가
- 양적 분석 vs 질적 분석 ?
- 양적 분석 선택: 텍스트 연결망 분석(TNA: Text Network Analysis)
- “개벽”의 주요 논설을 수집, 정제 → 주요 논설 코퍼스 생성
- 단어를 세분: 사회주의 → 사회, 主義
- 명사 중심, 10회 이상만 남김
- 문장, 논설, 호수(+시간) 정보를 별개로 관리하는 DB 형태
2. 특성 벡터(feature vector) 설정: 문서-단어 행렬(dtm: document-term-matrix)을 동반
2.1. 논조를 드러내는 특성
- 선택: “개벽” 논조를 무엇으로 수량화할까?
- 고빈도 단어 vs 필자 성향 ?
- 고빈도 단어 선택: 고빈도 단어 50개를 특성으로 설정
2.2. 특성을 어떻게 숫자로 표현할 것인가
- 단순 빈도 vs 통계적 가중치
- 통계적 가중치(tfidf값): 단어빈도-역문서 빈도(tfidf: term frequency-inverse document frequency)
- tfidf는 문서 내에서 자주 등장하지만, 다른 문서들에서는 드물게 나타나는 단어들을 강조 → 이는 해당 문서의 주제나 내용을 특정 단어들로 효과적으로 대표할 수 있게 함.
- 곽기영 / 텍스트마이닝 - 빈도문석, 용어빈도-역문서빈도 (tfidf) / 1:34:40의 앞부분 7:18
2.3. 문서-단어 행렬
- 이 과정은 텍스트라는 비정형(unstructured) 데이터를 정형(structured) 데이터로 변환하는 과정과 맞물려 있다.
- 문서(document)는 문장(sent) 단위, 단어(term)는 특성(feature) 50개, 값(value)은 tfidf값
3. 시기 구분: 논조 변화의 마디를 파악하기
3.1. 구간 설정
- 변화의 마디를 좀 더 세밀하게 파악할 필요: 3개월 단위(分期 = quarter)의 구간(grid)
- dtm에서 document 단위를 34,030개 문장(sent) → 24개 구간
- 그러면 각 구간은 50개의 특성 벡터로 구성되는 시간 단위가 된다. (gtm = grid-term-matrix)
3.2. 구간과 구간 간의 유사도
- 서로 인접한 구간들은 특성 벡터가 유사하기 마련
- 이런 유사성이 상대적으로 달라지는 지점이 존재할 수 있음
- 24개 구간들의 상호 관계를 산출해서 군집화하면 시기구분의 단서를 얻을 수 있음
- 구간별 상호관계는 텍스트마이닝에서 통상 코사인유사도(cossin similarity)를 사용함
- 허민석 / 자연어처리의 유사도 측정 방법(거리측정, 코사인 유사도) / 3:37
- 군집화는 계층적 군집화(Hierarchical Clustering)가 효과적
3.3. 시기구분
- 고빈도 단어 50개로 구간별 군집화 → 대체로 잘 구분되지만, 경계선은 좀 모호(8q, 9q, 10q)
- 시기구분 판단 보완 위해 2-gram 단어로 gtm 및 구간 유사도 산출 (1-11q / 12-24q)
- 종합: 1기(period)는 1-10q, 2기는 11-24q로 결정
- 시기구분 정보를 df에 반영 → 시기별 코퍼스 분리
4. 연결망 시각화
4.1. 연결망 단순화 방법
- 특성 간 연결관계는 분석을 위해 단순화할 필요가 있다.
- 가중치가 있는 관계를 표현하는 연결망의 경우, 특정 링크값 이하를 일률적으로 절단하기보다, 상대적으로 중요한 관계를 남기는 절단 방식이 유용 = 패스파인더 연결망(pFnet) 방식이 효과적
4.2. 연결망이 핵심 구성 요소: 노드(점)와 링크(선)
- 가중 네트워크의 연결망 표시가 패스파인더 방식이므로, 군집화와 노드 중심성 산출도 패스파인더 방식에 걸맞는 방식을 따라야 함 –> wnet.exe nc.exe 툴 이용
- 링크 값(코사인 유사도): 패스파인더 방식.
- 노드 값(군집정보, 중심성 정보): wnet, nc 결과값
- 연결망 표현 툴: nodexl 템플릿 활용.
- 이상의 링크 값, 노드 값을, 파이썬 코딩으로 nodeXL 입력에 적합한 형태로 변형하면 편리
5. 문맥 통한 논조 분석
5.1. 노드의 중심성
- 시기별 연결망 그래프에서 단어의 군집, 중심성(全域 중심성, 地域 중심성) 파악
- 이러한 연결망 그래프의 중심성은 중심성 산점도를 통하여 효과적으로 파악 가능
- 그런데 특성 단어 50개의 연결망 그래프 만으로는 시기별 차이보다는 유사성이 더 잘 드러나는 경향도 있다.
- 이 경우 n-gram 단어, 특히 2-gram 단어들의 연결망을 살펴보면 시기별 차이가 좀 더 잘 드러난다.
5.2. 문맥 검색
- 노드 중심성 산점도에서 포착한 관찰 지점을 문맥 속에서 좀 더 구체적으로 살펴볼 수 있다.
- 사용자 함수를 활용하면 검색 과정을 좀 더 간단하게 진행할 수 있다.
댓글남기기