파이썬이라는 프로그래밍 언어를 몇 년 전에 접할 일이 있었다. 당시에 파이썬으로 내가 할 수 있는 건 많지 않았지만, 처음에 파이썬 프로그래밍 코스가 알려주는 건 파이썬 기초 문법과 그걸 활용해서 해볼 수 있는 기초적인 프로젝트였다. 대표적인 건 크롤링.
파이썬이 조금 익숙해지고 나서 가족이 운영하는 가게의 리뷰를 크롤링 하기도 하고 그걸 정리해서 보여주기도 했었다(물론 나의 가족은 크게 감흥을 보여주진 않았다. 다 아는 거네… 라는 답변을). 그래도 나는 이 과정이 재미있었고, 뭔가 다른 것에도 한 번 자료를 모아서 정리해보고 싶다는 생각을 했었다.
그러던 어느날 ”영어의 마음을 읽는 방법“ 이라는 책을 읽던 중, 눈길을 끄는 부분을 찾았다.
명사화, 그리고 ‘주어 + 동사’ 에 관한 설명이었다.
명사화는 특정 대상을 추상화하고 일반화 해버린다는 것이다. 일반화된 명사를 설명하면 행위를 행하는 주체 대상이 누구인지 나타나지도 않을 것이며, 맥락이 더 자세하게 설명되지 않으면서 외국어 학습자는 그 언어의 특성을 인식하는데 더 힘들어질 것이라고 말했다
“먼저 다음 두 예시를 보겠습니다.
a. The bridge collapsed. (교량이 무너졌다.)
b. the collapse of the bridge (교량의 붕괴)
앞서 살펴본 바와 같이 둘의 가장 큰 차이는 시제의 유무에 있습니다. a에는 과거형 –ed와 결합된 동사 collapsed가 쓰였습니다. 따라서 과거에 일어난 사건임을 알 수 있죠. 대조적으로 b에는 동사도 시제도 없습니다. 따라서 절이 될 수 없고, 구, 그중에서도 명사구noun phrase로 존재합니다. 시간을 표현하는 어떤 단서도 들어 있지 않습니다.
위의 예에서 a는 과정process을 표현하고, 과거시제를 통해 교량이 붕괴되는 사건이 시간 속에서 드러납니다. 그러나 b에서 이야기하는 ‘교량의 붕괴’는 시간의 축에 접지되지 않은 추상적 개념입니다.
영어의 마음을 읽는 법 | 김성우 저“
명사화라는 개념은 외국인 학습자가 본인도 모르게 자주 쓰는 패턴 중 하나이다. ‘다리가 붕괴했다 그래서 교통이 막힌다’ 라고 말하면 되는 걸, ‘다리의 붕괴가 교통에 영향을 미친다’ 식으로 말하는 경우가 많이 생긴다는 것이다.
한국 사람들이 영어로 말을 하거나 문장을 만들때, 특히 글을 쓸 때, 주어와 동사에 신경쓰지 않고, "It is something that ~~~ "" 식으로 만드는 경우와 유사한 것이다.
그렇다면 미국에서 Formal한 자리에서는 사람들이 어떤 동사를 쓰는 것일까 궁금했지만 이 궁금증을 해결하는 건 쉽지 않았다. 어디에서 시작해야 할 지도 몰랐고, 어떻게 자료를 모아야 할지도 몰라서 그냥 마음 속에만 있는 프로젝트 중 하나였다가 실마리를 발견하고야 말았다.
Rapid API라는 곳에서, 미국 상장기업들의 transcript를 api로 열어주고 있었다. 파이썬 코드를 작성해서 3년 간의 NASDAQ에 상장된 대부분의 기업들의 1분기 컨퍼런스 콜 데이터를 다운 받았다.
내가 코딩을 잘 하면 한 번에 3년치를 다 받았겠지만, chatGPT와 대화하면서 1년 치를 3번에 받는 방법이 최선의 방식이었다.
그리고, 각 기업마다 존재하는 하나의 transcript json 파일을 섹터 별로 묶어주고, 그걸 다시 1년치로 묶고, 마지막으로 3년의 자료를 하나의 텍스트로 합치는 과정을 거쳐서 하나의 파일이 만들어졌다.
거의 190 메가 바이트에 달하는 용량이었다.
예전부터 이 자료를 구축해보고 싶은 열망이 있었다. 먼저 이 텍스트 데이터를 통해서 나만의 데이터 베이스를 만들어보는 것이었고, 그 자료를 하나의 corpus로 만들어서 원할 때 검색해보는 것.
마침 antconc 라는 freeware 라는 코퍼스 구축 프로그램이 있어서 여기에 텍스트 파일을 넣고 db화 하니 나만의 Business English Corpus가 만들어졌다! 이 때 눈물이 조금 났음. 혼자서 해내다니.
그 다음 나의 궁금했던 점은 우리가 매번 쓰는 기본 동사인 "make, have" 등등 이런 동사들을 제외하고 컨퍼런스 콜 상황에서 어떤 동사들이 많이 쓰일까? 궁금했지만 제약이 있어서 해보지 못하다가 드디어 이걸 해볼 수 있는 재료(텍스트 파일)가 갖춰지고, 나를 도와주는 친구(chatGPT)와 함께 EDA를 해볼 수 있었다.
chatGPT에게 먼저 EDA를 할 수 있도록 이것저것 물어보면서 Top 60 most common verbs 코드를 작성해달라 요청했었다.
위 질문에 대해 답변을 준 코드를 기반으로 실행을 해보았다
결과가 나왔는데, 나의 파이썬 셋팅에 문제가 있는 지 re 라이브러리가 제대로 작동하지 않아서, 정규식으로 쓸데없는 부분을 발라내는데 문제가 있어서, 불순한 것들이 좀 섞여 있었다.
예를 들어 're 나 've 같은 것들을 빼고 보면
Total number of sentences: 743969
Total number of verbs: 10164015
continue: 258, 849 회
increase: 110, 298 회
include: 106, 485 회
drive: 97, 314 회
provide: 92, 928 회
grow: 92, 457 회
compare: 91, 401 회
turn: 90, 354 회
remain: 75, 141 회
move: 71, 160 회
relate: 51, 126 회
operate: 45, 963 회
adjust: 40, 584 회
expand: 39, 588 회
reflect: 35, 433 회
support: 33, 765 회
impact: 33, 558 회
lead: 33, 204 회
reduce: 32, 982 회
generate: 31, 839 회
invest: 31, 644 회
*전체 outpfile은 파일로 첨부를 했으니 관심있는 분들은 보셔도 되는데 딱히 특별할 건 없을 것 같다.
중요한 건, 위의 동사들을 활용해서 내가 실제 회의 참석 때나, 이메일을 쓸 때 활용하는지 살펴봐야 할 것이다. 아니면 요즘 영어를 대신 써주는 chatGPT나 엔그램 같은 서비스에서 내가 쓴 초보스러운 문장들이 저런 동사들이 적극적으로 활용되는지 살펴보고, 엔그램과 chatGPT 또는 그래머리에서 나온 예문을 내것으로 만들어 보는 것도 좋은 방법일 것이다