KR101031901B1 - Social network analyzing method and system based on communication record - Google Patents

Social network analyzing method and system based on communication record Download PDF

Info

Publication number
KR101031901B1
KR101031901B1 KR1020090016989A KR20090016989A KR101031901B1 KR 101031901 B1 KR101031901 B1 KR 101031901B1 KR 1020090016989 A KR1020090016989 A KR 1020090016989A KR 20090016989 A KR20090016989 A KR 20090016989A KR 101031901 B1 KR101031901 B1 KR 101031901B1
Authority
KR
South Korea
Prior art keywords
nodes
relationship
communication
ontology
strength
Prior art date
Application number
KR1020090016989A
Other languages
Korean (ko)
Other versions
KR20100098029A (en
Inventor
이동훈
하인석
최광선
Original Assignee
주식회사 솔트룩스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 솔트룩스 filed Critical 주식회사 솔트룩스
Priority to KR1020090016989A priority Critical patent/KR101031901B1/en
Publication of KR20100098029A publication Critical patent/KR20100098029A/en
Application granted granted Critical
Publication of KR101031901B1 publication Critical patent/KR101031901B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 통신 기록에 기반한 사회 관계 분석 방법 및 시스템에 관한 것으로, 본 발명에 따른 사회 관계 분석 방법은 노드들 간의 통신 기록과 노드들의 프로파일 정보를 입력받고, 입력된 통신 기록으로부터 노드들 간의 관계 네트워크를 생성하고, 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출하고, 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 노드들 간의 관계를 온톨로지로 관리하고, 산출된 관계 강도 및 온톨로지에 기초한 추론 규칙에 의해 노드들 간의 사회 관계를 생성함으로써, 사용자 간에 발생한 방대한 통신 기록으로부터 사용자 간의 관계를 효과적으로 획득하고, 발신자 및 수신자 간의 관계에 대한 정보를 제공받지 못하더라도 온톨로지 및 추론 규칙을 활용하여 양자의 관계를 분석하고 확장할 수 있다.

Figure R1020090016989

The present invention relates to a method and system for analyzing social relationships based on a communication record. The method for analyzing social relationships according to the present invention receives a communication record between nodes and profile information of nodes, and a relationship network between nodes from the input communication record. To generate a relationship strength between nodes in the generated relationship network, extract keywords and attributes from the input communication records and profile information, and manage the relationships between nodes ontologies, and calculate the relationship strength and ontology. By creating social relationships between nodes based on inference rules based on them, we can effectively obtain the relationships between users from the vast communication records generated between users, and utilize ontology and reasoning rules even if they are not provided with information about the relationship between sender and receiver. Analyze and expand relationships Can be.

Figure R1020090016989

Description

통신 기록에 기반한 사회 관계 분석 방법 및 시스템{Social network analyzing method and system based on communication record}Social network analyzing method and system based on communication record

본 발명은 통신 기록에 기반한 사회 관계 분석 방법 및 시스템에 관한 것으로, 보다 상세하게는 사용자 간의 통신 기록에 기초하여 사용자 간의 관계를 형성하고, 온톨로지 및 추론 규칙을 이용하여 사용자 간의 사회 관계를 분석하는 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for analyzing social relations based on a communication record. More particularly, the present invention relates to a method of forming a relationship between users based on a communication record between users, and to analyzing social relationships between users using ontology and inference rules. And to the system.

면대면 교류를 이용하지 않고 개인 간의 상호 교류를 위한 방법으로는 전통적으로 편지나 전화가 있었다. 근래에 들어, 통신 네트워크의 발달과 컴퓨터 기술의 발전으로 개인 간의 통신 수단 및 방법에는 큰 변화가 있어 왔다. 종래의 유선 전화의 장소적 한계를 벗어난 휴대 전화, 우표를 붙이지 않고, 컴퓨터 네트워크를 통해 즉시 전달이 가능한 E-mail, 다양한 단말기를 통해 간단한 메시지를 전달 가능한 SMS(short message service) 및 MMS(multimedia message service) 등이 바로 그것이다.Traditionally, letters and telephones have been a way of interacting with each other without using face-to-face communication. In recent years, with the development of communication networks and the development of computer technology, there have been great changes in the means and methods of communication between individuals. Mobile phones beyond the limitations of conventional landline phones, E-mail that can be delivered immediately through a computer network without stamps, SMS (short message service) and MMS (multimedia message) that can deliver simple messages through various terminals service).

이러한 통신 수단의 등장으로 개인 간의 교류는 질적인 면에서 보다 빠르고 쉽게 이루어질 수 있게 되었으며, 양적인 면에서 종래의 편지나 유선 전화와 비할 바가 못 된다. 특히, 이러한 새로운 통신 수단은 종래의 통신 수단과는 달리 사용자들의 통신 기록을 전자적 형태로 남길 수 있다는 특징을 갖는다. 예를 들어, 전통적인 편지를 상대방에게 보낼 경우, 이러한 편지의 내용과 송수신 일시는 아날로그적인 형태로만 남을 것이나, E-mail의 경우 언제든지 컴퓨터에서 복제와 확인 가능한 전자적 형태로 기록된다는 차이점이 있다. 더 나아가 이상에서 언급한 E-mail, SMS, MMS 등의 통신 수단은 중계 서버와 같은 컴퓨터 시스템에서 전자적 형태의 기록을 남기는데 아무런 기술적 문제가 없다. 이러한 기록에는 발신자 정보, 수신자 정보, 송수신 시간이 포함될 수 있으며, 심지어 통신 내용 전문을 저장할 수도 있을 것이다. 또한, 컴퓨터 시스템의 발전으로 인해 휴대 전화를 이용한 음성 통화의 경우, 통화 기록뿐만 아니라 음성 통화 내역 역시 보관이 용이해지고 있다.With the advent of such communication means, exchanges between individuals can be made more quickly and easily in terms of quality, and in terms of quantity, they are incomparable with conventional letters or landlines. In particular, this new communication means, unlike the conventional communication means, can leave a user's communication record in electronic form. For example, when sending a traditional letter to the other party, the contents of the letter and the date and time of transmission and reception will remain only in an analog form, but in the case of an e-mail, it is recorded in an electronic form that can be reproduced and verified at a computer at any time. Furthermore, the aforementioned communication means such as E-mail, SMS, MMS, etc. have no technical problem in keeping records of electronic forms in computer systems such as relay servers. Such records may include sender information, recipient information, transmission and reception times, and may even store the full text of the communication. In addition, due to the development of computer systems, in the case of a voice call using a mobile phone, not only the call log but also the voice call history can be easily stored.

이러한 기술 발전에 따른 디지털화된 통신 수단으로 인해 기업 및 기관 등에서 사용자가 남기는 통신 기록을 유용하게 활용하고자 하는 노력이 이루어지고 있다. 예를 들어, 사용자 간의 통신 기록을 분석하여 기업의 마케팅 전략에 반영하거나, 통신 요금 과금을 위한 기초 자료로 활용할 수 있을 것이다. 문제는 이러한 통신 기록의 양이 너무 방대하여 이를 분석하기에 용이하지 않고, 통신 기록 내에 포함되어 있는 불필요한 정보들(일종의 노이즈에 해당한다.)이 이러한 분석에 장애가 된다는 점이다. 특히, 통신 기록의 전자적 기록이 용이해지면 용이해질수록 디지털 데이터의 양도 더욱 많아지고, 이로 인해 꼭 필요한 정보를 추출하는 것이 더욱 어려워진다는 문제가 발생하고 있다.Due to the digitalized communication means in accordance with the development of the technology, efforts are being made to utilize the communication records left by users in corporations and institutions. For example, the communication records between users can be analyzed and reflected in a company's marketing strategy, or used as a basic data for communication billing. The problem is that the amount of this communication record is so large that it is not easy to analyze, and unnecessary information contained in the communication record (which is a kind of noise) hinders this analysis. In particular, the easier the electronic recording of the communication record, the greater the amount of digital data, which causes a problem that it becomes more difficult to extract the necessary information.

따라서, 이렇게 축적된 방대한 통신 기록으로부터 불필요한 노이즈를 적절히 제거함으로써 기업을 포함한 특정 조직에 유용한 정보만을 추출해내고 이를 활용 가능한 형태로 가공할 필요가 있다. 사용자 간의 통신 기록으로부터 추출해낼 수 있는 가장 기본적인 정보는 사용자 간의 관계이며, 통신 기록을 통해 특정 키워드나 토픽을 이용하여 사용자 간의 관계를 표현할 수 있다. 이로부터 한 개인의 사회 관계를 분석한다면, 그 결과물은 매우 가치있는 정보로서 활용될 수 있을 것이다.Therefore, it is necessary to extract only the information useful to a specific organization including a company and to process it into a form that can be used by appropriately removing unnecessary noise from such a huge communication record. The most basic information that can be extracted from the communication record between users is the relationship between users, and the relationship between users can be expressed by using a specific keyword or topic through the communication record. If we analyze a person's social relations from this, the result can be used as very valuable information.

본 발명이 해결하고자 하는 기술적 과제는 사용자 간에 발생한 방대한 통신 기록으로부터 사용자 간의 관계를 효과적으로 획득할 수 없었던 문제점을 해결하고, 발신자 및 수신자 간의 관계에 대한 정보를 제공받지 못할 경우, 양자의 관계를 파악할 수 없었던 한계를 극복함으로써 통신 기록으로부터 발신자 및 수신자 간의 사회 관계를 분석, 확장하는 데 있다.The technical problem to be solved by the present invention is to solve the problem that the relationship between the user could not be effectively obtained from the vast communication record between the user, and when the information about the relationship between the sender and the receiver is not provided, it is possible to grasp the relationship between the two. By overcoming the limitations that were not there, the social relationship between the sender and the receiver can be analyzed and expanded from the communication records.

상기 기술적 과제를 해결하기 위하여, 본 발명에 따른 사회 관계 분석 방법은 소정 도메인에 속하는 노드들 간의 통신 기록과 상기 노드들의 프로파일 정보를 입력받는 단계; 상기 입력된 통신 기록으로부터 상기 노드들 간의 관계 네트워크를 생성하는 단계; 상기 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출하는 단계; 상기 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 상기 노드들 간의 관계를 온톨로지로 관리하는 단계; 및 상기 산출된 관계 강도 및 상기 온톨로지에 기초한 소정의 추론 규칙에 의해 상기 노드들 간의 사회 관계를 생성하는 단계를 포함한다.In order to solve the technical problem, the social relationship analysis method according to the present invention comprises the steps of receiving a communication record between the nodes belonging to a predetermined domain and the profile information of the nodes; Creating a relationship network between the nodes from the input communication record; Calculating a relationship strength between nodes in the created relationship network; Extracting keywords and attributes from the input communication records and profile information, respectively, and managing the relationships among the nodes by ontology; And generating a social relationship between the nodes by a predetermined inference rule based on the calculated relationship strength and the ontology.

상기 노드들 간의 관계를 온톨로지로 관리하는 단계는, 상기 입력된 프로파일 정보로부터 속성을 추출하고, 상기 입력된 통신 기록으로부터 상기 추출된 속성에 대응하는 키워드를 추출하는 단계; 및 상기 키워드와 연관된 노드들로부터 새로운 객체를 추출하여 상기 노드들 간의 관계로 정의하는 단계를 포함한다.Ontology of managing the relationship between the nodes may include extracting an attribute from the input profile information and extracting a keyword corresponding to the extracted attribute from the input communication record; And extracting a new object from the nodes associated with the keyword and defining the relationship between the nodes.

상기 노드들 간의 관계 강도를 산출하는 단계는, 상기 입력된 통신 기록으로부터 통신 수단별로 상기 노드들 간의 통신 시간 또는 통신 빈도를 추출하는 단계; 및 상기 통신 수단을 고려하여 상기 추출된 통신 시간 통신 빈도로부터 강도 계수를 산출하는 단계를 포함한다.The step of calculating the relationship strength between the nodes may include extracting a communication time or a communication frequency between the nodes for each communication means from the input communication record; And calculating a strength factor from the extracted communication time communication frequency in consideration of the communication means.

상기 산출된 강도 계수는, 상기 입력된 통신 기록들 중에서 통신 수단별 차지 비율을 고려하여 산출된 제 1 강도 계수이거나, 상기 노드들이 속하는 소정 그룹의 통신 기록 통계를 고려하여 산출된 제 2 강도 계수이거나, 상기 제 1 강도 계수 및 상기 제 2 강도 계수의 조합이다.The calculated strength factor is a first strength factor calculated in consideration of a charge ratio for each communication means among the input communication records, or a second strength factor calculated in consideration of communication record statistics of a predetermined group to which the nodes belong. And a combination of the first strength factor and the second strength factor.

상기 소정의 추론 규칙은, 상기 노드들 간의 사회 관계를 위한 충분조건이고, 상기 입력된 통신 기록과 프로파일 정보 및 상기 온톨로지를 고려하여 상기 노드들로부터 도출 가능한 적어도 하나 이상의 규칙이다.The predetermined reasoning rule is a sufficient condition for social relations between the nodes, and is at least one rule derivable from the nodes in consideration of the input communication record, profile information and the ontology.

또한, 이하에서는 상기 기재된 데이터 구조화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.Further, the following provides a computer readable recording medium having recorded thereon a program for executing the data structuring method described above on a computer.

상기 기술적 과제를 해결하기 위하여, 본 발명에 따른 사회 관계 분석 시스템은 소정 도메인에 속하는 노드들 간의 통신 기록과 상기 노드들의 프로파일 정보를 입력받는 데이터 입력부; 상기 입력된 통신 기록으로부터 상기 노드들 간의 관계 네트워크를 생성하는 관계 네트워크 생성부; 상기 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출하는 관계 강도 산출부; 상기 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 상기 노드들 간의 관계를 온톨로지로 관리하는 온톨로지 관리부; 및 상기 산출된 관계 강도 및 상기 온톨로지에 기 초한 소정의 추론 규칙에 의해 상기 노드들 간의 사회 관계를 생성하는 사회 관계 생성부를 포함한다.In order to solve the above technical problem, the social relationship analysis system according to the present invention includes a data input unit for receiving a communication record between the nodes belonging to a predetermined domain and the profile information of the nodes; A relationship network generator for generating a relationship network between the nodes from the input communication record; A relationship strength calculator for calculating a relationship strength between nodes in the generated relationship network; An ontology manager which extracts keywords and attributes from the inputted communication record and profile information, respectively, and manages relationships among the nodes by ontology; And a social relationship generator for generating a social relationship between the nodes by a predetermined reasoning rule based on the calculated relationship strength and the ontology.

본 발명은 사용자 간에 발생한 방대한 통신 기록으로부터 사용자 간의 관계를 효과적으로 획득하고, 발신자 및 수신자 간의 관계에 대한 정보를 제공받지 못하더라도 온톨로지 및 추론 규칙을 활용하여 양자의 관계를 분석, 확장하는 것이 가능하다. 또한, 본 발명은 통신 기록 및 프로파일 정보로부터 키워드 및 속성을 추출함으로써 발신자 및 수신자 간의 새로운 관계를 발견할 수 있다.According to the present invention, it is possible to effectively obtain the relationship between users from the vast communication records generated between users, and to analyze and expand the relationship between the two by utilizing ontologies and inference rules even if the information on the relationship between the sender and the receiver is not provided. The present invention can also discover new relationships between senders and receivers by extracting keywords and attributes from communication records and profile information.

본 발명의 실시예들을 설명하기에 앞서 이하에서 사용할 용어들과 개념을 간략히 설명한다.Prior to describing the embodiments of the present invention, terms and concepts to be used below are briefly described.

개인, 개인들 간의 관계를 효율적으로 표현하기 위해서는 그래프(graph)를 활용할 수 있다. 그래프란 컴퓨터 과학 분야에서 특정 집단 내 객체들 간의 관계를 표현하는 수단으로서, 노드(node)와 에지(edge)로 구성된다. 노드는 하나의 객체(통신이라는 관점에서는 통신하는 양 사용자 또는 개인을 의미한다.)를 표현하고, 에지는 노드들 간의 관계를 표현한다.Graphs can be used to efficiently express relationships between individuals. A graph is a means of expressing a relationship between objects in a specific group in the field of computer science, and is composed of nodes and edges. A node represents an object (meaning both users or individuals communicating in terms of communication), and an edge represents a relationship between nodes.

시맨틱 기술(semantic technology)은 사람이 화면을 읽고 의미를 이해하는 것처럼 컴퓨터가 이해할 수 있는 언어와 규칙들을 정해 놓아 컴퓨터 사이의 의사소통을 가능하게 하는 지능형 기술을 의미한다. 시맨틱 기술에서는 해당 환경에 속하는 객체들 간의 관계-의미 정보(semanteme)를 기계, 즉 컴퓨터가 처리할 수 있는 온톨로지(ontology) 형태로 표현하고, 이를 자동화된 기계가 처리하도록 하는 것을 목표로 하고 있다. 여기서, 온톨로지란 사람들이 사물에 대해 생각하는 바를 추상화하고 공유한 모델로서, 정형화되고 개념의 유형이나 사용상의 제약 조건들이 명시적으로 정의된 기술을 말한다. 컴퓨터 과학 분야에서 온톨로지는 특정한 영역을 표현하는 데이터 모델로서 특정한 영역(domain)에 속하는 개념과 개념 사이의 관계를 기술하는 정형(formal) 어휘의 집합으로 정의된다. 특히, 온톨로지는 시맨틱 기술을 구현할 수 있는 도구로써, 지식 개념을 의미적으로 연결할 수 있는 도구로 사용되며, 컴퓨터에서 사람이 갖고 있는 사물에 대한 개념을 일종의 데이터베이스의 형태로 가공하여 처리할 수 있도록 해 준다.Semantic technology is an intelligent technology that allows computers to communicate by setting language and rules that the computer can understand, just as a person reads the screen and understands the meaning. Semantic technology aims to express the relationship-semiteme between objects belonging to the environment in the form of an ontology that can be processed by a machine, that is, a computer, and to process it by an automated machine. Here, ontology is a model that abstracts and shares what people think about things, and is a technology that has been formalized and explicitly defined types of concepts or usage constraints. In the field of computer science, ontology is a data model that represents a specific domain and is defined as a set of formal vocabularies describing the concepts and relationships between them. In particular, ontology is a tool that can implement semantic technology. It is used as a tool that can semantically connect knowledge concepts, and can process and process the concept of human things in the form of a database on a computer. give.

이러한 시맨틱 기술 분야에서는 관계를 표현하기 위한 수단으로서 트리플(triple)이라는 표현 형태를 사용한다. 트리플이란, 주어(subject), 술어(predicate), 객체(object)의 형태로 개념을 표현하는 것을 말한다. 각각의 주어, 술어, 객체는 XML의 URI(Uniform Resource Identifier)로 표현될 수 있으며, 현재 시맨틱 웹 온톨로지를 기술하는 표준 언어로 W3C에서 제안한 RDF, OWL 그리고 ISO에서 제안한 TopicMaps 등이 있다.In this field of semantic technology, the expression form of triple is used as a means for expressing a relationship. Triple refers to expressing concepts in the form of subjects, predicates, and objects. Each subject, predicate, and object can be expressed as a Uniform Resource Identifier (URI) in XML. Currently, the standard language describing semantic web ontology is RDF, OWL, and TopicMaps, which are proposed by the W3C.

이상에서 설명한 온톨로지 개념을 활용하여, 통신 환경에서의 사용자 및 사용자 간의 관계를 그래프 구조로 표현하는 것이 가능하다. 여기에, 해당 도메인 고유의 사회적 요소를 식별할 수 있는 특정 규칙들을 추가함으로써 사회 관계 네트워크를 구성할 수 있다.By utilizing the ontology concept described above, it is possible to express a relationship between a user and a user in a communication environment in a graph structure. In addition, a social relation network can be formed by adding specific rules for identifying social elements inherent to the domain.

이하에서는 도면을 참조하여 본 발명의 다양한 실시예들을 상세히 설명한다.Hereinafter, various embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템을 도시한 도면으로서, 데이터 입력부(100), 관계 네트워크 생성부(200), 관계 강도 산출부(300), 온톨로지 관리부(400) 및 사회 관계 생성부(500)를 포함한다.1 is a diagram illustrating a social relationship analysis system based on a communication record according to an embodiment of the present invention, wherein the data input unit 100, the relationship network generation unit 200, the relationship strength calculation unit 300, and the ontology management unit ( 400 and the social relationship generating unit 500.

데이터 입력부(100)는 소정 도메인에 속하는 노드들 간의 통신 기록(110)과 노드들에 대한 프로파일 정보(120)를 입력받는다. 통신 기록(110)은 다양한 통신 수단을 통해 개인 간의 통신 행위가 발생하였을 때, 그 내역(history)을 디지털화된 기록으로 남긴 것을 의미한다. 이러한 통신 기록(110)의 종류는 음성 통화, E-mail, SMS 및 MMS, 인스턴트 메신저 서비스 등 개인 간에 이용 가능한 통신 수단에 대한 기록이 포함된다. 또한, 통신 기록(110)에는 발신자 식별자, 수신자 식별자, 송수신 시간 및 송수신 내용이 포함될 수 있다. 여기서, 식별자란 해당 통신 수단에서 발신자와 수신자를 구별하기 위해 개인에게 부여되는 고유 키(key)를 의미한다. 예를 들어, 개인 간의 통신 수단으로서 E-mail, SMS를 사용하였을 경우, 이에 대응하는 식별자는 각각 E-mail 주소 및 휴대 전화 번호가 될 수 있다. 즉, 이러한 식별자들이 디지털화되어 기록되는 통신 기록에서 현실 세계의 개인 사용자에 대응되는 개념으로 활용되는 것이다. 이러한 식별자는 하나의 실체(entity)로서 취급되어 다른 객체들과 특정한 관계를 갖는다.The data input unit 100 receives a communication record 110 between nodes belonging to a predetermined domain and profile information 120 for nodes. The communication record 110 means that the history is left as a digitized record when a communication activity between individuals occurs through various communication means. This type of communication record 110 includes a record of communication means available between individuals, such as voice calls, E-mail, SMS and MMS, and instant messenger services. In addition, the communication record 110 may include a sender identifier, a receiver identifier, a transmission / reception time, and transmission / reception contents. Here, the identifier means a unique key given to an individual to distinguish the sender and the receiver in the corresponding communication means. For example, when E-mail and SMS are used as a means of communication between individuals, the corresponding identifiers may be an E-mail address and a mobile phone number, respectively. In other words, these identifiers are utilized as a concept corresponding to the individual user in the real world in the communication record that is digitally recorded. Such an identifier is treated as an entity and has a specific relationship with other objects.

프로파일(profile) 정보(120)는 개인 사용자에 대응하는 신상 정보의 일종으로서, 해당 도메인의 특성에 따라 나이, 성별, 주소 및 직업 등이 포함될 수 있다. 프로파일 정보는 개인 간의 관계를 파악하기 위한 기초 자료로서 활용될 수 있다.The profile information 120 is a type of personal information corresponding to an individual user, and may include age, gender, address, and occupation according to the characteristics of the corresponding domain. Profile information can be used as a basis for identifying relationships between individuals.

이상에서 설명한 통신 기록과 프로파일 정보는 전자적인 형태로 가공되어 데 이터 입력부(100)에 제공될 수 있으며, 필요에 따라서는 입력된 데이터 전체 중 불필요한 노이즈를 제거하고 요약하는 과정이 요구될 수도 있을 것이다. 복잡한 통신 기록들로부터 그래프 형식의 노드를 표현하기 위해 각각의 식별자들을 추출하는 과정이나, 송수신 시간으로부터 날짜만을 추출하고 시간 정보를 폐기하는 과정, 통신 데이터를 기반으로 키워드나 토픽을 이용한 관계를 요약하는 과정 등이 이러한 요약 과정에 해당할 것이다. 이러한 데이터 입력부(100)는 키보드 및 마우스와 같은 물리적인 입력 장치가 될 수도 있으며, 네트워크를 통해 입력되는 데이터 스트림(stream)을 저장할 수 있는 메모리 또는 디스크 드라이브와 같은 저장 수단이 될 수도 있을 것이다.The communication record and the profile information described above may be processed in an electronic form and provided to the data input unit 100. If necessary, a process of removing and summarizing unnecessary noise among all input data may be required. . Extracting individual identifiers to represent nodes in graph form from complex communication records, extracting only dates from time of transmission and reception, discarding time information, and summarizing relationships using keywords or topics based on communication data. The process may be such a summary process. The data input unit 100 may be a physical input device such as a keyboard and a mouse, or may be a storage means such as a memory or a disk drive capable of storing a data stream input through a network.

관계 네트워크 생성부(200)는 데이터 입력부(100)를 통해 입력된 통신 기록(110)으로부터 노드들 간의 관계 네트워크(250)를 생성한다. 앞서 설명한 바와 같이 통신 기록(110)에는 발신자 식별자 및 수신자 식별자가 포함된다. 따라서, 이들 식별자 간에 통신 기록이 존재할 경우 양자 간에 어떠한 관계가 성립한다고 볼 수 있다. 비록 현 단계에서 이러한 관계가 가족 관계인지, 친구 관계인지, 사업상 관계인지는 알 수 없지만, 통신 기록이 존재한다는 사실만으로 통신 대상 간의 관계를 설정할 수 있다. 이러한 관계 네트워크 생성부(200)는 전자적 형태의 통신 기록(110)을 입력받아 통상적인 컴퓨터 시스템이 읽거나 저장할 수 있는 소프트웨어 코드를 처리하는 프로세서로 구현될 수 있을 것이다. 소프트웨어 코드를 처리하는 작업을 돕기 위해 필요하다면 메모리를 활용하는 것도 가능하다.The relationship network generator 200 generates a relationship network 250 between nodes from the communication record 110 input through the data input unit 100. As described above, the communication record 110 includes a sender identifier and a receiver identifier. Thus, if there is a communication record between these identifiers, it can be seen that some relationship is established between them. Although it is not known at this stage whether the relationship is a family, friend, or business relationship, the fact that there is a communication record can establish the relationship between the communication targets. The relational network generator 200 may be implemented as a processor that receives a communication record 110 in electronic form and processes software code that can be read or stored by a conventional computer system. It is also possible to utilize memory if necessary to aid in the processing of software code.

한편, 관계 네트워크를 생성함에 있어서, 만약 데이터 입력부(100)를 통해 입력된 통신 기록(110)이 전화 통화, SMS, E-mail, 블로그, 게시판 등의 커뮤니케이션 기록일 경우에는 그 내용(contents)로부터 의미있는 정보를 추출, 요약하는 과정이 선행될 수 있을 것이다. 통화 기록으로부터 음성 인식을 이용한 키워드 추출 방법이 활용될 수 있을 것이고, 전자적 형태의 문자열로부터 키워드 추출 방법이 활용될 수도 있을 것이다. 음성 인식을 이용한 키워드 추출 방법 및 문자열로부터 키워드를 추출하는 방법은 종래에 널리 알려진 다양한 키워드 추출 방법에 따르는 것으로 여기서는 자세한 설명을 생략한다. 이상의 과정을 통해 요약된 특정 키워드가 추출되었다면, 관계 네트워크가 어떠한 주제에 기반하여 형성되는지를 결정할 수 있다. 이러한 주제 기반의 관계 네트워크는 앞서 설명한 노드들 간의 에지에 추출된 주제를 속성 정보로서 부가함으로써 표현될 수 있다.On the other hand, in creating a relationship network, if the communication record 110 input through the data input unit 100 is a communication record such as a telephone call, SMS, E-mail, blog, bulletin board from the contents (contents) The process of extracting and summarizing meaningful information may be preceded. A keyword extraction method using voice recognition from call logs may be utilized, and a keyword extraction method from an electronic string may be utilized. A keyword extraction method using speech recognition and a method of extracting a keyword from a character string are based on various keyword extraction methods well known in the art, and thus detailed description thereof will be omitted. If a specific keyword summarized through the above process is extracted, it is possible to determine on which subject the relation network is formed. This topic-based relationship network can be expressed by adding the extracted theme as attribute information to the edges between the nodes described above.

관계 강도 산출부(300)는 관계 네트워크 생성부(200)를 통해 생성된 관계 네트워크(250)에서 노드들 간의 관계 강도를 산출한다. 도 1에는 2 개의 관계 네트워크(250, 350)가 도시되어 있는데, 각각은 관계 강도 산출부(300)에 입력되는 것과 출력되는 것을 의미한다. 즉, 관계 강도 산출부(300)는 관계 네트워크(250)를 입력받아 노드들 간의 관계의 강약을 분석하여 그 정도를 수치적으로 산출한다. 도 1에서는 관계 강도 산출부(300)로부터 출력되는 관계 네트워크(350)에 대하여 관계 강도가 상대적으로 높다고 평가되는 에지를 더 굵은 선으로 표시함으로써 시각적인 이해를 돕고 있다. 관계 강도는 통신 기록(110)으로부터 추출된 통신 시간이나 주기, 빈도 등과 같은 객관적인 수치 데이터를 기반으로 개인 간의 관계를 산출할 수 있으며, 보다 구체적인 과정은 이후에 다시 자세히 설명하겠다. 이러한 관계 강도 산출부(300)는 전자적 형태의 관계 네트워크(250)를 입력받아 통상적인 컴퓨터 시스템이 읽거나 저장할 수 있는 소프트웨어 코드를 처리하는 프로세서로 구현될 수 있을 것이다. 소프트웨어 코드를 처리하는 작업을 돕기 위해 필요하다면 메모리를 활용하는 것도 가능하다.The relationship strength calculator 300 calculates a relationship strength between nodes in the relationship network 250 generated through the relationship network generator 200. Two relationship networks 250 and 350 are shown in FIG. 1, which means input and output to the relationship strength calculator 300. That is, the relationship strength calculator 300 receives the relationship network 250 and analyzes the strength and weakness of the relationship between the nodes and numerically calculates the degree. In FIG. 1, a thicker line indicates an edge of a relationship network 350 output from the relationship strength calculator 300 with a relatively high relationship strength to aid visual understanding. The relationship strength may calculate a relationship between individuals based on objective numerical data such as communication time, period, frequency, etc. extracted from the communication record 110, and a detailed process will be described later in detail. The relationship strength calculator 300 may be implemented as a processor that receives a relationship network 250 in an electronic form and processes software code that can be read or stored by a conventional computer system. It is also possible to utilize memory if necessary to aid in the processing of software code.

앞서 설명한 키워드 요약 방법을 본 관계 강도 산출부(300)에 활용할 경우, 노드들 간의 관계를 보다 구체적으로 표현하는 것이 가능하다. 예를 들어, 두 사람의 사용자 간에 총 1 시간의 전화 통화를 하였을 경우, 키워드 추출을 통한 주제 분석 과정이 없다면, 단순히 두 사람 간의 1 시간 통화 분에 해당하는 관계 네트워크가 형성될 것이다. 그러나, 만약 총 1 시간의 전화 통화 중 여행에 관한 주제로 40분을 통화하고 계약에 관한 주제로 20분을 통화하였다면, 이들의 관계는 40분 통화 분에 해당하는 여행이라는 관계 네트워크가 형성되고, 또 20분 통화 분에 해당하는 계약이라는 관계 네트워크가 별도로 형성될 수 있을 것이다.When the above-described keyword summary method is used in the relationship strength calculator 300, it is possible to more specifically express the relationship between the nodes. For example, if a total of one hour of phone calls between two users, if there is no topic analysis process through keyword extraction, a relationship network corresponding to one hour call minutes between two people will be formed. However, if a total of 1 hour of phone calls were 40 minutes on the subject of travel and 20 minutes on the subject of a contract, their relationship would form a relationship network of 40 minutes of travel, In addition, a relationship network of 20 minute calls could be formed separately.

온톨로지 관리부(400)는 데이터 입력부(100)를 통해 입력된 통신 기록(110)과 프로파일 정보(120)로부터 각각 키워드 및 속성을 추출하여 노드들 간의 관계를 온톨로지로 관리한다. 앞서 설명한 바와 같이 온톨로지는 노드들 간의 관계를 컴퓨터 시스템이 이해할 수 있도록 특정 프로토콜에 따라 표현한 것을 의미한다. 온톨로지 관리부(400)는 통신 기록(110)(보다 구체적으로는 실질적인 통신 내용이 될 수 있다.)으로부터 키워드를 추출함으로써 노드들 간의 관계를 파악하고, 이를 온톨로지 객체에 매핑(mapping)한다. 또한, 온톨로지 관리부(400)는 프로파일 정보(120)로부터 프로파일 항목들을 추출함으로써 이를 온톨로지 객체의 속성을 결 정하는데 활용할 수 있다. 예를 들어, 프로파일 정보(120)에 사용자의 나이 정보가 있다면, 이를 온톨로지 객체로 표현함에 있어서, 해당 객체의 나이 속성을 유추할 수 있을 것이다.The ontology manager 400 extracts keywords and attributes from the communication record 110 and the profile information 120 input through the data inputter 100, respectively, and manages the relationships between the nodes by the ontology. As described above, ontology means that the relationship between nodes is expressed according to a specific protocol so that the computer system can understand. The ontology manager 400 extracts a keyword from the communication record 110 (more specifically, may be actual communication contents) to identify relationships between nodes and maps them to ontology objects. In addition, the ontology manager 400 may extract the profile items from the profile information 120 and use the same to determine the attributes of the ontology object. For example, if the user's age information is included in the profile information 120, in representing this as an ontology object, the age attribute of the object may be inferred.

온톨로지 관리부(400)는 이렇게 구성된 온톨로지 객체들을 앞서 설명한 트리플과 같은 표현 방법을 사용하여 모델링 한 후, 지속적으로 데이터를 축적함으로써 관계를 확장해 갈 수 있다. 한편, 보다 정교한 온톨로지 스키마(schema)를 구성하기 위해 미리 외부로부터 해당 도메인 전문가의 도움을 받아 추론 가능한 관계를 정의하거나, 이미 존재하는 관계를 수정할 수 있을 것이다. 이러한 온톨로지 관리부(400)는 통상적인 컴퓨터 환경에서의 키보드 및 마우스와 같은 입력장치를 통해 온톨로지 정의를 입력받을 수도 있고, 입력되거나 이미 존재하는 온톨로지 정의를 컴퓨터 시스템이 읽거나 저장할 수 있는 소프트웨어 코드를 처리하는 프로세서로 구현될 수 있다.The ontology management unit 400 may model the ontology objects configured as described above using the expression method as described above, and then expand the relationship by continuously accumulating data. On the other hand, in order to construct a more sophisticated ontology schema, it may be possible to define inferred relations or modify existing relations with the help of the domain experts from outside. The ontology management unit 400 may receive ontology definitions through input devices such as a keyboard and a mouse in a typical computer environment, and process software code that allows a computer system to read or store input or existing ontology definitions. It may be implemented as a processor.

사회 관계 생성부(500)는 관계 강도 산출부(300)를 통해 산출된 관계 강도 및 온톨로지 관리부(400)에 저장된 온톨로지에 기초한 추론 규칙에 의해 노드들 간의 사회 관계를 생성한다. 여기서 추론 규칙이란 이미 정의된 객체들 간의 관계인 온톨로지를 확장하기 위해 필요한 다양한 규칙을 의미한다. 이러한 추론 규칙은 해당 노드들(개인 사용자에 대응한다.)이 속하는 도메인에서 도출 가능한 추론 결과를 달성할 수 있도록 도와주는 제약 조건으로서, 해당 도메인 전문가들에 의해 미리 정의되어 저장된다. 온톨로지 및 추론 규칙을 활용하여 노드들 간의 새로운 관계를 도출하는 구체적인 과정은 이후에 다시 기술하겠다. 이러한 사회 관계 생성부(500)는 통상적인 컴퓨터 환경에서의 프로세서와 작업에 필요한 메모리로 구현될 수 있으며, 온톨로지 및 추론 규칙을 활용하여 개인이 형성하고 있는 사회 관계 네트워크(550)를 컴퓨터 시스템이 읽거나 저장할 수 있는 전자적 데이터로서 생성한다. 생성된 사회 관계 네트워크(550)는 디스크나 메모리와 같은 저장 매체에 저장되어 활용되거나, 별도의 인터페이스를 통해 외부 디바이스에 제공될 수 있을 것이다.The social relationship generation unit 500 generates a social relationship between nodes based on the inference rules based on the relationship strength and the ontology stored in the ontology manager 400 calculated through the relationship strength calculator 300. Inference rules refer to various rules necessary to extend ontology, which is a relationship between already defined objects. These inference rules are constraints that help achieve the inference results derivable from the domain to which the nodes (corresponding to individual users) belong, and are predefined and stored by the domain experts. The detailed process of deriving new relationships between nodes using ontology and inference rules will be described later. The social relation generation unit 500 may be implemented with a processor and a memory required for a task in a typical computer environment, and the computer system reads the social relation network 550 formed by an individual using an ontology and inference rules. Or as electronic data that can be stored. The created social relationship network 550 may be stored and utilized in a storage medium such as a disk or a memory, or provided to an external device through a separate interface.

앞서 설명한 키워드 추출 과정을 활용할 경우, 사회 관계 생성부(500)를 통해 노드들 간의 사회 관계를 분석함에 있어서, 각각의 관계가 어떠한 주제에 기반한 관계인지를 보다 구체적으로 파악하는 것이 가능하다. 예를 들어, 최초에 데이터 입력부(100)를 통해 "이동훈"과 "정용일" 간의 총 100 통의 E-mail 기록을 입력받을 경우, E-mail 내용을 분석한 결과 30 통의 E-mail 내용으로부터는 '솔루션 개발'이라는 주제가 추출되었고, 20 통의 E-mail 내용으로부터는 '워크샵 참석'이라는 주제가 추출되었으며, 50 통의 E-mail 내용으로부터는 '커피 동호회'라는 주제가 추출되었다고 가정하자. 이를 통해 "이동훈"과 "정용일" 간에는 각각 '솔루션 개발', '워크샵 참석', '커피 동호회'라는 주제로 3 가지 관계 네트워크가 형성될 것이며, 양자 간에는 '커피 동호회'라는 관계가 가장 밀접한 관계라는 분석 결과를 얻을 수 있다. 이처럼, 통신 기록의 요약 및 키워드 추출 과정을 통해 노드들 간의 관계를 보다 다각적으로 분석하고, 이들로부터 다양한 관계를 발견할 수 있다. 이러한 관계를 분석함에 있어, 이상의 온톨로지와 병행함으로써 보다 다양한 관계를 추론할 수 있음은 당연하다.In the case of using the keyword extraction process described above, in analyzing the social relationship between the nodes through the social relationship generation unit 500, it is possible to more specifically grasp the relationship based on the subject of each relationship. For example, when a total of 100 e-mail records between "Lee Dong Hoon" and "Jung Yong-Dong" are input through the data input unit 100, the e-mail contents are analyzed and 30 e-mail contents are received. Suppose that the topic of 'solution development' is extracted, the theme of 'workshop attending' is extracted from 20 email contents, and the theme of 'coffee club' is extracted from 50 email contents. Through this, three relationship networks will be formed between Lee Dong-hoon and Jung Yong-il under the theme of 'solution development', 'workshop attendance' and 'coffee club', and the relationship between 'coffee club' is the closest relationship between the two. Analysis results can be obtained. As such, through the summary of communication records and the keyword extraction process, the relationship between nodes can be analyzed more diversely, and various relationships can be found therefrom. In analyzing these relationships, it is natural that various relationships can be inferred by the above ontology.

본 실시예에 따르면 사용자 간에 발생한 방대한 통신 기록으로부터 사용자 간의 관계를 효과적으로 획득하고, 발신자 및 수신자 간의 관계에 대한 정보를 제공받지 못하더라도 온톨로지 및 추론 규칙을 활용하여 양자의 관계를 분석, 확장하는 것이 가능하다.According to this embodiment, it is possible to effectively obtain the relationship between users from the vast communication records generated between users, and to analyze and expand the relationship between the two by using the ontology and inference rules even if the information on the relationship between the sender and the receiver is not provided. Do.

도 2는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 관계 네트워크를 생성하고 관계 강도를 산출하는 과정을 설명하기 위한 도면으로서, 도 1에서 데이터 입력부(100), 관계 네트워크 생성부(200) 및 관계 강도 산출부(300)만을 별도로 도시하였다. 도 2에는 관계 네트워크를 생성하고, 관계 강도를 산출하는 과정을 예시하기 위해, 개인 간의 SMS 통신 기록(110)이 입력되고 있는 상황을 가정하고 있다.FIG. 2 is a diagram illustrating a process of generating a relationship network and calculating a relationship strength in a social relationship analysis system based on a communication record according to an embodiment of the present invention. In FIG. 1, a data input unit 100 and a relationship network are generated. Only the unit 200 and the relationship strength calculator 300 are shown separately. In FIG. 2, it is assumed that an SMS communication record 110 between individuals is being input to illustrate a process of creating a relationship network and calculating a relationship strength.

앞서 도 1에서 설명한 바와 같이 통신 기록(110)은 발신자 식별자, 수신자 식별자, 송수신 시간, 메시지 내역 등을 포함할 수 있으나, 편의상 도 2에서는 발신자 식별자와 수신자 식별자만을 도시하였다. 여기서, P1 내지 P7가 식별자에 해당한다. 예를 들어, "P1-P2"라는 표현은 P1 및 P2 간에 SMS 송수신 기록이 존재한다는 것을 의미한다. 이러한 통신 기록(110)이 데이터 입력부(100)를 통해 입력되면 관계 네트워크 생성부(200)는 식별자들 간의 통신 기록이 존재하는지 여부를 판단하여 관계 네트워크(250)를 생성한다. 도 2에는 통신 기록(110)으로부터 생성된 그래프 형태의 관계 네트워크(250)가 도시되어 있다. 그래프에서 노드에는 개인 사용자에 대응하는 식별자가 부여되어 있으며, 에지는 노드들 간의 통신 이력이 존재함을 의미한다.As described above with reference to FIG. 1, the communication record 110 may include a sender identifier, a receiver identifier, a transmission / reception time, a message description, and the like. For convenience, FIG. 2 illustrates only the sender identifier and the receiver identifier. Here, P1 to P7 correspond to identifiers. For example, the expression "P1-P2" means that there is an SMS transmission and reception record between P1 and P2. When the communication record 110 is input through the data input unit 100, the relationship network generator 200 determines whether a communication record exists between the identifiers and generates the relationship network 250. 2 shows a relational network 250 in the form of a graph generated from the communication record 110. In the graph, a node is assigned an identifier corresponding to an individual user, and an edge means that there is a communication history between nodes.

한편, 데이터 입력부(100)에 입력된 통신 기록(110)에는 통신 행위와 관련된 시간 정보가 포함되어 있다. 관계 강도 산출부(300)는 입력된 통신 기록(110)으로부터 통신 수단별로 노드들 간의 통신 시간 또는 통신 빈도를 추출하고, 통신 수단을 고려하여 추출된 통신 시간 통신 빈도로부터 강도 계수를 산출한다. 여기서 강도 계수란, 노드들 간의 관련성을 수치화하여 표현하기 위해 도입된 값이다. 이러한 강도 계수란 통신 기록(110)으로부터 추출된 통신 시간 또는 통신 빈도를 연산함으로써 산출될 수 있다.Meanwhile, the communication record 110 input to the data input unit 100 includes time information related to a communication action. The relationship strength calculating unit 300 extracts a communication time or communication frequency between nodes for each communication means from the input communication record 110, and calculates an intensity factor from the extracted communication time communication frequency in consideration of the communication means. In this case, the intensity factor is a value introduced to quantify and express the relationship between nodes. This strength factor may be calculated by calculating the communication time or communication frequency extracted from the communication record 110.

개인 간의 관계성을 설명함에 있어서, E-mail이나 SMS의 경우 통신에 소요되는 시간이 순간적인 찰나에 불과하기 때문에 통신 빈도가 의미있는 데이터가 될 것이나, 음성 통화의 경우에는 통화에 소요된 시간이 의미있는 데이터가 될 수 있다. 즉, E-mail이나 SMS를 많이 보낼수록, 통화 시간이 길수록 사용자 간의 관계가 더 깊다고 간주할 수 있다. 도 2에서 "P1-P2", "P1-P3", "P2-P3", "P3-P6"의 경우에 이러한 통신 시간 또는 빈도가 높다고 가정하자. 그 결과 관계 강도 산출부(300)를 통해 출력되는 관계 네트워크(350)에는 해당 에지가 굵은 선으로 표시되어 관련 노드들 간의 관계가 상대적으로 더 깊다는 시각적으로 나타내고 있다. 이러한 도 2이 표현은 이해를 돕기 위해 표현된 것으로서, 실질적으로는 노드를 연결하는 에지에 부여된 높은 수치의 강도 계수로서 구현될 수 있을 것이다. 이하에서 그 과정을 보다 구체적으로 설명한다.In explaining the relationship between individuals, the frequency of communication will be meaningful data in the case of e-mail or SMS because it takes only a moment, but in the case of voice calls, It can be meaningful data. In other words, the more e-mails or SMSs are sent, the longer the talk time is, the deeper the relationship between users is. In FIG. 2, suppose that such communication time or frequency is high in the case of "P1-P2", "P1-P3", "P2-P3", and "P3-P6". As a result, in the relationship network 350 output through the relationship strength calculator 300, the corresponding edges are displayed in bold lines to visually indicate that the relationship between the related nodes is relatively deeper. This representation of FIG. 2 is presented for ease of understanding and may be embodied substantially as a high numerical strength coefficient imparted to the edge connecting the nodes. The process will be described in more detail below.

통신 수단의 일례로 한국의 휴대 전화 가입자는 2006년 기준으로 4000만 명을 넘어섰다. 이는 휴대 전화 가입자 데이터를 처리함에 있어 전형적인 연령 및 성 별을 인구통계학적 비율로 나누어 이루어져야 한다는 것을 의미한다. 즉, 사용자의 연령을 유소년, 청소년, 청년, 장년, 노년과 같이 구간별로 구분하고, 추가적으로 남녀 성별을 구분하는 등 다수의 분류 규칙을 생성함으로써 구체적인고 개별적인 분석이 요구된다. 이와 같이 사용자의 휴대 전화 통신 기록은 다수의 분류 규칙을 기준으로 추출, 요약이 가능하다.As an example of communication, mobile phone subscribers in Korea exceeded 40 million in 2006. This means that in processing cellular subscriber data, typical ages and genders should be divided by demographic rates. That is, a detailed and individual analysis is required by generating a plurality of classification rules such as dividing the user's age into sections such as youth, adolescent, young man, old age, and old age, and additionally dividing gender between male and female. As such, the user's mobile phone communication records can be extracted and summarized based on a plurality of classification rules.

도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 관계 강도를 산출하는 다양한 방법을 설명하기 위한 도면으로서, 통신 수단별, 발신자별, 수신자별 분류 기준을 활용하여 관계 강도를 산출하는 방법을 예시하고 있다.3A to 3C are diagrams for describing various methods of calculating a relationship strength in a social relationship analysis system based on a communication record according to an embodiment of the present invention, and using classification criteria by communication means, sender, and recipient. The method of calculating the relationship strength is illustrated.

도 3a에서 통신 기록(110)은 음성 통화 기록, SMS, MMS, E-mail, 블로그, 게시판, 메신저 등의 다양한 형태를 통한 통신 기록이 입력되고 있는 상황을 가정한다. 관계 강도 산출부(300)는 이러한 다양한 형태의 통신 기록(110)을 통신 수단별로 입력받는다. 각각의 통신 기록은 발신자 및 수신자별로 집계가 될 수 있다. 여기서, 발신자별 통신 기록 집계는 하나의 발신자로부터 발송되는 전체 통화량, SMS 발송량, MMS 발송량, E-mail 발송량 등이 될 수 있으며, 수신자별 통신 기록 집계는 하나의 발신자를 기준으로 발신자에 대응하는 수신자별로 수신된 전체 통화량, SMS 발송량, MMS 발송량, E-mail 발송량 등이 될 수 있다. 즉, 발신자별 통신 기록 집계는 해당 발신자의 통신 기록 전체에 관한 통계로서 활용될 수 있고, 수신자별 통신 기록 집계는 해당 발신자가 어떤 수신자와 더 많은 교류가 있었는지를 판단하기 위한 자료로서 활용될 수 있다.In FIG. 3A, the communication record 110 assumes a situation in which communication records are input through various forms such as voice call records, SMS, MMS, E-mail, blogs, bulletin boards, and messengers. The relationship strength calculator 300 receives the various types of communication records 110 for each communication means. Each communication record can be aggregated by sender and recipient. Here, the communication record aggregation by sender may be the total call volume, SMS sending amount, MMS sending amount, E-mail sending amount, etc. sent from one sender, and the communication record aggregation by recipient is based on one sender. It may be the total amount of calls received, the amount of SMS sent, the amount of MMS sent, the amount of E-mail sent, etc. for each corresponding recipient. That is, the communication record aggregation by sender can be used as statistics about the entire communication record of the sender, and the communication record aggregation by receiver can be used as data for determining which recipients have more interactions with the receiver. have.

한편, 관계 강도 산출부(300)는 추출, 요약된 통신 기록으로부터 노드 간의 강도 계수를 산출한다. 이는 발신자와 수신자 간의 통계 정보를 고려하여 수행된다. 이러한 산출 과정은 노드들이 속해 있는 도메인의 특성에 따라 자유롭고 유연하게 구성될 수 있을 것이다. 도 3a에 예시되어 있는 통신 수단별 통신 기록을 취합함에 있어서도 각각의 통신 수단들 간의 가중치를 달리할 수도 있을 것이다. 예를 들어, 1개의 메시지를 SMS를 통해 전송하는 것과 1개의 E-mail을 작성하여 전송하는 것에는 개인 간의 친밀도를 측정함에 있어서 서로 다른 가중치를 부여할 수 있다. 보다 구체적으로 3번의 통신이 행해짐에 있어서, 2개의 SMS 및 1개의 E-mail을 전송하는 것보다 3번의 음성 통화에 더 높은 가중치가 부여될 수 있고, 그 결과 더 높은 강도 계수 값이 산출될 수 있을 것이다.On the other hand, the relationship strength calculation unit 300 calculates the strength coefficient between nodes from the extracted and summarized communication records. This is done taking into account the statistical information between the sender and the receiver. This calculation process can be configured freely and flexibly according to the characteristics of the domain to which the nodes belong. In collecting the communication records for each communication means illustrated in FIG. 3A, the weights of the respective communication means may be different. For example, sending one message through SMS and writing and sending one e-mail can be given different weights in measuring the intimacy between individuals. More specifically, in three communications, a higher weight may be given to three voice calls than to send two SMS and one E-mail, resulting in a higher strength factor value. There will be.

한편, 유연한 강도 계수 산출 방법은 보다 구체적인 분류 기준이 적용되는 상황에서도 활용될 수도 있을 것이다. 예를 들어, 10대의 높은 SMS 사용 비율 또는 60대 이상의 적은 통화량 등은 각 연령 구간을 표현하는 특징들이 되므로 이를 고려하여 강도 계수를 산출할 수 있다. 따라서, 필요에 따라서는 연령별, 성별로 노드를 분류하여 각 분류를 대표하는 요인들을 발견한 뒤, 요인별 가중치를 고려한 관계의 강도를 도출할 수 있다.On the other hand, the flexible strength factor calculation method may be used in a situation where more specific classification criteria are applied. For example, a high SMS usage rate of 10 teenagers or a small call volume of 60 generations or more are characteristics representing each age section, and thus the strength factor may be calculated in consideration of this. Therefore, if necessary, the nodes are classified by age and gender to find factors representing each classification, and then the strength of the relationship in consideration of the weight of each factor may be derived.

이하에서는 강도 계수를 산출하는 2가지 방법을 추가로 소개하겠다.In the following, two additional methods of calculating the strength factor are introduced.

첫째는 개인차를 고려한 주관적인 강도 계수(편의상 제 1 강도 계수라 하자.)를 산출하는 방법으로서, 도 3b를 참조하여 그 내용을 설명하겠다. 제 1 강도 계수는 입력된 통신 기록들 중에서 통신 수단별 차지 비율을 고려하여 산출된다. 이를 위해 제 1 강도 계수 산출부(310)는 하나의 발신자를 기준으로 발신자가 즐겨 사용하는 통신 수단별로 통신 기록에 대한 통계 및 차지 비율(315)을 추출한다. 여기서, 통신 수단별 차지 비율(315)이란 전체 통신 수단 중에서 각각의 통신 수단이 차지하는 일종의 점유율을 의미한다. 이를 바탕으로 제 1 강도 계수 산출부(310)는 발신자의 통신 패턴에 따라 통신 기록에 대한 가중치를 달리하며 제 1 강도 계수를 산출한다.First, as a method of calculating a subjective intensity factor considering the individual difference (conventionally referred to as the first intensity factor), the content thereof will be described with reference to FIG. 3B. The first strength factor is calculated in consideration of the charge ratio for each communication means among the input communication records. To this end, the first strength factor calculator 310 extracts the statistics and the charge ratio 315 for the communication record for each communication means that the caller likes to use based on one caller. Here, the charge rate 315 for each communication means means a kind of occupancy occupied by each communication means among all communication means. Based on this, the first strength factor calculator 310 calculates the first strength factor by varying the weight of the communication record according to the caller's communication pattern.

도 3b에서 음성 통화, SMS, MMS 및 E-mail에 대한 발신자의 통신 수단별 차지 비율(315)이 전체 100%를 기준으로 각각 50%, 30%, 10%, 10%라고 가정하고, 수신자로는 "이동훈"과 "정용일"이 있다고 가정하자. 예를 들어, 이 발신자가 "이동훈"과 "정용일"에게 발송한 음성 통화, SMS, MMS 및 E-mail의 건수가 각각 다음의 표 1과 같다고 하자.In FIG. 3B, it is assumed that the charge rate 315 of the caller by communication means for voice call, SMS, MMS, and e-mail is 50%, 30%, 10%, and 10%, respectively, based on the total 100%. Suppose there are "Lee Dong Hoon" and "Jung Yong Il". For example, suppose that the number of voice calls, SMS, MMS, and e-mails sent to Lee Dong-hoon and Jung Yong-il is shown in Table 1 below.

음성 통화Voice call SMSSMS MMSMMS E-mailE-mail 수신자 "이동훈"Recipient "Dong Hoon" 60건60 cases 30건30 cases 0건0 Matches 10건10 cases 수신자 "정용일"Recipient "Date Date" 40건40 cases 30건30 cases 20건20 Matches 10건10 cases

표 1에서 음성 통화와 MMS에 주목하자. "이동훈"에게는 평균보다 음성 통화를 10건 많이 하였고, MMS를 10건 적게 전송하였다. 반면, "정용일"에게는 평균보다 음성 통화를 10건 적게 하였고, MMS를 10건 많게 전송하였다. 이 경우, 발신자의 통신 패턴을 고려할 경우, 발신자는 "이동훈"과 더 친밀도가 높다고 판단된다. 왜냐하면, 발신자의 통신 패턴 중 더 많은 비중을 차지하는 음성 통화의 비율이 "정용일"보다 "이동훈"에게서 더 높게 나타났기 때문이다. 이상과 같이 제 1 강도 계수가 산출될 수 있으며, 이 값은 발신자의 통신 패턴 또는 특성을 고려한 주관적인 수치에 해당한다.Note the voice call and MMS in Table 1. "Lee Dong Hoon" had 10 more voice calls than average and 10 less MMS. On the other hand, "Dong Yong-il" had 10 fewer voice calls and 10 more MMSs than average. In this case, when considering the caller's communication pattern, it is determined that the caller is more intimate with " Go Hun. &Quot; This is because the proportion of voice calls, which occupy a greater proportion of the caller's communication pattern, is higher in "Dong Hoon" than "Jung Yong Il". As described above, the first strength factor may be calculated, and this value corresponds to a subjective value considering the caller's communication pattern or characteristic.

둘째는 일반적인 사용자의 통신 패턴을 고려한 객관적인 강도 계수(편의상 제 2 강도 계수라 하자.)를 산출하는 방법으로서, 도 3c를 참조하여 그 내용을 설명하겠다. 제 2 강도 계수는 노드들이 속하는 그룹의 통신 기록 통계(325)를 고려하여 산출된다. 이를 위해 제 2 강도 계수 산출부(320)는 하나의 발신자를 기준으로 발신자가 속해있는 그룹(앞서 설명한 특정 분류를 의미한다.)의 평균적인 통신 패턴 또는 통계(325)와 발신자가 전송한 통신 기록을 비교하여, 발신자와 수신자 간의 통신 강도를 측정함으로서 제 2 강도 계수를 산출한다. 이러한 소속 그룹이 통신 기록 통계(325)에는 입력된 통신 기록으로부터 추출된 통신 기록 평균 또는 표준 편차가 포함될 수 있다.The second method is a method of calculating an objective strength factor (conventionally referred to as a second strength factor) in consideration of a communication pattern of a general user, which will be described with reference to FIG. 3C. The second strength factor is calculated taking into account the communication record statistics 325 of the group to which the nodes belong. To this end, the second strength factor calculation unit 320 records the average communication pattern or statistics 325 of the group to which the sender belongs (based on the specific classification described above) based on one caller and the sender. The second strength factor is calculated by measuring the communication strength between the sender and the receiver. The communication record statistics 325 of such a group may include a communication record average or standard deviation extracted from the input communication record.

도 3c에서 10대 소녀의 음성 통화, SMS, MMS 및 E-mail 발송 비율이 전체 100%를 기준으로 각각 30%, 50%, 10%, 10%라고 가정하자. 예를 들어, 발신자가 10대 소녀이고, 특정 수신자에게 음성 통화, SMS, MMS 및 E-mail를 각각 40건, 40건, 10건, 10건 발송하였다면, 이 소녀의 음성 통화 이용 점수는 동년배들에 비해 상대적으로 높게 산출될 것이고, SMS 이용 점수는 상대적으로 낮게 산출될 것이다. 이렇게 산출된 값들로부터 제 2 강도 계수가 산출될 수 있으며, 이는 동일한 조건을 갖는 발신자들과의 비교를 통해 얻어진 객관적인 수치에 해당한다.In FIG. 3C, assume that the rates of voice call, SMS, MMS and E-mail sending of teenage girls are 30%, 50%, 10%, and 10%, respectively, based on the total 100%. For example, if the caller is a teenage girl and she sends 40, 40, 10, and 10 voice calls, SMS, MMS, and e-mails to a specific recipient, the girl's voice call usage score is the same age. Will be calculated relatively high, and the SMS usage score will be calculated relatively low. From these values, a second intensity factor can be calculated, which corresponds to an objective value obtained through comparison with callers having the same condition.

이상에서 설명한 제 1 강도 계수 산출 방법 및 제 2 강도 계수 산출 방법은 다양한 강도 계수 산출 방법 중 일례에 불과하며, 양자를 산술적으로 조합한 제 3 강도 계수 또는 그 밖의 강도 계수가 사용될 수 있음은 당연하다. 각 과정에서 요소 분석(factor analysis)를 이용하거나 결정 트리(decision tree)를 이용하여 수치화된 강도 계수를 산출할 수 있다.The method of calculating the first strength factor and the method of calculating the second intensity factor described above are merely examples of various intensity factor calculation methods, and it is natural that a third intensity factor or other strength factor obtained by arithmetically combining both may be used. . In each process, factor analysis can be used or a decision tree can be used to calculate a numerical strength factor.

도 4a 및 도 4b는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 온톨로지 및 추론 규칙을 이용하여 노드 간의 관계를 추론하는 과정을 설명하기 위한 도면이다.4A and 4B are diagrams for explaining a process of inferring a relationship between nodes using an ontology and an inference rule in a social relationship analysis system based on a communication record according to an embodiment of the present invention.

앞서 도 1에서 간략히 설명한 바와 같이 온톨로지로 관리부(400)는 입력된 프로파일 정보(120)로부터 속성을 추출하고, 입력된 통신 기록(110)으로부터 추출된 속성에 대응하는 키워드를 추출하고, 키워드와 연관된 노드들로부터 새로운 객체를 추출하여 노드들 간의 관계로 정의한다. 만약 프로파일 정보(120)에 성명, 성별, 주소, 나이 및 가족 관계가 포함되어 있다면, 복수 개의 프로파일 정보들로부터 노드들 간의 관계를 도출할 수 있을 것이다. 이 경우 프로파일 정보로부터 가족 관계라는 속성이 추출될 수 있을 것이다. 한편, 입력된 통신 기록(110)이 E-mail인 경우 메일 내용 중 "과장님"이라는 호칭과 같이 키워드가 발견될 경우, 양자의 관계를 직장 상사와 부하 직원의 관계로 추정하는 것이 가능할 것이다. 이러한 관계를 추정하기 위해 앞서 설명한 강도 계수를 고려하여 객체와 키워드 간의 주제 관련성을 산출하고, 새롭게 관계를 추출함으로써 객체 간의 관계를 확장할 수 있다.As briefly described with reference to FIG. 1, the ontology manager 400 extracts an attribute from the input profile information 120, extracts a keyword corresponding to the attribute extracted from the input communication record 110, and associates the keyword with the keyword. Extract new objects from nodes and define them as relationships between nodes. If the profile information 120 includes the name, sex, address, age, and family relationship, it may be possible to derive the relationship between the nodes from the plurality of profile information. In this case, an attribute called family relationship may be extracted from the profile information. On the other hand, if the input communication record 110 is an e-mail, if a keyword is found, such as the title "superman" in the mail content, it will be possible to estimate the relationship between the relationship between the boss and the subordinates. In order to estimate such a relationship, it is possible to extend the relationship between objects by calculating the subject relevance between the object and the keyword in consideration of the above-described strength factor and extracting the new relationship.

이러한 추론을 뒷받침하기 위해 다양한 추론 규칙과 해당 도메인에서 통용될 수 있는 타당성이 담보되어야 함은 당연하다. 여기서, 추론 규칙은 노드들 간의 사회 관계를 위한 충분조건이고, 입력된 통신 기록과 프로파일 정보 및 온톨로지를 고려하여 노드들로부터 도출 가능한 적어도 하나 이상의 규칙을 의미한다. 이러한 추론 규칙은 일종의 조건문의 형태로 주어질 수 있다. 즉, 조건을 만족할 경우 추론의 결론에 도달할 수 있으나, 그 역의 경우는 성립하지 않는다.In order to support this reasoning, it is only natural that various reasoning rules and validity can be used in the domain. Here, the inference rule is a sufficient condition for social relations between nodes, and means at least one or more rules derivable from nodes in consideration of input communication records, profile information, and ontology. This reasoning rule can be given in the form of a conditional statement. In other words, if the condition is satisfied, the conclusion of inference can be reached, but vice versa.

다음의 표 2는 발신자와 수신자가 부자 관계에 있음을 추론하기 위한 추론 규칙을 예시한 것이다.Table 2 below illustrates inference rules for inferring that the sender and the receiver are in a parental relationship.

조건 1Condition 1 수신자가 발신자보다 20세 이상 나이가 많은지?Is the recipient 20 years older than the sender? 조건 2Condition 2 수신자의 성별이 남성인지?Is the gender of the recipient male? 조건 3Condition 3 발신자가 수신자의 강도 계수가 30 이상인지?Does the sender have a strength factor of 30 or more? 조건 4Condition 4 수신자와 발신자의 성(family name)이 같은지?Do the receiver and sender have the same family name? 조건 5Condition 5 수신자가 기혼자인지?Is the recipient married?

이상의 표 2에서 보듯이 제시된 5가지 조건이 모두 만족할 경우, 발신자와 수신자가 부자 관계일 확률이 매우 높을 것이다. 이러한 추론 규칙은 "5 가지 조건 모두가 참일 경우 부자 관계이다"와 같이 명확하게 결론을 제시할 수도 있으나, 각각의 조건들에 가중치를 다르게 부여하고, 산술적으로 "부자 관계일 확률이 78%이다"와 같이 확률로써 추론을 유도할 수도 있을 것이다.As shown in Table 2 above, if all five conditions are satisfied, the probability that the sender and the receiver are rich is very high. This rule of inference might give a clear conclusion, such as "If all five conditions are true, then we have a rich relationship," but we assign different weights to each condition, and arithmetically, "The probability of being rich is 78%." Inference can also be derived from the probability.

한편, 이러한 조건들은 입력받은 프로파일 정보들로부터 추출된 속성이나, 통신 기록으로부터 추출된 키워드를 통해 검사될 수도 있고, 이미 구축된 온톨로지를 활용하여서도 검사될 수 있다.On the other hand, these conditions can be checked through the attributes extracted from the input profile information, keywords extracted from the communication record, or can also be checked using the ontology already established.

도 4a에는 P1과 P2간의 관계가 부자 관계(510)이고, P1과 P2간의 관계 또한 부자 관계(520)임이 예시되어 있다. 또한, P1-P2 간의 에지와 P1-P3 간의 에지를 굵은 선으로 표시함으로써 서로 매우 강한 관계를 맺고 있음을 보여주고 있다. 이러한 상황 하에서 P2-P3 간의 강도 계수도 매우 높은 값이 산출되었다고 가정하자. 그러나, 아직까지 양자의 관계에 대해서는 알려진 바가 없다. 이 때, 이미 구축된 온톨로지(341)와 추론 규칙(342)를 활용하여 P2-P3 간의 에지에 새로운 관계(530)를 부여할 수 있다.In FIG. 4A, the relationship between P1 and P2 is a parental relationship 510, and the relationship between P1 and P2 is also a parental relationship 520. In addition, the edge between P1-P2 and the edge between P1-P3 are indicated by a thick line to show that they have a very strong relationship with each other. Suppose that under these circumstances, the intensity factor between P2-P3 is also very high. However, there is no known relationship between the two. In this case, a new relationship 530 may be given to an edge between P2 and P3 by utilizing the already established ontology 341 and the inference rule 342.

예를 들어, 온톨로지에는 가족 관계에 대한 정의하는 다양한 관계가 존재하고, 앞서 설명한 표 2의 추론 규칙이 적용될 수 있다고 가정하자. 도 4a에서 P1과 P2가 표 2의 조건들을 검사한 결과 양자가 부자 관계일 확률이 95%가 산출되었다고 하자. 또한, P1가 P3가 표 2의 조건들을 검사한 결과 양자가 부자 관계일 확률이 89%가 산출되었다고 하자. 그 결과 P2와 P3는 형제 관계가 되거나, 조손 관계가 될 수 있을 것이다. 이러한 산출 결과를 온톨로지를 통해 추론할 경우, P2 및 P3 간의 관계(530)를 밝힐 수 있을 것이다. 만약, P2 및 P3 간의 나이 차이 및 순서 P1, P2, P3 간의 나이 순서에 관한 추가적인 추론 규칙이 존재한다면, 그 관계를 보다 명확하게 추론할 수 있다. 도 4b에는 이러한 추론 과정을 통해 P2 및 P3 간의 관계(530)가 조손 관계가 됨을 결정하여 새로운 관계가 부여된 것을 예시하고 있다.For example, assume that there are various relationships that define family relationships in the ontology and that the inference rules in Table 2 described above can be applied. In FIG. 4A, as a result of examining the conditions of Table 2 as P1 and P2, a probability of 95% is calculated. Further, suppose that P1 has a 89% probability that P3 has a rich relationship as a result of examining the conditions in Table 2. As a result, P2 and P3 may be siblings or grandchildren. If the result of the calculation is inferred through the ontology, the relationship 530 between P2 and P3 may be revealed. If there is an additional reasoning rule about the age difference between P2 and P3 and the order of age between P1, P2, and P3, the relationship can be deduced more clearly. 4B illustrates that a new relationship is given by determining that the relationship 530 between P2 and P3 becomes a grandchild relationship through this reasoning process.

이상에서 설명한 추론 규칙에 기반한 관계 형성 과정을 구현하기 위해서는 다양한 방식이 활용될 수 있으며, 특히 본 발명의 실시예들에서는 온톨로지를 표현하는 트리플을 활용하여 노드와 에지로 구성되는 그래프를 구성하고, 프로파일 정보로부터 속성(attribute)을 정의하고, F-LOGIC으로 추론 규칙을 정의함으로써, 개인들 간의 사회 관계를 온톨로지로 표현하고, 개체화하는 것이 가능하다. 또한, TRANSITIVE, INVERSE, PARTSOF 등 온톨로지 고유의 표현력을 이용하여 추론 규칙을 추가하고 관계를 확장할 수 있다. 더불어, SPARQL(SPARQL Protocol and RDF Query Language) 등의 온톨로지 질의 언어를 이용하여 이미 구축된 온톨로지에서 객체들 간의 관계를 질의할 수 있다.Various methods may be used to implement the relationship formation process based on the inference rule described above. In particular, embodiments of the present invention configure a graph composed of nodes and edges using triples representing ontology, and profile By defining attributes from information and inferencing rules with F-LOGIC, it is possible to express ontology and individualize social relationships between individuals. You can also add inference rules and extend relationships using ontology-specific expressive powers such as TRANSITIVE, INVERSE, and PARTSOF. In addition, the ontology query language such as SPARQL protocol and RDF Query Language (SPARQL) can be used to query relationships between objects in an already built ontology.

본 실시예에 따르면 발신자 및 수신자 간의 관계에 대한 정보를 제공받지 못하더라도 온톨로지 및 추론 규칙을 활용하여 양자의 관계를 분석, 확장하는 것이 가능하다. 특히, 본 발명은 통신 기록 및 프로파일 정보로부터 키워드 및 속성을 추출함으로써 발신자 및 수신자 간의 새로운 관계를 발견할 수 있다.According to the present embodiment, even if the information on the relationship between the sender and the receiver is not provided, it is possible to analyze and expand the relationship between the two by using the ontology and the inference rule. In particular, the present invention can discover new relationships between senders and receivers by extracting keywords and attributes from communication records and profile information.

도 5는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 방법을 도시한 흐름도로서, 각 단계들을 도 1의 구성 요소들에 대응하므로 자세한 설명은 생략한다.FIG. 5 is a flowchart illustrating a social relationship analysis method based on a communication record according to an embodiment of the present invention. Each step corresponds to the elements of FIG.

51 단계에서 소정 도메인에 속하는 노드들 간의 통신 기록과 상기 노드들의 프로파일 정보를 입력받는다. 이는 앞서 도 1에서 설명한 데이터 입력부(100)에 대응된다.In step 51, communication records between nodes belonging to a predetermined domain and profile information of the nodes are received. This corresponds to the data input unit 100 described above with reference to FIG. 1.

52 단계에서 51 단계를 통해 입력된 통신 기록으로부터 노드들 간의 관계 네트워크를 생성한다. 이는 앞서 도 1에서 설명한 관계 네트워크 생성부(200)에 대응된다.In step 52, a relationship network between nodes is generated from the communication records input in step 51. This corresponds to the relationship network generator 200 described above with reference to FIG. 1.

53 단계에서 52 단계를 통해 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출한다. 이는 앞서 도 1에서 설명한 관계 강도 산출부(300)에 대응된다.In step 53 to 52, the relationship strength between nodes in the relationship network generated in step 52 is calculated. This corresponds to the relationship strength calculator 300 described above with reference to FIG. 1.

54 단계에서 51 단계를 통해 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 노드들 간의 관계를 온톨로지로 관리한다. 이는 앞서 도 1에서 설명한 온톨로지 관리부(400)에 대응된다.In step 54 and 51, keywords and attributes are extracted from the communication records and profile information input in step 54 to manage the relationships between nodes ontologies. This corresponds to the ontology manager 400 described above with reference to FIG. 1.

55 단계에서 53 단계를 통해 산출된 관계 강도 및 54 단계의 온톨로지에 기초한 추론 규칙에 의해 노드들 간의 사회 관계를 생성한다. 이는 앞서 도 1에서 설명한 사회 관계 생성부(500)에 대응된다.Social relationships between nodes are generated by the inference rules based on the relationship strengths calculated in steps 55 through 53 and the ontology of 54 steps. This corresponds to the social relationship generator 500 described above with reference to FIG. 1.

한편, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, the present invention can be embodied as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which may also be implemented in the form of carrier waves (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the present invention can be easily deduced by programmers skilled in the art to which the present invention belongs.

이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The present invention has been described above with reference to various embodiments thereof. Those skilled in the art will understand that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

도 1은 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템을 도시한 도면이다.1 is a diagram illustrating a social relationship analysis system based on a communication record according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 관계 네트워크를 생성하고 관계 강도를 산출하는 과정을 설명하기 위한 도면이다.2 is a diagram illustrating a process of generating a relationship network and calculating relationship strength in a social relationship analysis system based on a communication record according to an embodiment of the present invention.

도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 관계 강도를 산출하는 다양한 방법을 설명하기 위한 도면이다.3A to 3C are diagrams for describing various methods of calculating relationship strength in a social relationship analysis system based on a communication record according to an embodiment of the present invention.

도 4a 및 도 4b는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 시스템에서 온톨로지 및 추론 규칙을 이용하여 노드 간의 관계를 추론하는 과정을 설명하기 위한 도면이다.4A and 4B are diagrams for explaining a process of inferring a relationship between nodes using an ontology and an inference rule in a social relationship analysis system based on a communication record according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 통신 기록에 기반한 사회 관계 분석 방법을 도시한 흐름도이다.5 is a flowchart illustrating a social relationship analysis method based on a communication record according to an embodiment of the present invention.

<도면의 주요 부분에 대한 설명>Description of the main parts of the drawing

100 : 데이터 입력부100: data input unit

110 : 통신 기록 120 : 프로파일 정보110: communication record 120: profile information

200 : 관계 네트워크 생성부 250 : 관계 네트워크200: relationship network generator 250: relationship network

300 : 관계 강도 산출부300: relationship strength calculation unit

350 : 관계 강도가 표시된 관계 네트워크350: Relationship network with relationship strength

400 : 온톨로지 관리부400: Ontology Management Department

500 : 사회 관계 생성부 550 : 사회 관계 네트워크500: social relationship generation unit 550: social relationship network

Claims (11)

데이터 입력부에서, 소정 도메인에 속하는 노드들 간의 통신 기록과 상기 노드들의 프로파일 정보를 입력받는 단계;At a data input unit, receiving communication records between nodes belonging to a predetermined domain and profile information of the nodes; 관계 네트워크 생성부에서, 상기 입력된 통신 기록으로부터 상기 노드들 간의 관계 네트워크를 생성하는 단계;Generating, at a relationship network generation unit, a relationship network between the nodes from the input communication record; 관계 강도 산출부에서, 상기 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출하는 단계;Calculating, by a relationship strength calculator, relationship strengths between nodes in the generated relationship network; 온톨로지 관리부에서, 상기 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 상기 노드들 간의 관계를 온톨로지로 관리하는 단계; 및In the ontology manager, extracting keywords and attributes from the inputted communication record and profile information, respectively, and managing the relationships among the nodes by ontology; And 사회 관계 생성부에서, 상기 산출된 관계 강도 및 상기 온톨로지에 기초한 소정의 추론 규칙에 의해 상기 노드들 간의 사회 관계를 생성하는 단계를 포함하고, Generating a social relationship between the nodes in a social relationship generating unit by a predetermined reasoning rule based on the calculated relationship strength and the ontology, 상기 노드들 간의 관계를 온톨로지로 관리하는 단계는,Ontology of managing the relationship between the nodes, 상기 입력된 프로파일 정보로부터 속성을 추출하고, 상기 입력된 통신 기록으로부터 상기 추출된 속성에 대응하는 키워드를 추출하고, Extract an attribute from the input profile information, extract a keyword corresponding to the extracted attribute from the input communication record, 상기 키워드와 연관된 노드들로부터 새로운 객체를 추출하여 상기 노드들 간의 관계로 정의하는 것을 포함하는 사회 관계 분석 방법.And extracting a new object from the nodes associated with the keyword and defining the new object as a relationship between the nodes. 삭제delete 제 1 항에 있어서,The method of claim 1, 상기 노드들 간의 관계 강도를 산출하는 단계는,Calculating the strength of the relationship between the nodes, 상기 입력된 통신 기록으로부터 통신 수단별로 상기 노드들 간의 통신 시간 또는 통신 빈도를 추출하는 단계; 및Extracting a communication time or communication frequency between the nodes for each communication means from the input communication record; And 상기 통신 수단을 고려하여 상기 추출된 통신 시간 통신 빈도로부터 강도 계수를 산출하는 단계를 포함하는 사회 관계 분석 방법.Calculating a strength factor from the extracted communication time communication frequency in consideration of the communication means. 제 3 항에 있어서,The method of claim 3, wherein 상기 산출된 강도 계수는,The calculated strength factor is, 상기 입력된 통신 기록들 중에서 통신 수단별 차지 비율을 고려하여 산출된 제 1 강도 계수이거나,Or a first intensity factor calculated in consideration of the charge ratio for each communication means among the input communication records; 상기 노드들이 속하는 소정 그룹의 통신 기록 통계를 고려하여 산출된 제 2 강도 계수이거나,A second strength factor calculated by taking into account communication log statistics of a predetermined group to which the nodes belong; 상기 제 1 강도 계수 및 상기 제 2 강도 계수의 조합인 사회 관계 분석 방법.And a method of combining the first intensity factor and the second intensity factor. 제 1 항에 있어서,The method of claim 1, 상기 소정의 추론 규칙은,The predetermined reasoning rule is, 상기 노드들 간의 사회 관계를 위한 충분조건이고,Is a sufficient condition for social relations between the nodes, 상기 입력된 통신 기록과 프로파일 정보 및 상기 온톨로지를 고려하여 상기 노드들로부터 도출 가능한 적어도 하나 이상의 규칙인 사회 관계 분석 방법.And at least one rule derivable from the nodes in consideration of the input communication record, profile information, and the ontology. 제 1 항, 제 3 항 내지 제 5 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A non-transitory computer-readable recording medium having recorded thereon a program for executing the method of claim 1. 소정 도메인에 속하는 노드들 간의 통신 기록과 상기 노드들의 프로파일 정보를 입력받는 데이터 입력부;A data input unit for receiving communication records between nodes belonging to a predetermined domain and profile information of the nodes; 상기 입력된 통신 기록으로부터 상기 노드들 간의 관계 네트워크를 생성하는 관계 네트워크 생성부;A relationship network generator for generating a relationship network between the nodes from the input communication record; 상기 생성된 관계 네트워크에서 노드들 간의 관계 강도를 산출하는 관계 강도 산출부;A relationship strength calculator for calculating a relationship strength between nodes in the generated relationship network; 상기 입력된 통신 기록과 프로파일 정보로부터 각각 키워드 및 속성을 추출하여 상기 노드들 간의 관계를 온톨로지로 관리하는 온톨로지 관리부; 및An ontology manager which extracts keywords and attributes from the inputted communication record and profile information, respectively, and manages relationships among the nodes by ontology; And 상기 산출된 관계 강도 및 상기 온톨로지에 기초한 소정의 추론 규칙에 의해 상기 노드들 간의 사회 관계를 생성하는 사회 관계 생성부를 포함하고, A social relationship generating unit generating a social relationship between the nodes by a predetermined reasoning rule based on the calculated relationship strength and the ontology, 상기 온톨로지로 관리부는,The ontology management unit, 상기 입력된 프로파일 정보로부터 속성을 추출하고, 상기 입력된 통신 기록으로부터 상기 추출된 속성에 대응하는 키워드를 추출하고,Extract an attribute from the input profile information, extract a keyword corresponding to the extracted attribute from the input communication record, 상기 키워드와 연관된 노드들로부터 새로운 객체를 추출하여 상기 노드들 간의 관계로 정의하는 것을 포함하는 사회 관계 분석 시스템.And extracting a new object from the nodes associated with the keyword to define a relationship between the nodes. 삭제delete 제 7 항에 있어서,The method of claim 7, wherein 상기 관계 강도 산출부는,The relationship strength calculation unit, 상기 입력된 통신 기록으로부터 통신 수단별로 상기 노드들 간의 통신 시간 또는 통신 빈도를 추출하고,Extracting a communication time or a communication frequency between the nodes for each communication means from the input communication record; 상기 통신 수단을 고려하여 상기 추출된 통신 시간 통신 빈도로부터 강도 계수를 산출하는 사회 관계 분석 시스템.And a social factor analysis system for calculating a strength factor from the extracted communication time communication frequency in consideration of the communication means. 제 9 항에 있어서,The method of claim 9, 상기 산출된 강도 계수는,The calculated strength factor is, 상기 입력된 통신 기록들 중에서 통신 수단별 차지 비율을 고려하여 산출된 제 1 강도 계수이거나,Or a first intensity factor calculated in consideration of the charge ratio for each communication means among the input communication records; 상기 노드들이 속하는 소정 그룹의 통신 기록 통계를 고려하여 산출된 제 2 강도 계수이거나,A second strength factor calculated by taking into account communication log statistics of a predetermined group to which the nodes belong; 상기 제 1 강도 계수 및 상기 제 2 강도 계수의 조합인 사회 관계 분석 시스템.And a social intensity analysis system that is a combination of the first intensity factor and the second intensity factor. 제 7 항에 있어서,The method of claim 7, wherein 상기 소정의 추론 규칙은,The predetermined reasoning rule is, 상기 노드들 간의 사회 관계를 위한 충분조건이고,Is a sufficient condition for social relations between the nodes, 상기 입력된 통신 기록과 프로파일 정보 및 상기 온톨로지를 고려하여 상기 노드들로부터 도출 가능한 적어도 하나 이상의 규칙인 사회 관계 분석 시스템.And at least one rule derivable from the nodes in consideration of the input communication record, profile information, and the ontology.
KR1020090016989A 2009-02-27 2009-02-27 Social network analyzing method and system based on communication record KR101031901B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090016989A KR101031901B1 (en) 2009-02-27 2009-02-27 Social network analyzing method and system based on communication record

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090016989A KR101031901B1 (en) 2009-02-27 2009-02-27 Social network analyzing method and system based on communication record

Publications (2)

Publication Number Publication Date
KR20100098029A KR20100098029A (en) 2010-09-06
KR101031901B1 true KR101031901B1 (en) 2011-05-02

Family

ID=43005055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090016989A KR101031901B1 (en) 2009-02-27 2009-02-27 Social network analyzing method and system based on communication record

Country Status (1)

Country Link
KR (1) KR101031901B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9846916B2 (en) * 2011-07-10 2017-12-19 Facebook, Inc. Clustering a user's connections in a social networking system
KR101373927B1 (en) * 2012-05-04 2014-03-13 중앙대학교 산학협력단 Social network server and method for creating social reputation model using the same
KR101396013B1 (en) * 2012-07-11 2014-05-19 중앙대학교 산학협력단 Method and Server for Establishing Cognitive Social Network
KR102017746B1 (en) * 2012-11-14 2019-09-04 한국전자통신연구원 Similarity calculating method and apparatus thereof
KR101468924B1 (en) * 2013-04-05 2014-12-08 홍익대학교 산학협력단 System for providing 3d map including personal relationship
KR102419546B1 (en) * 2020-07-27 2022-07-08 전주대학교 산학협력단 Apparatus and method for managing social network
CN117312415B (en) * 2023-11-27 2024-04-30 杭州悦数科技有限公司 Family relation reasoning method and device on graph database

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070041911A (en) * 2005-10-17 2007-04-20 (주) 엘지텔레콤 Mobile communication device capable of classifying familiarity level of caller and data deletion method using thereof
KR20080021444A (en) * 2006-09-04 2008-03-07 형용준 Method for providing human-network information of user-base service and system thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070041911A (en) * 2005-10-17 2007-04-20 (주) 엘지텔레콤 Mobile communication device capable of classifying familiarity level of caller and data deletion method using thereof
KR20080021444A (en) * 2006-09-04 2008-03-07 형용준 Method for providing human-network information of user-base service and system thereof

Also Published As

Publication number Publication date
KR20100098029A (en) 2010-09-06

Similar Documents

Publication Publication Date Title
KR101031901B1 (en) Social network analyzing method and system based on communication record
US11100065B2 (en) Tools and techniques for extracting knowledge from unstructured data retrieved from personal data sources
US20130297689A1 (en) Activity Stream Tuning Using Multichannel Communication Analysis
Adali et al. Measuring behavioral trust in social networks
US8744979B2 (en) Electronic communications triage using recipient&#39;s historical behavioral and feedback
US8468144B2 (en) Methods and apparatus for analyzing information to identify entities of significance
US9185067B1 (en) System and method for analyzing communications
US9183597B2 (en) Mobile user classification system and method
US10127300B2 (en) Mapping relationships using electronic communications data
US20110055196A1 (en) Data mining electronic communications
US9208179B1 (en) Comparing semi-structured data records
WO2016176229A1 (en) Contextual people recommendations
CN102223393A (en) Methods and systems for relationship characterization and utilization from a user&#39;s social networks
US20120143806A1 (en) Electronic Communications Triage
KR20100130003A (en) Apparatus and method for providing online social network service
CN102316046A (en) The method and apparatus of the user&#39;s recommendation information in social networks
GB2449959A (en) Communication monitoring
CN102055793B (en) The method and system configured or set up of automatically change or more new communication system
US20130289939A1 (en) Method and system for calculating importance of communication participants
JP2011237912A (en) Retrieval device
Mehrotra et al. Interpretable machine learning for mobile notification management: An overview of prefminer
Sage The Facebook platform and the future of social research
CN115329078B (en) Text data processing method, device, equipment and storage medium
CN104156228A (en) Client-side short message filtration embedded feature library generating and updating method
EP3121780A1 (en) Disseminating content to recipients using multiple distribution channels

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190415

Year of fee payment: 9

R401 Registration of restoration