컴퓨터 과학자들은 다양한 텍스트 문서에서 정보를 추출할 수 있는 방법론을 오랫동안 사용해 왔습니다. 그들의 방법론은 텍스트의 용어와 구를 집계할 뿐만 아니라 구조를 밝히고 텍스트 내용에 대한 통찰력을 제공합니다. 반면에 대부분의 사회과학자들은 — 설문 조사, 인터뷰 기록 등의 댓글 필드에 많은 텍스트 데이터가 있는 사람은 이러한 방법에 의존하지 않는 것 같습니다(언어를 공부하거나 컴퓨터 과학자와 협력하는 사람은 드문 예외입니다).
이 게시물에서 나는 사회 과학자들이 텍스트 분석이 감당할 수 있는 가능성의 스펙트럼을 탐구하도록 권장합니다. 두 가지 텍스트 분석 기술인 LSA(Latent Semantic Analysis)와 TA(Topic Analysis)에 대해 간략하게 설명합니다. 다변량 통계에 대한 배경 지식이 있는 사회과학자라면 LSA와 TA를 쉽게 사용, 적용 및 해석할 수 있을 것입니다(이 게시물을 통해 바로 시작할 수 있습니다!). 제 설명은 두 가지 통계에 의존합니다. 사회 과학에서 잘 알려진 기법: 주성분 분석(PCA) 및 요인 분석(FA).
주성분 분석 검토
PCA는 데이터에서 최대 변동성의 상관관계가 없는 차원을 식별하고 추출할 수 있는 방법입니다. 이것은 데이터의 상관 행렬의 고유값 분해를 통해 수행됩니다. 그림 1은 고유값 분해에 관련된 단계와 PCA의 해석을 돕기 위한 후속 단계를 보여줍니다(이 검토를 용이하게 하기 위해 그림이 지나치게 단순화됨을 참고하십시오).
Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.그림 1. 주성분 분석과 관련된 단계를 설명합니다.
상관관계 매트릭스는 다차원 공간에서 "데이터 클라우드"를 나타냅니다. 고유값 분해는 이 구름 내에서 서로 수직인 주요 차원을 식별하는 데 도움이 되며 두 가지 주요 정보를 생성합니다. 고유 벡터 , 이는 주요 치수의 방향을 나타내며, 고유값 , 각 차원의 크기를 식별하고 차원의 분산입니다. 몇 개의 차원만 데이터의 대부분의 가변성을 캡처하는 경우(즉, 처음 두 고유값이 다른 모든 고유값에 비해 큰 경우) 분석가는 처음 두 고유벡터와 고유값을 유지하여 필요한 변수의 수를 줄일 수 있습니다. 분석하다. 모든 고유 벡터는 단위 길이이지만 고유 값이 제공하는 정보를 사용하여 "크기 조정"할 수 있습니다. 이러한 재스케일링된 고유 벡터를 로딩이라고 합니다.
로딩 벡터는 해당 고유값과 동일한 변동성을 갖습니다. 또한 로딩 계수는 차원(주성분)과 해당 변수 간의 연관성을 설명하는 상관 계수입니다. 이러한 이유로 로딩은 주성분이 무엇을 나타내는지 이해하는 데 중요합니다. 그러나 로딩 매트릭스는 여러 차원에 걸쳐 적당한 크기의 로딩과 같이 식별하기 어려운 패턴을 가질 수 있습니다(그림 1의 로딩 매트릭스 참조). 따라서 분석가는 구성 요소의 해석을 개선하기 위해 로딩 매트릭스를 회전하도록 선택할 수 있습니다. 대부분의 경우 직교 회전이 사용되며(예: Varimax) 하중의 단순한 패턴을 초래하는 경향이 있습니다(Thurstone, 1947에 의해 "단순 구조"라고 함). 즉, 주어진 구성 요소에 대한 로딩이 매우 높고 다른 모든 구성 요소에 대해서는 거의 0입니다. 회전된 로딩 매트릭스의 간단한 구조(그림 1 참조)는 각 주요 구성 요소가 무엇을 나타내는지 명확하게 식별하는 데 도움이 됩니다.
주성분 분석 == 잠재 의미 분석
이제 PCA가 마음에 새롭습니다. 좋은 소식은 LSA(Latent Semantic Analysis)가 단순히 텍스트 용어의 상관 행렬에서 수행되는 PCA라는 것입니다(단, 회전은 포함되지 않음). 즉, 분석의 변수는 텍스트 문서에서 용어의 발생률을 나타내는 열입니다. 이 변수 집합을 문서 용어 매트릭스(DTM; 그림 2 참조)라고 하며 문서에 있는 용어만큼 많은 열과 문서만큼 많은 행을 포함합니다. 이진 DTM을 원하는 경우 각 셀 항목은 주어진 용어가 주어진 문서에 있는지 여부에 따라 0 또는 1이 될 수 있습니다. 빈도 DTM에서는 각 항목이 주어진 문서에 해당 용어가 나타나는 횟수를 세어야 합니다. DTM을 구성하는 다른 방법이 있습니다. 문헌(Ramos, 2003)에서 선호하는 방법은 TF-IDF(term frequency-inverse document frequency)라고 하며 다음에서 구현할 수 있습니다. JMP 버튼 클릭으로!
Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.그림 2. 세 문서의 샘플 문서 용어 매트릭스(DTM).
그림 2의 첫 번째 문서에는 "from"이라는 단어가 있지만 해당 용어는 DTM에 표시되지 않습니다. 이는 DTM을 만들기 위한 중요한 예비 단계가 있기 때문입니다. 다음을 보자!
분석을 위한 텍스트 데이터 설정
텍스트 분석은 측정 단위를 식별하는 것으로 시작됩니다. 특히 "문서"를 구성할 항목을 결정해야 합니다. 문서는 문장, 단락, 기사, 책 등이 될 수 있습니다. 다음 단계는 문서 전체에서 관련 용어를 식별하는 것입니다. "불용어"("the", "and", "from", "is", "of"와 같이 텍스트 말뭉치의 구조를 공개하는 데 도움이 되지 않는 매우 일반적인 단어)을 필터링하여 이를 수행합니다. ," 등.). 또한 유사한 용어를 하나로 압축하도록 선택할 수도 있습니다. 예를 들어 그림 2의 "analysis" 및 "analytics" 열은 중복되어 하나의 "analy" 열로 결합될 수 있습니다. 이를 형태소 분석이라고 합니다. 마지막으로 텍스트의 모든 단어가 분리되어서는 안 됩니다. 그림 2의 첫 번째 행에 있는 "사회과학자"가 한 예입니다. DTM을 만들기 전에 이러한 단어를 하나의 용어로 결합할 수 있습니다("옛날 옛적에"와 같은 구문을 사용하여 동일한 작업을 수행할 수 있음).
위의 모든 단계는 확실한 분석을 위해 매우 중요합니다. 운 좋게도 텍스트 탐색기 플랫폼 JMP에서는 이러한 작업을 쉽게 수행할 수 있습니다! 분석 > 텍스트 탐색기 메뉴에서 문서가 포함된 데이터 테이블의 열을 텍스트 열로 할당합니다(그림 3 참조). 시작 창에서 형태소 분석 옵션을 사용자 정의할 수도 있습니다. 텍스트 탐색기를 실행한 후 용어로 간주할 구를 추가로 선택할 수 있습니다.
Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).그림 3. 텍스트 탐색기 실행 창(왼쪽)과 텍스트 탐색기 실행 초기 보고서(오른쪽).
모든 예비 단계가 완료되면 DTM을 생성하고 PCA를 수행할 수 있습니다. 그러나 DTM의 크기에 따라(매우 큰 경향이 있음) 위에서 설명한 PCA를 실행하는 데 시간이 오래 걸리고 많은 메모리가 필요할 수 있습니다. 다행스럽게도 JMP는 고유값 분해 대신 특이값 분해를 사용하여 이 분석을 매우 효율적으로 만듭니다! 향후 게시물에서 고유값 분해와 특이값 분해 간의 동등성에 대해 설명하겠지만 지금은 두 접근 방식이 동일한 결과로 이어질 것이라는 점을 믿어야 합니다.
주제 분석
또 다른 유용한 텍스트 분석 기술은 주제 분석(TA)입니다. 이 기술은 또한 TA가 단순히 로딩 매트릭스의 Varimax 회전이 있는 PCA임을 명확히 함으로써 사회 과학자들에게 쉽게 번역될 수 있습니다. LSA와 유사하게 TA는 고유값 분해 대신 특이값 분해로 수행하여 보다 효율적입니다. 하중의 회전으로 인해 TA의 결과는 LSA의 결과보다 해석하기 쉬울 것입니다. 주제는 텍스트 데이터의 가변성의 주요 차원이 됩니다. 로딩을 통해 주제가 나타내는 것을 해석할 수 있습니다. 또한 주제(또는 구성 요소) 점수를 계산하여 2차 분석에 사용할 수 있습니다.
TA가 무엇을 할 수 있는지 알아보기 위해 231,657개의 농담* 데이터 세트에 대해 TA를 수행했습니다. 독자의 기분을 상하게 하지 않기 위해 분석에서 나온 세 가지 주제의 결과만 보여줍니다(그림 4).
Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.그림 4. 231,657개 농담의 데이터 테이블에서 수행된 TA(주제 분석)에서 주제를 선택합니다.
독자들은 그림 4의 각 주제가 나타내는 농담 유형 간에 분명한 차이가 있다는 데 동의할 것입니다. 텍스트 분석의 더 강력한 예는 다음을 참조하세요. 이 게시물 미래 주가를 예측하거나 소셜 미디어 데이터를 사용하여 최근 간행물을 읽으십시오(Kern et al., 2016). 또는 시계 이 비디오 .
요인 분석에 대한 설명
시작 부분에서 나는 PCA와 FA에 대한 사회과학자들의 지식에 의존할 것이라고 말했습니다. 그러나 지금까지는 PCA에 대해서만 논의했습니다. 당신의 훈련이 나와 비슷하다면 PCA와 FA 사이에 중요한 차이점이 있다는 것을 알 것입니다. ~ 안에 이전 게시물 , 이러한 차이점을 설명했지만 한 가지 중요한 유사점도 언급했습니다. PCA와 FA의 결과는 고려 중인 데이터 매트릭스의 크기가 커짐에 따라 점점 더 유사해집니다(FA에 대한 재교육을 원하는 경우 다음을 권장합니다. 포스트 읽기 ). 실제로 텍스트 분석에서 데이터 매트릭스는 매우 크기가 큰. 에서 샘플 문서 용어 매트릭스 위의 DTM에는 이미 10개의 변수가 있습니다! 그리고 농담 예제에는 4,316개의 변수가 있는 DTM이 있습니다!). 따라서 LSA 및 TA의 주제 또는 구성 요소는 잠재 변수 근사치로 생각할 수 있으며 수많은 연구 질문을 해결하는 데 효과적으로 사용할 수 있습니다!
닫으려면…
너무 자주 우리는 통계 도구 키트가 연구의 설계 및 분석을 결정하도록 허용합니다(때로는 부주의하게!). 따라서 이 게시물이 텍스트 분석으로 독특하게 다룰 수 있는 사회 과학(및 기타 분야)의 새로운 연구 질문에 대한 문을 열어주기를 바랍니다.
키 포인트
- 텍스트 분석은 사회과학자에게 잘 알려진 통계 기법에 의존한다는 사실에도 불구하고 사회과학에서 충분히 활용되지 않습니다.
- 잠재 의미 분석은 문서 용어 행렬에서 수행되는 주성분 분석과 동일합니다.
- 문서 용어 행렬에는 문서 수만큼 행이 있고 문서에 있는 용어 수만큼 열이 있습니다. 셀에는 주어진 문서에서 용어의 발생률이 포함됩니다.
- 주제 분석은 주제의 해석을 돕기 위해 구성 요소 로딩을 회전시키는 주성분 분석과 동일합니다. 그러나 일부 클러스터링 방법은 때때로 주제 분석으로도 설명됩니다.
- 문서 용어 행렬은 상당히 큰 경향이 있기 때문에 사회과학자들은 주성분을 잠재 변수 또는 잠재 주제의 꽤 좋은 근사치로 생각할 수 있습니다.
텍스트 분석에 대해 할 말이 훨씬 더 많습니다! 로 시작하는 것이 좋습니다 이 주문형 웹캐스트 , 더 많은 세부 사항을 설명하는 데 큰 역할을 합니다. 당신은 또한 볼 수 있습니다 내 게시물 JMP의 텍스트 탐색기 플랫폼, 특히 Rosetta Stone 섹션 , PCA와 LSA/TA 간의 더 많은 연결을 명확히 합니다.
참조
- 컨, ML, 박지, Eichstaedt, JC, 슈워츠, HA, 수액, M., 스미스, LK, & Ungar, LH (2016). 소셜 미디어 언어에서 통찰력 얻기: 방법론 및 과제. 심리적 방법. 사전 온라인 출판. http://dx.doi.org/10.1037/met0000091
- Ramos, J. (2003년 12월). tf-idf를 사용하여 문서 쿼리에서 단어 관련성을 결정합니다. ~ 안에 기계 학습에 관한 첫 번째 교육 컨퍼런스 절차 (Vol. 242, pp. 133-142).
- 서스톤, LL (1947). 다중 요인 분석 . 시카고: 시카고 대학교 출판부, 1947.
* 이 파일을 여기에서 무료로 사용할 수 있게 해주신 amoudgl에게 감사드립니다. https://github.com/amoudgl/short-jokes-dataset