이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이 다.
본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하의 실시예는 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
본 발명을 설명하기에 앞서, 본 발명의 실시예에 따른 온톨로지 isA 계층구조에 대해 간단히 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 온톨로지 isA 계층구조(100)의 일례를 나타낸 도면이다. 본 발명의 실시예에서는 온톨로지를 트리 또는 그래프 형태의 계층 구조로 구성하고, 상기 트리 또는 그래프의 노드들 사이의 간선(edge)의 수로서 노드 간의 거리(의미상의 거리)를 표현한다. 예를 들어, 도 1에 도시된 온톨로지 isA 계층구조 (100)에서 「동물」과 「무척추동물」간의 거리는 1, 「무척추동물」과 「척추동물」간의 거리는 2이며, 「사람」과 「새우」와의 거리는 6이 된다.
문서의 중심 주제어 선정
도 2는 본 발명의 일 실시예에 따른 문서의 주제 측정 방법(200)을 나타낸 순서도이다.
먼저, 주제를 측정하고자 하는 문서로부터 키워드 및 각 키워드의 빈도를 추출한다(202). 상기 키워드는, 예를 들어 상기 문서를 구성하는 텍스트를 형태소 분 석함으로써 추출될 수 있다. 또한 추출된 키워드 중 색인어로서의 가치가 없는 불용어(stop word)는 제거한다. 상기 온톨로지 계층구조는 추출된 키워드를 노드로 포함한다.
다음으로, 상기 추출된 키워드를 이용하여 n*n 매트릭스(M; 이때 n은 추출된 키워드의 개수) 또는 상위 삼각 행렬(T)을 생성한다(204). 상기 n*n 매트릭스 또는 상위 삼각 행렬에서, 각 행 및 열은 상기 추출된 키워드를, 각 셀은 해당 행 및 열에 해당하는 키워드들의 온톨로지 isA 계층구조상의 거리를 나타낸다.
예를 들어, 상기 202 단계에서 추출된 키워드 및 빈도가 다음의 표 1과 같은 경우, 도 1에 도시된 온톨로지 isA 계층구조를 이용하여 매트릭스(M)를 구성하면 표 2와 같다.
일련번호 |
키워드 |
빈도 |
1 |
붕어 |
2 |
2 |
잉어 |
3 |
3 |
멸치 |
1 |
4 |
동물 |
2 |
M |
1 |
2 |
3 |
4 |
1 |
0 |
2 |
2 |
3 |
2 |
2 |
0 |
2 |
3 |
3 |
2 |
2 |
0 |
3 |
4 |
3 |
3 |
3 |
0 |
또한, 상기 도 1의 키워드를 이용하여 상위 삼각 행렬(T)을 구성하면 다음의 표 3과 같다.
T |
1 |
2 |
3 |
4 |
1 |
0 |
2 |
2 |
3 |
2 |
|
0 |
2 |
3 |
3 |
|
|
0 |
3 |
4 |
|
|
|
0 |
다음으로, 상기 매트릭스(M) 또는 상위 삼각 행렬(T)을 이용하여 각 키워드 별로 추출된 키워드 간의 온톨로지 isA 계층구조상의 평균거리를 계산한다(206).
예를 들어, 상기 매트릭스(M)를 이용하여 각 키워드 별 평균거리를 계산할 경우에는 다음의 수학식 1을 이용한다.
상기 수학식에서, K는 키워드의 일련번호, F(i)는 일련번호가 i인 키워드의 빈도, M(i, j)는 상기 매트릭스(M)의 행 i 열 j 인 (i, j) 셀의 값이다.
만약 각 키워드 별 빈도를 고려하지 않을 경우, F(i) 값은 모두 1이 된다.
상기 상위 삼각 행렬(T)를 이용하여 각 키워드 별 평균거리를 계산할 경우에 는 다음의 수학식 2를 이용한다.
상기 수학식에서, K는 키워드의 일련번호, F(i)는 일련번호가 i인 키워드의 빈도, T(i, j)는 상기 상위 삼각 행렬(T)의 행 i 열 j 인 (i, j) 셀의 값이다.
이 때에도 만약 각 키워드 별 빈도를 고려하지 않을 경우, F(i) 값은 모두 1이 된다.
마지막으로, 상기 계산된 평균거리가 짧은 순서로 소정 개수의 키워드를 상기 문서의 중심 주제어로 선정하게 된다(208). 상기 중심 주제어는 하나가 될 수도 있고 복수 개가 될 수도 있으며, 이는 상기 문서 및 키워드의 특성 등에 따라 적절하게 설정할 수 있다.
상기 수학식 1 및 2에 따라 표 1에 기재된 각 키워드의 평균거리를 계산하면 다음과 같다.
붕어: (0*2+2*3+2*1+3*2)/8 = 1.75
잉어: (2*2+0*3+2*1+3*2)/8 = 1.5
멸치: (2*2+2*3+0*1+3*2)/8 = 2.0
동물: (3*2+3*3+3*1+0*2)/8 = 2.25
즉, 상기 키워드들 중 평균 거리가 가장 짧은 키워드는 「잉어」, 그 다음은 「붕어」이므로, 중심 주제어를 하나만 설정할 경우의 상기 문서의 중심 주제어는 「잉어」가 되며, 2개 설정할 경우에는 「잉어」및 「붕어」가 된다.
만약 상기 수학식에서 빈도를 고려하지 않을 경우의 각 키워드 별 평균거리는 다음과 같다.
붕어: (0+2+2+3)/4 = 1.75
잉어: (2+0+2+3)/4 = 1.75
멸치: (2+2+0+3)/4 = 1.75
동물: (3+3+3+0)/4 = 2.25
즉, 이 경우에는 「붕어」, 「잉어」, 「멸치」의 평균거리가 모두 같으므로, 「붕어」, 「잉어」 및 「멸치」를 모두 상기 문서의 중심 주제어로 선정할 수 있다.
응집도 및 편차도 계산
상기와 같이 문서의 각 키워드 별 평균거리가 계산되고 이에 따라 중심 주제어가 선정되면, 다음으로 상기 추출된 키워드들의 응집도를 계산할 수 있다. 응집도란 문서 내의 키워드들이 중심 주제어와 얼마나 밀접하게 관련되어 있는지를 판단하기 위한 척도로 사용될 수 있다.
상기 응집도는 다음의 수학식 3에 의하여 계산된다. 계산된 응집도는 0에서 1 사이의 값을 가지며, 1에 가까울수록 응집도가 높다.
예를 들어, 표 2에 도시된 매트릭스(M)에서 중심 주제어를 「잉어」라 할 경우, 상기 중심 주제어와 상기 문서의 각 키워드들간의 평균거리는 빈도를 고려하지 않을 경우 (2+0+2+3)/4=1.75가 된다. 여기서 평균거리를 계산할 때 주제어도 키워드로 포함시켰으나, 주제어는 키워드에서 제외하고 계산할 수도 있다. 또한 도 1에 도시된 온톨로지 isA 계층구조에서의 최대거리는 「사람」과 「새우」 사이의 거리로서 6이므로, 상기 응집도는
1 - 1.75/6 = 0.71
이 된다.
한편 빈도를 고려하게 되면, 상기 중심 주제어와 상기 문서의 각 키워드들간의 평균거리는 (2*2+0*3+2*1+3*2)/8 = 1.5가 된다. 따라서 상기 응집도는
1 - 1.5/6 = 0.75
가 된다
중심 주제어로부터 각 키워드까지의 평균거리의 표준편차를 이용하여 중심 주제어로부터 각 키워드들간의 거리의 편차도를 계산할 수도 있다. 이를 수학식으로 나타내면 다음과 같다.
상기 수학식에서 편차도는 0에서 1사이의 값을 가지며, 1에 가까울수록 편차도가 높다.즉, 편차도가 1에 가까울수록 중심주제어로부터 각 키워드까지의 거리가 균등해진다.
심화도 계산
한편, 상기와 같이 중심주제어를 알면 해당 문서의 심화도를 알 수 있다. 상 기 심화도는 다음의 수학식 5에 의하여 정해진다. 상기 심화도 또한 0과 1 사이의 값을 가지며 1에 가까울수록 심화도가 높다.
온톨로지 isA 계층구조에서의 임의의 노드 U 에 대하여, 뿌리부터 상기 노드 U 에 도달할 때까지의 경로의 길이, 즉 경로상의 노드의 개수를 U의 레벨(level) 또는 깊이(depth)라 한다. 예를 들어, 도 1에 도시된 온톨로지 isA 계층구조에서 「동물」 의 레벨은 1이 되며, 루트 노드의 자식 노드인 「척추동물」과 「무척추동물」의 레벨은 2, 「참새」의 레벨은 4가 된다.
이에 따라 상기 온톨로지 isA 계층구조를 이용하여 중심 주제어의 레벨 및 상기 온톨로지 isA 계층구조의 최대 레벨을 추출하면 상기 중심 주제어의 심화도를 계산할 수 있다. 전술한 예에서, 중심 주제어를 「잉어」라 할 경우, 「잉어」의 레벨은 4이며, 도 1에 도시된 온톨로지 isA 계층구조의 최대 레벨 또한 4이므로, 상기 문서의 심화도는 4/4 = 1이 된다.
전술한 실시예에서는 온톨로지 isA 계층구조에서 간선 간의 거리를 일률적으로 1로 가정하였지만, 실시예에 따라 간선 간의 거리가 각각 다르게 정해지는 경우 가 있다. 예를 들어, 도 3과 같은 온톨로지 isA 계층구조의 경우 노드 B와 D 간의 거리는 0.5로, A와 C 간의 거리는 2.0으로 정의되어 있다.
이와 같이 간선마다 각각 거리가 다른 경우에는 루트 노드에서부터 중심 주제어 까지의 경로상에 존재하는 각 노드들 간의 거리를 합하고, 상기 온톨로지 isA 계층구조에서의 루트 노드에서부터 리프 노드까지의 거리의 합 중 최대값으로 나눔으로써 심화도를 계산할 수 있다.
또한 상기 온톨로지 isA 계층구조는 반드시 트리 형태로만 구성되는 것은 아니며, 그래프의 형태를 가질 수도 있다. 그래프의 경우 특정 노드의 부모 노드가 한 개가 아닌 복수 개 존재할 수 있다는 점에서 트리와 상이하다. 이에 따라 그래프의 경우 임의의 두 노드 사이의 경로가 두 개 이상 존재할 수 있다. 이와 같이 그래프 형태로 온톨로지 isA 계층구조가 형성된 경우에도 본 발명의 실시예에 따라 동일한 방법으로 문서의 중심 주제어를 추출할 수 있다. 다만, 이 경우 그래프 내의 임의의 두 노드의 경로 중 어떤 경로를 따르더라도 두 노드 사이의 거리가 동일하도록 그래프가 구성되어야 함은 자명하다. 물론, 특별한 경우로 두 노드 사이의 두 개 이상의 경로들의 거리가 서로 다른 경우가 존재한다면 하나를 선택하여 사용할 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수 행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야에서 통상의 지식을 가진 자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
도 3은 본 발명의 일 실시예에 따른 문서 주제 측정 장치(400)를 나타낸 도면이다.
본 발명의 일 실시예에 따른 문서 주제 측정 장치(400)는 전술한 문서의 주제 측정 방법(200)을 수행하기 위한 장치로서, 도시된 바와 같이 온톨로지 데이터베이스(402), 키워드 추출부(404), 평균 거리 계산부(406) 및 중심 주제어 추출부(408)를 포함하여 구성된다.
온톨로지 데이터베이스(402)는 온톨로지 isA 계층구조가 저장된 데이터베이스이다.
키워드 추출부(404)는, 주제를 측정하고자 하는 문서로부터 키워드 및 각 키워드의 빈도를 추출한다. 상기 키워드는, 예를 들어 상기 문서를 구성하는 텍스트를 형태소 분석함으로써 추출될 수 있다.
평균 거리 계산부(406)는 상기 키워드 추출부(402)에서 추출된 키워드를 이용하여 n*n 매트릭스(M; 이때 n은 추출된 키워드의 개수) 또는 상위 삼각 행렬(T)을 생성하고, 상기 매트릭스(M) 또는 상위 삼각 행렬(T)을 이용하여 각 키워드 별로 추출된 키워드 간의 온톨로지 isA 계층구조상의 평균거리를 계산한다. 이때, 상기 n*n 매트릭스 또는 상위 삼각 행렬의 각 행 및 열은 상기 추출된 키워드를, 각 셀은 해당 행 및 열에 해당하는 키워드들의 온톨로지 isA 계층구조상의 거리를 나타냄은 전술한 바와 같다.
중심 주제어 추출부(408)는 계산된 상기 키워드들의 온톨로지 isA 계층구조상의 평균거리를 서로 비교하고, 평균거리가 짧은 순서로 소정 개수의 키워드를 상기 문서의 중심 주제어로서 추출하게 된다.
한편, 본 발명의 일 실시예에 따른 문서 주제 측정 장치(400)는 필요에 따라 상기 중심 주제어와 상기 온톨로지 isA 게층관계를 이용하여 상기 추출된 키워드들의 응집도를 계산하는 응집도 계산부(미도시) 및 상기 중심 주제어와 상기 온톨로지 isA 게층관계를 이용하여 상기 문서의 심화도를 계산하는 심화도 계산부(미도시)를 더 포함할 수 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으 나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.
그러므로 본 발명의 권리범위는 설명된 실시 예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.