지식 추출

최종 수정 2026.03.25

지식 추출은 구조화된(관계형 데이터베이스, XML) 소스와 비구조화된(텍스트, 문서, 이미지) 소스로부터 지식을 생성하는 것이다. 결과로 생성된 지식은 기계가 읽고 해석할 수 있는 형식이어야 하며, 추론을 용이하게 하는 방식으로 지식을 표현해야 한다. 방법론적으로 정보 추출(자연어 처리)이나 ETL(데이터 웨어하우스)과 유사하지만, 주요 기준은 추출 결과가 구조화된 정보의 생성이나 관계형 스키마로의 변환을 넘어선다는 점이다. 이는 기존의 공식적 지식의 재사용(식별자나 온톨로지의 재사용) 또는 원본 데이터를 기반으로 한 스키마 생성을 필요로 한다.

RDB2RDF W3C 그룹[^2]은 현재 관계형 데이터베이스로부터 자원 기술 프레임워크(RDF)를 추출하기 위한 언어를 표준화하고 있다. 지식 추출의 또 다른 대표적인 예로는 위키백과를 구조화된 데이터로 변환하고 기존 지식에 매핑하는 것이 있다(DBpedia와 Freebase 참조).

개요

RDF와 OWL 같은 지식 표현 언어의 표준화 이후, 특히 관계형 데이터베이스를 RDF로 변환하는 것, 동일성 해결, 지식 발견 및 온톨로지 학습과 관련하여 이 분야에서 많은 연구가 수행되었다. 일반적인 프로세스는 정보 추출과 추출, 변환, 적재(ETL)의 전통적인 방법을 사용하여 소스의 데이터를 구조화된 형식으로 변환한다. 이를 통해 이들이 어떻게 상호작용하고 서로로부터 학습하는지를 이해할 수 있다.

다음 기준은 이 주제의 접근 방식을 분류하는 데 사용될 수 있다(일부는 관계형 데이터베이스에서의 추출에만 해당됨):^3 {| class="wikitable" |- ! 소스 | 어떤 데이터 소스가 대상인가: 텍스트, 관계형 데이터베이스, XML, CSV |- ! 표출 | 추출된 지식은 어떻게 명시적으로 표현되는가(온톨로지 파일, 시맨틱 데이터베이스)? 어떻게 질의할 수 있는가? |- ! 동기화 | 지식 추출 프로세스가 덤프를 생성하기 위해 한 번 실행되는가, 아니면 결과가 소스와 동기화되는가? 정적 또는 동적. 결과에 대한 변경 사항이 다시 기록되는가(양방향) |- ! 어휘 재사용 | 도구가 추출 과정에서 기존 어휘를 재사용할 수 있는가. 예를 들어, 테이블 열 'firstName'을 foaf:firstName에 매핑할 수 있다. 일부 자동 접근 방식은 어휘 매핑이 불가능하다. |- ! 자동화 | 추출이 지원/자동화되는 정도. 수동, GUI, 반자동, 자동. |- ! 도메인 온톨로지 필요 여부 | 매핑하기 위해 기존 온톨로지가 필요하다. 즉 매핑이 생성되거나 소스로부터 스키마가 학습된다(온톨로지 학습). |}

예시

개체 연결

  1. DBpedia Spotlight, OpenCalais, Dandelion dataTXT, Zemanta API, ExtractivPoolParty Extractor는 개체명 인식을 통해 자유 텍스트를 분석한 후, 이름 해소를 통해 후보를 명확히 구별하고 발견된 개체를 DBpedia 지식 저장소에 연결한다[^1] (Dandelion dataTXT 데모 또는 DBpedia Spotlight 웹 데모 또는 PoolParty Extractor 데모).

오바마 대통령은 수요일에 의회에 작년 경기 부양책에 포함된 학생 세금 감면 조치를 연장할 것을 촉구하며, 이 정책이 더 관대한 지원을 제공한다고 주장했다.

오바마 대통령이 DBpedia 링크드 데이터 자원에 연결되어 있으므로, 추가 정보를 자동으로 검색할 수 있으며, 시맨틱 추론기는 예를 들어 해당 개체가 Person 유형(FOAF (소프트웨어) 사용)이자 미국 대통령 유형(YAGO 사용)임을 추론할 수 있다. 반례: 개체를 인식만 하거나 위키백과 문서 및 구조화된 데이터와 형식 지식의 추가 검색을 제공하지 않는 다른 대상에 연결하는 방법들.

관계형 데이터베이스에서 RDF로의 변환

  1. Triplify, D2R Server, Ultrawrap, 그리고 Virtuoso RDF Views는 관계형 데이터베이스를 RDF로 변환하는 도구이다. 이 과정에서 기존 어휘 및 온톨로지를 변환 과정에서 재사용할 수 있다. users라는 이름의 일반적인 관계형 테이블을 변환할 때, 하나의 열(예: name) 또는 열의 조합(예: first_namelast_name)이 생성된 개체의 URI를 제공해야 한다. 일반적으로 기본 키가 사용된다. 다른 모든 열은 이 개체와의 관계로 추출할 수 있다.[^6] 그런 다음 형식적으로 정의된 의미론을 가진 속성이 정보를 해석하기 위해 사용(및 재사용)된다. 예를 들어, 사용자 테이블에서 marriedTo라는 열은 대칭 관계로 정의할 수 있고, homepage 열은 FOAF 어휘에서 foaf:homepage라는 속성으로 변환하여 역함수 속성으로 한정할 수 있다. 그러면 user 테이블의 각 항목을 foaf:Person 클래스의 인스턴스로 만들 수 있다(온톨로지 채움). 또한 status_id로부터 도메인 지식(온톨로지 형태)을 생성할 수 있는데, 수동으로 작성된 규칙(예: status_id가 2이면 해당 항목은 Teacher 클래스에 속함) 또는 (반)자동화된 방법(온톨로지 학습)을 통해 가능하다. 다음은 변환 예시이다:

{| class="wikitable" |- ! Name !! marriedTo !! homepage !! status_id |- | Peter || Mary || https://example.org/Peters_page || 1 |- | Claus || Eva || https://example.org/Claus_page || 2 |} Peter :marriedTo :Mary .
marriedTo a owl:SymmetricProperty .
Peter foaf:homepage https://example.org/Peters_page .
Peter a foaf:Person .
Peter a :Student .
Claus a :Teacher .

구조화된 소스에서 RDF로의 추출

RDB 테이블/뷰에서 RDF 엔티티/속성/값으로의 1:1 매핑

문제 도메인의 RDB 표현을 구축할 때, 출발점은 흔히 개체-관계 다이어그램(ERD)이다. 일반적으로 각 개체는 데이터베이스 테이블로 표현되고, 개체의 각 속성은 해당 테이블의 열이 되며, 개체 간의 관계는 외래 키로 나타낸다. 각 테이블은 보통 특정 개체 클래스를 정의하고, 각 열은 해당 개체의 속성 하나를 나타낸다. 테이블의 각 행은 기본 키로 고유하게 식별되는 개체 인스턴스를 기술한다. 테이블의 행들은 집합적으로 개체 집합을 기술한다. 동일한 개체 집합의 동등한 RDF 표현에서는:

  • 테이블의 각 열은 속성(즉, 술어)이다
  • 각 열의 값은 속성값(즉, 목적어)이다
  • 각 행의 키는 개체 ID(즉, 주어)를 나타낸다
  • 각 행은 개체 인스턴스를 나타낸다
  • 각 행(개체 인스턴스)은 RDF에서 공통 주어(개체 ID)를 가진 트리플의 모음으로 표현된다.

따라서 RDF 의미론에 기반한 동등한 뷰를 생성하기 위한 기본 매핑 알고리즘은 다음과 같다:

  1. 각 테이블에 대해 RDFS 클래스를 생성한다
  2. 모든 기본 키와 외래 키를 IRI로 변환한다
  3. 각 열에 술어 IRI를 할당한다
  4. 각 행에 rdf:type 술어를 할당하여 해당 테이블에 대응하는 RDFS 클래스 IRI에 연결한다
  5. 기본 키나 외래 키의 일부가 아닌 각 열에 대해, 기본 키 IRI를 주어로, 열 IRI를 술어로, 열의 값을 목적어로 하는 트리플을 구성한다.

이 기본 또는 직접 매핑에 대한 초기 언급은 Tim Berners-Lee의 ER 모델과 RDF 모델 비교에서 찾아볼 수 있다.[^6]

관계형 데이터베이스에서 RDF로의 복합 매핑

위에서 언급한 1:1 매핑은 레거시 데이터를 간단한 방식으로 RDF로 노출하지만, 주어진 사용 사례에 대한 RDF 출력의 유용성을 높이기 위해 추가적인 개선을 적용할 수 있다. 일반적으로 개체-관계 다이어그램(ERD)을 관계형 테이블로 변환하는 과정에서 정보가 손실되며(자세한 내용은 객체-관계 임피던스 불일치 참조), 이를 역공학해야 한다. 개념적 관점에서 추출 접근법은 두 가지 방향에서 올 수 있다. 첫 번째 방향은 주어진 데이터베이스 스키마에서 OWL 스키마를 추출하거나 학습하려는 것이다. 초기 접근법에서는 1:1 매핑을 개선하기 위해 수동으로 생성된 고정된 수의 매핑 규칙을 사용하였다.[^9][^10][^11] 더 정교한 방법은 휴리스틱이나 학습 알고리즘을 사용하여 스키마 정보를 유도한다(온톨로지 학습과 방법이 중복됨). 일부 접근법은 SQL 스키마에 내재된 구조에서 정보를 추출하려 하고(예: 외래 키 분석)[^8], 다른 접근법은 테이블의 내용과 값을 분석하여 개념적 계층 구조를 생성한다^7(예: 값이 적은 열은 범주가 될 후보이다). 두 번째 방향은 스키마와 그 내용을 기존의 도메인 온톨로지에 매핑하려는 것이다(온톨로지 정렬 참조). 그러나 적합한 도메인 온톨로지가 존재하지 않아 먼저 생성해야 하는 경우가 많다.

XML

XML은 트리 구조로 되어 있으므로, 그래프 구조인 RDF로 모든 데이터를 쉽게 표현할 수 있다. XML2RDF는 RDF 빈 노드를 사용하고 XML 요소와 속성을 RDF 속성으로 변환하는 접근법의 한 예이다. 그러나 이 주제는 관계형 데이터베이스의 경우보다 더 복잡하다. 관계형 테이블에서는 기본 키가 추출된 트리플의 주어가 되기에 이상적인 후보이다. 그러나 XML 요소는 문맥에 따라 트리플의 주어, 술어 또는 목적어로 변환될 수 있다. XSLT는 XML을 RDF로 수동 변환하기 위한 표준 변환 언어로 사용될 수 있다.

방법/도구 조사

{| class="wikitable sortable" |- ! 이름 !! 데이터 소스 !! 데이터 노출 !! 데이터 동기화 !! 매핑 언어 !! 어휘 재사용 !! 매핑 자동화 !! 도메인 온톨로지 필요 !! GUI 사용 |- | A Direct Mapping of Relational Data to RDF || 관계형 데이터 || SPARQL/ETL || 동적 || || false || 자동 || false || false
|- | CSV2RDF4LOD || CSV || ETL || 정적 || RDF || true || 수동 || false || false |- |CoNLL-RDF |TSV, CoNLL |SPARQL/ RDF 스트림 |정적 |없음 |true |자동 (도메인 특화, 언어 기술 사용 사례용, 행 간 관계 보존) |false |false |- | Convert2RDF || 구분자 텍스트 파일 || ETL || 정적 || RDF/DAML || true || 수동 || false || true |- | D2R Server || RDB || SPARQL || 양방향 || D2R Map || true || 수동 || false || false |- | DartGrid || RDB || 자체 질의 언어 || 동적 || 시각적 도구 || true || 수동 || false || true |- | DataMaster || RDB || ETL || 정적 || 독자적 || true || 수동 || true || true |- | Google Refine's RDF Extension || CSV, XML || ETL || 정적 || || || 반자동 || false || true |- | Krextor || XML || ETL || 정적 || xslt || true || 수동 || true || false |- | MAPONTO || RDB || ETL || 정적 || 독자적 || true || 수동 || true || false |- | METAmorphoses || RDB || ETL || 정적 || 독자적 XML 기반 매핑 언어 || true || 수동 || false || true |- | MappingMaster || CSV || ETL || 정적 || MappingMaster || true || GUI || false || true |- | ODEMapster || RDB || ETL || 정적 || 독자적 || true || 수동 || true || true |- | OntoWiki CSV Importer Plug-in - DataCube & Tabular || CSV || ETL || 정적 || The RDF Data Cube Vocabulary || true || 반자동 || false || true |- | Poolparty Extraktor (PPX) || XML, 텍스트 || LinkedData || 동적 || RDF (SKOS) || true || 반자동 || true || false |- | RDBToOnto || RDB || ETL || 정적 || || false || 자동, 사용자가 결과를 미세 조정할 수 있음 || false || true |- | RDF 123 || CSV || ETL || 정적 || false || false || 수동 || false || true |- | RDOTE || RDB || ETL || 정적 || SQL || true || 수동 || true || true |- | Relational.OWL || RDB || ETL || 정적 || || false || 자동 || false || false |- | T2LD || CSV || ETL || 정적 || false || false || 자동 || false || false |- | The RDF Data Cube Vocabulary || 스프레드시트의 다차원 통계 데이터 || || || Data Cube Vocabulary || true || 수동 || false ||
|- | TopBraid Composer || CSV || ETL || 정적 || SKOS || false || 반자동 || false || true |- | Triplify || RDB || LinkedData || 동적 || SQL || true || 수동 || false || false |- | Ultrawrap || RDB || SPARQL/ETL || 동적 || R2RML || true || 반자동 || false || true |- | Virtuoso RDF Views || RDB || SPARQL || 동적 || 메타 스키마 언어 || true || 반자동 || false || true |- | Virtuoso Sponger || 구조화 및 반구조화 데이터 소스 || SPARQL || 동적 || Virtuoso PL & XSLT || true || 반자동 || false || false |- | VisAVis || RDB || RDQL || 동적 || SQL || true || 수동 || true || true |- | XLWrap: 스프레드시트에서 RDF로 || CSV || ETL || 정적 || TriG 구문 || true || 수동 || false || false |- | XML to RDF || XML || ETL || 정적 || false || false || 자동 || false || false |}

자연어 소스로부터의 추출

비즈니스 문서에 포함된 정보의 가장 큰 부분(약 80%[^34])은 자연어로 인코딩되어 있으며 따라서 비정형 데이터이다. 비정형 데이터는 지식 추출에 있어 상당한 도전 과제이기 때문에 보다 정교한 방법이 필요하며, 이러한 방법들은 일반적으로 정형 데이터에 비해 더 낮은 결과를 제공하는 경향이 있다. 그러나 추출된 지식의 대규모 획득 가능성은 추출의 복잡성 증가와 품질 저하를 보상할 수 있어야 한다. 이하에서 자연어 소스는 데이터가 일반 텍스트로 비정형 방식으로 제공되는 정보 소스를 의미한다. 주어진 텍스트가 마크업 문서(예: HTML 문서)에 추가로 포함되어 있는 경우, 언급된 시스템들은 일반적으로 마크업 요소를 자동으로 제거한다.

언어 주석 / 자연어 처리 (NLP)

지식 추출의 전처리 단계로서, 하나 또는 여러 NLP 도구에 의한 언어 주석 수행이 필요할 수 있다. NLP 워크플로의 개별 모듈은 일반적으로 입력과 출력에 대해 도구별 형식을 기반으로 하지만, 지식 추출의 맥락에서는 언어 주석을 표현하기 위한 구조화된 형식이 적용되어 왔다.

지식 추출과 관련된 일반적인 NLP 작업은 다음과 같다:

  • 품사 태깅 (POS 태깅)
  • 표제어 추출 (LEMMA) 또는 어간 추출 (STEM)
  • 단어 의미 중의성 해소 (WSD, 아래의 의미 주석과 관련)
  • 개체명 인식 (NER, 아래 IE 참조)
  • 구문 분석, 주로 구문 의존관계 (DEP) 채택
  • 얕은 구문 분석 (CHUNK): 성능이 문제가 되는 경우, 청킹은 명사구 및 기타 구문의 빠른 추출을 제공
  • 대용어 해소 (아래 IE의 상호참조 해소 참조, 그러나 여기서는 개체의 언급과 개체의 추상적 표현 간의 링크가 아닌 텍스트 언급 간의 링크를 생성하는 작업으로 봄)
  • 의미역 결정 (SRL, 관계 추출과 관련; 아래에 설명된 의미 주석과 혼동하지 말 것)
  • 담화 분석 (서로 다른 문장 간의 관계, 실제 응용에서는 거의 사용되지 않음)

NLP에서 이러한 데이터는 일반적으로 TSV 형식(TAB을 구분자로 사용하는 CSV 형식)으로 표현되며, 흔히 CoNLL 형식이라고 한다. 지식 추출 워크플로에서는 다음과 같은 커뮤니티 표준에 따라 이러한 데이터에 대한 RDF 뷰가 생성되었다:

  • NLP 교환 형식 (NIF, 다수의 일반적인 주석 유형용)[^36][^37]
  • 웹 주석 (WA, 개체 연결에 자주 사용)[^38]
  • CoNLL-RDF (원래 TSV 형식으로 표현된 주석용)[^39][^40]

기타 플랫폼별 형식은 다음과 같다:

  • LAPPS 교환 형식 (LIF, LAPPS Grid에서 사용)[^41][^42]
  • NLP 주석 형식 (NAF, NewsReader 워크플로 관리 시스템에서 사용)[^43][^44]

전통적 정보 추출 (IE)

전통적 정보 추출[^16]은 자연어 처리 기술로서, 일반적으로 자연어 텍스트에서 정보를 추출하여 적절한 방식으로 구조화한다. 식별할 정보의 종류는 프로세스를 시작하기 전에 모델에서 지정되어야 하며, 이것이 전통적 정보 추출의 전체 프로세스가 도메인 의존적인 이유이다. IE는 다음 다섯 가지 하위 작업으로 나뉜다.

  • 개체명 인식 (NER)
  • 상호참조 해소 (CO)
  • 템플릿 요소 구성 (TE)
  • 템플릿 관계 구성 (TR)
  • 템플릿 시나리오 생성 (ST)

개체명 인식의 작업은 텍스트에 포함된 모든 개체명을 인식하고 분류하는 것이다(개체명을 사전 정의된 범주에 할당). 이는 문법 기반 방법 또는 통계 모델의 적용을 통해 작동한다.

상호참조 해소는 텍스트 내에서 NER에 의해 인식된 동일한 개체를 식별한다. 두 가지 관련 종류의 동치 관계가 있다. 첫 번째는 서로 다르게 표현된 두 개체 간의 관계(예: IBM Europe와 IBM)이고, 두 번째는 개체와 그 대용어 참조 간의 관계(예: it과 IBM)이다. 두 종류 모두 상호참조 해소에 의해 인식될 수 있다.

템플릿 요소 구성 단계에서 IE 시스템은 NER과 CO에 의해 인식된 개체의 서술적 속성을 식별한다. 이러한 속성은 red나 big과 같은 일반적인 성질에 해당한다.

템플릿 관계 구성은 템플릿 요소 간에 존재하는 관계를 식별한다. 이러한 관계는 works-for나 located-in과 같은 여러 종류가 될 수 있으며, 도메인과 범위 모두 개체에 해당해야 한다는 제약이 있다.

템플릿 시나리오 생성에서는 텍스트에 서술된 사건이 식별되고, NER과 CO에 의해 인식된 개체 및 TR에 의해 식별된 관계와 관련하여 구조화된다.

온톨로지 기반 정보 추출 (OBIE)

온톨로지 기반 정보 추출[^34]은 정보 추출의 하위 분야로, 자연어 텍스트에서의 정보 추출 과정을 안내하기 위해 하나 이상의 온톨로지가 사용된다. OBIE 시스템은 전통적 정보 추출 방법을 사용하여 텍스트에서 사용된 온톨로지의 개념, 인스턴스 및 관계를 식별하며, 이는 프로세스 후에 온톨로지로 구조화된다. 따라서 입력 온톨로지는 추출할 정보의 모델을 구성한다.[^45]

온톨로지 학습 (OL)

온톨로지 학습은 자연어 텍스트에서 해당 도메인의 용어를 추출하는 것을 포함하여, 온톨로지를 자동 또는 반자동으로 생성하는 것이다. 수동으로 온톨로지를 구축하는 것은 극도로 노동 집약적이고 시간이 많이 소요되기 때문에, 이 과정을 자동화하려는 강력한 동기가 있다.

의미 주석 (SA)

의미 주석[^18] 과정에서 자연어 텍스트는 메타데이터(종종 RDFa로 표현됨)로 보강되며, 이는 포함된 용어의 의미를 기계가 이해할 수 있도록 해야 한다. 일반적으로 반자동으로 수행되는 이 과정에서, 어휘 용어와 예를 들어 온톨로지의 개념 간의 링크가 설정되는 의미에서 지식이 추출된다. 따라서 처리된 맥락에서 용어의 어떤 의미가 의도되었는지에 대한 지식이 획득되며, 텍스트의 의미는 추론 능력을 갖춘 기계 판독 가능한 데이터에 기반하게 된다. 의미 주석은 일반적으로 다음 두 가지 하위 작업으로 나뉜다.

  1. 용어 추출
  2. 개체 연결

용어 추출 수준에서는 텍스트에서 어휘 용어가 추출된다. 이를 위해 토크나이저가 먼저 단어 경계를 결정하고 약어를 해결한다. 그 후 텍스트에서 개념에 해당하는 용어가 도메인별 사전의 도움으로 추출되어 개체 연결에서 연결된다.

개체 연결[^28]에서는 소스 텍스트에서 추출된 어휘 용어와 온톨로지 또는 DBpedia와 같은 지식 베이스의 개념 간에 링크가 설정된다. 이를 위해 사전의 도움으로 용어의 여러 의미에 적절한 후보 개념이 탐지된다. 마지막으로 용어의 맥락이 분석되어 가장 적절한 중의성 해소를 결정하고 용어를 올바른 개념에 할당한다.

지식 추출의 맥락에서 "의미 주석"은 자연어 처리에서 이해되는 의미 분석(역시 "의미 주석"이라고도 함)과 혼동해서는 안 된다: 의미 분석은 자연어의 완전하고 기계 판독 가능한 표현을 목표로 하는 반면, 지식 추출의 의미에서의 의미 주석은 그것의 매우 기본적인 측면만을 다룬다.

도구

다음 기준은 자연어 텍스트에서 지식을 추출하는 도구를 분류하는 데 사용할 수 있다.

{| class="wikitable" |- | 소스 || 도구가 처리할 수 있는 입력 형식은 무엇인가(예: 일반 텍스트, HTML 또는 PDF)? |- | 접근 패러다임 || 도구가 데이터 소스를 쿼리할 수 있는가, 아니면 추출 과정을 위해 전체 덤프가 필요한가? |- | 데이터 동기화 || 추출 과정의 결과가 소스와 동기화되는가? |- | 출력 온톨로지 사용 || 도구가 결과를 온톨로지와 연결하는가? |- | 매핑 자동화 || 추출 과정이 얼마나 자동화되어 있는가(수동, 반자동 또는 자동)? |- | 온톨로지 필요 || 도구가 추출을 위해 온톨로지가 필요한가? |- | GUI 사용 || 도구가 그래픽 사용자 인터페이스를 제공하는가? |- | 접근법 || 도구가 어떤 접근법(IE, OBIE, OL 또는 SA)을 사용하는가? |- | 추출된 개체 || 도구가 추출할 수 있는 개체 유형은 무엇인가(예: 개체명, 개념 또는 관계)? |- | 적용 기법 || 어떤 기법이 적용되는가(예: NLP, 통계적 방법, 클러스터링 또는 기계 학습)? |- | 출력 모델 || 도구의 결과를 표현하는 데 어떤 모델이 사용되는가(예: RDF 또는 OWL)? |- | 지원 도메인 || 어떤 도메인이 지원되는가(예: 경제 또는 생물학)? |- | 지원 언어 || 어떤 언어가 처리될 수 있는가(예: 영어 또는 독일어)? |}

다음 표는 자연어 소스에서 지식을 추출하는 일부 도구의 특성을 나타낸다.

{| class="wikitable sortable" |- ! 이름 !! 소스 !! 접근 패러다임 !! 데이터 동기화 !! 출력 온톨로지 사용 !! 매핑 자동화 !! 온톨로지 필요 !! GUI 사용 !! 접근법 !! 추출된 개체 !! 적용 기법 !! 출력 모델 !! 지원 도메인 !! 지원 언어 |- | http://www.rocketsoftware.com ^29 || 일반 텍스트, HTML, XML, SGML || 덤프 || 아니오 || 예 || 자동 || 예 || 예 || IE || 개체명, 관계, 사건 || 언어 규칙 || 독점 || 도메인 독립 || 영어, 스페인어, 아랍어, 중국어, 인도네시아어 |- | AlchemyAPI ^27 || 일반 텍스트, HTML || || || || 자동 || || 예 || SA || || || || || 다국어 |- | ANNIE [^32] || 일반 텍스트 || 덤프 || || || || 예 || 예 || IE || || 유한 상태 알고리즘 || || || 다국어 |- | ASIUM [^20] || 일반 텍스트 || 덤프 || || || 반자동 || || 예 || OL || 개념, 개념 계층 || NLP, 클러스터링 || || || |- | Attensity Exhaustive Extraction ^14 || || || || || 자동 || || || IE || 개체명, 관계, 사건 || NLP || || || |- | Dandelion API || 일반 텍스트, HTML, URL || REST || 아니오 || 아니오 || 자동 || 아니오 || 예 || SA || 개체명, 개념 || 통계적 방법 || JSON || 도메인 독립 || 다국어 |- | DBpedia Spotlight ^25 || 일반 텍스트, HTML || 덤프, SPARQL || 예 || 예 || 자동 || 아니오 || 예 || SA || 모든 단어에 주석, 비불용어에 주석 || NLP, 통계적 방법, 기계 학습 || RDFa || 도메인 독립 || 영어 |- | EntityClassifier.eu || 일반 텍스트, HTML || 덤프 || 예 || 예 || 자동 || 아니오 || 예 || IE, OL, SA || 모든 단어에 주석, 비불용어에 주석 || 규칙 기반 문법 || XML || 도메인 독립 || 영어, 독일어, 네덜란드어 |- | FRED [^12] || 일반 텍스트 || 덤프, REST API || 예 || 예 || 자동 || 아니오 || 예 || IE, OL, SA, 온톨로지 설계 패턴, 프레임 의미론 || (다중)단어 NIF 또는 EarMark 주석, 술어, 인스턴스, 합성 의미론, 개념 분류 체계, 프레임, 의미역, 우회적 관계, 사건, 양태, 시제, 개체 연결, 사건 연결, 감성 || NLP, 기계 학습, 휴리스틱 규칙 || RDF/OWL || 도메인 독립 || 영어, 기타 언어는 번역을 통해 |- | iDocument [^13] || HTML, PDF, DOC || SPARQL || || 예 || || || 예 || OBIE || 인스턴스, 속성 값 || NLP || || 개인, 비즈니스 || |- | NetOwl Extractor ^31 || 일반 텍스트, HTML, XML, SGML, PDF, MS Office || 덤프 || 아니오 || 예 || 자동 || 예 || 예 || IE || 개체명, 관계, 사건 || NLP || XML, JSON, RDF-OWL, 기타 || 다중 도메인 || 영어, 아랍어, 중국어(간체 및 번체), 프랑스어, 한국어, 페르시아어(파르시어 및 다리어), 러시아어, 스페인어 |- | OntoGen ^19 || || || || || 반자동 || || 예 || OL || 개념, 개념 계층, 비분류적 관계, 인스턴스 || NLP, 기계 학습, 클러스터링 || || || |- | OntoLearn ^26 || 일반 텍스트, HTML || 덤프 || 아니오 || 예 || 자동 || 예 || 아니오 || OL || 개념, 개념 계층, 인스턴스 || NLP, 통계적 방법 || 독점 || 도메인 독립 || 영어 |- | OntoLearn Reloaded || 일반 텍스트, HTML || 덤프 || 아니오 || 예 || 자동 || 예 || 아니오 || OL || 개념, 개념 계층, 인스턴스 || NLP, 통계적 방법 || 독점 || 도메인 독립 || 영어 |- | OntoSyphon [^24] || HTML, PDF, DOC || 덤프, 검색 엔진 쿼리 || 아니오 || 예 || 자동 || 예 || 아니오 || OBIE || 개념, 관계, 인스턴스 || NLP, 통계적 방법 || RDF || 도메인 독립 || 영어 |- | ontoX ^35 || 일반 텍스트 || 덤프 || 아니오 || 예 || 반자동 || 예 || 아니오 || OBIE || 인스턴스, 데이터타입 속성 값 || 휴리스틱 기반 방법 || 독점 || 도메인 독립 || 언어 독립 |- | OpenCalais || 일반 텍스트, HTML, XML || 덤프 || 아니오 || 예 || 자동 || 예 || 아니오 || SA || 개체에 주석, 사건에 주석, 사실에 주석 || NLP, 기계 학습 || RDF || 도메인 독립 || 영어, 프랑스어, 스페인어 |- | PoolParty Extractor ^30 || 일반 텍스트, HTML, DOC, ODT || 덤프 || 아니오 || 예 || 자동 || 예 || 예 || OBIE || 개체명, 개념, 관계, 텍스트를 분류하는 개념, 보강 || NLP, 기계 학습, 통계적 방법 || RDF, OWL || 도메인 독립 || 영어, 독일어, 스페인어, 프랑스어 |- | Rosoka || 일반 텍스트, HTML, XML, SGML, PDF, MS Office || 덤프 || 예 || 예 || 자동 || 아니오 || 예 || IE || 개체명 추출, 개체 해소, 관계 추출, 속성, 개념, 다중 벡터 감성 분석, 지오태깅, 언어 식별 || NLP, 기계 학습 || XML, JSON, POJO, RDF || 다중 도메인 || 다국어 200개 이상 언어 |- | SCOOBIE || 일반 텍스트, HTML || 덤프 || 아니오 || 예 || 자동 || 아니오 || 아니오 || OBIE || 인스턴스, 속성 값, RDFS 타입 || NLP, 기계 학습 || RDF, RDFa || 도메인 독립 || 영어, 독일어 |- | SemTag [^17][^33] || HTML || 덤프 || 아니오 || 예 || 자동 || 예 || 아니오 || SA || || 기계 학습 || 데이터베이스 레코드 || 도메인 독립 || 언어 독립 |- | smart FIX || 일반 텍스트, HTML, PDF, DOC, 이메일 || 덤프 || 예 || 아니오 || 자동 || 아니오 || 예 || OBIE || 개체명 || NLP, 기계 학습 || 독점 || 도메인 독립 || 영어, 독일어, 프랑스어, 네덜란드어, 폴란드어 |- | Text2Onto [^15] || 일반 텍스트, HTML, PDF || 덤프 || 예 || 아니오 || 반자동 || 예 || 예 || OL || 개념, 개념 계층, 비분류적 관계, 인스턴스, 공리 || NLP, 통계적 방법, 기계 학습, 규칙 기반 방법 || OWL || 도메인 독립 || 영어, 독일어, 스페인어 |- | Text-To-Onto [^23] || 일반 텍스트, HTML, PDF, PostScript || 덤프 || || || 반자동 || 예 || 예 || OL || 개념, 개념 계층, 비분류적 관계, 개념을 참조하는 어휘 개체, 관계를 참조하는 어휘 개체 || NLP, 기계 학습, 클러스터링, 통계적 방법 || || || 독일어 |- |ThatNeedle |일반 텍스트 |덤프 | | |자동 | |아니오 | |개념, 관계, 계층 |NLP, 독점 |JSON |다중 도메인 |영어 |- | The Wiki Machine ^22 || 일반 텍스트, HTML, PDF, DOC || 덤프 || 아니오 || 예 || 자동 || 예 || 예 || SA || 고유 명사에 주석, 일반 명사에 주석 || 기계 학습 || RDFa || 도메인 독립 || 영어, 독일어, 스페인어, 프랑스어, 포르투갈어, 이탈리아어, 러시아어 |- | ThingFinder ^21 || || || || || || || || IE || 개체명, 관계, 사건 || || || || 다국어 |}

지식 발견

지식 발견은 데이터에 관한 지식으로 간주될 수 있는 패턴을 대량의 데이터에서 자동으로 검색하는 과정을 말한다.^4 이는 흔히 입력 데이터로부터 지식을 도출하는 것으로 설명된다. 지식 발견은 데이터 마이닝 분야에서 발전하였으며, 방법론과 용어 면에서 데이터 마이닝과 밀접하게 관련되어 있다.^5

데이터 마이닝에서 가장 잘 알려진 분야는 지식 발견으로, 데이터베이스에서의 지식 발견(KDD)이라고도 한다. 다른 많은 형태의 지식 발견과 마찬가지로, 이는 입력 데이터의 추상화를 생성한다. 이 과정을 통해 얻은 지식은 추가적인 데이터가 되어 추후 활용과 발견에 사용될 수 있다. 지식 발견의 결과는 실행 가능하지 않은 경우가 많으며, 도메인 기반 데이터 마이닝[^46]과 같은 기법은 실행 가능한 지식과 통찰을 발견하고 전달하는 것을 목표로 한다.

지식 발견의 또 다른 유망한 응용 분야는 기존 소프트웨어 산출물의 이해를 포함하는 소프트웨어 현대화, 취약점 발견 및 규정 준수 영역이다. 이 과정은 역공학 개념과 관련이 있다. 일반적으로 기존 소프트웨어에서 얻은 지식은 필요할 때 특정 쿼리를 수행할 수 있는 모델의 형태로 제시된다. 개체-관계 모델은 기존 소프트웨어에서 얻은 지식을 표현하는 데 자주 사용되는 형식이다. 객체 관리 그룹(OMG)은 기존 코드에서 지식 발견을 수행하기 위해 소프트웨어 자산과 그 관계에 대한 온톨로지를 정의하는 지식 발견 메타모델(KDM) 사양을 개발하였다. 소프트웨어 마이닝이라고도 알려진 기존 소프트웨어 시스템에서의 지식 발견은 데이터 마이닝과 밀접하게 관련되어 있는데, 이는 기존 소프트웨어 산출물이 소프트웨어 시스템의 평가와 진화에 핵심적인 위험 관리와 비즈니스 가치에 있어 막대한 가치를 담고 있기 때문이다. 개별 데이터 집합을 마이닝하는 대신, 소프트웨어 마이닝은 프로세스 흐름(예: 데이터 흐름, 제어 흐름, 호출 맵), 아키텍처, 데이터베이스 스키마, 비즈니스 규칙/용어/프로세스 등의 메타데이터에 초점을 맞춘다.

입력 데이터

  • 데이터베이스 ** 관계형 데이터 ** 데이터베이스 ** 문서 저장소 ** 데이터 웨어하우스
  • 소프트웨어 ** 소스 코드 ** 구성 파일 ** 빌드 스크립트
  • 텍스트 ** 개념 마이닝
  • 그래프 ** 분자 마이닝
  • 시퀀스 ** 데이터 스트림 마이닝 ** 개념 변동 하에서의 시변 데이터 스트림 학습

출력 형식

  • 데이터 모델
  • 메타데이터
  • 메타모델
  • 온톨로지
  • 지식 표현
  • 지식 태그
  • 비즈니스 규칙
  • 지식 발견 메타모델(KDM)
  • 비즈니스 프로세스 모델링 표기법(BPMN)
  • 중간 표현
  • 자원 기술 프레임워크(RDF)
  • 소프트웨어 메트릭

같이 보기

  • 군집 분석
  • 데이터 고고학

더 읽어보기


참고 문헌

[^1]: 링크드 데이터 클라우드에서의 생활. www.opencalais.com

[^2]: RDB2RDF 워킹 그룹, 웹사이트: http://www.w3.org/2001/sw/rdb2rdf/, 헌장: http://www.w3.org/2009/08/rdb2rdf-charter, R2RML: RDB에서 RDF로의 매핑 언어: http://www.w3.org/TR/r2rml/

[^6]: Tim Berners-Lee (1998), [http://www.w3.org/DesignIssues/RDB-RDF.html "시맨틱 웹에서의 관계형 데이터베이스"]. 검색일: 2011년 2월 20일.

[^8]: Tirmizi 외 (2008), "SQL 애플리케이션의 시맨틱 웹으로의 변환", Lecture Notes in Computer Science, Volume 5181/2008 (데이터베이스 및 전문가 시스템 응용). http://citeseer.ist.psu.edu/

[^9]: Hu 외 (2007), "관계형 데이터베이스 스키마와 온톨로지 간의 단순 매핑 발견", 제6회 국제 시맨틱 웹 학술대회(ISWC 2007) 논문집, 제2회 아시아 시맨틱 웹

[^10]: R. Ghawi and N. Cullot (2007), "시맨틱 상호운용성을 위한 데이터베이스-온톨로지 매핑 생성". 제3회 데이터베이스 상호운용성 국제 워크숍(InterDB 2007). http://le2i.cnrs.fr

[^11]: Li 외 (2005) "시맨틱 웹을 위한 반자동 온톨로지 획득 방법", WAIM, Lecture Notes in Computer Science 3739권, 209-220쪽. Springer. doi 10.1007/11563952_19

[^12]: Gangemi, Aldo; Presutti, Valentina; Reforgiato Recupero, Diego; Nuzzolese, Andrea Giovanni; Draicchio, Francesco; Mongiovì, Misael (2016). "FRED를 이용한 시맨틱 웹 기계 독해", ''Semantic Web Jour

[^13]: Adrian, Benjamin; Maus, Heiko; Dengel, Andreas (2009). "iDocument: 텍스트에서 정보 추출을 위한 온톨로지 활용", http://www.dfki.uni-kl.de/~maus/dok/AdrianMausDengel09.pdf (검색일: 18.06.

[^15]: Cimiano, Philipp; Völker, Johanna (2005). "Text2Onto - 온톨로지 학습 및 데이터 기반 변화 발견을 위한 프레임워크", ''제10회 자연어 응용 국제학술대회 논문집

[^16]: Cunningham, Hamish (2005). "정보 추출, 자동", ''언어 및 언어학 백과사전'', 2, 665 - 677쪽, http://gate.ac.uk/sale/ell2/ie/main.pdf (검색일: 18.06.2012).

[^17]: Dill, Stephen; Eiron, Nadav; Gibson, David; Gruhl, Daniel; Guha, R.; Jhingran, Anant; Kanungo, Tapas; Rajagopalan, Sridhar; Tomkins, Andrew; Tomlin, John A.; Zien, Jason Y. (2003). "SemTag와 Seeker:

[^18]: Erdmann, M.; Maedche, Alexander; Schnurr, H.-P.; Staab, Steffen (2000). "수동에서 반자동 시맨틱 주석으로: 온톨로지 기반 텍스트 주석 도구에 관하여", ''COLING 논문집'',

[^20]: ILP 우수 네트워크. "ASIUM (LRI)", http://www-ai.ijs.si/~ilpnet2/systems/asium.html (검색일: 18.06.2012).

[^23]: Maedche, Alexander; Volz, Raphael (2001). "온톨로지 추출 및 유지보수 프레임워크 Text-To-Onto", ''IEEE 데이터 마이닝 국제학술대회 논문집'', http://users.csc.calpoly.

[^24]: McDowell, Luke K.; Cafarella, Michael (2006). "OntoSyphon을 이용한 온톨로지 기반 정보 추출", ''제5회 시맨틱 웹 국제학술대회 논문집'', 428 - 444쪽, http://tu

[^28]: (2020년 2월)

[^32]: 셰필드 대학교 (2011). "ANNIE: 거의 새로운 정보 추출 시스템", http://gate.ac.uk/sale/tao/splitch6.html#chap:annie (검색일: 18.06.2012).

[^33]: (2020년 2월)

[^34]: Wimalasuriya, Daya C.; Dou, Dejing (2010). "온톨로지 기반 정보 추출: 개론 및 현재 접근법 조사", ''Journal of Information Science'', 36(3), 306 - 323쪽, http://

[^36]: NLP 교환 형식(NIF) 2.0 - 개요 및 문서

[^37]: Hellmann, Sebastian. 시맨틱 웹 – ISWC 2013. Springer. (2013)

[^38]: Verspoor, Karin. 시맨틱 웹에서의 학술 주석 형식에 대한 언어학적 주석의 적응을 향하여. Association for Computational Linguistics. (2012년 7월)

[^39]: acoli-repo/conll-rdf. ACoLi. (2020-05-27)

[^40]: Chiarcos, Christian. 언어, 데이터, 그리고 지식. Springer International Publishing. (2017)

[^41]: Verhagen, Marc. 세계 언어 서비스 인프라. Springer International Publishing. (2016)

[^42]: 언어 응용 그리드 {{!

[^43]: newsreader/NAF. NewsReader. (2020-05-25)

[^44]: Vossen, Piek. NewsReader: 대규모 뉴스 스트림에서 더 많은 지식을 생성하기 위한 다국어 독해 기계에서의 지식 자원 활용. (2016-10-15)

[^45]: cite journal last1 = Chicco first1 = D last2 = Masseroli first2 = M year = 2016 title = 온톨로지 기반 유전자 기능 주석의 예측 및 우선순위 지정 journal = IEEE/ACM Tra

[^46]: Cao, L.. 도메인 주도 데이터 마이닝: 도전과 전망