1. 서 론
4차 산업혁명과 함께 미래 성장 산업의 주요 자양분은 방 대한 양의 데이터이다. 특히 전자 문서의 작성과 배포로 텍 스트 데이터들은 시간이 지날수록 기하급수적으로 증가하 고 있다. 이러한 방대한 양의 텍스트를 분석하기 위해 텍스 트 마이닝 기법이 산업공학, 건축, 특허 등 다양한 분야에서 활발하게 이용되고 있으며 해양사고 예방 및 교육 등에 활 용하기 위한 해운회사의 준사고 분석에도 사용되고 있다 (Kang et al., 2018).
ECDIS(Electronic Chart Display and Information System)란 GPS, RADAR, AIS 등 다양한 항해장비와 연동되면서 선박의 실시간 위치 및 항해와 관련된 부가정보를 전자해도 상에 표시하고 항해사가 항로를 계획 및 감시하는 중요한 항해 수단 중 하나이다(IMO, 1974). 2009년 IMO MSC.232(86) 회의 의 SOLAS Reg.V/19.2.10 항목은 국제항해에 종사하는 선박을 대상으로 총톤수별, 선종별, 건조 연도별로 IMO에서 규정한 기한까지 단계적으로 ECDIS를 반드시 설치해야 한다고 개 정하였다(IMO, 2009). 규정에 따라 최근 선박의 새로운 주요 항해 장비로 사용되는 ECDIS는 제조사와 모델별로 정보의 표시 방법과 인터페이스가 다양하다. 따라서 올바른 ECDIS 사용을 위해서는 항해사는 Generic 교육, Familiarization 교육 을 필수로 받아야 한다(Lee, 2018).
이와 같이 ECDIS의 탑재 요건과 더불어 사용자 교육에 대 한 강제화에도 불구하고 최근 10년간 발간된 12가지의 ECDIS 사고 보고서에는 항해사들의 관련 지식 부족과 운용 미숙이 사고의 주요 원인인 것으로 분석하고 있다(Lee et al., 2016). 하지만 일부 보고서에는 사고의 주요 원인이 항해사 의 ECDIS 운용보다 ECDIS 시스템 문제에 기인하였다고 보 고하고 있다(DSB, 2017).
이 연구는 12가지의 ECDIS 사고 보고서를 텍스트 마이닝 기법을 통해 단어 구름, 단어 연관성, 단어 가중치를 이용하 여 ECDIS 사고 원인에 대한 경향 변화를 나타내었다.
2. 사고사례 수집 및 전처리 기법
2.1 사고사례 자료
본 연구에서 사용된 보고서는 국가별 해양 사고를 조사하는 기관의 홈페이지에서 추출하였다. 수집 자료 출처로는 MAIB (Marine Accident Investigation Branch-영국), BSU(Bundesstelle für Seeunfalluntersuchung-독일), BEAmer(The French marine casualties investigation board-프랑스), DMAIB(Danish Maritime Accident Investigation Board-덴마크), DSB(Dutch Safety Board-네덜란드) 이다. 또한 NI(The Nautical Institute)의 홈페이지에서도 ECDIS 와 관련 있는 사고 보고서들을 별도로 게시하고 있다. 검 색 키워드는 각 홈페이지에서 ‘Serious Accident of ECDIS’로 설정하였으며, 2008년부터 2017년까지 어선을 제외한 국제 항해에 종사하는 선박을 대상으로 검색하였다. 그리고 인 터넷에서 수집된 자료들을 분석프로그램에 사용할 수 있 도록 파일 전환 작업을 거쳤다. 보고서 추출 결과는 Table 1 과 같으며 보고서의 발간 연도는 2008년부터 2017년까지 다양한 선종들이 모두 좌초 사고로 나타났다. 보고서 내 사고 원인으로는 청각 알람, 항로 계획, 안전 등심선, 안전 점검, ENC(Electronic Navigational Chart) 등의 문제점으로 분 석하고 있다.
2.2 분석 프로그램 및 전처리 과정
R-프로그램(www.r-project.org/)은 1993년 오클랜드 대학교에 서 개발된 통계 및 그래프 작업을 위한 프로그래밍 언어이 며, 오픈 소스로 제공된다(Lee et al., 2018). 인터넷을 통해 원 하는 패키지들을 클랜(the Comprehensive R Archive Network) 을 통하여 설치하는 방식으로 무수한 기능 확장이 가능하며 데이터 마이닝, 빅데이터 처리, 기계 학습 등에 유용하다 (Lee et al., 2018). 통합 개발 환경으로 더 편리한 인터페이스 를 제공하는 장점이 있는 R-Studio를 사용하였다. 텍스트 마이 닝분석은 TM Package(Version 0.7-6, Kurt Hornik)를 주로 사용 하였으며 분석 내용을 대상으로 시각화하기 위해 Wordcloud (Version 2.6, Ian Fellows), RColorBrewer(Version 1.1-2, Erich Neuwirth)을 사용하여 나타내었다.
전처리 과정은 다양한 비정형 데이터를 정형화 데이터로 변환 시킨 후 분석에 의미 있는 결과를 나타낼 수 있도록 정 제하는 과정이다. 전처리 과정은 TM Package가 제공하는 대 문자를 소문자로 변환(tolower), 숫자 제거(removeNumbers), 구 두점 제거(removePunctuation), 띄어쓰기 제거(stripWhitespace), 불용어 제거(stopwords)를 거쳐 순수한 단어를 도출하였다.
3. 텍스트 자료 분석 및 시각화
3.1 N-gram Model
Jurafsky and Martin(2018)의 연구에 따르면 N-gram 언어모 델은 통계적 언어모델(Statistical Language Model)에서 많이 사 용되며, 분석하기 위한 문장을 간단하게 문법 처리를 하는 방법으로 설명하고 있다.
Song(2017)은 N-gram에 대해 대표적인 언어모델로 N개의 단어의 연쇄를 확률적으로 표현하여 다음 단어를 확률적으 로 예측하는데 사용한다고 나타낸다. 연속되는 N개의 어절 (Words) 또는 음절(Character, Sounds)으로 특정 단어가 나왔을 때에 다음에 어떠한 단어가 나타나는지 예측 가능하다.
마찬가지로 Oh et al.(2001)의 N-gram 언어모델에 관한 연구 에서는 N개의 단어들로 구성된 단어열 이 주어질 경우 확률은 식(1)에 의해 구할 수 있다.
식(1)의 wn은 n번째로 나타나는 단어를 의미하며 단어의 조합을 확률 계산으로 구할 수 있다. 하지만 여러 가지 단어 의 조합으로 인해 조건부 확률 을 구하는 것은 실제로 불가능하다. 만약 V 개의 단어가 사용된다고 가 정하면 확률 을 완전히 구하기 위해서는 Vi개의 확률을 계산하여야 한다. 따라서 실제로는 모델 구 성을 위해 단어 이력(history) w1 ⋯ Wi-1을 같은 종류의 항 으로 분할하고 모델의 파라미터 수를 감소시킬 필요가 있 다. 이때 어느 시점에서 발생하는 사건의 확률은 바로 이전 의 N개 시점까지 발생하는 사건에 영향을 받는 N 마르코프 과정을 따른다. 이러한 단어의 발생을 N-1 마르코프 과정으 로 근사화한 모델을 N-gram 모델이라고 한다(Oh et al., 2001).
N-gram 언어모델에서는 어느 시점에서의 단어 발생은 바 로 이전의 N-1 단어에 의존하는 것으로 가정하면 다음 식(2) 와 같이 쓸 수 있다.
식(2)에서 나타낸 것과 같이 현재 단어의 예측을 위해 이 전의 한 단어를 고려한다면 Bi-gram 이라 하고, 이전의 두 단 어를 고려한다면 Tri-gram 이라고 한다. 또한 현재 단어 자체 를 예측한다면, 한 개의 단어 생성확률도 되며 Uni-gram 이 라고 한다.
예시로 ‘ECDIS accident using Text Mining’의 문장을 N-gram 모델에 적용할 경우 Table 2와 같은 단어 배열 결과를 나타 낸다.
위 Table 2는 ‘ECDIS accident using Text Mining’의 문장을 N-gram 모델로 나타낸 것으로 Uni-gram으로는 각각 개별 단 어인 5개로 절단되는 것을 알 수 있다. Bi-gram의 경우에는 ‘accident’를 예측하기 위해 이전의 한 단어인 ‘ECDIS’가 나오 는 확률을 고려한 것이며, Tri-gram의 경우에는 ‘using’ 이전 의 두 단어를 고려한 ‘ECDIS accident’이 생성될 확률을 나타 낸다. 본 연구에서는 Uni-gram과 Bi-gram 모델로 나타내었으 며, Tri-gram에서는 중요한 의미가 없어 분석을 제외하였다.
3.2 Uni-gram Model 분석
Uni-gram은 N-gram 모델에서 1개의 단어로 절단하여 나타 내며 개별 단어의 도출 빈도를 파악하기 위해 사용한다. 명 사·형용사는 ECDIS 용어에서 자주 쓰이고 중요한 의미를 함 축하므로 제거하지 않았다. 반면 중요한 의미를 갖고 있지 않은 대명사, 접속사, 전치사는 제거하였다. 또한 동의어 중 단수와 복수형인 ‘chart’와 ‘charts’는 실제 의미가 같으나 중 복될 경우 의미 있는 결과가 나오지 않으므로 ‘chart’로 일치 시키는 작업을 수행하였다. 단어 도출 빈도수 100회 이상, 상위 50개를 대상으로 한 Uni-gram 모델 기반의 분석 결과는 Fig. 1, Fig. 2와 같다.
Fig. 1은 Uni-gram의 단어 구름 결과를 나타낸 것으로서 ‘ECDIS’ 단어가 가장 중심에 위치하고, 단어 크기가 가장 크 다. 이 의미는 단어 구름의 중심에 가깝고 단어 크기가 클수 록 단어 도출 빈도가 크다는 의미를 알 수 있다. 단어 도출 빈도수를 나타내는 그래프는 Fig. 2와 같이 ‘ECDIS’ 단어는 약 740회 도출되었으며 안전(safety), 선박(vessel), 해도(chart), 선교(bridge) 순으로 도출결과를 파악할 수 있다. Uni-gram 모델을 기반으로 한 사고 보고서 키워드는 ‘ECDIS’ 단어와 관련 있다는 것을 파악할 수 있으나, 도출된 단어들이 사고 원인으로는 알 수 없다. 따라서 1개 단어가 아닌 2개 단어 가 결합된 합성어를 찾기 위해 Bi-gram 모델을 이용하고자 한다.
3.3 Bi-gram Model 분석
Bi-gram 모델은 Uni-gram과 동일한 분석방법을 이용하였으 며 N-gram 모델에서 2개의 단어로 절단하여 나타내며 빈도 수 20회 이상, 상위 50개 합성어를 Bi-gram 모델로 분석한 결 과는 Fig. 3, Fig. 4와 같다.
Bi-gram을 통하여 시각적으로 도출된 합성어가 실제 선박 에서 사용되는 단어인지 검증하기 위해 ECDIS 관련 서적에 서 합성어를 검열하는 작업을 수행하였다(Cho et al., 2017). Fig. 3, Fig. 4는 Bi-gram의 분석 결과를 나타내며, ECDIS에서 선박 흘수에 따라 저수심 구간으로부터 좌초위험을 예방해 주는 안전 등심선(safety contour)의 합성어가 가장 많이 도출 된 결과를 시각적으로 확인이 가능하다. 또한 Uni-gram의 분 석 결과에서 볼 수 없었던 직급을 나타내는 일등항해사(chief officer)를 비롯하여 항해 계획(passage plan), ECDIS에서 설정 하는 안전 수심(safety depth), 종이 해도(paper chart) 등 여러 합성어가 도출됨을 알 수 있다. 이와 같이 2개 단어가 해사 용어에서 사용되는 합성어로써 나타나는 결과를 바탕으로 항해사와 ECDIS 시스템의 용어와 함께 사용되는 단어를 찾 고자 한다.
3.4 단어 연관성 분석 및 단어 말뭉치 구성
Bi-gram 모델의 분석 결과로부터 해사용어에서 사용되는 단어들이 도출됨을 확인하였다. 하지만 본 연구에서 진행하 고자 하는 항해사의 관련 단어와 ECDIS 시스템 관련 단어들 과의 연관된 단어 표본을 증가시키기 위해 단어 연관성 분 석을 수행하였다. 단어 연관성 분석을 통하여 특정 한 단어 와 다른 단어들이 어떠한 상관계수를 갖는지는 R-프로그램 의 TM Package를 이용하여 분석이 가능하다. Landis and Koch(1977)의 연구에 따르면 Cohen’s kappa 상관계수는 0.00~0.20 값에서 작은 연관성이 있다는 근거로 상관계수 0.10 이상의 단어들을 대상으로 단어 연관성 생성에 사용하 였으며 분석 결과를 그래프로 표현한 결과 Fig. 5와 같다.
위 Fig. 5는 항해사 용어를 ‘officer’로, ECDIS 시스템은 ‘system’으로 선정 후 각각의 용어로 상관관계를 갖는 단어 를 나타낸 것이다. ‘officer’ 단어는 ‘chief’, ‘third’, ‘second’, ‘watch’ 순으로 나타나며, ‘officer’와 ‘chief’의 상관관계는 0.51 값으로 가장 높아 두 단어가 함께 가장 많이 쓰이는 것을 의 미한다. ‘system’ 단어는 ‘enc’, ‘display’와 함께 쓰이고 있으 며, ‘enc’와의 상관계수는 0.15값으로 더 높아 서로 두 단어가 연관되어 가장 많이 쓰이는 것을 의미한다.
‘officer’와 연관되어 있는 단어를 살펴보면 항해사의 직급 관련(‘master’, ‘chief’, ‘third’, ‘second’), 항해 견시 및 당직 관 련(‘lookout’, ‘watch’, ‘oow’(officer of watch)), ECDIS 교육 및 증 서 관련(‘training’, ‘certification’, ‘type specific’, ‘generic’, ‘familiarization’) 단어가 나타나는 것을 알 수 있다.
한편 ‘system’과 연관되어 있는 단어를 살펴보면 전자해도 품질 및 정확도 관련(‘enc’, ‘catzoc’, ‘data’, ‘accuracy’, ‘quality’, ‘poor’), 전자해도 표시 및 정보 관련(‘display’, ‘information’, ‘depth’, ‘symbol’, ‘source’, ‘bathymetric’) 단어가 나타나는 것을 알 수 있다.
정리하자면 단어 연관성 그래프는 화살표가 진행하는 방 향을 따라 서로 연관되어 있는 단어를 표현하며, 화살표 중 앙에 나타나는 숫자는 상관관계 계수를 나타낸 것이고 그 값이 클수록 연결된 두 단어는 상관관계가 높아지는 것을 의미한다.
위 내용을 토대로 ‘officer’와 ‘system’의 단어가 연관성 있 는 단어들과 함께 그룹을 구성할 수 있으며, 단어 그룹을 구 성하는 하나의 집단을 단어 말뭉치라고 한다. 단어 말뭉치 는 corpus라고도 하며, 단어 말뭉치에 가중치를 적용하여 정 량적인 경향 분석을 해보고자 한다.
4. 단어 가중치를 적용한 분석
4.1 TF-IDF 가중치 적용
단어 가중치를 사용하는 이유는 Table 1의 Data Volume의 수치상 각 문서별로 단어의 양이 다르며, 특정 문서에서 특 정 단어가 많이 나온 경우가 있기 때문이다. 단어에 가중치 를 적용하는 여러 방법들 중 TF-IDF(Term Frequency-Inverse Document Frequency)는 인터넷 검색 엔진 알고리즘으로 이용 되며 텍스트 마이닝에서도 이용되는 가중치로, 여러 문서로 이루어진 문서군이 있을 때 어떤 단어가 특정 문서 내에서 얼마나 중요한 것인지를 나타내며 공식은 다음과 같다 (Christoper et al., 2008).
위 식(3)에서 TF(Term Frequency)는 단어 빈도를 나타내며 특정한 단어가 문서 내에 얼마나 자주 등장하는지를 나타내 는 값을 의미하며, 이 값이 클수록 문서에서 중요한 의미를 갖는다. DF(Document Frequency)는 특정 단어가 문서군 내에 서 자주 사용되는 경우, 그 단어가 흔하게 등장한다는 것을 말하며 중요한 의미를 갖지 않는다. IDF(Inverse Document Frequency)는 DF의 역수 값이며 역문서 빈도라고도 하며, TF-IDF는 TF와 IDF를 곱한 값으로써 그 값이 클수록 중요한 의미를 갖는 단어를 뜻한다.
즉, 연도별로 발간된 보고서의 officer 단어 말뭉치와, system 단어 말뭉치를 TF-IDF 공식을 이용하면 분석에 사용 되는 단어들을 가중치를 적용한 값으로 나타낼 수 있다. 이 러한 단어들을 빈도와 중요도에 따라 수치화한 값은 Table 3, Table 4와 같으며 2008년부터 2017년까지 수집한 보고서를 기반으로 나타내었다.
Table 3는 officer 단어 말뭉치에 단어 가중치를 적용한 값 을 수치화한 값을 나타낸 것으로 단어별로 10년간 가중치가 가장 높은 단어로는 ‘officer’, ‘third’, ‘chief’, ‘training’, ‘master’ 순으로 나타났다. 연도별로 가중치 값은 2008년 ‘training’, 2009년 ‘officer’, 2010년 ‘officer’, 2011년 ‘oow’, 2012년 ‘third’, 2013년 ‘officer’, 2014년 ‘familiarization’, 2015년 ‘chief’, 2016년 ‘master’, 2017년 ‘training’ 단어가 나타났다.
Table 4는 system 단어 말뭉치에 단어 가중치를 적용한 값 을 수치화한 것으로 단어별로 10년간 가중치가 가장 높은 단어는 ‘enc’, ‘data’, ‘catzoc’, ‘system’, ‘source’ 순으로 나타난 다. 연도별로는 2008년 ‘system’, 2009년 ‘data’, 2010년 ‘system’, 2011년 ‘source’, 2012년 ‘display’, 2013년 ‘source’, 2014년 ‘enc’, 2015년 ‘accuracy’, 2016년 ‘poor’, 2017년 ‘catzoc’ 단어가 나타났다. 이와 같이 단어 말뭉치에 각각 해당 연도 별 수치화된 값을 합산한 후 그래프로 나타내면 시간에 따 른 경향 변화를 파악할 수 있다.
4.2 추세선 경향 분석
TF-IDF 가중치를 적용한 분석에서 officer와 system의 단어 말뭉치의 수치화한 값을 산출할 수 있었다. 먼저 연도별 수 치화한 값과 해당연도의 관계를 산점도(scatter plot)로 나타내 었다. 산점도로 나타낸 그래프를 대상으로 기울기를 나타내 었으며, 연도별 증가와 감소 경향 변화를 파악할 수 있다.
officer와 system의 단어 말뭉치 추세선 그래프는 다음 그 림 Fig. 6, Fig. 7과 같이 나타난다.
Fig. 6은 2008년부터 2017년까지의 officer 말뭉치의 빈도 추세를 나타낸 결과 최근으로 올수록 점점 감소하는 경향이 나타난다. 이와 반대로 Fig. 7의 system 말뭉치는 최근으로 올 수록 점점 증가하는 경향을 알 수 있다. 그 이유로는 ‘data’, ‘catzoc’, ‘accuracy’ 등 전자해도의 품질 정확도와 관련 있는 단어가 증가하였고, 반대로 officer 말뭉치 단어 빈도는 점점 줄었기 때문이다. 가중치를 적용한 단어 말뭉치로부터 분석 한 추세선 변화 그래프는 사고 보고서의 원인을 정확하게 분석하기란 한계점이 있으나 연관성 있는 단어 도출 빈도 변화 경향을 통하여 최근으로 올수록 system 관련 단어들의 언급이 상승하고 있음을 파악할 수 있다.
5. 결 론
해상에서 선박사고는 복잡하고 다양한 요인들이 광범위하 게 적용되어 나타난다. 하지만 연구에 사용된 12개의 ECDIS 와 관련된 사고 보고서에는 대부분 항해사의 운용 미숙으로 분석되었다. 이와 반대로 일부 보고서에서만 ECDIS 시스템 의 문제로 분석하고 있어 사고 원인에 대한 분석 경향 변화 를 정량적으로 파악하기 위해 텍스트 마이닝 기법을 적용한 텍스트 분석 연구를 하였다.
텍스트 마이닝 기법을 통한 분석 결과, ECDIS 사용 초기 에 사고 원인은 항해사 말뭉치의 빈도가 높았으나 최근으로 올수록 system 말뭉치의 빈도가 높은 경향을 알 수 있다. 이 번 연구에서 사용된 텍스트 마이닝 기법이 ECDIS의 사고 원 인을 정확하게 분석할 수 없지만 연도별로 특정 단어가 많 이 쓰였다는 점은 사고보고서의 경향 변화를 나타나는 것을 알 수 있다.
이와 같이 최근 전자해도의 품질 문제 관련 단어가 많이 도출됨은 선박이 안전항해를 수행하기에 위험 요소로 자리 잡고 있으며, 이러한 경향 파악을 토대로 ECDIS system의 향 상된 품질 개선이 이루어져야 한다. 더불어 다양한 항해정보 제공을 위해 만들어진 ECDIS는 결국 항해사가 운용하기 때문 에 제조업체와 전자해도의 배급처는 운용자에게 사용에 친숙 한 기능과 쉬운 ECDIS 인터페이스로 제공할 필요성이 있다.
이번 연구에서는 사용된 보고서는 12개로 한정된 데이터 였으며, 일부 ECDIS 전문 용어는 전문가의 자문, 지식이 필 요한 한계점이 있었다.
마지막으로 텍스트 마이닝과 같은 정량적인 분석 기법을 사용한다면 ECDIS 관련 사고뿐만 아니라, 해운 분야의 다양 한 사고 원인을 파악하고 예방하기에 도움이 될 것이라 판 단된다. 앞으로도 사고 보고서는 지속적으로 발간될 것이며, 전자화된 문서 데이터는 방대한 양이 축적될 것이다. 추후 에 방대한 양의 축적된 데이터를 분석한다면 더욱 정량적으 로 정확한 결과를 가져오리라 기대한다.