KR20210126388A - 스토리텔링 데이터 제공 방법 및 장치 - Google Patents

스토리텔링 데이터 제공 방법 및 장치 Download PDF

Info

Publication number
KR20210126388A
KR20210126388A KR1020200044157A KR20200044157A KR20210126388A KR 20210126388 A KR20210126388 A KR 20210126388A KR 1020200044157 A KR1020200044157 A KR 1020200044157A KR 20200044157 A KR20200044157 A KR 20200044157A KR 20210126388 A KR20210126388 A KR 20210126388A
Authority
KR
South Korea
Prior art keywords
data
storytelling
providing
machine
processing
Prior art date
Application number
KR1020200044157A
Other languages
English (en)
Other versions
KR102466449B1 (ko
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 KR1020200044157A priority Critical patent/KR102466449B1/ko
Priority to US16/884,481 priority patent/US20210319064A1/en
Publication of KR20210126388A publication Critical patent/KR20210126388A/ko
Priority to KR1020220146203A priority patent/KR20220153554A/ko
Application granted granted Critical
Publication of KR102466449B1 publication Critical patent/KR102466449B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Toys (AREA)

Abstract

스토리텔링 데이터 제공 방법 및 장치가 개시된다.
스토리텔링 데이터 제공 장치에서 수행되는 스토리텔링 데이터 제공 방법은, 스토리텔링 데이터 생산 단말로부터 API(application programming interface)와 시스템 자원을 요청하는 메시지를 수신하는 단계; 상기 시스템 자원에 따라 가상 머신을 생성하는 단계; 상기 가상 머신에 상기 API를 추가하고 미리 수집된 빅데이터에 대하여 상기 가상 머신이 접근 가능하도록 설정하는 단계; 상기 스토리텔링 데이터 생산 단말로부터 1차 가공 데이터를 획득하는 단계; 상기 1차 가공 데이터를 스토리텔링 가공 머신을 이용하여 가공함으로써 머신 가공 데이터를 생성하는 단계; 및 상기 머신 가공 데이터를 상기 스토리텔링 데이터 생산 단말에 제공하고, 상기 스토리텔링 데이터 생산 단말로부터 상기 머신 가공 데이터를 이용하여 생성된 스토리텔링 데이터를 획득하는 단계를 포함한다.

Description

스토리텔링 데이터 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING STORYTELLING DATA}
본 발명은 스토리텔링 데이터 제공 방법 및 장치에 관한 것으로, 더욱 상세하게는 빅 데이터를 스토리텔링 기반으로 가공하고, 가공된 데이터를 공유하는 방법 및 장치에 관한 것이다.
PC나 모바일 기기를 이용한 통신 네트워크 접근이 생활화되면서 다수의 사람들이 네트워크 공간에 규모를 가늠할 수 없을 정도로 많은 정보가 생산되는 빅데이터(Big data) 환경이 일상화되고 있다. 빅 데이터는, 규모가 방대하고 생성 주기가 짧으며, 데이터의 형태가 문자나 영상까지 모두 포함하는 데이터를 의미한다.
이러한 빅데이터 환경이 일반화되면서, 데이터를 생성하는 것뿐만 아니라, 여러 경로를 통해 접근 가능한 데이터들을 가공하여 재생산하는 기술의 중요성이 증가하고 있다. 여러 형태의 데이터 중에서 스토리텔링 데이터는 사용자가 누구나 쉽게 가공된 정보를 이해하고 사용할 수 있기 때문에 활용도가 높은 데이터 형태에 속한다.
그러나, 빅데이터로부터 스토리텔링 데이터를 생산하거나 가공해내는 데에는 그러한 행위를 수행하는 주체의 역량과 데이터 수집 방식에 따라 크게 차이가 난다. 따라서, 누구나 쉽게 스토리텔링 데이터를 생산하고 가공하여 다수의 사용자와 공유할 수 있는 방안이 필요한 실정이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은, 스토리텔링 데이터 제공 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 스토리텔링 데이터 제공 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 측면은, 스토리텔링 데이터 제공 장치에서 수행되는 스토리텔링 데이터 제공 방법을 제공한다.
스토리텔링 데이터 제공 장치에서 수행되는 스토리텔링 데이터 제공 방법은, 스토리텔링 데이터 생산 단말로부터 API(application programming interface)와 시스템 자원을 요청하는 메시지를 수신하는 단계; 상기 시스템 자원에 따라 가상 머신을 생성하는 단계; 상기 가상 머신에 상기 API를 추가하고 미리 수집된 빅데이터에 대하여 상기 가상 머신이 접근 가능하도록 설정하는 단계; 상기 스토리텔링 데이터 생산 단말로부터 1차 가공 데이터를 획득하는 단계; 상기 1차 가공 데이터를 스토리텔링 가공 머신을 이용하여 가공함으로써 머신 가공 데이터를 생성하는 단계; 및 상기 머신 가공 데이터를 상기 스토리텔링 데이터 생산 단말에 제공하고, 상기 스토리텔링 데이터 생산 단말로부터 상기 머신 가공 데이터를 이용하여 생성된 스토리텔링 데이터를 획득하는 단계를 포함할 수 있다.
상기 스토리텔링 데이터 제공 방법은, 상기 스토리텔링 데이터를 공지된 어플리케이션으로 열람 가능한 포맷으로 변환하는 단계; 및 상기 변환된 스토리텔링 데이터에 대하여 접근 가능한 URL 주소를 생성하는 단계를 더 포함할 수 있다.
상기 스토리텔링 데이터 제공 방법은, 상기 접근 가능한 URL 주소를 생성하는 단계 이후에, 스토리텔링 데이터 소비 단말로부터 접근을 요청하는 메시지를 수신하는 단계; 상기 스토리텔링 데이터 소비 단말에 대한 사용자 인증을 수행하는 단계; 및 상기 사용자 인증이 완료됨에 따른 응답으로, 상기 URL 주소를 암호화하여 상기 스토리텔링 데이터 소비 단말에 제공하는 단계를 더 포함할 수 있다.
상기 가상 머신은, 파이썬(python) 기반의 개발 도구인 주피터 노트북(Jupyter notebook)일 수 있다.
상기 스토리텔링 데이터는, 확장자 ipynb를 갖는 단일한 문서일 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 스토리텔링 데이터 제공 장치를 제공할 수 있다.
스토리텔링 데이터 제공 장치는, 적어도 하나의 프로세서(processor); 및 상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.
상기 적어도 하나의 단계는, 스토리텔링 데이터 생산 단말로부터 API(application programming interface)와 시스템 자원을 요청하는 메시지를 수신하는 단계; 상기 시스템 자원에 따라 가상 머신을 생성하는 단계; 상기 가상 머신에 상기 API를 추가하고 미리 수집된 빅데이터에 대하여 상기 가상 머신이 접근 가능하도록 설정하는 단계; 상기 스토리텔링 데이터 생산 단말로부터 1차 가공 데이터를 획득하는 단계; 상기 1차 가공 데이터를 스토리텔링 가공 머신을 이용하여 가공함으로써 머신 가공 데이터를 생성하는 단계; 및 상기 머신 가공 데이터를 상기 스토리텔링 데이터 생산 단말에 제공하고, 상기 스토리텔링 데이터 생산 단말로부터 상기 머신 가공 데이터를 이용하여 생성된 스토리텔링 데이터를 획득하는 단계를 포함할 수 있다.
상기 적어도 하나의 단계는, 상기 스토리텔링 데이터를 공지된 어플리케이션으로 열람 가능한 포맷으로 변환하는 단계; 및 상기 변환된 스토리텔링 데이터에 대하여 접근 가능한 URL 주소를 생성하는 단계를 더 포함할 수 있다.
상기 적어도 하나의 단계는, 상기 접근 가능한 URL 주소를 생성하는 단계 이후에, 스토리텔링 데이터 소비 단말로부터 접근을 요청하는 메시지를 수신하는 단계; 상기 스토리텔링 데이터 소비 단말에 대한 사용자 인증을 수행하는 단계; 및 상기 사용자 인증이 완료됨에 따른 응답으로, 상기 URL 주소를 암호화하여 상기 스토리텔링 데이터 소비 단말에 제공하는 단계를 더 포함할 수 있다.
상기 가상 머신은, 파이썬(python) 기반의 개발 도구인 주피터 노트북(Jupyter notebook)일 수 있다.
상기 스토리텔링 가공 머신은, 상기 적어도 하나의 프로세서를 이용하여, 상기 1차 가공 데이터를 기초로 하이퍼그래프 모델을 생성하는 단계; 및 상기 하이퍼그래프 모델을 재구성하는 과정을 반복하여 상기 머신 가공 데이터를 생성하는 단계를 수행할 수 있다.
상기와 같은 본 발명에 따른 스토리텔링 데이터 제공 방법 및 장치를 이용할 경우에는 누구나 손쉽게 스토리텔링 데이터를 생산하고 생산된 스토리텔링 데이터를 공유할 수 있다.
특히, 창작자에 의해 생산된 1차 가공 데이터를 이미지와 텍스트 사이에 연관 관계를 기초로 하여 최적화된 머신 가공 데이터를 생성하여 창작자에게 제공하기 때문에 창작자가 스토리텔링 데이터를 생성하기가 매우 용이한 장점이 있다.
도 1은 일 실시예에 따른 스토리텔링 데이터 제공 방법이 수행되는 개념도이다.
도 2는 도 1에 따른 스토리텔링 데이터 생산 단말과 스토리텔링 데이터 제공 장치 사이의 동작 관계를 일부 구체화하여 나타낸 개념도이다.
도 3은 도 1에 따른 스토리텔링 데이터 제공 장치에 대한 기능 블록들을 나타낸 개념도이다.
도 4는 도 1에 따른 스토리텔링 데이터 제공 장치에 의해 제공되는 사용자 인터페이스를 나타낸 예시도이다.
도 5는 도 3에 따른 스토리텔링 가공 머신에 의해 수행되는 머신 가공 데이터의 생산 과정을 설명하기 위한 흐름도이다.
도 6은 일 실시예에 따른 하이퍼그래프 모델을 도시한 개념도이다.
도 7은 도 1에 따른 스토리텔링 데이터 제공 장치에 대한 하드웨어 구성을 예시적으로 나타낸 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일 실시예에 따른 스토리텔링 데이터 제공 방법이 수행되는 개념도이다.
도 1을 참조하면, 일 실시예에 따른 스토리텔링 데이터 제공 방법은, 스토리텔링 데이터 제공 장치(100), 스토리텔링 데이터 생산 단말(200), 및 스토리텔링 데이터 소비 단말(300)을 이용하여 수행될 수 있다.
스토리텔링 데이터 제공 장치(100)는, 스토리텔링 데이터 생산 단말(200)에 가상 머신(1000)을 제공하여 스토리텔링 데이터 생산 단말(200)이 가상 머신(1000)을 이용하여 스토리텔링 데이터를 생산할 수 있도록 지원할 수 있다. 또한, 스토리텔링 데이터 제공 장치(100)는, 다양한 경로를 통해 데이터들을 수집하여 빅 데이터(bigdata)를 구성하고, 스토리텔링 데이터 생산 단말(200)이 가상 머신(1000)을 이용하여 빅 데이터에 접근 가능하도록 지원할 수 있다.
여기서, 가상 머신(1000)은, 파이썬(python) 기반의 개발 도구인 주피터 노트북(Jupyter notebook)일 수 있다. 주피터 노트북은 병렬 컴퓨팅이 가능한 오픈소스 플랫폼으로, 웹 브라우저 기반의 상호작용 쉘(shell)을 제공하며, 스토리텔링 데이터 생산 단말(200)은 이러한 주피터 노트북이 제공하는 웹 브라우저 기반의 상호작용 쉘을 이용하여 소스 코드(source code), 텍스트(text), 이미지(image), 비디오(video), 수식(mathematical formula) 등과 같은 다양한 객체(object)들을 단일 문서(이하, 노트북 문서로 지칭할 수 있음)로 결합시킬 수 있다. 여기서 노트북 문서는 확장자 ipynb 를 갖는 파일일 수 있다. 스토리텔링 데이터 생산 단말(200)은 주피터 노트북을 이용하여 확장자 ipynb 를 갖는 노트북 문서를 열고(open), 소스 코드(source)를 수정(edit)하거나, 실행(run)할 수 있다.
주피터 노트북은 웹 브라우저 상에서 제공되는 상호작용 쉘(shell)을 이용하여 소스 코드(source code)의 편집 및 실행이 가능한 가상 머신(1000)일 수 있다. 따라서, 스토리텔링 데이터 생산 단말(200)은 웹 브라우저 상에서 실시간으로 소스 코드(source code)를 편집 및 실행하여 시각화된 결과물을 확인하고 변경할 수 있으며, 스토리텔링 데이터 제공 장치(100)에 요청하여 가상 머신(1000)에 API(application programming interface)를 추가시킬 수 있다.
스토리텔링 데이터 제공 장치(100)는, 파이썬 라이브러리(python library)인 주피터(jupyter)를 내장하고, 내장된 주피터를 이용하여 가상 머신(1000)을 웹 브라우저 환경에서 스토리텔링 데이터 생산 단말(200)에 제공할 수 있다.
스토리텔링 데이터 제공 장치(100)는, 스토리텔링 데이터 생산 단말(200)로부터 스토리텔링 데이터를 획득하고, 획득된 스토리텔링 데이터를 웹 브라우저 기반의 환경에서 적어도 하나의 스토리텔링 데이터 소비 단말(300)에 제공할 수 있다.
스토리텔링 데이터는, 빅 데이터를 이용하여 스토리텔링 데이터 생산 단말(200)이 가공한 최종 생산물로서, 다양한 형태나 방식으로 빅 데이터를 분석한 결과를 특정 스토리 라인을 따라 작성한 데이터일 수 있다. 특히, 스토리텔링 데이터는 단순한 데이터의 나열이 아니라 시각화된 자료(그래프, 차트 등)가 스토리 라인을 따르는 텍스트(text)와 적절하게 결합된 데이터일 수 있다. 따라서, 스토리텔링 데이터는 구독자로 하여금 많은 흥미와 관심을 유발하고 설득력을 가질 수 있다. 스토리텔링 데이터는 확장자 ipynb 를 갖는 단일한 노트북 문서일 수 있다.
스토리텔링 데이터 제공 장치(100)는, 스토리텔링 데이터 생산 단말(200)로부터 획득한 스토리텔링 데이터를 공지된 어플리케이션으로 열람 가능한 포맷(예를 들어, html, pdf 등)으로 변환하고, 변환된 스토리텔링 데이터에 대하여 접근 가능한 URL(uniform resource locator) 주소를 생성할 수 있다. 또한, 스토리텔링 데이터 제공 장치(100)는 생성된 URL 주소를 암호화하여 저장할 수 있다. 여기서 암호화된 URL 주소는 미리 설정된 유효 시간을 갖는 주소일 수 있다. 따라서, 미리 설정된 유효 시간이 경과되는 경우, 암호화된 URL 주소를 복호화하더라도 복호화된 URL 주소로 스토리텔링 데이터에 접근할 수 없을 수 있다.
스토리텔링 데이터 제공 장치(100)는, 스토리텔링 데이터 소비 단말(300)의 접근 요청(access request)에 대한 응답으로, 스토리텔링 데이터 소비 단말(300)에 대한 사용자 인증을 수행할 수 있다. 스토리텔링 데이터 제공 장치(100)는, 스토리텔링 데이터 소비 단말(300)이 인증된 사용자로 결정되면, 스토리텔링 데이터 소비 단말(300)의 사용자 정보를 기초로 접근 가능한 스토리텔링 데이터의 암호화된 URL 주소를 스토리텔링 데이터 소비 단말(300)에 반환할 수 있다.
스토리텔링 데이터 소비 단말(300)은 암호화된 URL 주소를 사용자 정보를 기초로 복호화하고, 복호화된 URL 주소를 이용하여 스토리텔링 데이터에 접근할 수 있다. 여기서 복호화된 URL 주소는 공지된 어플리케이션으로 열람 가능한 포맷(예를 들어, html, pdf 등)으로 변환된 스토리텔링 데이터의 주소이므로, 스토리텔링 데이터 소비 단말(300)은 별도의 주피터(jupiter)를 설치할 필요 없이 손쉽게 스토리텔링 데이터를 열람할 수 있다. 또한, 인증되지 않은 스토리텔링 데이터 소비 단말(300)이 스토리텔링 데이터에 접근하거나 편집하는 것을 차단할 수 있다.
도 2는 도 1에 따른 스토리텔링 데이터 생산 단말과 스토리텔링 데이터 제공 장치 사이의 동작 관계를 일부 구체화하여 나타낸 개념도이다.
도 2를 참조하면, 스토리텔링 데이터 생산 단말(200)은 스토리텔링 데이터 제공 장치(100)에 API 와 시스템 자원을 요청할 수 있다. 스토리텔링 데이터 제공 장치(100)는 요청받은 시스템 자원에 따라 가상 머신(1000)을 생성하고, 생성된 가상 머신(1000)이 사용가능한 API를 추가할 수 있다. 또한, 스토리텔링 데이터 제공 장치(100)는 미리 수집된 빅데이터에 대하여 가상 머신(1000)이 접근 가능하도록 설정할 수 있다.
스토리텔링 데이터 생산 단말(200)은 가상 머신(1000)을 이용하여 빅 데이터를 1차적으로 가공하여 1차 가공 데이터를 생성하고, 생성된 1차 가공 데이터를 저장할 수 있다. 저장된 1차 가공 데이터는 스토리텔링 데이터 제공 장치(100)에서 획득될 수 있고, 스토리텔링 데이터 제공 장치(100)는 1차 가공 데이터를 스토리텔링 가공 머신(도 3 참조)을 이용하여 가공함으로써, 머신 가공 데이터를 생성할 수 있다.
머신 가공 데이터는 1차 가공 데이터를 기반으로 시각화된 이미지, 새로운 텍스트를 추가하고 스토리라인을 변경한 데이터일 수 있다. 일 실시예에 따른 스토리텔링 데이터 제공 장치(100)는 이와 같은 머신 가공 데이터를 생성하여 스토리텔링 데이터 생산 단말(200)에 제공하기 때문에 더욱 나은 품질의 스토리텔링 데이터를 생성할 수 있도록 지원할 수 있다.
이때, 머신 가공 데이터는 가상 머신(1000)을 통해 스토리텔링 데이터 생산 단말(200)이 열람 가능하도록 지원될 수 있다.
스토리텔링 데이터 생산 단말(200)은 가상 머신(1000)을 통해 머신 가공 데이터를 열람하고, 열람된 머신 가공 데이터에서 오기나 반영할 필요가 없는 사항들을 수정하는 2차 가공을 수행하여, 최종적으로 스토리텔링 데이터를 생성할 수 있다.
스토리텔링 데이터 생산 단말(200)은 스토리텔링 데이터를 스토리텔링 데이터 제공 장치(100)에 업로드하고, 이때 스토리텔링 데이터에 접근 가능한 사용자를 지정할 수 있다.
스토리텔링 데이터 제공 장치(100)는 접근 가능한 사용자를 참조하여 해당 스토리텔링 데이터에 대한 스토리텔링 데이터 소비 단말(300)의 접근 인증을 수행할 수 있다.
도 3은 도 1에 따른 스토리텔링 데이터 제공 장치에 대한 기능 블록들을 나타낸 개념도이다. 도 4는 도 1에 따른 스토리텔링 데이터 제공 장치에 의해 제공되는 사용자 인터페이스를 나타낸 예시도이다.
도 3을 참조하면, 스토리텔링 데이터 제공 장치(100)는 사용자 인터페이스 관리부(101), 스토리텔링 가공 머신(102), 저장소(103), 빅데이터 관리부(104), API 관리부(105), 가상 머신 관리부(106), 사용자 인증부(107)를 포함할 수 있다.
사용자 인터페이스 관리부(101)는 웹 브라우저 기반의 사용자 인터페이스를 생성하고, 생성된 사용자 인터페이스를 스토리텔링 데이터 생산 단말(200)과 스토리텔링 데이터 소비 단말(300)에 제공할 수 있다.
예를 들어, 도 4를 참조하면, 웹 기반의 사용자 인터페이스는 다수의 스토리텔링 데이터를 표시하는 스토리보드(10), 특정 스토리텔링 데이터 생산 단말(200)을 운용하여 스토리텔링 데이터를 공유하는 창작자(creator)를 구독하거나 팔로우하고 인기있는 창작자를 확인할 수 있는 목록 및 스토리텔링 데이터마다 부여된 태그(tag)로 스토리텔링 데이터를 분류한 목록을 포함하는 대쉬 보드(11), 스토리텔링 데이터 생산 단말(200)가 가상 머신(1000)에 사용할 수 있는 API를 구매하고 공유하는 API 마켓(12), 스토리텔링 데이터 생산 단말(200)이 자신의 가상 머신(1000)의 자원, 가상 머신(1000)으로 작업중인 노트북 문서 등을 열람하고 편집할 수 있는 가상 머신 관리목록(13)을 포함할 수 있다.
다시 도 3을 참조하면, 스토리텔링 가공 머신(102)은 저장소에 저장된 1차 가공 데이터를 획득하고, 저장소(103)에 저장된 빅 데이터를 기반으로 가공 데이터를 재가공하여 머신 가공 데이터를 생성하며, 생성된 머신 가공 데이터를 저장소(103)에 저장할 수 있다. 예를 들어, 스토리텔링 가공 머신(102)은 1차 가공 데이터에서 텍스트(text)와 이미지(image)를 수집하고, 수집된 텍스트(text)와 연관관계가 높은 이미지(image) 및 수집된 이미지(image)와 연관관계가 높은 텍스트(text)를 빅 데이터에서 추가로 수집할 수 있다. 또한, 추가로 수집된 이미지와 텍스트를 기반으로 1차 가공 데이터를 재가공할 수 있다.
스토리텔링 가공 머신(102)은 상술한 기능을 수행하는 알고리즘을 수행하는 가상화 머신이거나 딥러닝 기반의 알고리즘이 내장된 가상화 머신일 수 있으나, 이에 한정되는 것은 아니며, 스토리텔링 데이터 제공 장치(100)에서 수행될 수 있는 기계어 코드나 파이썬(python)을 비롯한 각종 프로그래밍 언어로 구현되는 소프트웨어일 수 있다.
저장소(103)는 스토리텔링 데이터 생산 단말(200)로부터 업로드된 1차 가공 데이터 및 최종 생산물인 스토리텔링 데이터를 저장하거나, 스토리텔링 가공 머신(102)으로부터 출력된 머신 가공 데이터를 저장할 수 있다. 또한, 저장소(103)는 빅데이터 관리부(104)를 통해 수집된 빅 데이터를 저장할 수도 있다. 예를 들어, 저장소(103)는 하둡 분산 파일 시스템(Hadoop Distributed File System, HDFS)일 수 있다.
빅 데이터 관리부(104)는 웹 크롤링(web crawling) 등을 통해 웹 기반 환경에서 수집하거나 별도의 방식으로 수집된 빅 데이터를 입력받아 저장소(103)에 저장하고, 인증된 가상 머신(1000)에 빅 데이터를 제공할 수 있다.
API 관리부(105)는 여러 방식으로 수집된 API를 입력받아 저장소(103)에 저장하고, 구매를 통해 인증된 가상 머신(1000)에 API를 제공할 수 있다.
가상 머신 관리부(106)를 스토리텔링 데이터 생산 단말(200)에서 사용할 수 있는 다수의 가상 머신들을 생성하고, 생성된 가상 머신들의 시스템 자원, API 등에 대한 접근 권한 등을 관리할 수 있다.
사용자 인증부(107)는 저장소(103)에 스토리텔링 데이터 소비 단말(300)와 스토리텔링 데이터 생산 단말(200)에 대한 사용자 정보를 저장하고, 사용자 정보를 기반으로 스토리텔링 데이터 소비 단말(300)와 스토리텔링 데이터 생산 단말(200)에 대한 사용자 인증을 수행할 수 있다. 예를 들어, 사용자 인증부(107)는 스토리텔링 데이터 소비 단말(300)의 사용자에 대한 사용자 인증을 수행하고, 인증된 스토리텔링 데이터 소비 단말(300)에 스토리텔링 데이터에 대한 암호화된 URL 주소를 제공할 수 있다.
도 5는 도 3에 따른 스토리텔링 가공 머신에 의해 수행되는 머신 가공 데이터의 생산 과정을 설명하기 위한 흐름도이다. 도 6은 일 실시예에 따른 하이퍼그래프 모델을 도시한 개념도이다.
도 5를 참조하면, 스토리텔링 가공 머신(102)은 먼저 1차 가공 데이터의 텍스트들 중에서 특징 텍스트를 추출하고, 1차 가공 데이터의 이미지들 각각에 대하여 적어도 하나의 특징 블록을 추출할 수 있다(S100).
예를 들어, 특징 텍스트는 1차 가공 데이터의 텍스트들에 대한 의미 분석을 기초로, 동사, 형용사, 부사를 제외하고 일반적인 의미를 갖는 명사(word, data, something, things 등)을 제외하고, 나머지 명사를 추출하여 획득될 수 있다.
특징 블록은, 1차 가공 데이터의 이미지들 각각마다 추출될 수 있다. 예를 들어, 1차 가공 데이터의 제1 이미지를 대상으로 특징 블록을 추출하는 과정은 다음과 같다.
먼저, 제1 이미지의 화소에 대한 위치 좌표를 정의하는 제1 축과 제2 축, 및 제1 이미지의 화소값을 나타내는 제3 축을 이용하여 제1 이미지를 3차원 공간에 구현할 수 있다. 여기서 3차원 공간은 제1 이미지의 각 화소들의 위치가 제1 축과 제2 축으로 정의되는 평면에 위치하고, 각 화소들의 위치에서 화소값에 상응하는 높이가 제3 축에 따른 좌표값이 될 수 있다.
다음으로, 3차원 공간에서 제3 축에 대한 극대값과 극소값을 검출할 수 있다. 여기서 극대값과 극소값은 3차원 공간에서 제3 축을 향해 볼록하게 솟거나, 오목하게 들어간 화소의 위치일 수 있다.
다음으로, 검출된 극대값과 극소값을 중심으로 제1 축과 제2 축으로 정의되는 미리 설정된 영역을 추출함으로써 제1 이미지에 대하여 적어도 하나의 특징 블록을 추출할 수 있다.
특징 텍스트와 특징 블록이 추출되면, 스토리텔링 가공 머신(102)은 특징 텍스트와 적어도 하나의 특징 블록을 이용하여 3차원 공간 상에서 하이퍼그래프 모델을 생성할 수 있다(S110). 하이퍼그래프 모델은 하나의 엣지(edge)가 3개 이상의 버텍스(vertex)에 동시에 연결될 수 있는 하이퍼 엣지로 지칭되는 그래프 모델일 수 있다. 하이퍼그래프 모델은 복잡하게 연결되는 인자들 사이의 연관 관계를 하나의 그래프로 도시하는 데 유리할 수 있다.
일 실시예에서 하이퍼그래프 모델은, 특징 텍스트 및 특징 텍스트와 인접한 이미지에 따른 적어도 하나의 특징 블록의 조합을 하나의 버텍스(vertex, v1, v2)로 갖고, 버텍스들 사이를 연결하는 하이퍼 엣지(hyper edge, he)를 가질 수 있다. 이때, 하이퍼 엣지(he)의 길이는 2개의 버텍스들 사이의 연관 관계가 높을수록 짧은 거리를 갖는 3차원 공간 상의 거리일 수 있다.
예를 들어, 3차원 공간 상의 거리는, 2개의 버텍스가 동일한 문서에서 나타나는 확률의 역수에 미리 설정된 제1 비례상수를 곱한 값을 x 축으로 정의하고, 2개의 버텍스가 동일한 문서에서 나타나는 경우를 전제로 2개의 버텍스 사이의 물리적인 거리에 제2 비례상수를 곱한 값을 y축으로 정의하고, 2개의 버텍스 사이의 의미론적 거리에 제3 비례상수를 곱한 값을 z축으로 정의할 때, 그러한 x, y, z축에 의해 표현되는 거리일 수 있다.
여기서 x축을 정의하는 데 필요한 2개의 버텍스가 동일한 문서에서 나타나는 확률은 저장소(103)에 저장되어 있는 빅 데이터에 포함된 모든 문서의 수를 2개의 버텍스가 동시에 나타나는 문서의 수로 나눈 값일 수 있다.
2개의 버텍스가 동일한 문서에서 나타나는 경우를 전제로 2개의 버텍스 사이의 물리적인 거리는, 다음과 같이 결정될 수 있다. 예를 들어, 제1 버텍스(v1)와 제2 버텍스(v2) 사이의 물리적인 거리는, 제1 버텍스(v1)의 특징 텍스트와 제2 버텍스(v2)의 특징 텍스트 사이의 거리 및 제1 버텍스(v1)의 적어도 하나의 특징 블록과 제2 버텍스(v2)의 적어도 하나의 특징 블록 사이의 거리를 평균한 값일 수 있다. 여기서 물리적인 거리는, 제1 버텍스(v1)와 제2 버텍스(v2) 사이의 문장들의 개수, 단락들의 개수, 단어들의 댓수 중 하나로 정의될 수 있다.
예를 들어, 제1 버텍스(v1)의 특징 텍스트와 제2 버텍스(v2)의 특징 텍스트 사이의 거리는, 동일한 문서 A 내에서 제1 버텍스(v1)의 특징 텍스트와 제2 버텍스(v2)의 특징 텍스트 사이에 나타나는 문장들의 개수, 단락들의 개수, 단어들의 개수 중 하나로 정의될 수 있다. 마찬가지로, 제1 버텍스(v1)의 적어도 하나의 특징 블록과 제2 버텍스(v2)의 적어도 하나의 특징 블록 사이의 거리는, 동일한 문서 A 내에서 제1 버텍스(v1)의 적어도 하나의 특징 블록과 제2 버텍스(v2)의 적어도 하나의 특징 블록 사이에 나타나는 문장들의 개수, 단락들의 개수, 단어들의 개수 중 하나로 정의될 수 있다.
2개의 버텍스들 사이의 의미론적 거리는 다음과 같이 정의될 수 있다. 예를 들어, 제1 버텍스(v1)와 제2 버텍스(v2) 사이의 의미론적 거리는, 제1 버텍스(v1)의 특징 텍스트와 제2 버텍스(v2)의 특징 텍스트 사이의 기술분야의 동일성, 언어적 동일성, 및 발생 시기의 동일성을 기초로 평가된 제1 거리 및 제1 버텍스(v1)의 적어도 하나의 특징 블록과 제2 버텍스(v2)의 적어도 하나의 특징 블록 사이의 이미지 유사도를 나타낸 제2 거리를 평균하여 결정될 수 있다.
예를 들어, 2개의 특징 텍스트 사이의 기술분야가 동일한지 여부, 언어 의미적으로 유사어나 동의어인지 여부, 2개의 특징 텍스트가 등장하는 문서들 사이의 생성년도상 유사한지 여부를 수치적으로 평가하여 제1 버텍스(v1)의 특징 텍스트와 제2 버텍스(v2)의 특징 텍스트 사이의 제1 거리가 결정될 수 있다.
또한, 제1 버텍스(v1)의 적어도 하나의 특징 블록과 제2 버텍스(v2)의 적어도 하나의 특징 블록 사이의 이미지 유사도는, 제1 버텍스(v1)의 적어도 하나의 특징 블록을 제2 버텍스(v2)의 적어도 하나의 특징 블록과 1:1로 매칭하고, 매칭된 2개의 특징 블록들 사이의 화소값들을 차분하여 차분 블록을 생성하며, 생성된 차분 블록을 구성하는 화소값들의 평균값의 역수로 정의될 수 있다. 이렇게 정의되는 이미지 유사도에 미리 설정된 변환 상수를 곱하여 제2 거리가 결정될 수 있다.
상술한 것처럼, 3차원 공간 상의 하이퍼그래프 모델에서 2개의 버텍스들을 서로 연결하는 하이퍼 엣지의 길이는 2개의 버텍스들 사이의 연관 관계가 높을수록 짧게 결정된다. 따라서, 그러한 하이퍼그래프 모델을 구성하는 버텍스들 사이의 연관관계가 높을수록 3차원 공간 상에서 차지하는 면적이 좁아진다.
이러한 특성을 이용하여 하이퍼그래프모델을 평가하는 방식으로 스토리텔링 가공 머신(102)은 3차원 공간 상에서 하이퍼그래프 모델과 외접하는 구(sphere, os)를 생성할 수 있다(S120).
여기서, 생성된 구(os)의 크기가 작을수록 서로 연관성이 높은 텍스트와 이미지로 구성된 스토리텔링 데이터일 수 있다. 따라서 스토리텔링 가공 머신(102)은, 생성된 구(os)의 크기가 최소화되도록 하이퍼그래프 모델을 재구성할 수 있다(S130). 예를 들어, 스토리텔링 가공 머신(102)은, 하이퍼그래프 모델을 구성하는 버텍스들 중 적어도 하나에 포함된 특징 텍스트를 해당 특징 텍스트와 동일한 문서에 출현하고, 출현한 문서 내에서 물리적인 거리가 인접한 텍스트로 대체할 수 있다. 마찬가지로, 스토리텔링 가공 머신(102)은, 하이퍼그래프 모델을 구성하는 버텍스들 중 적어도 하나에 포함된 적어도 하나의 특징 블록을 해당 적어도 하나의 특징 블록과 동일한 문서에 출현하고, 출현한 문서 내에서 물리적인 거리가 인접한 이미지에 따른 적어도 하나의 특징 블록으로 대체할 수 있다.
따라서, 스토리텔링 가공 머신(102)은 하이퍼그래프 모델을 재구성하는 단계(S130)를 반복함으로써 구(os)가 가장 작은 하이퍼그래프 모델로 하이퍼그래프 모델을 재구성할 수 있다. 다음으로, 스토리텔링 가공 머신(102)은 재구성된 하이퍼그래프 모델에 따른 버텍스들을 결합하여 머신 가공 데이터를 생성(S140)할 수 있다.
도 7은 도 1에 따른 스토리텔링 데이터 제공 장치에 대한 하드웨어 구성을 예시적으로 나타낸 블록도이다.
도 7을 참조하면, 스토리텔링 데이터 제공 장치(100)는 적어도 하나의 프로세서(110), 상기 적어도 하나의 프로세서(110)가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory, 120)포함할 수 있다.
여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120) 및 저장 장치(160) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 메모리(120)와 저장 장치(160) 중 적어도 하나는 도 3에 따른 저장소(103)와 대응할 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.
또한, 스토리텔링 데이터 제공 장치(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver, 130)를 포함할 수 있다. 또한, 스토리텔링 데이터 제공 장치(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. 스토리텔링 데이터 제공 장치(100)에 포함된 각각의 구성 요소들은 버스(bus, 170)에 의해 연결되어 서로 통신을 수행할 수 있다.
상기 적어도 하나의 단계는, 스토리텔링 데이터 생산 단말(200)로부터 API(application programming interface)와 시스템 자원을 요청하는 메시지를 수신하는 단계; 상기 시스템 자원에 따라 가상 머신(1000)을 생성하는 단계; 상기 가상 머신(1000)에 상기 API를 추가하고 미리 수집된 빅데이터에 대하여 상기 가상 머신(1000)이 접근 가능하도록 설정하는 단계; 상기 스토리텔링 데이터 생산 단말(200)로부터 1차 가공 데이터를 획득하는 단계; 상기 1차 가공 데이터를 스토리텔링 가공 머신(102)을 이용하여 가공함으로써 머신 가공 데이터를 생성하는 단계; 및 상기 머신 가공 데이터를 상기 스토리텔링 데이터 생산 단말(200)에 제공하고, 상기 스토리텔링 데이터 생산 단말(200)로부터 상기 머신 가공 데이터를 이용하여 생성된 스토리텔링 데이터를 획득하는 단계를 포함할 수 있다.
상기 적어도 하나의 단계는, 상기 스토리텔링 데이터를 공지된 어플리케이션으로 열람 가능한 포맷으로 변환하는 단계; 및 상기 변환된 스토리텔링 데이터에 대하여 접근 가능한 URL 주소를 생성하는 단계를 포함할 수 있다.
상기 접근 가능한 URL 주소를 생성하는 단계 이후에, 스토리텔링 데이터 소비 단말로부터 접근을 요청하는 메시지를 수신하는 단계; 상기 스토리텔링 데이터 소비 단말에 대한 사용자 인증을 수행하는 단계; 및 상기 사용자 인증이 완료됨에 따른 응답으로, 상기 URL 주소를 암호화하여 상기 스토리텔링 데이터 소비 단말에 제공하는 단계를 더 포함할 수 있다.
상기 가상 머신은, 파이썬(python) 기반의 개발 도구인 주피터 노트북(Jupyter notebook)일 수 있다.
상기 스토리텔링 가공 머신은, 상기 적어도 하나의 프로세서를 이용하여, 상기 1차 가공 데이터를 기초로 하이퍼그래프 모델을 생성하는 단계; 및 상기 하이퍼그래프 모델을 재구성하는 과정을 반복하여 상기 머신 가공 데이터를 생성하는 단계를 수행할 수 있다.
스토리텔링 데이터 제공 장치(100)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 스토리텔링 데이터 제공 장치
200: 스토리텔링 데이터 생산 단말
300: 스토리텔링 데이터 소비 단말
1000: 가상 머신 101: 사용자인터페이스 관리부
102: 스토리텔링 가공 머신 103: 저장소
104: 빅데이터 관리부 105: API 관리부
106: 가상 머신 관리부 107: 사용자 인증부
110: 프로세서 120: 메모리
130: 송수신 장치 140: 입력 인터페이스 장치
150: 출력 인터페이스 장치 160: 저장 장치

Claims (5)

  1. 적어도 하나의 프로세서(processor); 및
    상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함하는 스토리텔링 데이터 제공 장치로서,
    상기 적어도 하나의 단계는,
    스토리텔링 데이터 생산 단말로부터 API(application programming interface)와 시스템 자원을 요청하는 메시지를 수신하는 단계;
    상기 시스템 자원에 따라 가상 머신을 생성하는 단계;
    상기 가상 머신에 상기 API를 추가하고 미리 수집된 빅데이터에 대하여 상기 가상 머신이 접근 가능하도록 설정하는 단계;
    상기 스토리텔링 데이터 생산 단말로부터 1차 가공 데이터를 획득하는 단계;
    상기 1차 가공 데이터를 스토리텔링 가공 머신을 이용하여 가공함으로써 머신 가공 데이터를 생성하는 단계; 및
    상기 머신 가공 데이터를 상기 스토리텔링 데이터 생산 단말에 제공하고, 상기 스토리텔링 데이터 생산 단말로부터 상기 머신 가공 데이터를 이용하여 생성된 스토리텔링 데이터를 획득하는 단계를 포함하는,
    스토리텔링 데이터 제공 장치.
  2. 제1항에서,
    상기 적어도 하나의 단계는,
    상기 스토리텔링 데이터를 공지된 어플리케이션으로 열람 가능한 포맷으로 변환하는 단계; 및
    상기 변환된 스토리텔링 데이터에 대하여 접근 가능한 URL 주소를 생성하는 단계를 더 포함하는,
    스토리텔링 데이터 제공 장치.
  3. 제2항에서,
    상기 접근 가능한 URL 주소를 생성하는 단계 이후에,
    스토리텔링 데이터 소비 단말로부터 접근을 요청하는 메시지를 수신하는 단계;
    상기 스토리텔링 데이터 소비 단말에 대한 사용자 인증을 수행하는 단계; 및
    상기 사용자 인증이 완료됨에 따른 응답으로, 상기 URL 주소를 암호화하여 상기 스토리텔링 데이터 소비 단말에 제공하는 단계를 더 포함하는,
    스토리텔링 데이터 제공 장치.
  4. 제1항에서,
    상기 가상 머신은,
    파이썬(python) 기반의 개발 도구인 주피터 노트북(Jupyter notebook)인, 스토리텔링 데이터 제공 장치.
  5. 제1항에서,
    상기 스토리텔링 가공 머신은,
    상기 적어도 하나의 프로세서를 이용하여,
    상기 1차 가공 데이터를 기초로 하이퍼그래프 모델을 생성하는 단계; 및
    상기 하이퍼그래프 모델을 재구성하는 과정을 반복하여 상기 머신 가공 데이터를 생성하는 단계를 수행하는, 스토리텔링 데이터 제공 장치.
KR1020200044157A 2020-04-10 2020-04-10 스토리텔링 데이터 제공 방법 및 장치 KR102466449B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200044157A KR102466449B1 (ko) 2020-04-10 2020-04-10 스토리텔링 데이터 제공 방법 및 장치
US16/884,481 US20210319064A1 (en) 2020-04-10 2020-05-27 Method and apparatus for providing storytelling data
KR1020220146203A KR20220153554A (ko) 2020-04-10 2022-11-04 빅데이터를 스토리텔링에 기반하여 가공하는 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200044157A KR102466449B1 (ko) 2020-04-10 2020-04-10 스토리텔링 데이터 제공 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220146203A Division KR20220153554A (ko) 2020-04-10 2022-11-04 빅데이터를 스토리텔링에 기반하여 가공하는 방법 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20210126388A true KR20210126388A (ko) 2021-10-20
KR102466449B1 KR102466449B1 (ko) 2022-11-11

Family

ID=78007104

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200044157A KR102466449B1 (ko) 2020-04-10 2020-04-10 스토리텔링 데이터 제공 방법 및 장치
KR1020220146203A KR20220153554A (ko) 2020-04-10 2022-11-04 빅데이터를 스토리텔링에 기반하여 가공하는 방법 및 그 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220146203A KR20220153554A (ko) 2020-04-10 2022-11-04 빅데이터를 스토리텔링에 기반하여 가공하는 방법 및 그 시스템

Country Status (2)

Country Link
US (1) US20210319064A1 (ko)
KR (2) KR102466449B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110047818A (ko) * 2009-10-30 2011-05-09 에스케이 텔레콤주식회사 하이퍼그래프 언어모델 학습 및 적용 장치 및 그 학습 및 적용 방법, 및 하이퍼그래프 언어모델 갱신장치 및 그 갱신방법
KR20130068616A (ko) * 2011-12-15 2013-06-26 한국전자통신연구원 클라우드 시스템의 센서 데이터 제어 장치 및 그 방법
KR20170136976A (ko) * 2016-06-02 2017-12-12 한국전자통신연구원 데이터 명세서 기반 빅데이터 실시간 가공 및 유통 방법 및 장치
KR20170137972A (ko) * 2016-06-03 2017-12-14 조선대학교산학협력단 스토리텔링 저작지원 장치 및 그 방법
KR20190069655A (ko) * 2017-12-07 2019-06-20 건국대학교 산학협력단 클라우드 컴퓨팅 기반 딥러닝 개발 플랫폼 제공 방법 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110047818A (ko) * 2009-10-30 2011-05-09 에스케이 텔레콤주식회사 하이퍼그래프 언어모델 학습 및 적용 장치 및 그 학습 및 적용 방법, 및 하이퍼그래프 언어모델 갱신장치 및 그 갱신방법
KR20130068616A (ko) * 2011-12-15 2013-06-26 한국전자통신연구원 클라우드 시스템의 센서 데이터 제어 장치 및 그 방법
KR20170136976A (ko) * 2016-06-02 2017-12-12 한국전자통신연구원 데이터 명세서 기반 빅데이터 실시간 가공 및 유통 방법 및 장치
KR20170137972A (ko) * 2016-06-03 2017-12-14 조선대학교산학협력단 스토리텔링 저작지원 장치 및 그 방법
KR20190069655A (ko) * 2017-12-07 2019-06-20 건국대학교 산학협력단 클라우드 컴퓨팅 기반 딥러닝 개발 플랫폼 제공 방법 장치

Also Published As

Publication number Publication date
KR102466449B1 (ko) 2022-11-11
KR20220153554A (ko) 2022-11-18
US20210319064A1 (en) 2021-10-14

Similar Documents

Publication Publication Date Title
US9116894B2 (en) Method and system for tagging objects comprising tag recommendation based on query-based ranking and annotation relationships between objects and tags
Zhang et al. Viscode: Embedding information in visualization images using encoder-decoder network
CN111950056B (zh) 建筑信息化模型bim展示方法及相关设备
CN113688310B (zh) 一种内容推荐方法、装置、设备及存储介质
US20120046937A1 (en) Semantic classification of variable data campaign information
Xinogalos et al. Recent advances delivered by HTML 5 in mobile cloud computing applications: a survey
CN113315746A (zh) 从用户设备向接收方设备匿名发送数据的系统和方法
CN110888972A (zh) 一种基于Spark Streaming的敏感内容识别方法及装置
Luo et al. Enhancing E-commerce Chatbots with Falcon-7B and 16-bit Full Quantization
US20220269820A1 (en) Artificial intelligence based data redaction of documents
KR102466449B1 (ko) 스토리텔링 데이터 제공 방법 및 장치
Pan et al. Gray computing: A framework for computing with background javascript tasks
CN111651049A (zh) 交互方法、装置、计算机设备及存储介质
Kim et al. Exchange of parametric assembly models based on neutral assembly constraints
Langer et al. Towards a Data Space for Interoperability of Analytic Provenance
CN109857838B (zh) 用于生成信息的方法和装置
CN115427960A (zh) 使用完全依存森林的关系提取
Zoss et al. Data-driven extraction and composition of secondary dynamics in facial performance capture
US20080294645A1 (en) System, method and computer program product for EDI-to-EDI translations
Rachovski et al. Conceptual model of an application for automated generation of webpage mobile versions
US10996945B1 (en) Splitting programs into distributed parts
CN116340366A (zh) 基于区块链的数据共享存储方法、装置、设备和介质
KR102312481B1 (ko) 직관적인 인터페이스를 이용한 동영상 제작 서비스 제공 방법
KR102563629B1 (ko) 문서 진행상태를 실시간으로 제공하는 방법 및 장치
KR102295472B1 (ko) 다수의 광고 채널들을 이용하여 광고를 제공하는 방법 및 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant