그래프 머신러닝으로 트위터 유저 성향 예측하기
트위터와 같은 소셜 미디어 데이터는 사용자들이 자신의 정치적 견해를 적극적으로 표현하는 공간으로 주목받아 왔으며, 이를 분석해 정치적 지형이나 여론 흐름을 파악하고자 하는 시도가 꾸준히 이어졌습니다.
트위터와 같은 온라인 공간에서는 사용자들이 단순히 텍스트를 작성하는 것을 넘어, 자신과 정치적 견해가 유사한 사람의 콘텐츠를 리트윗하고, 그들과 연결되는 방식으로 의견을 표출합니다.
이처럼 의견은 네트워크 구조 안에서 형성되고 확산되며, 특정한 집단성과 패턴을 띠는 특성이 있음에도, 기존 방법은 이러한 관계적 특성을 충분히 반영하지 못합니다.
네트워크 분석과 그래프 머신러닝을 이용한 모델이
유저의 정치 성향 예측에 효과적이었습니다.
배경
전통적인 텍스트 분석과 머신러닝 모델의 한계
기존 연구들은 정치적 성향 분석은 오랫동안 텍스트 기반 분석이나 전통적인 머신러닝 기법에 의존해왔습니다.
특히 트위터 데이터를 활용한 기존 연구들은 주로 게시물의 단어 빈도, 감성 점수, 해시태그의 출현 여부 등을 통해 유저의 입장을 분류해왔습니다.
하지만 트위터와 같은 온라인 공간에서는 사용자들이 단순히 텍스트를 작성하는 것을 넘어, 자신과 정치적 견해가 유사한 사람의 콘텐츠를 리트윗하고, 그들과 연결되는 방식으로 의견을 표출합니다.
이처럼 의견은 네트워크 구조 안에서 형성되고 확산되며, 특정한 집단성과 패턴을 띠는 특성이 있음에도, 전통적인 텍스트 분석 또는 머신러닝 모델은 이러한 사용자 간 상호작용이나 집단적 의견 형성 구조를 충분히 반영하기 어렵다는 한계를 지니고 있습니다.
주요 아이디어
유저 간 리트윗 네트워크 데이터로 정치 성향 분류
이 글에서는 유저의 정치 성향을 분류하기 위해 4가지 분류 모델을 제안합니다.
유저의 해시태그 데이터를 기반으로 한 머신러닝 모델
네트워크 분석 결과를 기반으로 한 머신러닝 모델
유저의 해시태그 데이터 + 네트워크 분석 결과를 기반으로 한 머신러닝 모델
유저의 해시태그 데이터 + 네트워크 분석 결과 + 유저 간 리트윗 네트워크 데이터를 기반으로 한 그래프 머신러닝 모델
그래프 머신러닝은 기존 머신러닝 모델처럼 단일 유저의 정보를 기준으로 분류하지 않습니다. 단일 유저 정보뿐 만 아니라 다른 유저와의 관계 정보까지 활용하여 Feature로 활용하기 때문에 은밀한 의견 연대, 집단 내 확산 패턴까지 포착함으로써 정치 성향을 더 정밀하고 견고하게 분류할 수 있다는 장점이 있습니다.
솔루션
1단계. 유저 간 리트윗 네트워크 데이터 구성
여기에서는 2022.01 ~ 2022.02 약 한 달 간 A 후보의 검색 키워드와 관련된 유저 간 리트윗 네트워크와 유저-해시태그 이용 관계 네트워크를 수집하였습니다.
유저 기본 정보(노드): 유저 ID, 해시태그, 유저 별 정치 성향, 총 80,963 명
유저 간 리트윗 관계(링크): 총 12,780 개의 링크로 구성
<유저 간 리트윗 네트워크 예시>
유저 ID(Source) | 유저 ID(Target) | 리트윗 횟수(Weight) |
user_01 | user_02 | 8 |
user_03 | user_04 | 6 |
user_01 | user_03 | 1 |
수집한 유저 간 리트윗 네트워크를 Component 분석하여 최대 컴포넌트(Giant Component)를 추출합니다.
그런 다음, 추출한 최대 컴포넌트에서 커뮤니티 분석으로 도출한 결과를 유저의 Feature로 활용합니다.
<유저 간 리트윗 네트워크>

2단계. 유저의 Feature 구성
수집한 유저의 해시태그 데이터를 기반으로 네트워크를 구성한 다음, 이를 매트릭스 형태로 변환하여 유저의 커뮤니티 분석 결과와 각각의 해시태그를 유저의 정치 성향 분류 학습 시 사용할 유저의 Feature로 활용합니다.
<모델 Input Data 예시>
3단계. 분류 모델 생성
최종적으로, 유저의 정치 성향을 분류하는 모델을 생성합니다.
Logistic Regression, CART, MLP의 전통적인 머신러닝 모델과 GCN(Graph Convolution Networks)의 그래프 머신러닝 분류 모델을 비교하였습니다.
예측에 사용하는 입력 데이터는 아래와 같습니다.
유저의 해시태그 데이터
네트워크 분석 결과
유저의 해시태그 데이터 + 네트워크 분석 결과
유저의 해시태그 데이터 + 네트워크 분석 결과 + 유저 간 리트윗 네트워크 데이터
총 4가지 입력 데이터를 머신러닝/그래프 머신러닝 모델로 학습하여 모델 성능을 비교했습니다.
결론
그래프 머신러닝으로 유저의 정치 성향 분류
유저의 해시태그 데이터, 네트워크 분석, 유저 간 리트윗 네트워크 데이터를 이용한 GCN 모델이 다른 분류 모델과 성능을 비교해 정확도(Accuracy)가 1~8% 더 좋은 것을 확인할 수 있었으며, 이는 단순히 유저가 사용한 해시태그 또는 네트워크 분석 결과만을 이용한 분류보다 유저 간 리트윗 관계를 함께 고려한 그래프 머신러닝 모델이 분류 정확도를 향상시켰음을 보여줍니다.
<분류 모델 별 정확도 결과> ㅇㄹㅇ
그동안 정치 성향 분류는 텍스트 기반 특징이나 단일 사용자 정보에 의존해왔기 때문에, 관계의 맥락이나 집단 간 상호작용을 반영하기 어려웠습니다. 리트윗 네트워크처럼 유저 간 연결을 통해 형성되는 정치적 집단성과 영향력 흐름은 기존 머신러닝 모델로는 포착하기에 한계가 있었습니다.
하지만 그래프 머신러닝을 활용한 분류 모델은 텍스트를 넘어 '누구와 연결되어 있는가?'라는 구조적 정보까지 학습할 수 있어 훨씬 정교하고 현실에 가까운 성향 분류가 가능합니다.
(주) 사이람
1660-4230 | netminer@cyram.com