KnowledgeGraph

[기업 정보] 지식그래프를 활용한 분석 1

joyHong 2023. 8. 7. 00:36

기업에 대한 정보는 금융감독원의 전자공시시스템을 통해 필요한 정보를 획득할 수 있다.

전자공시시스템(DART : Data Analysis, Retrieval and Transfer System)은 상장법인 등이 공시서류를 인터넷으로 제출하고, 투자자 등 이용자는 제출 즉시 인터넷을 통해 조회할 수 있도록 하는 종합적 기업공시 시스템이다.
(참고, https://dart.fss.or.kr/introduction/content1.do)

이번 포스트에서는 전자공시시스템에서 제공하는 기업의 정보들을 가져와 지식그래프 형태로 구성하고 몇가지 내용을 파악하고 분석해보고자 한다.

전자공시시스템 DART에 공시되고있는 공시보고서 원문 등은 오픈API를 통해 활용할 수 있다. 활용을 원하는 누구든지(개인, 기업, 기관 등) 이용이 가능하다.

먼저는 기업에 대한 정보를 획득하기 위해 기업개황 API(https://opendart.fss.or.kr/guide/detail.do?apiGrpCd=DS001&apiId=2019002)를 사용하여  정보를 획득하도록 한다.

인증키를 발급받아 주어진 API 형태에 맞춰 요청을 하면 아래와 같은 정보를 획득하게 되는데 OpenDART의 기업정보를 모두 추출하도록 한다.

제공하는 정보 중 기업명, 대표자명, 법인등록번호, 사업자번호 만을 이용하여 그래프 형태로 데이터를 구성하였다.

기업에 대한 데이터로 사업자, 법인, 대표자가 구성이 되었다면, 이번에는 기업의 임원정보를 획득하여 통합을 해보면 좋을 것 같다.

따라서, OpenDART의 임원정보 API를 활용하여 임원들에 대한 정보를 추가하도록 한다.

임원 현황 API를 통해 획득할 수 있는 정보는 특정 기업의 임원이 누구인지와, 임원의 경력, 학력 정보를 동시에 획득할 수 있다.

API를 통해 획득한 정보를 그래프 형태로 바뀌어 나온 결과물을 확인하다보면, 뭔가 이상한 점이 발견된다.

동일한 정보(사람)임에도 각각 별개의 정보로 인식되어 있다.

모든 정보들이 식별처리가 되어서 별다른 작업을 할 필요없이 활용할 수 있으면 좋겠지만, 아쉽게도 몇가지 작업들을 해주어야 동일한 통합된 데이터로서의 가치가 발현될 수 있다.

이 부분은 잠시 미루어 놓고

이번에는 기업의 주주 정보도 그래프에 반영해보도록 한다.

최대 주주 현황도 마찬가지로 OpenDART (https://opendart.fss.or.kr/guide/detail.do?apiGrpCd=DS002&apiId=2019007) 에서 획득할 수 있다.

이 API를 통해서는 최대 주주와 지분율 뿐만 아니라 주주 간의 관계까지도 획득할 수 있다.

지금까지 간단하게 3개의 API를 통해 획득한 정보를 그래프 형태로 바뀌어 저장하였다. 문제는 위에서 언급한 바와 같이 특정한 식별자를 포함하고 있지 않은 정보들이 존재하여, 이를 처리해야 한다는 것이었다.

따라서 이를 보완해보고자 그래프 패턴을 활용하여 식별정보를 생성하고 동일한 사람, 기업, 학교로 구성되도록 조정하였다.

휴리스틱한 방법을 적용하여 그래프 패턴을 통해 조정을 한 결과

어떤 기업의 주주, 임원, 그리고 그들 간의 가족관계까지 한번에 파악이 되는 정보를 획득할 수 있게 되었다.

 

어떠한 목적을 가지고 분석을 하고자 할 때 가장 필수적인 요소 중 하나로서 데이터의 확보 및 통합이 있을 것이다.

데이터의 구조화된 통합 측면에서 지식그래프를 활용하게 되면, 다른 방식의 통합과는 차별화된 장점을 가지고 작업이 진행될 수 있을 것이다.

다음에는 그래프 구조를 통해 살펴볼 수 있는 몇가지 예시를 적용해보도록 하겠다.

끝.