KR102354593B1 - 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램 - Google Patents

사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램 Download PDF

Info

Publication number
KR102354593B1
KR102354593B1 KR1020210106497A KR20210106497A KR102354593B1 KR 102354593 B1 KR102354593 B1 KR 102354593B1 KR 1020210106497 A KR1020210106497 A KR 1020210106497A KR 20210106497 A KR20210106497 A KR 20210106497A KR 102354593 B1 KR102354593 B1 KR 102354593B1
Authority
KR
South Korea
Prior art keywords
information
data
editing
edit point
point recommendation
Prior art date
Application number
KR1020210106497A
Other languages
English (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 KR1020220007543A priority Critical patent/KR20230024826A/ko
Application granted granted Critical
Publication of KR102354593B1 publication Critical patent/KR102354593B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4662Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Abstract

사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램이 제공된다. 본 발명의 다양한 실시예에 따른 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법은, 컴퓨팅 장치에 의해 수행되는 방법에 있어서, 복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축하는 단계, 상기 편집 스타일 데이터베이스에 대한 클러스터링을 수행하는 단계 및 상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계를 포함할 수 있다.

Description

사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램{METHOD, SERVER AND COMPUTER PROGRAM FOR CLASSIFYING VIDEO EDITING TYPES AND ADVANCING EDIT POINT RECOMMENDATION ALGORITHM THROUGH USER DATABASE CONSTRUCTION AND MACHINE LEARNING}
본 발명의 다양한 실시예는 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램에 관한 것이다.
오늘날, 정보통신 기술의 발달과 함께 인터넷이 대중화되면서 사용자들은 인터넷 환경을 통해 다른 사용자들에게 다양한 정보들을 공유할 수 있게 되었다. 이러한 환경에서 스마트폰의 등장으로 다양한 컨텐츠를 손쉽게 소비할 수 있는 환경이 마련됨에 따라 1인 미디어 기반의 플랫폼이 확산되어 가고 있다.
미디어 플랫폼의 성장에 따라, 인터넷을 통해 개인 방송을 송출하는 1인 크리에이터(또는, 스트리머) 또한 점차 증가하는 추세이다. 이러한 미디어 플랫폼의 성장과 1인 크리에이터의 증가로 인해, 비디오 컨텐츠의 양이 폭발적으로 증가하였다.
비디오 컨텐츠의 양의 폭발적인 증가와 함께, 해당 다량의 비디오 컨텐츠들을 노출시키기 위한 매체들 또한 증가됨에 따라, 시청자들은 자신이 선호하는 컨텐츠를 탐색 또는 선택하여 시청하려는 경향이 강해지고 있다.
한편, 최근에는 공급자가 일방적으로 프로그램을 선정 방송하는 종래의 방송 형태를 벗어나 시청자가 원하는 프로그램을 스스로 선택할 수 있고 그 시간과 장소도 마음대로 선택하는 수요자 맞춤형 동영상 서비스에 대한 기술이 특히 주목받고 있다. 특히 시청자 맞춤형 동영상 서비스 중 시청자가 원하는 정보만을 요약하여 보고자 하는 하이라이트 동영상 추출에 대한 수요가 증가하고 있는 추세이다.
이에 따라, 1인 크리에이터는 시청자들의 이목을 끌기 위해 원본 영상에서 흥미있는 부분(하이라이트 부분)만을 모아서 편집하여 요약함으로써 하이라이트 영상을 제작하여 노출시킨다. 다만, 영상 편집의 기본은 편집된 동영상을 시청하는 시청자들이 즐거움을 느낄 수 있는, 즉 재미있는 부분들을 탐색하고 편집하는 것이므로, 영상 편집 방식은 여전히 시간 소모적이며, 장기간 진행된 원본 영상(또는, 스트리밍 영상)을 모두 모니터링하고 편집점을 찾아야 하기에 많은 어려움이 있다.
구체적인 예를 들어, 하이라이트 영상 제작 시, 편집자의 개인적 판단 하에 편집점을 선정하기 때문에, 모니터링 시간 및 판단 비용이 증가하는 문제점이 있다. 즉, 원본 영상에서 하이라이트 구간을 선별하는 기준은 편집자의 주관적인 기준이 적용되어 객관성이 결여될 우려가 있으며, 편집자의 역량에 따라 생성되는 하이라이트 영상의 품질이 달라질 우려가 있다.
따라서, 당 업계에는 스트리머의 원본 영상에 대한 하이라이트 영상 생성 과정에서 객관성 또는 신뢰성을 담보하는 정보들에 기반하여 영상의 흐름 파악은 물론, 다양한 편집점 추천을 통해 편집자의 편집 효율을 극대화시키기 위한 서버에 대한 수요가 존재할 수 있다.
대한민국 등록특허 2010-0085720
본 발명이 해결하고자 하는 과제는 전술한 배경기술에 대응하여 안출된 것으로, 스트리밍 데이터에 기반하여 영상 편집점에 관련한 추천 정보를 제공하기 위함이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법이 개시된다. 상기 방법은, 복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축하는 단계, 상기 편집 스타일 데이터베이스에 대한 클러스터링을 수행하는 단계 및 상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 스트리밍 컨텐츠 정보는, 컨텐츠 기본 정보 및 스트리밍 데이터를 포함하며, 상기 컨텐츠 기본 정보는, 사용자의 방송 컨텐츠에 관련한 정보를 포함하고, 상기 스트리밍 데이터는, 상기 방송 컨텐츠에 관련한 스트리밍 영상 데이터 및 상기 스트리밍 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터를 포함할 수 있다.
대안적인 실시예에서, 편집 이력 정보는, 편집점 추천 정보 및 상기 편집점 추천 정보에 대응하는 편집점 보정 정보를 포함하며, 상기 클러스터링을 수행하는 단계는, 상기 복수의 스트리밍 컨텐츠 정보 및 상기 복수의 편집 이력 정보 각각을 하나 이상의 클러스터 각각으로 분류하는 것을 특징으로 하며, 상기 하나 이상의 클러스터 각각은, 상기 복수의 사용자 각각의 편집 스타일을 분류하기 위한 기준이 될 수 있다.
대안적인 실시예에서, 상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계는, 상기 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보에 기초하여 복수의 학습 입력 데이터를 생성하고, 상기 각 스트리밍 컨텐츠 정보에 대응하는 하나 이상의 클러스터 각각에 기초하여 복수의 학습 출력 데이터를 생성하는 단계, 상기 학습 입력 데이터 각각에 대응하는 상기 학습 출력 데이터 각각을 매칭하여 라벨링하여 학습 데이터 세트를 구축하는 단계 및 상기 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행하여 상기 편집 스타일 분류 모델을 생성하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 각 클러스터에 포함된 하나 이상의 편집 이력 정보에 기초하여 상기 각 클러스터에 대응하는 하나 이상의 스타일 편집점 추천 모델을 생성하는 단계를 더 포함하며, 상기 하나 이상의 스타일 편집점 추천 모델 각각은, 하나의 스트리밍 컨텐츠 정보에 대응하여 서로 상이한 편집 프레임을 추천하는 것을 특징으로 할 수 있다.
대안적인 실시예에서, 제1사용자의 제1스트리밍 컨텐츠 정보를 획득하는 단계, 상기 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 획득하는 단계, 상기 편집 스타일 분류 모델을 활용하여 상기 제1스트리밍 컨텐츠 정보에 대응하는 제1클러스터를 식별하는 단계, 상기 제1클러스터에 대응하는 제1스타일 편집점 추천 모델에 상기 제1편집점 추천 정보를 입력으로 하여 보정된 제1편집점 추천 정보를 획득하는 단계 및 상기 보정된 제1편집점 추천 정보에 기초하여 영상 편집 사용자 인터페이스를 생성하여 제공하는 단계를 더 포함하며, 상기 영상 편집 사용자 인터페이스는, 상기 제1편집점 추천 정보를 포함하는 영상 편집 화면을 포함하며, 상기 영상 편집 화면에 대한 사용자의 조정 입력을 허용하는 것을 특징으로 할 수 있다.
대안적인 실시예에서, 상기 영상 편집 사용자 인터페이스에 대한 상기 조정 입력에 기초하여 상기 보정된 제1편집점 추천 정보에 대응하는 제1편집점 보정 정보를 획득하는 단계, 상기 보정된 제1편집점 추천 정보 및 상기 제1편집점 보정 정보에 기초하여 상기 제1사용자에 관련한 제1편집 이력 정보를 획득하는 단계 및 상기 제1편집 이력 정보를 통해 제1사용자 데이터베이스를 구축하는 단계를 더 포함할 수 있다.
본 개시의 다른 실시예에 따르면, 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 수행하는 컴퓨팅 장치가 개시된다. 상기 컴퓨팅 장치는 하나 이상의 인스트럭션을 저장하는 저장부 및 상기 메모리에 저장된 하나 이상의 인스터럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스터럭션을 실행함으로써, 전술한 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 수행할 수 있다.
본 발명의 또 다른 실시예에 따르면, 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은 하드웨어인 컴퓨터와 결합되어, 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 수행할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 다양한 실시예에 따르면, 영상에 대한 요약본 편집 과정에서 영상 편집점에 관련한 추천 정보를 제공함으로써, 편집자의 영상 편집 효율을 향상시킬 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예와 관련된 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 서버의 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.
도 2는 본 발명의 일 실시예와 관련된 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 서버의 블록 구성도를 도시한다.
도 3는 본 발명의 일 실시예와 관련된 스트리밍 컨텐츠 정보에 기반하여 편집점 추천 정보를 생성하는 과정을 예시적으로 나타낸 예시도를 도시한다.
도 4는 본 발명의 일 실시예와 관련된 영상 편집 사용자 인터페이스를 예시적으로 나타낸 예시도이다.
도 5는 본 발명의 일 실시예와 관련된 분류 모델을 훈련시키는 방법을 나타낸 개략도이다.
도 6은 본 발명의 일 실시예와 관련된 각 사용자의 스타일에 따라 복수 개로 분류된 편집 타입들을 예시적으로 나타낸 예시도이다.
도 7은 본 발명의 일 실시예와 관련된 편집점 추천 정보 및 편집점 보정 정보를 예시적으로 나타낸 예시도이다.
도 8은 본 발명의 일 실시예와 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 예시적으로 나타낸 순서도를 도시한다.
도 9는 본 발명의 일 실시예와 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.
다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 개시의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.
더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.
당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시 적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 개시내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.
제시된 실시예들에 대한 설명은 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니다. 본 개시는 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세하게 설명한다.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.
도 1은 본 발명의 일 실시예와 관련된 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 서버가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.
도 1에 도시된 바와 같이, 본 발명의 실시예들에 따른 시스템은, 서버(100), 사용자 단말(10), 외부 서버(20) 및 네트워크를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것으로서, 추가적인 컴포넌트들이 존재하거나 또는 도 1에서 도시되는 컴포넌트들 중 일부는 생략될 수 있다. 본 발명의 실시예들에 따른 서버(100), 사용자 단말(10) 및 외부 서버(20)는 네트워크를 통해, 본 발명의 일 실시예들에 따른 시스템을 위한 데이터를 상호 송수신할 수 있다.
본 발명의 실시예들에 따른 네트워크는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 여기서 제시되는 네트워크는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.
본 발명의 실시예들에 따른 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.
본 발명의 실시예에 따르면, 사용자 단말(10)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 노드(들)를 의미할 수 있다. 사용자 단말(10)은 서버(100)와의 정보 교환을 통해 스트리밍 컨텐츠 정보(예컨대, 스트리밍 영상)에 대한 편집점 추천 정보를 제공받을 수 있는 단말로, 사용자가 소지한 단말을 의미할 수 있다. 예컨대, 사용자 단말(10)은 실시간 영상 컨텐츠를 송출하는 스트리머 또는 특정 스트리머의 편집을 담당하는 편집자에 관련한 단말일 수 있다. 사용자 단말(10)은 예를 들어, 스트리밍 서버를 통해 비디오 및 오디오 컨텐츠 등 다양한 실시간 컨텐츠를 송출할 수 있으며, 복수의 시청자들은 해당 스트리밍 서버에 접속하여, 사용자 단말(10)을 통해 송출된 실시간 컨텐츠를 시청할 수 있다.
사용자 단말(10)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 엔티티(들)를 의미할 수 있다. 예를 들어, 이러한 사용자 단말(10)은 PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc) 및 웨어러블 디바이스(wearable device) 등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다. 또한, 사용자 단말(10)은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 단말(10)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.
본 발명의 실시예에 따르면, 외부 서버(20)는 신경망의 학습을 위한 복수의 학습 데이터에 관련한 정보들을 저장하는 서버일 수 있다. 예를 들어, 외부 서버(20)는 복수의 스트리머들의 편집 스타일에 관한 정보 또는 각 스트리머들이 송출하는 컨텐츠에 관련한 정보들을 저장할 수 있다. 다른 예를 들어, 외부 서버(20)는 복수의 스트리머 또는 복수의 스트리머 단말에 대응하는 복수의 전체 컨텐츠 영상 및 각 컨텐츠 영상에 대응하는 편집 영상(또는 하이라이트 영상) 등에 관한 정보를 저장할 수 있다. 외부 서버(20)에 저장된 정보들은 본 발명에서의 신경망을 학습시키기 위한 학습 데이터, 검증 데이터, 및 테스트 데이터로 활용될 수 있다. 본 발명의 서버(100)는, 외부 서버(20)로부터 수신한 데이터들에 기반하여 학습 데이터 세트를 구축할 수 있으며, 학습 데이터 세트를 통해 하나 이상의 네트워크 함수를 포함하는 신경망 모델을 학습시킴으로써, 본 발명의 편집 스타일 분류 모델, 스타일 편집점 추천 모델 또는 맞춤 편집점 추천 모델 등을 생성할 수 있다.
외부 서버(20)는 디지털 기기로서, 랩탑 컴퓨터, 노트북 컴퓨터, 데스크톱 컴퓨터, 웹 패드, 이동 전화기와 같이 프로세서를 탑재하고 메모리를 구비한 연산 능력을 갖춘 디지털 기기일 수 있다. 외부 서버(20)는 서비스를 처리하는 웹 서버일 수 있다. 전술한 서버의 종류는 예시일 뿐이며 본 개시는 이에 제한되지 않는다.
추가적인 실시예에서, 외부 서버(20)는 스트리밍 서버일 수 있다. 스트리밍 서버는 복수의 사용자(예컨대, 스트리머) 단말 각각에 관련한 실시간 컨텐츠를 시청자에 관련한 복수의 사용자(예컨대, 시청자) 단말 각각에 상호 연계하는 인터넷을 통해 실시간 컨텐츠를 송출 및 시청 서비스를 제공하는 서버일 수 있다. 스트리밍 서버는 복수의 시청자 단말 각각이 시청하는 실시간 컨텐츠에 관련하여 각 시청자 단말들로부터 해당 실시간 컨텐츠에 연관된 시청자 반응 데이터를 획득하여 서버(100)로 전송할 수 있다.
본 발명의 실시예에 따라, 스트리밍 서버가 서버(100) 내에 포함되어, 컨텐츠 송출 및 편집점 추천 정보 제공 기능이 하나의 통합 서버에서 수행될 수도 있다. 이러한 예시에서, 스트리밍 서버 및 서버(100)가 하나의 통합 서버로 구현되는 경우, 서버(100)는 복수의 시청자 단말들로부터 실시간 스트리밍 컨텐츠에 대한 시청자 반응 데이터를 획득할 수 있다.
본 발명의 일 실시예에 따르면, 서버(100)는 스트리밍 컨텐츠 정보(210)에 대한 편집점 추천 정보를 제공할 수 있다. 여기서 스트리밍 컨텐츠 정보(210)는, 사용자(예컨대, 스트리머)가 송출한 방송 컨텐츠에 관련한 스트리밍 영상 데이터(220)와 해당 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터(230)를 포함할 수 있으며, 편집점 추천 정보(610)는, 해당 영상 데이터의 전체 프레임 중 재미 요소가 가장 두드러지게 나타나는 하이라이트 구간에 관련한 추천 정보로, 예컨대, 해당 영상 데이터에서 시청자들이 가장 흥미를 가진 구간들에 관한 정보일 수 있다. 즉, 서버(100)는 사용자(즉, 스트리머)에 관련한 실시간 스트리밍 컨텐츠 정보(210)에 기초하여 영상 데이터에 관련하여 하나 이상의 편집점을 추천하여 제공할 수 있다. 이에 따라, 실시간 스트리밍 방송 송출 이후, 해당 방송 데이터에 관련한 편집 영상 제작 시, 다양한 편집점 추천과 함께, 영상의 흐름 파악에 관련한 정보들을 추천 받을 수 있어 편집 시간이 단축되는 등 편집자의 편집 효율이 향상될 수 있다.
서버(100)는 본 발명의 실시예들에 따른 영상 편집 사용자 인터페이스(300)를 생성할 수 있다. 서버는 클라이언트(예를 들어, 사용자 단말)에게 네트워크를 통해 정보를 제공하는 컴퓨팅 시스템일 수 있다. 서버(100)는 생성한 영상 편집 사용자 인터페이스(300)를 사용자 단말(10)로 전송할 수 있다. 이러한 경우, 사용자 단말(10)은 서버(100)에 액세스할 수 있는 임의의 형태의 컴퓨팅 장치일 수 있다. 서버(100)의 프로세서(130)는 네트워크부(110)를 통해 사용자 단말(10)로 영상 편집 사용자 인터페이스(300)를 전송할 수 있다.
도 1에서의 1개의 서버(100)만을 도시하고 있으나, 이보다 많은 서버들 또한 본 발명의 범위에 포함될 수 있다는 점 그리고 서버(100)가 추가적인 컴포넌트들을 포함할 수 있다는 점은 당해 출원분야에 있어서 통상의 지식을 가진 자에게 명백할 것이다. 즉, 서버(100)는 복수 개의 컴퓨팅 장치로 구성될 수도 있다. 다시 말해, 복수의 노드의 집합이 서버(100)를 구성할 수 있다.
본 발명의 일 실시예에 따르면, 서버(100)는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 보다 구체적으로, 서버(100)는 인터넷 기반 컴퓨팅의 일종으로 정보를 사용자의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 상기 클라우드 컴퓨팅 서비스는 인터넷 상에 자료를 저장해 두고, 사용자가 필요한 자료나 프로그램을 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제 어디서나 이용할 수 있는 서비스일 수 있으며, 인터넷 상에 저장된 자료들을 간단한 조작 및 클릭으로 쉽게 공유하고 전달할 수 있다. 또한, 클라우드 컴퓨팅 서비스는 인터넷 상의 서버에 단순히 자료를 저장하는 것뿐만 아니라, 별도로 프로그램을 설치하지 않아도 웹에서 제공하는 응용프로그램의 기능을 이용하여 원하는 작업을 수행할 수 있으며, 여러 사람이 동시에 문서를 공유하면서 작업을 진행할 수 있는 서비스일 수 있다. 또한, 클라우드 컴퓨팅 서비스는 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service), 가상 머신 기반 클라우드 서버 및 컨테이너 기반 클라우드 서버 중 적어도 하나의 형태로 구현될 수 있다. 즉, 본 발명의 서버(100)는 상술한 클라우드 컴퓨팅 서비스 중 적어도 하나의 형태로 구현될 수 있다. 전술한 클라우드 컴퓨팅 서비스의 구체적인 기재는 예시일 뿐, 본 발명의 클라우드 컴퓨팅 환경을 구축하는 임의의 플랫폼을 포함할 수도 있다.
본 발명에서의 신경망에 대한 학습 방법, 학습 과정, 편집 스타일 데이터베이스를 구축하는 방법 및 스트리밍 컨텐츠 정보에 기반하여 편집점 추천 정보를 제공하는 방법 등에 관한 구체적인 설명은 이하의 도 2 내지 도 6을 참조하여 후술하도록 한다.
도 2는 본 발명의 일 실시예와 관련된 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 서버의 블록 구성도를 도시한다.
도 2에 도시된 바와 같이, 서버(100)는 네트워크부(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 전술한 서버(100)에 포함된 컴포넌트들은 예시적인 것으로 본 발명내용의 권리범위가 전술한 컴포넌트들로 제한되지 않는다. 즉, 본 발명내용의 실시예들에 대한 구현 양태에 따라서 추가적인 컴포넌트들이 포함되거나 전술한 컴포넌트들 중 일부가 생략될 수 있다.
본 발명의 일 실시예에 따르면, 서버(100)는 외부 서버(20) 및 사용자 단말(10)과 데이터를 송수신하는 네트워크부(110)를 포함할 수 있다. 네트워크부(110)는 본 발명의 실시예에 따른 스트리밍 컨텐츠 정보 및 해당 스트리밍 컨텐츠 정보에 대응하는 편집점 추천 정보를 사용자 단말(10) 및 외부 서버(20) 중 적어도 하나와 송수신할 수 있다. 예를 들어, 서버(100)는 네트워크부(110)를 통해 사용자 단말(10)로부터 스트리밍 컨텐츠 정보(210)를 수신할 수 있다. 다른 예를 들어, 서버(100)는 네트워크부(110)를 통해 스트리밍 컨텐츠 정보에 대응하여 생성된 편집점 추천 정보를 사용자 단말(10)로 전송할 수 있다. 또 다른 예를 들어, 서버(100)는 네트워크부(110)를 통해 외부 서버(20)로부터 신경망을 학습시키기 위한 학습 데이터 세트를 수신할 수 있다. 전술한 네트워크부가 송수신하는 정보에 대한 구체적인 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다. 추가적으로, 네트워크부(110)는 서버(100)로 프로시저를 호출하는 방식으로 서버(100)와 외부 서버(20) 및 사용자 단말(10) 간의 정보 전달을 허용할 수 있다.
본 발명의 일 실시예에 따른 네트워크부(110)는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 본 명세서에서 제시되는 네트워크부(110)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.
본 발명에서 네트워크부(110)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.
본 발명의 일 실시예에 따르면, 메모리(120)는 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 수행하기 위한 컴퓨터 프로그램을 저장할 수 있으며, 저장된 컴퓨터 프로그램은 프로세서(130)에 의하여 판독되어 구동될 수 있다. 또한, 메모리(120)는 프로세서(130)가 생성하거나 결정한 임의의 형태의 정보 및 네트워크부(110)가 수신한 임의의 형태의 정보를 저장할 수 있다. 또한, 메모리(120)는 스트리밍 컨텐츠 정보 또는 스트리밍 컨텐츠 정보에 대응하는 편집점 추천 정보를 저장할 수 있다. 예를 들어, 메모리(120)는 입/출력되는 데이터들(예를 들어, 스트리밍 데이터에 대응하는 편집 프레임 정보, 편집 프레임 정보에 대응하는 편집점 추천 정보 및 편집점 추천 정보에 기반하여 생성된 사용자 인터페이스 등)을 임시 또는 영구 저장할 수 있다. 구체적인 예를 들어, 메모리(120)는 영상 데이터 및 영상 데이터에 연관된 시청자 반응 데이터에 기초하여 편집 프레임 정보를 식별하기 위한 응용 프로그램들을 저장할 수 있다. 다른 예를 들어, 메모리(120)는 각 스트리머에 대응하여 개인화된 편집 스타일에 기반한 추천 편집점을 제공하기 위한 사전 학습된 신경망 모델을 저장할 수 있다. 전술한 메모리가 저장하는 정보들에 대한 구체적인 기재는 일 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 개시의 일 실시예에 따르면, 메모리(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 서버(100)는 인터넷(internet) 상에서 상기 메모리(120)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다. 전술한 메모리에 대한 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치(GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등의 데이터 분석, 딥러닝을 위한 프로세서를 포함할 수 있다.
프로세서(130)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 딥러닝을 위한 데이터 처리를 수행할 수 있다. 본 발명의 일 실시예에 따라 프로세서(130)는 신경망의 학습을 위한 연산을 수행할 수 있다. 프로세서(130)는 딥러닝(DL: deep learning)에서 학습을 위한 입력 데이터의 처리, 입력 데이터에서의 피처 추출, 오차 계산, 역전파(backpropagation)를 이용한 신경망의 가중치 업데이트 등의 신경망의 학습을 위한 계산을 수행할 수 있다.
또한, 프로세서(130)는 CPU, GPGPU, 및 TPU 중 적어도 하나가 네트워크 함수의 학습을 처리할 수 있다. 예를 들어, CPU 와 GPGPU가 함께 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에서 복수의 컴퓨팅 장치의 프로세서를 함께 사용하여 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에서 수행되는 컴퓨터 프로그램은 CPU, GPGPU 또는 TPU 실행가능 프로그램일 수 있다.
본 명세서에서 네트워크 함수는 인공 신경망, 뉴런 네트워크와 상호 교환 가능하게 사용될 수 있다. 본 명세서에서 네트워크 함수는 하나 이상의 뉴럴 네트워크를 포함할 수도 있으며, 이 경우 네트워크 함수의 출력은 하나 이상의 뉴럴 네트워크의 출력의 앙상블(ensemble)일 수 있다.
프로세서(130)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 편집 스타일 분류 모델 및 맞춤 편집점 추천 모델을 제공할 수 있다. 본 발명의 일 실시예에 따르면, 프로세서(130)는 사용자의 스트리밍 데이터 정보에 대응하는 편집점 추천 정보를 생성할 수 있다. 본 발명의 일 실시예에 따라, 프로세서(130)는 편집 스타일 분류 모델 및 맞춤 편집점 추천 모델을 학습시키기 위한 계산을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 통상적으로 서버(100)의 전반적인 동작을 처리할 수 있다. 프로세서(130)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(120)에 저장된 응용 프로그램을 구동함으로써, 사용자 또는 사용자 단말에게 적정한 정보 또는, 기능을 제공하거나 처리할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 스트리밍 컨텐츠 정보(210)를 획득할 수 있다. 스트리밍 컨텐츠 정보(210)는, 컨텐츠 기본 정보 및 스트리밍 데이터를 포함할 수 있다. 여기서 컨텐츠 기본 정보는 사용자(즉, 스트리머)의 방송 컨텐츠에 관련한 정보를 포함할 수 있다. 예를 들어, 컨텐츠 기본 정보는, 제1사용자의 스트리밍 영상 데이터가 게임 방송 컨텐츠, 야외 방송 컨텐츠 및 소통 방송 컨텐츠 중 적어도 하나에 관련한다는 정보를 포함할 수 있다. 또한 예를 들어, 컨텐츠 기본 정보는 스트리밍 영상 데이터를 송출하는 사용자(또는 스트리머)의 이름, 나이, 성별에 관련한 정보 등을 더 포함할 수 있다. 전술한 컨텐츠 기본 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
스트리밍 데이터는, 방송 컨텐츠에 관련한 스트리밍 영상 데이터(220) 및 해당 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터(230)를 포함할 수 있다. 스트리밍 영상 데이터(220)는, 복수의 영상 서브 데이터를 복수의 프레임으로써 구성하는 영상에 관련한 데이터일 수 있다. 시청자 반응 데이터(230)는, 실시간으로 송출되는 스트리밍 영상 데이터를 시청한 하나 이상의 시청자들의 반응에 관련한 데이터일 수 있다. 예컨대, 시청자 반응 데이터(230)는, 스트리밍 영상 데이터를 시청하는 시청자의 수에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 빈도에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 키워드 정보 및 스트리밍 영상 데이터에 관련한 도네이션 정보 중 적어도 하나를 포함할 수 있다. 구체적인 예를 들어, 시청자 반응 데이터(230)는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제1시점에 관련하여 제1시청자 단말로부터 채팅창을 통해 수신되는 채팅 입력에 관한 정보일 수 있다. 다른 예를 들어, 시청자 반응 데이터(230)는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제2시점에 관련하여 제2시청자 단말로부터 수신되는 도네이션 입력에 관한 정보일 수 있다. 전술한 시청자 반응 데이터에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 스트리밍 컨텐츠 정보(210)에 기초하여 편집 프레임 정보(240)를 획득할 수 있다. 편집 프레임 정보(240)는, 편집점 추천 정보 생성에 기반이 되는 정보일 수 있다. 편집 프레임 정보(240)는, 영상 데이터를 구성하는 복수의 영상 서브 데이터 중 적어도 일부의 영상 서브 데이터에 관련한 주요 영상 서브 데이터 식별 정보 및 주요 영상 서브 데이터 식별 정보에 대응하는 추천 강도 정보를 포함할 수 있다. 즉, 편집 프레임 정보(240)는, 영상 데이터를 구성하는 복수의 프레임들 중 주요하다고 판별되는 일부 프레임(즉, 주요 영상 서브 데이터)에 관련한 식별 정보와 해당 프레임의 추천 정도에 대한 정보를 포함할 수 있다. 스트리밍 컨텐츠 정보(210)에 기초하여 편집 프레임 정보(240)를 획득하는 과정에 대한 구체적인 기재는 이하에서 도 3을 참조하여 후술하도록 한다.
도 3는 본 발명의 일 실시예와 관련된 스트리밍 컨텐츠 정보(210)에 기반하여 편집점 추천 정보(610)를 생성하는 과정을 예시적으로 나타낸 예시도를 도시한다.
도 3을 참조하여 보다 자세히 설명하면, 스트리밍 컨텐츠 정보(210)는 스트리밍 영상 데이터(220) 및 시청자 반응 데이터(230)를 포함할 수 있으며, 프로세서(130)는 스트리밍 영상 데이터(220)에 대한 영상 분석(221) 및 시청자 반응 데이터(230)에 대한 반응 분석(231)에 기초하여 편집 프레임 정보(240)를 획득할 수 있다.
구체적으로, 프로세서(130)는 스트리밍 영상 데이터(220)에 대한 영상 분석(221)을 통해 제1편집 프레임 정보(222)를 획득할 수 있다. 이 경우, 스트리밍 영상 데이터(220)에 대한 영상 분석(221)은, 스트리밍 영상 데이터(220)의 음성 분석 및 비디오 분석을 포함할 수 있다. 실시예에서, 스트리밍 영상 데이터(220)에서 특정 프레임을 감지 또는 식별을 위하여 비디오 분석 모델 및 음향 분석 모델이 활용될 수 있다. 비디오 분석 모델은, 영상 내에서 특정 이벤트(예컨대, 특정 이미지 프레임)를 감지하도록 학습된 신경망 모델일 수 있다. 예컨대, 비디오 분석 모델은, 게임 화면 내에서 특정 이벤트에 관련한 프레임을 식별할 수 있다. 예를 들어, 비디오 분석 모델은, 제1게임에 관련하여 플레이어(예컨대, 스트리머)가 다른 플레이어를 죽이는 화면 또는 다른 플레이어로부터 죽임을 당하는 화면에 관련한 프레임을 식별할 수 있다. 다른 예를 들어, 비디오 분석 모델은 제1게임 플레이 중 플레이어가 특정 스테이지를 클리어하는 시점에 대응하는 화면에 관련한 프레임을 식별할 수 있다. 전술한 비디오 분석 모델을 통해 식별되는 특정 프레임에 관한 구체적인 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
실시예에 따르면 음향 분석 모델은, 스트리밍 영상 데이터(220)에 관련한 음향의 크기 변화 또는 특정 키워드 감지 여부 중 적어도 하나에 기초하여 스트리밍 영상 데이터(220)에서 특정 프레임을 식별하는 모델일 수 있다. 예를 들어, 음향 분석 모델은, 스트리밍 영상 데이터(220)의 음성 데이터에서 게임의 플레이 소리나, 또는 사용자(즉, 스트리머)의 음향의 크기가 급격히 커지는 시점에 관련한 영상 프레임을 식별할 수 있다. 다른 예를 들어, 음향 분석 모델은 스트리밍 영상 데이터(220)의 음성 데이터에서 게임 관련 특정 키워드가 인식되거나 또는, 사용자의 발화에 관련한 음성이 특정 키워드임을 감지하는 시점에 관련한 영상 프레임을 식별할 수 있다. 구체적인 예를 들어, 음향 분석 모델은, 스트리밍 영상 데이터에서 제1스트리머가 소리를 지르는 순간(즉, 음향의 크기가 급격히 증가)을 감지하여 특정 프레임을 식별할 수 있다. 다른 예를 들어, 음향 분석 모델은, 스트리밍 영상 데이터에서 게임에 관련하여 특정 키워드(예컨대, 펜타킬)가 인식되는 순간을 감지하여 특정 프레임을 식별할 수 있다. 전술한 음향 분석 모델을 통해 식별되는 특정 프레임에 관한 구체적인 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
실시예에서, 음향 분석 모델은, 하나 이상의 네트워크 함수를 통해 구성되며 키워드 스팟팅 기술(keyword spotting technique)을 구현하도록 학습되는 키워드 인식 모델일 수 있다. 구체적인 예를 들어, 키워드 인식 모델은 스트리밍 영상 데이터의 음성 데이터에 대응하는 하나 이상의 피처를 입력으로 하여, 음성 데이터와 사전 결정된 키워드 간의 매칭 스코어를 산출함으로써, 해당 음성 데이터가 특정 프레임을 식별하기 위한 키워드로써 적정한지 여부를 판별하는 모델일 수 있다. 실시예에 따르면, 키워드 인식 모델은, 음성 데이터에 대응하는 스펙트로그램에 관련한 하나 이상의 피처에 기초하여 음성 데이터에 대응하는 스코어를 산출하는 심층 신경망 모델일 수 있다.
추가적인 실시예에 따르면, 프로세서(130)는 제1편집 프레임 정보(222)에 포함된 주요 영상 서브 데이터 각각에 대응하는 추천 강도 정보를 획득할 수 있다. 예컨대, 프로세서(130)는 각 이벤트 별 상이한 추천 강도 정보를 사전 맵핑할 수 있다. 이에 따라, 프로세서(130)는 타 플레이어를 죽이는 프레임(예컨대, 제1영상 서브 데이터)에 관련하여 '8'에 대응하는 추천 강도 정보를 획득할 수 있으며, 플레이어가 특정 스테이지를 클리어하는 프레임에 관련하여 '3'에 대응하는 추천 강도 정보를 획득할 수 있다. 프로세서(130)는 비디오 분석 과정에서 시청자들이 보다 흥미 가질 것으로 예상되는 프레임(예컨대, 게임의 승패에 영향을 미치는 이벤트에 관련한 프레임)에 대응하여 높은 추천 강도 정보를 획득할 수 있다.
또한, 프로세서(130)는 음향 분석 과정에서 각 프레임 별 상이한 추천 강도 정보를 획득할 수 있다. 예컨대, 프로세서(130)는 음향 분석 과정에서, 각 프레임(즉, 영상 서브 데이터)에 대응하는 음향의 크기에 따라 상이한 추천 강도 정보를 획득할 수 있다. 예를 들어, 제1편집 프레임 정보(222)에 포함된 제1영상 서브 데이터 및 제2영상 서브 데이터 중 제1영상 서브 데이터에 관련한 음향의 크기가 제2영상 서브 데이터에 관련한 음향의 크기 보다 큰 경우, 프로세서(130)는 제1영상 서브 데이터에 제2영상 서브 데이터 보다 높은 추천 강도 정보를 부여할 수 있다. 다른 예를 들어, 프로세서(130)는 인식되는 키워드 각각에 따라 상이한 추천 강도 정보를 사전 맵핑할 수 있으며, 이에 대응하여 각 프레임 별 상이한 추천 강도 정보를 매칭하여 저장할 수 있다. 구체적인 예를 들어, 제1영상 서브 데이터에 관련하여 인식되는 키워드가 '더블킬'이며, 제2영상 서브 데이터에 관련하여 인식되는 '펜타킬'인 경우, 프로세서(130)는 제2영상 서브 데이터에 제1영상 서브 데이터 보다 높은 추천 강도 정보를 부여할 수 있다. 전술한 추천 강도 정보에 대한 구체적인 기재는 본 발명의 이해를 돕기 위한 일 예시일 뿐, 본 발명은 이에 제한되지 않는다.
즉, 프로세서(130)는 제1편집 프레임 정보(222)에 포함된 각 영상 서브 데이터 별로 상이한 추천 강도 정보를 획득할 수 있으며, 획득한 추천 강도 정보를 각 영상 서브 데이터와 매칭하여 저장할 수 있다.
다시 말해, 프로세서(130)는 스트리밍 영상 데이터(220)에 대한 비디오 분석과 음성 분석을 통해 제1편집 프레임 정보(222)를 획득할 수 있다. 프로세서(130)에 의해 획득된 제1편집 프레임 정보(222)는, 스트리밍 영상 데이터(220)를 구성하는 복수의 영상 서브 데이터 중 비디오 또는 음성 분석을 통해 시청자의 흥미를 끌 것으로 예측되는 주요 영상 서브 데이터들에 관한 정보를 포함할 수 있다.
또한, 프로세서(130)는 시청자 반응 데이터(230)에 대한 반응 분석(231)을 통해 제2편집 프레임 정보(232)를 획득할 수 있다. 이 경우, 반응 분석(231)은, 영상 데이터에 대응하는 시청자 반응 데이터(230)의 실시간 변화량에 관련한 분석일 수 있다. 예컨대, 프로세서(130)는 시청자 반응 데이터(230)에 관련한 정량 분석을 통해 제2편집 프레임 정보(232)를 획득할 수 있다. 예를 들어, 프로세서(130)는 스트리밍 영상 데이터에서 시청자 반응 데이터(230)가 미리 정해진 임계치 이상으로 획득되는 시점(즉, 채팅 입력이 설정치 이상으로 획득되는 시점)들에 관련한 프레임들을 식별하여 제2편집 프레임 정보(232)를 획득할 수 있다. 일 실시예에서, 미리 정해진 임계치는, 스트리밍 영상 데이터(220)를 시청하는 시청자 수에 기초하여 결정될 수 있다. 예컨대, 스트리밍 영상 데이터(220)의 시청자 수가 100명인 제1시점에서는, 미리 정해진 임계치가 70명으로 설정될 수 있으며, 시청자 수가 50명인 제2시점에 관련하여 미리 정해진 임계치가 35명로 설정될 수 있다. 즉, 프로세서(130)는 제1시점에 70명 이상의 시청자로부터 채팅이 입력되는 경우, 해당 시점에 대응하는 영상 서브 데이터를 주요 영상 서브 데이터로 식별할 수 있다.
다시 말해, 시청자 반응 데이터의 수에 기초한 정량 분석을 통해 제2편집 프레임 정보(232)를 식별하기 위한 기준이 되는 임계치는, 각 시점에 실시간 컨텐츠를 시청하는 시청자 수에 기초하여 가변적으로 조정될 수 있다. 이에 따라, 프로세서(130)는 각 구간에서 시청자 대비 시청자 반응 데이터의 수가 높은 구간에 관련한 프레임들에 기초하여 제2편집 프레임 정보를 획득할 수 있다.
추가적인 실시예에 따르면, 프로세서(130)는 제2편집 프레임 정보(232)에 포함된 주요 영상 서브 데이터 각각에 대응하는 추천 강도 정보를 획득할 수 있다. 예컨대, 프로세서(130)는 주요 영상 서브 데이터 각각과 미리 정해진 임계치의 차이에 기초하여 각 영상 서브 데이터에 대응하는 추천 강도 정보를 획득할 수 있다. 예를 들어, 영상 서브 데이터와 미리 정해진 임계치의 차이가 큰 경우, 프로세서(130)는 해당 영상 서브 데이터에 대응하여 높은 추천 강도 정보를 획득할 수 있다. 이와 반대로, 영상 서브 데이터와 미리 정해진 임계치 간의 차이가 적은 경우, 프로세서(130)는 해당 영상 서브 데이터에 대응하여 낮은 추천 강도 정보를 획득할 수 있다. 프로세서(130)는 영상 서브 데이터와 미리 정해진 임계치의 차이가 클수록, 해당 영상 서브 데이터에 대응하여 높은 추천 강도 정보를 획득할 수 있다. 전술한 추천 강도 정보에 대한 구체적인 기재는 본 발명의 이해를 돕기 위한 일 예시일 뿐, 본 발명은 이에 제한되지 않는다.
즉, 프로세서(130)는 시청자 반응 데이터(230)에 대한 반응 분석을 통해 제2편집 프레임 정보(232)를 획득할 수 있다. 프로세서(130)에 의해 획득되는 제2편집 프레임 정보(232)는, 스트리밍 영상 데이터(220)를 구성하는 복수의 영상 서브 데이터 중 시청자들의 반응이 많았던 구간에 관련한 주요 영상 서브 데이터들에 관한 정보들을 포함할 수 있다.
일 실시예에 따르면, 프로세서(130)는 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232)를 통합하여 편집 프레임 정보(240)를 획득할 수 있다. 제1편집 프레임 정보(222)는 스트리밍 영상 데이터(220)를 구성하는 복수의 영상 서브 데이터 중 영상 또는 음성 분석을 통해 시청자의 흥미를 끌 것으로 예측되는 주요 영상 서브 데이터들에 관한 정보를 포함할 수 있으며, 제2편집 프레임 정보(232)는 스트리밍 영상 데이터를 구성하는 복수의 영상 서브 데이터 중 시청자들의 반응이 많았던 구간에 관련한 주요 영상 서브 데이터들에 관한 정보를 포함할 수 있다.
구체적인 예를 들어, 스트리밍 영상 데이터(220)는 60개의 프레임(즉, 60개의 영상 서브 데이터)를 통해 구성될 수 있다. 이 경우, 스트리밍 영상 데이터(220)에 대한 영상 분석(221)을 통해 획득되는 제1편집 프레임 정보(222)는, 제5영상 서브 데이터, 제11영상 서브 데이터, 제17영상 서브 데이터 및 제56영상 서브 데이터에 대한 정보를 포함할 수 있다. 다시 말해, 영상 분석(즉, 스트리밍 영상 데이터에 대한 영상 또는 음성)을 통해 향후 시청자의 흥미를 끌 것으로 예측되는 주요 영상 서브 데이터 식별 정보들이 상기와 같다는 제1편집 프레임 정보(222)가 획득될 수 있다.
또한, 시청자 반응 데이터(230)에 대한 반응 분석(231)을 통해 획득되는 제2편집 프레임 정보(232)는, 제11영상 서브 데이터, 제27영상 서브 데이터 및 제57영상 서브 데이터에 대한 정보를 포함할 수 있다. 다시 말해, 반응 분석(즉, 시청자 반응 데이터에 대한 정량적인 분석)을 통해 시청자의 반응이 가장 많았던 구간으로 예측되는 주요 영상 서브 데이터 식별 정보들이 상기와 같다는 제2편집 프레임 정보(232)가 획득될 수 있다.
이 경우, 프로세서(130)는 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232)를 통합하여 편집 프레임 정보(240)를 획득할 수 있다. 예컨대, 통합되어 생성된 편집 프레임 정보(240)는, 제5영상 서브 데이터, 제11영상 서브 데이터, 제17영상 서브 데이터, 제27영상 서브 데이터, 제56영상 서브 데이터 및 제57영상 서브 데이터를 포함할 수 있다. 즉, 편집 프레임 정보(240)는 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232) 각각에 포함된 주요 영상 서브 데이터 식별 정보들에 기초하여 획득될 수 있다. 예컨대, 편집 프레임 정보(240)는 각 편집 프레임 정보에 포함된 모두 영상 서브 데이터들을 포함하거나 또는 적어도 일부를 포함하여 생성될 수 있다. 프로세서(130)는 각 영상 서브 데이터에 대응하는 추천 강도 정보를 통해 복수의 영상 서브 데이터 중 일부에 기초하여 편집 프레임 정보(240)를 획득할 수 있다. 전술한 편집 프레임 정보에 포함된 영상 서브 데이터에 대한 구체적인 기재는 본 발명의 이해를 돕기 위한 예시일 뿐, 본 발명은 이에 제한되지 않는다.
추가적인 실시예에서, 프로세서(130)는 컨텐츠 기본 정보에 기반하여 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232) 중 적어도 하나에 관련한 가중치 적용 정보를 생성할 수 있다. 가중치 적용 정보는, 특정 편집 프레임 정보에 관련한 영상 서브 데이터(또는 주요 영상 서브 데이터 식별 정보)에 가중치를 적용하는 것에 관련한 정보일 수 있다. 특정 편집 프레임 정보에 가중치를 적용하는 것은, 특정 편집 프레임 정보에 포함된 영상 서브 데이터들을 통해 편집 프레임 정보(240)가 구성될 확률을 향상시키는 것을 의미할 수 있다. 다시 말해, 가중치가 적용된 편집 프레임 정보에 포함된 영상 서브 데이터들은, 편집 프레임 정보(240)에 포함될 확률이 높아짐에 따라 사용자에게 추천될 확률이 높아질 수 있다. 즉, 가중치가 적용된 편집 프레임 정보는, 각 영상 서브 데이터에 대응하는 추천 강도(즉, 추천 강도 정보)에 영향을 미칠 수 있다.
구체적으로, 프로세서(130)는 스트리밍 컨텐츠 정보에 대응하는 컨텐츠 기본 정보를 식별하고, 해당 컨텐츠 기본 정보에 대응하여 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232) 중 적어도 하나에 관련한 가중치 적용 정보를 생성할 수 있다.
예를 들어, 스트리밍 컨텐츠 정보에 '게임 방송'이라는 컨텐츠 기본 정보가 포함된 경우, 프로세서(130)는 해당 컨텐츠 기본 정보에 기초하여 제1편집 프레임 정보(222)에 가중치를 부여한다는 가중치 적용 정보를 생성할 수 있다. 다른 예를 들어, 스트리밍 컨텐츠 정보에 '소통 방송'이라는 컨텐츠 기본 정보가 포함된 경우, 프로세서(130)는 해당 컨텐츠 기본 정보에 기초하여 제2편집 프레임 정보(232)에 가중치를 부여한다는 가중치 적용 정보를 생성할 수 있다. 다시 말해, 프로세서(130)는, 스트리밍 영상 데이터(220)의 영상 분석을 통해 주요한 프레임들을 식별할 수 있을 것으로 예상되는 경우(예컨대, 컨텐츠 기본 정보가 게임 방송인 경우), 영상 분석 결과에 관련한 제1편집 프레임 정보(222)에 가중치가 적용되도록 하는 가중치 적용 정보를 생성할 수 있다. 이와 반대로, 프로세서(130)는 스트리밍 영상 데이터의 영상 분석 보다 시청자들의 반응 분석을 통해 주요한 프레임들을 식별할 수 있을 것으로 예상되는 경우(예컨대, 컨텐츠 기본 정보가 소통 방송인 경우), 반응 분석 결과에 관련한 제2편집 프레임 정보(232)에 가중치가 적용되도록 하는 가중치 적용 정보를 생성할 수 있다. 즉, 프로세서(130)는 컨텐츠 기본 정보를 식별하여 특정 스트리밍 컨텐츠 정보에 대응하여 영상 분석을 통해 식별된 프레임들(즉, 제1편집 프레임 정보에 포함된 영상 서브 데이터들)과 반응 분석(즉, 제1편집 프레임 정보에 포함된 영상 서브 데이터들)을 통해 식별된 프레임들 중 적어도 하나에 가중치를 부여하는 가중치 적용 정보를 생성할 수 있다.
일 실시예에 따르면, 프로세서(130)는 가중치 적용 정보에 기반하여 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232)를 통합하여 편집 프레임 정보(240)를 획득할 수 있다. 가중치 적용 정보에 기초하여 특정 프레임 정보에 가중치가 적용되는 경우, 해당 프레임 정보에 포함된 데이터들은 주요 영상 서브 데이터에 포함될 확률이 향상될 수 있다.
예를 들어, 제1편집 프레임 정보(222)에 가중치가 적용된다는 가중치 적용 정보에 기초하여 해당 제1편집 프레임 정보(222)에 포함된 하나 이상의 영상 서브 데이터 각각에 가중치가 부여될 수 있다. 이 경우, 가중치가 부여된 하나 이상의 영상 서브 데이터는, 가중치가 부여되지 않은 하나 이상의 영상 서브 데이터(즉, 제2편집 프레임 정보에 포함된 하나 이상의 영상 서브 데이터) 보다 주요 영상 서브 데이터로써 획득될 확률이 높을 수 있다. 구체적인 예를 들어, 가중치가 적용된 제1편집 프레임 정보(222)에 포함된 하나 이상의 영상 서브 데이터들 모두가 주요 영상 서브 데이터로써 선별될 수 있으며, 가중치가 적용되지 않은 제2편집 프레임 정보(232)에 포함된 하나 이상의 영상 서브 데이터들 중 일부(즉, 전부가 아닌 일부)만이 주요 영상 서브 데이터로 선별될 수 있다. 다시 말해, 주요 영상 서브 데이터의 선별 과정에서, 가중치가 적용된 특정 프레임 정보에 포함된 영상 서브 데이터들은 주요 영상 서브 데이터로 선별될 확률을 높게 하며, 가중치가 적용되지 않은 프레임 정보에 포함된 영상 서브 데이터들은 주요 영상 서브 데이터로 선별될 확률을 낮게 할 수 있다. 전술한 가중치 적용에 관한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
즉, 프로세서(130)는 송출되는 스트리밍 컨텐츠의 종류에 따라 영상 분석 및 반응 분석 중 어디에 가중치를 적용하여 주요 영상 데이터를 획득할지를 결정할 수 있다. 다시 말해, 컨텐츠 기본 정보를 식별하여 영상 분석 결과와 반응 분석 결과 중 분석에 신뢰가 있을 것으로 예상되는 영상 서브 데이터들에 가중치를 부여함으로써 추천되는 편집점의 신뢰도 향상을 담보할 수 있다.
일 실시예에 따르면, 프로세서(130)는 제1편집 프레임 정보(222) 및 제2편집 프레임 정보(232)에 포함된 하나 이상의 영상 서브 데이터 간의 시점 유사도에 기초하여 추천 강도 정보에 대한 가중치를 부여할 수 있다. 구체적으로, 프로세서(130)는, 제1편집 프레임 정보(222)에 대응하는 하나 이상의 제1주요 영상 서브 데이터 및 제2편집 프레임 정보(232)에 대응하는 하나 이상의 제2주요 영상 서브 데이터 각각의 시점 유사도에 기초하여 추천 강도 정보에 대한 가중치를 부여할 수 있다. 예컨대, 추천 강도 정보에 가중치를 부여하는 것은, 특정 영상 서브 데이터에 대한 추천 정도를 높이는 것으로, 특정 영상 서브 데이터가 높은 흥미 요소에 관련함을 인지시키기 위한 것일 수 있다. 예를 들어, 제1영상 서브 데이터에 관련한 추천 강도 정보에 가중치가 부여되는 경우, 해당 제1영상 서브 데이터는, 영상 편집 과정에서 다른 영상 서브 데이터 보다 높은 추천 정도를 가짐에 따라, 다른 영상 서브 데이터와 구분되는 상이한 색상을 통해 영상 편집 사용자 인터페이스에 표시될 수 있다.
구체적인 예를 들어, 스트리밍 영상 데이터(220)는 60개의 프레임(즉, 60개의 영상 서브 데이터)를 통해 구성될 수 있다. 스트리밍 영상 데이터(220)에 대한 영상 분석(221)을 통해 획득되는 제1편집 프레임 정보(222)는, 제5영상 서브 데이터, 제11영상 서브 데이터, 제17영상 서브 데이터 및 제56영상 서브 데이터에 대한 정보를 포함할 수 있다. 또한, 시청자 반응 데이터(230)에 대한 반응 분석(231)을 통해 획득되는 제2편집 프레임 정보(232)는, 제11영상 서브 데이터, 제27영상 서브 데이터 및 제57영상 서브 데이터에 대한 정보를 포함할 수 있다.
이 경우, 프로세서(130)는 제1편집 프레임 정보(222)와 제2편집 프레임 정보(232) 각각에 동일하게 포함된 제11영상 서브 데이터의 추천 강도 정보에 '10'에 관련한 큰 가중치를 적용할 수 있다. 또한, 제1편집 프레임 정보(222)의 제56영상 서브 데이터와 제2편집 프레임 정보(232)의 제57영상 서브 데이터가 유사한 것(즉, 비슷한 시점)을 식별하여 해당 프레임에 관련한 추천 강도 정보에 '8'에 관련한 가중치를 부여할 수 있다. 실시예에서, 각 편집 프레임 정보에 포함된 영상 서브 데이터 간의 시점 차이가 미리 정해진 임계치(예컨대, 3개의 영상 서브 데이터) 이하인 경우, 프로세서(130)는 각 영상 서브 데이터의 추천 강도 정보에 가중치를 부여할 수 있다. 즉, 각 편집 프레임 정보에 영상 서브 데이터가 완벽히 일치하는 경우에는 해당 영상 서브 데이터에 큰 가중치가 부여될 수 있으며, 각 편집 프레임 정보에 영상 서브 데이터 간의 시점 차이가 비교적 가까운 경우, 각 영상 서브 데이터에 가중치가 부여될 수 있고, 그리고 각 편집 프레임 정보에 영상 서브 데이터 간의 시점 상 유사성이 식별되지 않는 경우, 가중치가 부여되지 않을 수 있다. 전술한 스트리밍 영상 데이터, 영상 서브 데이터 및 각 프레임 정보에 포함된 영상 서브 데이터에 대한 구체적인 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
즉, 프로세서(130)는 영상 분석 결과와 반응 분석 결과가 동일하거나 또는 유사한 시점에 관련한 프레임을 동시에 지시하는 경우, 해당 프레임에 관련한 추천 강도가 향상되도록, 추천 강도 정보에 대한 가중치를 부여할 수 있다. 다시 말해, 영상 분석의 결과와 반응 분석의 결과 각각이 비슷하거나 또는 동일한 시점을 지시하는 경우, 해당 영상 서브 데이터에 관련하여 추천 강도 정보를 가중할 수 있다.
본 발명의 일 실시예에 따르면, 편집 프레임 정보에 기초하여 편집점 추천 정보(610)를 생성할 수 있다. 편집점 추천 정보(610)는 스트리밍 영상 데이터에 관련한 하나 이상의 추천 편집점에 관한 정보일 수 있다. 편집점 추천 정보(610)는 하나 이상의 추천 편집점 각각에 대응하는 하나 이상의 편집점 추천 서브 정보를 포함할 수 있다. 이러한 편집점 추천 정보(610)는, 스트리밍 영상 데이터의 편집점에 관련한 시각화 정보일 수 있다. 편집점 추천 정보(610)는 구간 별 중요도에 따라 각 구간 별 상이한 시각화 표현이 부여된 것을 특징으로 할 수 있다.
프로세서(130)는 편집 프레임 정보(240)에 포함된 하나 이상의 주요 영상 서브 데이터 식별 정보 각각에 기초하여 하나 이상의 연관 서브 데이터 식별 정보를 탐색할 수 있다. 또한, 프로세서(130)는 하나 이상의 주요 영상 서브 데이터 식별 정보 및 하나 이상의 연관 서브 데이터 식별 정보에 기초하여 하나 이상의 편집점 추천 서브 정보를 생성할 수 있다. 이 경우, 하나 이상의 연관 서브 데이터 식별 정보 각각은, 각 편집점 추천 서브 정보의 시작에 관련한 시작 프레임 정보 및 각 편집점 추천 서브 정보의 종료에 관련한 종료 프레임 정보를 포함할 수 있다.
즉, 프로세서(130)는 편집 프레임 정보(240)에 포함된 하나 이상의 주요 영상 서브 데이터 식별 정보 각각을 기준으로 하나 이상의 연관 서브 데이터 식별 정보를 탐색함으로써, 하나 이상의 편집점을 포함하는 편집점 추천 정보를 생성할 수 있다. 예를 들어, 스트리밍 영상 데이터가 10분에 대응하는 영상인 경우, 편집 점 추천 정보는, 1분 30초대에 관련한 제1편집점 추천 정보, 5분 10초대에 관련한 제2편집점 추천 정보 및 8분 20초대에 관련한 제3편집점 추천 정보를 포함할 수 있다. 전술한 편집점 추천 정보에 포함된 하나 이상의 편집점 추천 정보의 개수 및 각 편집점 추천 정보의 시간대에 관련한 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
보다 구체적인 예를 들어, 전체 영상 데이터에 대응하는 프레임이 100개인 경우(즉, 전체 영상 데이터를 구성하는 복수의 영상 서브 데이터의 개수가 100개), 그 중 시청자의 반응이 급상승한 프레임(즉, 영상 서브 데이터로)으로써 제34영상 서브 데이터 및 제75영상 서브 데이터 등이 선별되어 주요 영상 서브 데이터를 구성할 수 있다.
이 경우, 제34영상 서브 데이터 및 제75영상 서브 데이터 각각에 관련한 하나 이상의 연관 서브 데이터들이 식별될 수 있다. 제34영상 서브 데이터의 하나 이상의 연관 서브 데이터로, 제31영상 서브 데이터 내지 제35영상 서브 데이터가 식별될 수 있다. 이 경우, 시작 프레임이 제31영상 서브 데이터이며, 종료 프레임이 제35영상 서브 데이터가 될 수 있다.
또한, 제75영상 서브 데이터의 하나 이상의 연관 서브 데이터로, 제70영상 서브 데이터 및 제80영상 서브 데이터가 식별될 수 있다. 이 경우, 시작 프레임이 제70영상 서브 데이터이며, 종료 프레임이 제80영상 서브 데이터가 될 수 있다.
이에 따라, 프로세서(130)는 100개의 전체 영상 서브 데이터 중 31 내지 35에 관련한 프레임(즉, 제31영상 서브 데이터 내지 제35영상 서브 데이터) 및 70 내지 80(즉, 제70영상 서브 데이터 내지 제80영상 서브 데이터)에 관련한 프레임에 기반하여 편집점 추천 정보(610)를 생성할 수 있다. 전술한 영상 서브 데이터에 관련한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
또한, 프로세서(130)는 편집 프레임 정보(240)에 포함된 복수의 영상 서브 데이터 각각에 대응하는 추천 강도 정보에 기초하여 구간 별로 상이한 시각적 표현을 포함하는 편집점 추천 정보(610)를 생성할 수 있다. 예를 들어, 제1영상 서브 데이터에 대응하는 추천 강도 정보가 '상'이며, 제2영상 서브 데이터에 대응하는 추천 강도 정보가 '중'이고, 제3영상 서브 데이터에 대응하는 추천 강도 정보가 '하'인 경우, 프로세서(130)는 제1영상 서브 데이터에 대응하는 구간을 붉은색으로 표현하고, 제2영상 서브 데이터에 대응하는 구간을 주황색으로 표현하고, 그리고 제3영상 서브 데이터에 대응하는 구간을 노란색으로 표현하여 편집점 추천 정보를 생성할 수 있다. 전술한 각 구간에 대응하는 색상 표현에 대한 기재는 예시일 뿐, 본 발명의 편집점 추천 정보는 보다 다양한 시각적 표현을 포함하여 생성될 수 있다.
즉, 프로세서(130)는 각 추천 편집점의 추천 강도 정보에 따라 상이한 시각적 표현을 통해 편집점 추천 정보를 생성할 수 있다. 이에 따라, 사용자(즉, 편집자)가 편집점 추천 정보를 제공받는 경우, 스트리밍 영상 데이터에서 강하게 추천되는 구간(예컨대, 붉은색을 통해 표시된 구간)과 약하게 추천되는 구간(예컨대, 노란색을 통해 표시된 구간)을 시각적으로 용이하게 인지할 수 있으므로 편집 효율이 향상될 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 편집점 추천 정보(610)에 기초하여 영상 편집 사용자 인터페이스(300)를 생성하여 제공할 수 있다.
구체적으로, 도 4에 도시된 바와 같이, 영상 편집 사용자 인터페이스(300)는 스트리밍 영상 데이터에 대응하는 편집점 추천 정보를 포함하는 영상 편집 화면(340)을 포함할 수 있다. 일 실시예에 따르면, 영상 편집 사용자 인터페이스(300)는 영상 편집 화면(340)에 대한 사용자의 조정 입력을 허용하는 것을 특징으로 할 수 있다. 조정 입력은 각 편집점 추천 서브 정보에 관련한 길이 조정 입력, 각 편집점 추천 서브 정보에 관련한 제거 입력, 추가 프레임 생성 입력 중 적어도 하나를 포함할 수 있다. 영상 편집 화면(340)은 하나 이상의 편집점 추천 서브 정보 각각에 대응하는 추천 강도 정보에 기초하여 각 편집점을 서로 상이한 시각적 표현을 통해 표시하는 것을 특징으로 할 수 있다. 도 4에 도시된 바와 같이, 영상 편집 화면(340)에는 편집점 추천 정보가 표시될 수 있다. 즉, 편집점 추천 정보에 포함된 하나 이상의 편집점 각각이 추천 강도 정보에 따라 상이한 시각적 표현을 통해 영상 편집 화면(340)에 표시될 수 있다. 이에 따라, 사용자는 편집점 추천 정보(즉, 시각화 정보)를 통해 주요 편집 구간들에 관한 정보(예컨대, 추천 강도에 대한 정보)를 직관적으로 인지할 수 있어, 편집 효율이 향상될 수 있다.
실시예에 따라, 영상 편집 화면(340)은, 도 4에 도시된 바와 같이, 각 편집점에 대응하여 채팅 데이터의 변화량, 비디오 변화량 및 음성 데이터의 변화량 중 적어도 하나가 표시될 수 있다. 예를 들어, 영상 편집 화면(340)에는 각 추천 편집점(즉, 하나 이상의 편집점 추천 서브 정보)에 대응하여 시점 별 스트리머의 음성 데이터의 발생 횟수 또는 크기에 관련한 정보가 표시될 수 있다. 다른 예를 들어, 영상 편집 화면(340)에는 각 추천 편집점에 대응하여 시점 별 스트리머의 플레이에 관련한 특정 비디오 이벤트의 발생 여부에 관련한 정보가 표시될 수 있다. 또 다른 예를 들어, 영상 편집 화면(340)에는 각 추천 편집점에 대응하여 시점 별 시청자들의 채팅 입력 수의 변화량에 관련한 정보가 표시될 수 있다. 전술한 영상 편집 화면에 표시되는 정보들에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
또한, 영상 편집 사용자 인터페이스(300)는 영상 데이터 재생 화면(310)을 포함할 수 있다. 영상 데이터 재생 화면(310)은 스트리밍 영상 데이터의 적어도 일부를 재생시키기 위한 화면일 수 있다. 영상 데이터 재생 화면(310)은 영상 편집 화면(340)에서의 사용자의 조작에 대응하여 스트리밍 영상 데이터의 일부 구간을 재생시킬 수 있다. 예컨대, 사용자가 영상 편집 화면(340)에서 높은 추천 강도를 통해 표시된 제1구간에 대응하는 편집점 추천 서브 정보를 선택하는 경우, 영상 데이터 재생 화면(310)에는 스트리밍 영상 데이터의 제1구간이 재생되어 표시될 수 있다. 실시예에 따르면, 영상 데이터 재생 화면(310)은, 영상 편집 화면(340)에서 특정 추천 편집 구간을 늘리거나 또는 줄이는 사용자의 입력에 대응하는 영상 프레임을 표시할 수 있다. 즉, 사용자는 추천된 편집점에 관련한 영상을 영상 데이터 재생 화면(310)을 통해 제공받을 수 있다. 이에 따라, 각 추천 편집점에 관련한 영상들을 용이하게 인지할 수 있으므로, 편집의 효율이 향상될 수 있다. 추가적으로, 특정 편집 구간을 미세하게 편집하는 과정에서, 사용자의 조정 입력에 대응하는 영상 프레임을 영상 데이터 재생 화면(310)에 표시함으로써, 사용자의 영상 편집 효율이 더욱 향상될 수 있다.
또한, 영상 편집 사용자 인터페이스(300)는 이벤트 표시 화면(320)을 포함할 수 있다. 이벤트 표시 화면(320)은 편집점 추천 정보에 포함된 복수의 편집점 추천 서브 정보 각각의 시작 프레임에 관한 정보와 종료 프레임에 관한 정보가 표시될 수 있다. 또한, 이벤트 표시 화면(320)은 각 편집점 추천 서브 정보에 대응하는 이벤트 타입에 관한 정보가 표시될 수 있다. 이 경우, 이벤트 타입은, 비디오 분석 및 음향 분석에 관련한 영상 분석을 통해 식별될 수 있다. 예컨대, 도 4에 도시된 바와 같이, 이벤트 표시 화면(320)에는, 특정 편집점 추천(즉, 특정 편집점 추천 서브 정보)이, 게임 내 '교전'에 해당한다는 이벤트 타입 정보와 해당 이벤트가 01:05:55 부터 01:06:10까지 진행되었음이 표시될 수 있다. 전술한 이벤트 표시 화면에 표시되는 정보에 관련한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 즉, 이벤트 표시 화면(320)에 표시된 정보들을 통해 사용자는 편집 과정에서 각 구간에 관련한 이벤트 타입을 용이하게 파악할 수 있다. 다시 말해, 이벤트 표시 화면(320)을 통해 제공되는 정보들에 기초하여 사용자는 필요한 구간만 용이하게 식별이 가능하므로 편집 시간이 단축되는 등 편집효율이 향상될 수 있다.
또한, 영상 편집 사용자 인터페이스(300)는 참고 정보 표시 화면(330)을 포함할 수 있다. 참고 정보 표시 화면(330)은 도 4에 도시된 바와 같이, 각 구간 별 신뢰 정도 및 각 구간 별 자주 노출되는 키워드에 관련한 정보가 표시될 수 있다. 여기서 각 구간 별 자주 노출되는 키워드란, 스트리머 또는 게임에 관련한 음성에 관련한 음향 분석 결과 가장 많이 노출된 키워드에 관련한 것일 수 있다. 또한, 각 구간 별 자주 노출되는 키워드는, 시청자 반응 분석(즉, 채팅창에 노출된 키워드) 결과 가장 많이 노출된 키워드에 관련한 것일 수 있다. 즉, 참고 정보 표시 화면(330)에는 스트리머가 방송 중 각 구간 별로 자주 사용한 키워드나 또는, 시청자들이 방송 중 각 구간 별로 자주 언급한 키워드에 관련한 정보를 표시할 수 있다. 이는, 스트리밍 영상 데이터의 편집 과정에서 각 구간 별 키워드에 관한 정보를 제공함으로써, 특정 구간 탐색 과정에서 편의성을 향상시킬 수 있다.
전술한 바와 같이, 편집점 추천 정보를 포함하는 영상 편집 사용자 인터페이스(300)를 제공함으로써, 사용자의 편집 효율 향상을 도모할 수 있다. 추가적으로, 영상 편집 사용자 인터페이스(300)에 포함된 다양한 화면들을 통해 실시간 컨텐츠를 시청한 시청자 단말들의 구간 별 반응을 인지할 수 있으며, 이를 기반으로 편집 영상 제작의 효율이 향상되는 효과를 제공할 수 있다. 다시 말해, 구간 별 반응을 통해 시청자들의 반응을 보다 용이하게 인지하도록 하여 컨텐츠에 대한 개성의 방향성을 제시할 수 있을 뿐 아니라, 편집자의 편집 시간을 단축시키는 등 전반적인 편집 효율을 향상시킬 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축할 수 있다. 여기서 복수의 사용자는, 스트리밍 서버를 통해 비디오 및 오디오 컨텐츠 등 다양한 실시간 컨텐츠를 송출하는 복수의 스트리머 각각을 의미할 수 있다. 스트리밍 컨텐츠 정보는 컨텐츠 기본 정보 및 스트리밍 데이터를 포함할 수 있다. 컨텐츠 기본 정보는 사용자(즉, 스트리머)의 방송 컨텐츠에 관련한 정보를 포함할 수 있다. 예를 들어, 컨텐츠 기본 정보는, 제1사용자의 스트리밍 영상 데이터가 게임 방송 컨텐츠, 야외 방송 컨텐츠 및 소통 방송 컨텐츠 중 적어도 하나에 관련한다는 정보를 포함할 수 있다. 또한 예를 들어, 컨텐츠 기본 정보는 스트리밍 영상 데이터를 송출하는 사용자(또는 스트리머)의 이름, 나이, 성별에 관련한 정보 등을 더 포함할 수 있다. 전술한 컨텐츠 기본 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
스트리밍 데이터는, 방송 컨텐츠에 관련한 스트리밍 영상 데이터 및 해당 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터를 포함할 수 있다. 스트리밍 영상 데이터는, 복수의 영상 서브 데이터를 복수의 프레임으로써 구성하는 영상에 관련한 데이터일 수 있다. 시청자 반응 데이터는, 실시간으로 송출되는 스트리밍 영상 데이터를 시청한 하나 이상의 시청자들의 반응에 관련한 데이터일 수 있다. 예컨대, 시청자 반응 데이터는, 스트리밍 영상 데이터를 시청하는 시청자의 수에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 빈도에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 키워드 정보 및 스트리밍 영상 데이터에 관련한 도네이션 정보 중 적어도 하나를 포함할 수 있다. 구체적인 예를 들어, 시청자 반응 데이터는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제1시점에 관련하여 제1시청자 단말로부터 채팅창을 통해 수신되는 채팅 입력에 관한 정보일 수 있다. 다른 예를 들어, 시청자 반응 데이터는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제2시점에 관련하여 제2시청자 단말로부터 수신되는 도네이션 입력에 관한 정보일 수 있다. 전술한 시청자 반응 데이터에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
일 실시예에서, 복수의 편집 이력 정보 각각은, 편집점 추천 정보(610) 및 편집점 추천 정보(610)에 대응하는 편집점 보정 정보를 포함할 수 있다. 편집 이력 정보는, 본 발명의 서버(100)로부터 제공받은 편집점 추천 정보(610)와 해당 편집점 추천 정보(610)에 기초하여 사용자가 실제로 편집을 확정한 편집점 보정 정보를 포함할 수 있다. 이러한 편집 이력 정보는, 각 사용자의 편집 스타일을 파악하는데 유의미한 정보일 수 있다.
실시예에 따르면, 편집점 추천 정보(610)는, 스트리밍 컨텐츠 정보에 대한 영상 분석 및 반응 분석을 통해 획득되는 시각화 정보일 수 있다. 편집점 추천 정보(610)는 하나 이상의 편집점 각각이 추천 강도 정보에 따라 상이한 시각적 표현을 통해 표현된 시각화 정보일 수 있다. 구체적인 예를 들어, 편집점 추천 정보(610)는, 도 7에 도시된 바와 같이, 전체 스트리밍 영상 데이터에 대응하여 각 구간별 추천 강도에 따라 상이한 색상을 통해 표시되는 시각화 정보일 수 있다.
즉, 편집점 추천 정보(610)는, 스트리밍 영상 데이터의 전체 프레임 중 재미 요소가 가장 두드러지게 나타나는 하이라이트 구간에 관련한 추천 정보로, 예컨대, 해당 영상 데이터에서 시청자들이 가장 흥미를 가질 것으로 예측되는 구간들을 다른 구간들과 상이하게 표현한 시각화 정보일 수 있다.
편집점 보정 정보(620)는, 편집점 추천 정보(610)에 대한 보정(또는 수정)을 통해 생성되는 것일 수 있다. 구체적으로, 편집점 추천 정보(610)는 영상 편집 사용자 인터페이스(300)에 포함되어 사용자에게 제공될 수 있으며, 사용자의 다양한 조정 입력(예컨대, 삭제, 구간 길이 조정, 추가 등)에 따라 변경될 수 있다. 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통한 조정 입력을 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 일 구간을 삭제할 수 있다. 다른 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통한 조정 입력을 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 일 구간의 길이를 조정하거나, 추천 강도를 변경할 수 있다. 또 다른 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 새로운 프레임을 주요 구간으로 추가할 수 있다. 즉, 영상 편집 사용자 인터페이스(300)를 통해 편집점 추천 정보(610)에 사용자의 다양한 조정 입력이 인가됨에 따라 편집점 보정 정보(620)가 생성될 수 있다. 다시 말해, 편집점 보정 정보(620)는 추천된 편집점 추천 정보(610)에 대응하여 사용자가 실제로 편집을 확정한 정보에 관련한 것일 수 있다. 보다 구체적인 예를 들어, 편집점 추천 정보(610)에 대응하여 획득된 편집점 보정 정보(620)는 도 7에 도시된 바와 같을 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 편집 스타일 데이터베이스에 대한 클러스터링을 수행할 수 있다. 프로세서(130)는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보 각각을 하나 이상의 클러스터 각각으로 분류할 수 있다. 여기서, 하나 이상의 클러스터 각각은, 복수의 사용자 각각의 편집 스타일을 분류하기 위한 기준이 될 수 있다.
보다 구체적으로, 프로세서(130)는 편집 스타일 데이터베이스에 포함된 데이터들에 대한 전처리를 수행할 수 있다. 편집 스타일 데이터베이스는 복수의 사용자들 각각에 대응하는 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보를 포함할 수 있다. 프로세서(130)는 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보를 구성하는 다양한 요소들(예컨대, 방송 종류, 스트리머의 성별, 나이, 시청자 정보, 편집점 마커 조작 횟수, 편집 이력 정보 간의 차이 등)을 기준으로 각 사용자에 대응하는 데이터(즉, 스트리밍 컨텐츠 데이터 및 편집 이력 정보)를 벡터화할 수 있다. 예를 들어, 프로세서(130)는 차원 감소 네트워크 함수(예컨대, 인코더)를 통해 각 사용자에 대응하는 데이터를 n*m차원에 벡터화하여 표시할 수 있다. 차원 감소 네트워크 함수는 각 사용자의 데이터를 입력으로 하여 피처(즉, 벡터 공간 상의 임베딩)을 추출할 수 있다. 또한, 프로세서(130)는 주성분분석(PCA, Principle Component Analysis)을 통해 최적 피처를 결정할 수 있다.
또한, 프로세서(130)는 벡터 공간 상에 임베딩된 피처들을 k-means 알고리즘에 기반하여 하나 이상의 클러스터로 분류함으로써, 클러스터링을 수행할 수 있다. 예컨대, 프로세서(130)는 스트리밍 컨텐츠 데이터 및 편집 이력 정보를 구성하는 복수의 요소들에 대응하여 벡터화된 피처들이 형성하는 초기 클러스터에 기반하여 k개의 센트로이드(centroid)를 설정할 수 있다. 프로세서(130)는, k개의 센트로이드를 설정한 후, 각 요소들이 형성하는 클러스터 간의 거리에 기반하여 센트로이드를 할당할 수 있다. 다시 말해, 각 요소들과 가까운 위치에 각 센트로이드가 할당될 수 있다. 이후, 프로세서(130)는 각 클러스터에 대응하여 각 센트로이드를 클러스터의 중심부로 이동시켜 각 센트로이드를 갱신할 수 있다. 프로세서(130)는 클러스터의 할당이 변하지 않거나, 미리 지정된 허용오차나 최대 반복 횟수에 도달할 때까지 센트로이드 할당과 갱신 과정을 반복함으로써, 알고리즘의 최적화를 수행할 수 있다. 예컨대, 프로세서(130)는 센트로이드가 변화할 때 마다 오차 제곱합을 반복적으로 계산하면서, 변화량에 대한 허용 오차값이 일정 수준 내로 돌아오는 것을 식별하여 최적화를 수행할 수 있다. 전술한 과정을 통해 프로세서(130)는 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보를 하나 이상의 클러스터 각각으로 분류할 수 있다. 전술한 설명에서는 프로세서가 k-means 알고리즘에 기반하여 클러스터링을 수행함을 기재하나, 이는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 예컨대, 본 발명의 클러스터링은, 밀도에 기반하여 군집을 할당하는 DBSCAN 또는 Gaussian Mixture Model을 통해 수행될 수도 있다.
다른 실시예에 따르면, 프로세서(130)는 분류 모델을 활용하여 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보를 하나 이상의 클러스터 각각으로 분류할 수 있다. 분류 모델을 활용하여 클러스터링을 수행하는 방법은 도 5를 참조하여 이하에서 후술하도록 한다.
본 발명의 분류 모델은 프로세서(130)에 의해 해공간(400)상에서 유사한 데이터들끼리 클러스터를 형성하도록 학습될 수 있다. 보다 구체적으로 분류 모델은 타겟 데이터(401)와 타겟 유사 데이터(402)가 하나의 클러스터(410)에 포함되고, 타겟 비유사 데이터(403)는 타겟 데이터(401)와 타겟 유사 데이터(402)와는 상이한 클러스터에 포함되도록 학습될 수 있다. 학습된 분류모델의 해공간 상에서 각각의 클러스터는 일정 거리 마진(420)을 가지도록 위치할 수 있다.
분류 모델은 타겟 데이터(401), 타겟 시밀러 데이터(402), 타겟 디스시밀러 데이터(403)를 포함하는 학습 데이터 서브 세트를 입력 받아 각각의 데이터들을 해공간에 매핑하고 해공간 상에서 라벨링 된 클러스터 정보에 따라 클러스터링 될 수 있도록 분류 모델이 포함한 하나 이상의 네트워크 함수의 가중치를 업데이트 할 수 있다. 즉, 분류 모델은 타겟 데이터(401)와 타겟 시밀러 데이터(402)의 해공간 상에서의 거리가 서로 가까워지도록, 타겟 데이터(401) 및 타겟 시밀러 데이터(402)와 타겟 디스시밀러 데이터(403) 사이의 해공간 상에서의 거리가 서로 멀어지도록 학습시킬 수 있다. 분류 모델은 예를 들어 트리플렛(triplet) 기반 비용 함수를 사용하여 학습될 수 있다. 트리플렛 기반 비용 함수는 동일한 분류인 입력 데이터들의 쌍을 다른 분류의 제 3 입력 데이터로부터 분리하는 것을 목표로 하며, 동일한 분류인 입력 데이터들의 쌍 사이의 제 1 거리(즉, 클러스터 410의 크기)와, 동일한 분류인 입력 데이터들의 쌍 중 하나와 제 3 의 입력 데이터 사이의 제 2 거리(즉, 401 또는 402와 403 사이의 거리) 사이의 차이 값이 적어도 거리 마진(420)로 하며, 분류 모델을 학습시키는 방법은 제 1 거리를 거리 마진의 일정 비율 이하로 감소시키는 단계를 포함한다. 여기서 거리 마진(420)은 항상 양수일 수 있다. 거리 마진(420)에 도달하도록 하기 위하여 분류 모델에 포함된 하나 이상의 네트워크 함수의 가중치가 업데이트 될 수 있으며, 가중치 업데이트는 반복(iteration) 마다 또는 1 에포크 마다 수행될 수 있다.
또한, 분류 모델은 비유사한 데이터의 클러스터 분류뿐 아니라, 하나의 클러스터 또는 다른 클러스터 사이에도 각각의 데이터들 사이의 시멘틱(semantic) 한 관계를 고려할 수 있는 마그넷 로스(magnet loss) 기반의 모델로 학습될 수도 있다. 분류 모델의 해공간 상에서 각각의 클러스터의 중심점 사이의 초기 거리가 학습 과정에서 수정될 수 있다. 분류 모델은 해공간 상에 데이터들을 매핑한 후, 각각의 데이터의 해공간 상에서의 위치를 각각의 데이터가 속하는 클러스터 및 클러스터 내부 및 클러스터 외부의 데이터와 유사성에 기초하여 조정할 수 있다.
즉, 프로세서(130)는 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보를 하나 이상의 클러스터 각각으로 분류하도록 분류 모델을 학습시킬 수 있다.
도 5에 도시된 해공간(400)은 예시일 뿐이며, 분류 모델은 임의의 개수의 클러스터 및 각 클러스터 당 임의의 개수의 데이터를 포함할 수 있다. 도 5에 도시된 클러스터에 포함된 데이터들(431, 433, 441, 443 등)의 모양은 유사한 데이터임을 나타내기 위한 예시일 뿐이다.
본 개시에서 해공간은 1차원 이상의 공간으로 구성되며 하나 이상의 클러스터를 포함하고, 각각의 클러스터는 각각의 타겟 데이터에 기초한 특징 데이터 및 타겟 유사 데이터에 기초한 특징 데이터의 해공간 상에서의 위치에 기초하여 구성될 수 있다.
해공간에서 제 1 클러스터(430)와 제 2 클러스터(440)는 비유사한 데이터에 대한 클러스터 일 수 있다. 또한, 제 3 클러스터(450)는 제 1 및 제 2 클러스터와 비유사한 데이터에 대한 클러스터 일 수 있다. 클러스터 사이의 거리(445, 435)는 각각의 클러스터에 속하는 데이터들의 차이를 나타내는 척도일 수 있다.
제 1 클러스터(430)와 제 2 클러스터(440) 사이의 제 12 거리(445)는 제 1 클러스터(430)에 속하는 데이터와 제 2 클러스터(440)에 속하는 데이터의 차이를 나타내는 척도일 수 있다. 또한, 제 1 클러스터(430)와 제 2 클러스터(440)사이의 제 13 거리(435)는 제 1 클러스터(430)에 속하는 데이터와 제 3 클러스터(450)에 속하는 데이터의 차이를 나타내는 척도일 수 있다. 도 5에 도시된 예시에서, 제 1 클러스터(430)에 속하는 데이터는 제 3 클러스터(450)에 속하는 데이터 보다 제 2 클러스터(440)에 속하는 데이터에 더 비유사 할 수 있다. 즉, 클러스터 사이의 거리가 먼 경우 각각의 클러스터에 속하는 데이터는 보다 많이 비유사한 것이며, 클러스터 사이의 거리가 가까운 경우 각각의 클러스터에 속하는 데이터는 보다 적게 비유사한 것일 수 있다. 클러스터 사이의 거리(435, 445)는 클러스터의 반경 보다 사전 결정된 비율 이상 클 수 있다. 프로세서(130)는 입력 데이터(즉, 각 사용자에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보)를 분류 모델을 이용하여 연산함으로써, 분류 모델의 해공간에 입력 데이터의 특징 데이터가 매핑되는 위치에 기초하여 입력 데이터를 분류할 수 있다.
프로세서(130)는 입력 데이터를 사전 학습된 분류 모델을 이용하여 처리함으로써, 입력 데이터의 특징 데이터를 사전 학습된 분류 모델의 해공간에 매핑할 수 있다. 프로세서(130)는 입력 데이터의 해공간 상에서의 위치에 기초하여 상기 입력 데이터가 해공간 상의 하나 이상의 클러스터 중 어느 클러스터에 속하는지 여부에 기초하여 입력 데이터를 분류할 수 있다.
다시 말해, 프로세서(130)는 학습된 분류 모델을 통해 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보들을 클러스터링하여 하나 이상의 클러스터를 생성할 수 있다. 하나 이상의 클러스터 각각은, 복수의 사용자 각각의 편집 스타일을 분류하기 위한 기준이 될 수 있다. 즉, 각 클러스터는 다양한 편집 스타일 각각과 연관될 수 있다.
구체적인 예를 들어, 분류 모델을 통한 분류에 따라 생성된 하나 이상의 클러스터는 도 6에 도시된 바와 같을 수 있다. 하나 이상의 클러스터는, 편집 타입 A(511), 편집 타입 B(512) 및 편집 타입 C(513)를 포함할 수 있다. 복수의 스트리밍 컨텐츠 데이터 및 복수의 편집 이력 정보들은 분류 모델을 통해 편집 타입 A(511), 편집 타입 B(512) 및 편집 타입 C(513) 각각으로 분류될 수 있다. 이 경우, 편집 타입 A(511)는 방송 종류가 '리그오브레전드'이며, 시간당 채팅빈도가 10000~20000이고, 편집 조작 정도가 '낮음'에 관련한 데이터들을 포함할 수 있다. 또한, 편집 타입 B(512)는 방송 종류가 '배틀그라운드'이며, 시간당 채팅빈도가 2000~4000이고, 편집 조작 정도가 '중간'에 관련한 데이터들을 포함할 수 있다. 또한, 편집 타입 C(513) 방송 종류가 '소통'이며, 시간당 채팅빈도가 300~500이고, 편집 조작 정도가 '높음'에 관련한 데이터들을 포함할 수 있다. 전술한 각 클러스터(또는 각 편집 타입)에 관련한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
즉, 프로세서(130)는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보 각각을 하나 이상의 클러스터 각각으로 분류하여 클러스터링을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성할 수 있다.
구체적으로, 프로세서(130)는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보에 기초하여 복수의 학습 입력 데이터를 생성하고, 각 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보에 대응하는 하나 이상의 클러스터 각각에 기초하여 복수의 학습 출력 데이터를 생성할 수 있다. 또한, 프로세서는 학습 입력 데이터 각각에 대응하는 학습 출력 데이터 세트 각각을 매칭하여 라벨링함으로써 학습 데이터 세트를 구축할 수 있다. 프로세서(130)는 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행하여 편집 스타일 분류 모델을 생성할 수 있다. 이에 따라, 생성된 편집 스타일 분류 모델은, 특정 사용자의 스트리밍 컨텐츠 정보 및 편집 이력 정보를 입력으로 하여 특정 클러스터(즉, 편집 스타일 정보)를 도출할 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 각 클러스터에 포함된 복수의 편집 이력 정보에 기초하여 상기 각 클러스터에 대응하는 하나 이상의 스타일 편집점 추천 모델을 생성할 수 있다. 보다 구체적으로, 편집 이력 정보는, 편집점 추천 정보(610) 및 편집점 추천 정보(610)에 대응하는 편집점 보정 정보(620)를 포함할 수 있다. 편집 이력 정보는, 본 발명의 서버(100)로부터 제공받은 편집점 추천 정보(610)와 해당 편집점 추천 정보(610)에 기초하여 사용자가 실제로 편집을 확정한 편집점 보정 정보(620)를 포함할 수 있다. 이러한 편집 이력 정보는, 각 사용자의 편집 스타일을 파악하는데 유의미한 정보일 수 있다.
프로세서(130)는 각 클러스터에 포함된 복수의 편집점 추천 정보에 기초하여 복수의 학습 입력 데이터를 구축하고, 복수의 편집점 보정 정보에 기초하여 복수의 학습 출력 데이터를 구축할 수 있다. 또한, 프로세서(130)는 복수의 학습 입력 데이터에 대응하는 복수의 학습 출력 데이터를 매칭하여 라벨링함으로써, 각 클러스터에 대응하는 학습 데이터 세트를 구축할 수 있다. 즉, 각 클러스터 별로 편집점 추천 정보와 편집점 보정 정보에 관련한 학습 데이터 세트가 구축될 수 있다. 프로세서(130)는 각 클러스터에 대응하는 하나 이상의 학습 데이터 세트 각각을 통해 신경망에 대한 학습을 수행함으로써, 하나 이상의 스타일 편집점 추천 모델을 생성할 수 있다.
구체적인 예를 들어, 프로세서(130)는 도 6에 도시된 바와 같은 각 클러스터(또는 각 편집 타입)에 대응하여 하나 이상의 스타일 편집점 추천 모델을 생성할 수 있다. 프로세서(130)는 편집 타입A(511)에 관련한 클러스터에 대응하여 제1스타일 편집점 추천 모델(521)을 생성하고, 편집 타입B(512)에 관련한 클러스터에 대응하여 제2스타일 편집점 추천 모델(522)을 생성하고, 그리고 편집 타입C(513)에 관련한 클러스터에 대응하여 제3스타일 편집점 추천 모델(523)을 생성할 수 있다. 이 경우, 각 스타일 편집점 추천 모델은 각 클러스터에 포함된 데이터를 학습 데이터로 하여 학습됨에 따라 생성된 신경망 모델일 수 있다. 즉, 각 스타일 편집점 추천 모델은 각 클러스터(즉, 각 편집 타입)에 관련하여 보다 적절한 예측을 수행할 수 있다. 즉, 각 클러스터에 대응하여 생성된 하나 이상의 스타일 편집점 추천 모델 각각은, 하나의 스트리밍 컨텐츠 정보에 대응하여 서로 상이한 편집 프레임을 추천하는 것을 특징으로 할 수 있다. 전술한 편집 타입에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 제1사용자의 제1스트리밍 컨텐츠 정보를 획득할 수 있다. 제1스트리밍 컨텐츠 정보는, 제1사용자에 관련한 제1컨텐츠 기본 정보 및 제1스트리밍 데이터를 포함할 수 있다. 제1스트리밍 데이터는 제1스트리밍 영상 데이터 및 제1시청자 반응 데이터를 포함할 수 있다.
프로세서(130)는 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 생성할 수 있다. 프로세서(130)는 제1스트리밍 영상 데이터에 관련한 영상 분석(비디오 분석 및 음향 분석을 포함) 및 제1시청자 반응 데이터에 대한 반응 분석을 통해 영상 내에서 추천 편집점에 관련한 제1편집 프레임 정보를 획득할 수 있으며, 해당 제1편집 프레임 정보에 기초하여 제1편집점 추천 정보를 생성할 수 있다. 이 경우, 제1편집점 추천 정보는, 전체 스트리밍 영상 데이터에 대응하여 각 구간별 추천 강도에 따라 상이한 색상을 통해 표시되는 시각화 정보일 수 있다.
또한, 프로세서(130)는 편집 스타일 분류 모델을 활용하여 제1스트리밍 컨텐츠 정보에 대응하는 제1클러스터를 식별할 수 있다. 편집 스타일 분류 모델은, 특정 사용자의 스트리밍 컨텐츠 정보를 입력으로 하여 해당 스트리밍 컨텐츠 정보에 대응하는 제1클러스터(즉, 제1편집 스타일 정보)를 도출하도록 학습된 신경망 모델일 수 있다.
프로세서(130)는 제1클러스터에 대응하는 제1스타일 편집점 추천 모델을 활용하여 제1편집점 추천 정보에 대한 보정을 수행할 수 있다. 제1스타일 편집점 추천 모델은 제1클러스터에 포함된 학습 데이터 세트를 통해 학습된 신경망 모델일 수 있다. 즉, 제1스타일 편집점 추천 모델은 제1클러스터에 관련하여 보다 적절한 예측을 수행할 수 있다.
프로세서(130)는 제1클러스터에 대응하는 제1스타일 편집점 추천 모델에 제1편집점 추천 정보를 입력으로 하여 보정된 제1편집점 추천 정보를 획득할 수 있다. 즉, 영상 분석 및 반응 분석을 통해 추천된 시각화 정보인 제1편집점 추천 정보에 대응하여 보정된 제1편집점 추천 정보가 도출될 수 있다. 즉, 1차적으로, 영상 분석 및 반응 분석을 통해 편집점을 추천에 관련한 제1편집점 추천 정보를 생성하고, 이후, 해당 사용자와 유사한 편집 스타일을 가진 클러스터에 대응하는 신경망 모델(즉, 스타일 편집점 추천 모델)을 통해 2차적으로 제1편집점 추천 정보에 대한 보정을 수행하여 보정된 제1편집점 추천 정보를 생성할 수 있다. 이 경우, 보정된 제1편집점 추천 정보는, 제1클러스터에 포함된 학습 데이터를 통한 학습이 완료된 신경망 모델을 통해 도출되는 것으로, 제1클러스터에 대응하는 편집 스타일이 반영된 것일 수 있다. 또한, 프로세서(130)는 보정된 제1편집점 추천 정보에 기초하여 영상 편집 사용자 인터페이스를 생성하여 제공할 수 있다.
영상 편집 사용자 인터페이스(300)는, 편집점 추천 정보를 포함하는 영상 편집 화면(340)을 포함하며, 영상 편집 화면(340)에 대한 사용자의 조정 입력을 허용하는 것을 특징으로 할 수 있다. 즉, 영상 분석 및 반응 분석을 통해 영상 데이터 내에서 추천 편집점을 도출하고, 그리고 도출된 추천 편집점을 해당 사용자와 유사한 편집 스타일을 가진 타 사용자들의 정보들에 기반하여 추천 편집점을 보정하여 제공할 수 있다. 이에 따라, 사용자는 보다 정교화된 추천 편집점을 제공받을 수 있으므로, 편집의 효율이 극대화될 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 영상 편집 사용자 인터페이스(300)에 대한 사용자의 조정 입력에 기초하여 보정된 제1편집점 추천 정보에 대응하는 제1편집점 보정 정보를 획득할 수 있다. 조정 입력은, 예컨대, 프레임 길이 조정 입력, 프레임 제거 입력 및 추가 프레임 생성 입력 중 적어도 하나를 포함할 수 있다. 즉, 제1편집점 보정 정보는, 추천된 편집점(즉, 보정된 제1편집점 추천 정보)에 대응하여 제1사용자가 실제로 확정한 편집 내용에 관한 시각화 정보일 수 있다. 이러한 제1편짐점 보정 정보는, 기존 추천 편집점이 조정 또는 삭제되거나, 새로운 편집점이 삽입됨에 따라 보정된 편집점 추천 정보와 상이한 시각화 정보를 포함할 수 있다.
프로세서(130)는 보정된 제1편집점 추천 정보 및 제1편집점 보정 정보에 기초하여 제1사용자에 관련한 제1편집 이력 정보를 획득할 수 있다. 또한, 프로세서(130)는 제1편집 이력 정보를 통해 제1사용자 데이터베이스를 구축할 수 있다. 또한, 프로세서(130)는 제1사용자 데이터베이스를 활용하여 제1스타일 편집점 추천 모델에 대한 업데이트를 수행하여 맞춤 편집점 추천 모델을 생성할 수 있다. 이 경우, 맞춤 편집점 추천 모델은, 제1사용자에 관련하여 지속적으로 축적되는 편집 이력 정보를 기반으로 추가적으로 학습된 신경망 모델(즉, 추가 학습된 스타일 편집점 추천 모델)일 수 있다. 즉, 각 사용자의 편집 이력 내용은 지속적으로 각 사용자의 데이터베이스에 축적되며, 해당 사용자의 편집 이력 내용이 신경망 모델의 학습에 지속적으로 반영됨에 따라 편집점 추천 모델이 시간이 지날수록 고도화될 수 있다. 신경망의 고도화에 따라 복수의 사용자 각각은 자신에게 최적화된 추천 편집점을 제공받을 수 있다. 이는 편집 시간의 획기적인 단축을 야기하여 편집 효율의 향상을 도모하는 효과를 제공할 수 있다. 각 사용자에 대응하여 누적된 정보들을 통해 고도화된 신경망을 제공하는 방법에 대한 구체적인 설명은 이하에서 후술하도록 한다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축할 수 있다. 스트리밍 컨텐츠 정보는 컨텐츠 기본 정보 및 스트리밍 데이터를 포함할 수 있다. 컨텐츠 기본 정보는 사용자(즉, 스트리머)의 방송 컨텐츠에 관련한 정보를 포함할 수 있다. 예를 들어, 컨텐츠 기본 정보는, 제1사용자의 스트리밍 영상 데이터가 게임 방송 컨텐츠, 야외 방송 컨텐츠 및 소통 방송 컨텐츠 중 적어도 하나에 관련한다는 정보를 포함할 수 있다. 또한 예를 들어, 컨텐츠 기본 정보는 스트리밍 영상 데이터를 송출하는 사용자(또는 스트리머)의 이름, 나이, 성별에 관련한 정보 등을 더 포함할 수 있다. 전술한 컨텐츠 기본 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
스트리밍 데이터는, 방송 컨텐츠에 관련한 스트리밍 영상 데이터 및 해당 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터를 포함할 수 있다. 스트리밍 영상 데이터는, 복수의 영상 서브 데이터를 복수의 프레임으로써 구성하는 영상에 관련한 데이터일 수 있다. 시청자 반응 데이터는, 실시간으로 송출되는 스트리밍 영상 데이터를 시청한 하나 이상의 시청자들의 반응에 관련한 데이터일 수 있다. 예컨대, 시청자 반응 데이터는, 스트리밍 영상 데이터를 시청하는 시청자의 수에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 빈도에 관한 정보, 스트리밍 영상 데이터에 관련한 채팅 키워드 정보 및 스트리밍 영상 데이터에 관련한 도네이션 정보 중 적어도 하나를 포함할 수 있다. 구체적인 예를 들어, 시청자 반응 데이터는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제1시점에 관련하여 제1시청자 단말로부터 채팅창을 통해 수신되는 채팅 입력에 관한 정보일 수 있다. 다른 예를 들어, 시청자 반응 데이터는, 사용자 단말(즉, 스트리머 단말)이 실시간 송출하는 스트리밍 영상 데이터에서의 제2시점에 관련하여 제2시청자 단말로부터 수신되는 도네이션 입력에 관한 정보일 수 있다. 전술한 시청자 반응 데이터에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
일 실시예에서, 복수의 편집 이력 정보 각각은, 편집점 추천 정보(610) 및 편집점 추천 정보(610)에 대응하는 편집점 보정 정보(620)를 포함할 수 있다. 편집 이력 정보는, 본 발명의 서버(100)로부터 제공받은 편집점 추천 정보(610)와 해당 편집점 추천 정보(610)에 기초하여 사용자가 실제로 편집을 확정한 편집점 보정 정보(620)를 포함할 수 있다. 이러한 편집 이력 정보는, 각 사용자의 편집 스타일을 파악하는데 유의미한 정보일 수 있다.
실시예에 따르면, 편집점 추천 정보(610)는, 스트리밍 컨텐츠 정보에 대한 영상 분석 및 반응 분석을 통해 획득되는 시각화 정보일 수 있다. 편집점 추천 정보(610)는 하나 이상의 편집점 각각이 추천 강도 정보에 따라 상이한 시각적 표현을 통해 표현된 시각화 정보일 수 있다. 구체적인 예를 들어, 편집점 추천 정보(610)는, 도 7에 도시된 바와 같이, 전체 스트리밍 영상 데이터에 대응하여 각 구간별 추천 강도에 따라 상이한 색상을 통해 표시되는 시각화 정보일 수 있다.
즉, 편집점 추천 정보(610)는, 스트리밍 영상 데이터의 전체 프레임 중 재미 요소가 가장 두드러지게 나타나는 하이라이트 구간에 관련한 추천 정보로, 예컨대, 해당 영상 데이터에서 시청자들이 가장 흥미를 가질 것으로 예측되는 구간들을 다른 구간들과 상이하게 표현한 시각화 정보일 수 있다.
편집점 보정 정보(620)는, 편집점 추천 정보(610)에 대한 보정(또는 수정)을 통해 생성되는 것일 수 있다. 구체적으로, 편집점 추천 정보(610)는 영상 편집 사용자 인터페이스(300)에 포함되어 사용자에게 제공될 수 있으며, 사용자의 다양한 조정 입력(예컨대, 삭제, 구간 길이 조정, 추가 등)에 따라 변경될 수 있다. 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통한 조정 입력을 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 일 구간을 삭제할 수 있다. 다른 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통한 조정 입력을 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 일 구간의 길이를 조정하거나, 추천 강도를 변경할 수 있다. 또 다른 예를 들어, 사용자는 영상 편집 사용자 인터페이스(300)를 통해 스트리밍 영상 데이터에 대응하여 추천된 편집점 추천 정보(610)에서 새로운 프레임을 주요 구간으로 추가할 수 있다. 즉, 영상 편집 사용자 인터페이스(300)를 통해 편집점 추천 정보(610)에 사용자의 다양한 조정 입력이 인가됨에 따라 편집점 보정 정보(620)가 생성될 수 있다. 다시 말해, 편집점 보정 정보(620)는 추천된 편집점 추천 정보(610)에 대응하여 사용자가 실제로 편집을 확정한 정보에 관련한 것일 수 있다. 보다 구체적인 예를 들어, 편집점 추천 정보(610)에 대응하여 획득된 편집점 보정 정보(620)는 도 7에 도시된 바와 같을 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 편집 스타일 데이터베이스를 통해 학습 데이터 세트를 획득할 수 있다.
일 실시예에 따르면, 프로세서(130)는 각 사용자에 대응하는 복수의 편집점 추천 정보에 기초하여 복수의 학습 입력 데이터를 생성할 수 있다. 프로세서(130)는 각 사용자에 대응하는 복수의 편집점 보정 정보에 기초하여 복수의 학습 출력 데이터를 생성할 수 있다.
또한, 프로세서(130)는 학습 입력 데이터 각각에 대응하는 학습 출력 데이터 각각을 매칭하여 각 사용자 별 하나 이상의 학습 데이터 서브 세트를 구축할 수 있다. 프로세서(130)는 각 사용자 별로 대응하는 학습 입력 데이터와 학습 출력 데이터를 매칭할 수 있다.
이 경우, 학습 입력 데이터는, 편집점 추천 정보의 픽셀값에 대응하는 피처인 것을 특징으로 하며, 학습 출력 데이터는, 편집점 보정 정보의 픽셀값에 대응하는 피처인 것을 특징으로 할 수 있다. 예컨대, 복수의 학습 입력 데이터 각각은, 복수의 편집점 추천 정보 각각의 픽셀값에 대응하는 복수 개의 피처(n*m)일 수 있으며, 복수의 학습 출력 데이터 각각은, 복수의 편집점 보정 정보 각각의 픽셀값에 대응하는 복수 개의 피처(n*m)일 수 있다.
추가적으로, 프로세서(130)는 복수의 사용자 각각에 대응하는 복수의 편집 스타일 정보를 획득할 수 있다. 복수의 사용자 각각에 대응하는 복수의 편집 스타일 정보는, 편집 스타일 분류 모델을 통해 획득될 수 있다. 편집 스타일 분류 모델은 편집 스타일 분류 모델은, 특정 사용자의 스트리밍 컨텐츠 정보 및 편집 이력 정보를 입력으로 하여 특정 클러스터(즉, 편집 스타일 정보)를 도출할 수 있다. 예를 들어, 편집 스타일 분류 모델은 제1사용자의 스트리밍 컨텐츠 정보에 기반하여 해당 제1사용자를 편집 타입A로 분류할 수 있다. 즉, 편집 타입A라는 제1사용자의 편집 스타일 정보가 획득될 수 있다. 전술한 편집 스타일 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
다른 실시예에 따르면, 프로세서(130)는 각 사용자에 대응하는 복수의 편집점 추천 정보 및 복수의 편집 스타일 정보에 기초하여 학습 입력 데이터를 생성할 수 있다. 프로세서(130)는 각 사용자에 대응하는 복수의 편집점 보정 정보에 기초하여 복수의 학습 출력 데이터를 생성할 수 있다.
또한, 프로세서(130)는 학습 입력 데이터 각각에 대응하는 학습 출력 데이터 각각을 매칭하여 각 사용자 별 하나 이상의 학습 데이터 서브 세트를 구축할 수 있다.
이 경우, 학습 입력 데이터는, 편집점 추천 정보의 픽셀값과 편집 스타일 정보의 특징값에 대응하는 피처인 것을 특징으로 하며, 학습 출력 데이터는, 편집점 보정 정보의 픽셀값에 대응하는 피처인 것을 특징으로 할 수 있다. 예컨대, 복수의 학습 입력 데이터 각각은, 복수의 편집점 추천 정보 각각의 픽셀값과 복수의 편집 스타일 정보 각각의 특징값에 대응하는 복수 개의 피처(n*m+1)일 수 있으며, 복수의 학습 출력 데이터 각각은, 복수의 편집점 보정 정보 각각의 픽셀값에 대응하는 복수 개의 피처(n*m)일 수 있다. 입력에 관련한 데이터들은 편집 스타일 정보를 추가적으로 고려함에 따라 n*m+1일 수 있으며, 출력에 관련한 데이터들은 이미지 픽셀에 대응하는 n*m일 수 있다.
프로세서(130)에 의해 각 사용자 별 하나 이상의 학습 데이터 서브 세트가 생성될 수 있다. 예컨대, 제1학습 데이터 서브 세트는 제1사용자에 관련한 데이터들(예컨대, 제1사용자에 관련한 제1편집점 추천 정보 및 제1편집점 보정 정보)의 집합일 수 있으며, 제2학습 데이터 서브 세트는 제2사용자에 관련한 데이터들(예컨대, 제2사용자에 관련한 제2편집점 추천 정보 및 제2편집점 보정 정보)의 집합 것일 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 사용자 각각에 대응하여 복수의 맞춤 편집점 추천 모델을 생성할 수 있다. 구체적으로, 프로세서(130)는 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행하여 복수의 사용자 각각에 대응하는 복수의 맞춤 편집점 추천 모델을 생성할 수 있다. 자세히 설명하면, 각 사용자에 대응하는 각 학습 데이터 서브 세트를 통해 각 신경망에 대한 학습을 수행함으로써, 각 사용자에 대응하여 복수의 맞춤 편집점 추천 모델을 생성할 수 있다. 예컨대, 프로세서(130)는 제1사용자에 관련한 제1학습 데이터 서브 세트를 통해 신경망에 대한 학습을 수행함으로써, 제1맞춤 편집점 추천 모델을 생성할 수 있다.
즉, 복수의 맞춤 편집점 추천 모델 각각은, 복수의 사용자 각각에 대응하는 편집점 추천 정보에 대한 이미지 분석을 수행하여 편집점 추천 정보에 대응하는 보정된 편집점 추천 정보를 도출하는 신경망 모델일 수 있다.
이 경우, 각 맞춤 편집점 추천 모델은 서로 상이한 학습 데이터 서브 데이터를 통해 학습된 것으로, 동일한 편집점 추천 정보를 입력으로 하여도 상이한 출력(즉, 편집점에 대한 보정)을 도출할 수 있다. 다시 말해, 프로세서(130)는 각 사용자에 관련한 데이터를 통해 학습됨에 따라, 개개인에게 보다 적절한 편집 추천점을 제공하는 맞춤 편집점 추천 모델을 제공할 수 있다.
일 실시예에 따르면, 프로세서(130)는 제1사용자의 제1스트리밍 컨텐츠 정보 및 제1편집 스타일 정보를 획득할 수 있다. 제1스트리밍 컨텐츠 정보는, 제1사용자에 관련한 제1컨텐츠 기본 정보 및 제1스트리밍 데이터를 포함할 수 있다. 제1스트리밍 데이터는 제1스트리밍 영상 데이터 및 제1시청자 반응 데이터를 포함할 수 있다.
프로세서(130)는 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 획득할 수 있다. 구체적으로, 프로세서(130)는 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 생성할 수 있다. 프로세서(130)는 제1스트리밍 영상 데이터에 관련한 영상 분석(비디오 분석 및 음향 분석을 포함) 및 제1시청자 반응 데이터에 대한 반응 분석을 통해 영상 내에서 추천 편집점에 관련한 제1편집 프레임 정보를 획득할 수 있으며, 해당 제1편집 프레임 정보에 기초하여 제1편집점 추천 정보를 생성할 수 있다. 이 경우, 제1편집점 추천 정보는, 전체 스트리밍 영상 데이터에 대응하여 각 구간별 추천 강도에 따라 상이한 색상을 통해 표시되는 시각화 정보일 수 있다.
프로세서(130)는 제1편집점 추천 정보를 제1사용자에 대응하는 제1맞춤 편집점 추천 모델의 입력으로 하여 보정된 제1편집점 추천 정보를 생성할 수 있다. 이 경우, 보정된 제1편집점 추천 정보는, 제1사용자에 대응하는 제1맞춤 편집점 추천 모델을 통해 도출된 것이므로, 제1사용자에 관련하여 누적된 편집 스타일에 기반하여 제1편집점 추천 정보에 대한 보정이 수행된 것일 수 있다. 즉, 프로세서(130)는 각 사용자에 누적 데이터에 기반한 학습을 통해 개개인 별 최적의 편집점을 보정해주는 신경망 모델을 제공할 수 있다. 이에 따라, 사용자는 자신의 기존 편집 스타일이 반영된 편집점 추천 정보를 제공받을 수 있으므로, 편집의 효율이 향상될 수 있다.
다른 실시예에 따르면, 프로세서(130)는 제1사용자의 제1스트리밍 컨텐츠 정보 및 제1편집 스타일 정보를 획득할 수 있다. 또한, 프로세서(130)는 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 획득할 수 있다.
프로세서(130)는 제1스트리밍 컨텐츠 정보 및 제1편집 스타일 정보를 제1사용자에 대응하는 제1맞춤 편집점 추천 모델의 입력으로 하여 보정된 제1편집점 추천 정보를 획득할 수 있다. 이 경우, 제1맞춤 편집점 추천 모델은, 편집 스타일 정보에 추가적으로 고려함에 따라 n*m+1에 관련한 학습 입력 데이터 및 n*m에 관련한 학습 출력 데이터를 통해 학습된 신경망 모델일 수 있다. 이 경우, 보정된 제1편집점 추천 정보는, 제1사용자와 유사한 타 사용자들의 편집 스타일에 대한 정보 및 제1사용자에 관련하여 누적된 편집 스타일에 기반하여 생성되는 것을 특징으로 할 수 있다.
즉, 프로세서(130)는 특정 사용자의 편집점 추천 정보 및 편집 스타일 정보를 획득하는 경우, 각 변수를 기반으로 편집점 추천 정보에 대한 보정을 수행할 수 있다. 이러한 보정은 각 사용자에 대응하여 학습된 신경망 모델(즉, 맞춤 편집점 추천 모델)수행되는 것이며, 해당 신경망의 학습에는 편집 스타일 정보 또한 변수로써 고려됨에 따라, 각 사용자에 대하여 보다 적합한 편집점을 추천할 수 있다. 다시 말해, 보정된 편집점은 각 사용자와 유사한 타 사용자들의 편집 스타일에 대한 정보 및 각 사용자에 관련하여 누적된 편집 스타일이 고려되어 생성된 것일 수 있다.
추가적으로, 개개인에게 맞춤화된 맞춤 편집점 추천 모델은, 시간이 지날수록 고도화됨에 따라 추천 편집점의 최적화를 야기시킬 수 있다.
전술한 바와 같이, 프로세서(130)는 누적되는 데이터를 통한 추천 편집점을 지속적으로 정교화할 수 있다. 이에 따라, 서비스의 퀄리티가 상승할 수 있으며, 이는 사용자 규모의 확대를 야기시킬 수 있다. 사용자 규모의 확대를 통해 누적되는 데이터의 양이 방대해짐에 따라 빅데이터 구축이 가능해지며, 이는 추천 편집점을 더욱 정교화함으로써, 서비스의 질이 향상되는 선순환 시스템을 형성할 수 있다.
도 8은 본 발명의 일 실시예와 관련된 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법을 예시적으로 도시한 순서도이다.
본 발명의 일 실시예에 따르면, 상기 방법은, 복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축하는 단계(S110)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 방법은, 편집 스타일 데이터베이스에 대한 클러스터링을 수행하는 단계(S120)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 방법은, 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계(S130)를 포함할 수 있다.
전술한 도 8에 도시된 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 전술한 단계는 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.
도 9는 본 발명의 일 실시예와 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.
본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. 신경망은 일반적으로 “노드”라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 “노드”들은 “뉴런(neuron)”들로 지칭될 수도 있다. 신경망은 적어도 하나 이상의 노드들을 포함하여 구성된다. 신경망들을 구성하는 노드(또는 뉴런)들은 하나 이상의“링크”에 의해 상호 연결될 수 있다.
신경망 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 상술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.
하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호 연결하는 노드는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 신경망이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.
상술한 바와 같이, 신경망은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호 연결되어 신경망 내에서 입력 노드 및 출력 노드 관계를 형성한다. 신경망 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 신경망의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 신경망이 존재하는 경우, 두 개의 신경망들은 서로 상이한 것으로 인식될 수 있다.
신경망은 하나 이상의 노드들을 포함하여 구성될 수 있다. 신경망을 구성하는 노드들 중 일부는, 최초 입력 노드로부터의 거리들에 기초하여, 하나의 레이어(layer)를 구성할 수 있다, 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은, n 레이어를 구성할 수 있다. 최초 입력 노드로부터 거리는, 최초 입력 노드로부터 해당 노드까지 도달하기 위해 거쳐야 하는 링크들의 최소 개수에 의해 정의될 수 있다. 그러나, 이러한 레이어의 정의는 설명을 위한 임의적인 것으로서, 신경망 내에서 레이어의 차수는 상술한 것과 상이한 방법으로 정의될 수 있다. 예를 들어, 노드들의 레이어는 최종 출력 노드로부터 거리에 의해 정의될 수도 있다.
최초 입력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서 링크를 거치지 않고 데이터가 직접 입력되는 하나 이상의 노드들을 의미할 수 있다. 또는, 신경망 네트워크 내에서, 링크를 기준으로 한 노드 간의 관계에 있어서, 링크로 연결된 다른 입력 노드를 가지지 않는 노드들을 의미할 수 있다. 이와 유사하게, 최종 출력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서, 출력 노드를 가지지 않는 하나 이상의 노드들을 의미할 수 있다. 또한, 히든 노드는 최초 입력 노드 및 최후 출력 노드가 아닌 신경망을 구성하는 노드들을 의미할 수 있다. 본 발명의 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수와 동일할 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하다가 다시 증가하는 형태의 신경망일 수 있다. 또한, 본 발명의 다른 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수 보다 적을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 신경망일 수 있다. 또한, 본 발명의 또 다른 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 증가하는 형태의 신경망일 수 있다. 본 발명의 또 다른 일 실시예에 따른 신경망은 상술한 신경망들의 조합된 형태의 신경망일 수 있다.
딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다.
뉴럴 네트워크는 교사 학습(supervised learning), 비교사 학습(unsupervised learning) 및 반교사학습(semi supervised learning) 중 적어도 하나의 방식으로 학습될 수 있다. 뉴럴 네트워크의 학습은 출력의 오류를 최소화하기 위한 것이다. 뉴럴 네트워크의 학습에서 반복적으로 학습 데이터를 뉴럴 네트워크에 입력시키고 학습 데이터에 대한 뉴럴 네트워크의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 뉴럴 네트워크의 에러를 뉴럴 네트워크의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 뉴럴 네트워크의 각 노드의 가중치를 업데이트 하는 과정이다. 교사 학습의 경우 각각의 학습 데이터에 정답이 라벨링되어있는 학습 데이터를 사용하며(즉, 라벨링된 학습 데이터), 비교사 학습의 경우는 각각의 학습 데이터에 정답이 라벨링되어 있지 않을 수 있다. 즉, 예를 들어 데이터 분류에 관한 교사 학습의 경우의 학습 데이터는 학습 데이터 각각에 카테고리가 라벨링 된 데이터 일 수 있다. 라벨링된 학습 데이터가 뉴럴 네트워크에 입력되고, 뉴럴 네트워크의 출력(카테고리)과 학습 데이터의 라벨이 비교함으로써 오류(error)가 계산될 수 있다. 다른 예로, 데이터 분류에 관한 비교사 학습의 경우 입력인 학습 데이터가 뉴럴 네트워크 출력과 비교됨으로써 오류가 계산될 수 있다. 계산된 오류는 뉴럴 네트워크에서 역방향(즉, 출력 레이어에서 입력 레이어 방향)으로 역전파 되며, 역전파에 따라 뉴럴 네트워크의 각 레이어의 각 노드들의 연결 가중치가 업데이트 될 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learning rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 뉴럴 네트워크의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 뉴럴 네트워크의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 예를 들어, 뉴럴 네트워크의 학습 초기에는 높은 학습률을 사용하여 뉴럴 네트워크가 빠르게 일정 수준의 성능을 확보하도록 하여 효율성을 높이고, 학습 후기에는 낮은 학습률을 사용하여 정확도를 높일 수 있다.
뉴럴 네트워크의 학습에서 일반적으로 학습 데이터는 실제 데이터(즉, 학습된 뉴럴 네트워크를 이용하여 처리하고자 하는 데이터)의 부분집합일 수 있으며, 따라서, 학습 데이터에 대한 오류는 감소하나 실제 데이터에 대해서는 오류가 증가하는 학습 사이클이 존재할 수 있다. 과적합(overfitting)은 이와 같이 학습 데이터에 과하게 학습하여 실제 데이터에 대한 오류가 증가하는 현상이다. 예를 들어, 노란색 고양이를 보여 고양이를 학습한 뉴럴 네트워크가 노란색 이외의 고양이를 보고는 고양이임을 인식하지 못하는 현상이 과적합의 일종일 수 있다. 과적합은 머신러닝 알고리즘의 오류를 증가시키는 원인으로 작용할 수 있다. 이러한 과적합을 막기 위하여 다양한 최적화 방법이 사용될 수 있다. 과적합을 막기 위해서는 학습 데이터를 증가시키거나, 레귤라이제이션(regularization), 학습의 과정에서 네트워크의 노드 일부를 생략하는 드롭아웃(dropout) 등의 방법이 적용될 수 있다.
본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. (이하에서는 신경망으로 통일하여 기술한다.) 데이터 구조는 신경망을 포함할 수 있다. 그리고 신경망을 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망을 포함한 데이터 구조는 또한 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 학습을 위한 손실 함수를 포함할 수 있다. 신경망을 포함한 데이터 구조는 상기 개시된 구성들 중 임의의 구성 요소들을 포함할 수 있다. 즉 신경망을 포함한 데이터 구조는 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 트레이닝을 위한 손실 함수 등 전부 또는 이들의 임의의 조합을 포함하여 구성될 수 있다. 전술한 구성들 이외에도, 신경망을 포함한 데이터 구조는 신경망의 특성을 결정하는 임의의 다른 정보를 포함할 수 있다. 또한, 데이터 구조는 신경망의 연산 과정에 사용되거나 발생되는 모든 형태의 데이터를 포함할 수 있으며 전술한 사항에 제한되는 것은 아니다. 컴퓨터 판독가능 매체는 컴퓨터 판독가능 기록 매체 및/또는 컴퓨터 판독가능 전송 매체를 포함할 수 있다. 신경망은 일반적으로 노드라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 노드들은 뉴런(neuron)들로 지칭될 수도 있다. 신경망은 적어도 하나 이상의 노드들을 포함하여 구성된다.
데이터 구조는 신경망에 입력되는 데이터를 포함할 수 있다. 신경망에 입력되는 데이터를 포함하는 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망에 입력되는 데이터는 신경망 학습 과정에서 입력되는 학습 데이터 및/또는 학습이 완료된 신경망에 입력되는 입력 데이터를 포함할 수 있다. 신경망에 입력되는 데이터는 전처리(pre-processing)를 거친 데이터 및/또는 전처리 대상이 되는 데이터를 포함할 수 있다. 전처리는 데이터를 신경망에 입력시키기 위한 데이터 처리 과정을 포함할 수 있다. 따라서 데이터 구조는 전처리 대상이 되는 데이터 및 전처리로 발생되는 데이터를 포함할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.
데이터 구조는 신경망의 가중치를 포함할 수 있다. (본 명세서에서 가중치, 파라미터는 동일한 의미로 사용될 수 있다.) 그리고 신경망의 가중치를 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망은 복수개의 가중치를 포함할 수 있다. 가중치는 가변적일 수 있으며, 신경망이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변 될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 파라미터에 기초하여 출력 노드 값을 결정할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.
제한이 아닌 예로서, 가중치는 신경망 학습 과정에서 가변되는 가중치 및/또는 신경망 학습이 완료된 가중치를 포함할 수 있다. 신경망 학습 과정에서 가변되는 가중치는 학습 사이클이 시작되는 시점의 가중치 및/또는 학습 사이클 동안 가변되는 가중치를 포함할 수 있다. 신경망 학습이 완료된 가중치는 학습 사이클이 완료된 가중치를 포함할 수 있다. 따라서 신경망의 가중치를 포함한 데이터 구조는 신경망 학습 과정에서 가변되는 가중치 및/또는 신경망 학습이 완료된 가중치를 포함한 데이터 구조를 포함할 수 있다. 그러므로 상술한 가중치 및/또는 각 가중치의 조합은 신경망의 가중치를 포함한 데이터 구조에 포함되는 것으로 한다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.
신경망의 가중치를 포함한 데이터 구조는 직렬화(serialization) 과정을 거친 후 컴퓨터 판독가능 저장 매체(예를 들어, 메모리, 하드 디스크)에 저장될 수 있다. 직렬화는 데이터 구조를 동일하거나 다른 컴퓨팅 장치에 저장하고 나중에 다시 재구성하여 사용할 수 있는 형태로 변환하는 과정일 수 있다. 컴퓨팅 장치는 데이터 구조를 직렬화하여 네트워크를 통해 데이터를 송수신할 수 있다. 직렬화된 신경망의 가중치를 포함한 데이터 구조는 역직렬화(deserialization)를 통해 동일한 컴퓨팅 장치 또는 다른 컴퓨팅 장치에서 재구성될 수 있다. 신경망의 가중치를 포함한 데이터 구조는 직렬화에 한정되는 것은 아니다. 나아가 신경망의 가중치를 포함한 데이터 구조는 컴퓨팅 장치의 자원을 최소한으로 사용하면서 연산의 효율을 높이기 위한 데이터 구조(예를 들어, 비선형 데이터 구조에서 B-Tree, Trie, m-way search tree, AVL tree, Red-Black Tree)를 포함할 수 있다. 전술한 사항은 예시일 뿐 본 발명은 이에 제한되지 않는다.
데이터 구조는 신경망의 하이퍼 파라미터(Hyper-parameter)를 포함할 수 있다. 그리고 신경망의 하이퍼 파라미터를 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 하이퍼 파라미터는 사용자에 의해 가변되는 변수일 수 있다. 하이퍼 파라미터는 예를 들어, 학습률(learning rate), 비용 함수(cost function), 학습 사이클 반복 횟수, 가중치 초기화(Weight initialization)(예를 들어, 가중치 초기화 대상이 되는 가중치 값의 범위 설정), Hidden Unit 개수(예를 들어, 히든 레이어의 개수, 히든 레이어의 노드 수)를 포함할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.

Claims (9)

  1. 컴퓨팅 장치의 하나 이상의 프로세서에서 수행되는 방법에 있어서,
    복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축하는 단계;
    상기 편집 스타일 데이터베이스에 대한 클러스터링을 수행하는 단계; 및
    상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계;
    를 포함하며,
    편집 이력 정보는,
    편집점 추천 정보 및 상기 편집점 추천 정보에 대응하는 편집점 보정 정보를 포함하며,
    상기 클러스터링을 수행하는 단계는,
    상기 복수의 스트리밍 컨텐츠 정보 및 상기 복수의 편집 이력 정보 각각을 하나 이상의 클러스터 각각으로 분류하는 것을 특징으로 하며,
    상기 하나 이상의 클러스터 각각은,
    상기 복수의 사용자 각각의 편집 스타일을 분류하기 위한 기준이 되는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  2. 제1항에 있어서,
    상기 스트리밍 컨텐츠 정보는,
    컨텐츠 기본 정보 및 스트리밍 데이터를 포함하며,
    상기 컨텐츠 기본 정보는,
    사용자의 방송 컨텐츠에 관련한 정보를 포함하고,
    상기 스트리밍 데이터는,
    상기 방송 컨텐츠에 관련한 스트리밍 영상 데이터 및 상기 스트리밍 영상 데이터를 시청하는 복수의 시청자들의 반응에 관련한 시청자 반응 데이터를 포함하는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계는,
    상기 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보에 기초하여 복수의 학습 입력 데이터를 생성하고, 상기 각 스트리밍 컨텐츠 정보에 대응하는 하나 이상의 클러스터 각각에 기초하여 복수의 학습 출력 데이터를 생성하는 단계;
    상기 학습 입력 데이터 각각에 대응하는 상기 학습 출력 데이터 각각을 매칭하여 라벨링하여 학습 데이터 세트를 구축하는 단계; 및
    상기 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행하여 상기 편집 스타일 분류 모델을 생성하는 단계;
    를 포함하는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  5. 제1항에 있어서,
    상기 각 클러스터에 포함된 하나 이상의 편집 이력 정보에 기초하여 상기 각 클러스터에 대응하는 하나 이상의 스타일 편집점 추천 모델을 생성하는 단계;
    를 더 포함하며,
    상기 하나 이상의 스타일 편집점 추천 모델 각각은, 하나의 스트리밍 컨텐츠 정보에 대응하여 서로 상이한 편집 프레임을 추천하는 것을 특징으로 하는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  6. 컴퓨팅 장치의 하나 이상의 프로세서에서 수행되는 방법에 있어서,
    복수의 사용자 각각에 대응하는 복수의 스트리밍 컨텐츠 정보 및 복수의 편집 이력 정보를 획득하여 편집 스타일 데이터베이스를 구축하는 단계;
    상기 편집 스타일 데이터베이스에 대한 클러스터링을 수행하는 단계; 및
    상기 클러스터링 수행 결과에 기초하여 편집 스타일 분류 모델을 생성하는 단계;
    를 포함하며,
    상기 방법은,
    제1사용자의 제1스트리밍 컨텐츠 정보를 획득하는 단계;
    상기 제1스트리밍 컨텐츠 정보에 기초하여 제1편집점 추천 정보를 획득하는 단계;
    상기 편집 스타일 분류 모델을 활용하여 상기 제1스트리밍 컨텐츠 정보에 대응하는 제1클러스터를 식별하는 단계;
    상기 제1클러스터에 대응하는 제1스타일 편집점 추천 모델에 상기 제1편집점 추천 정보를 입력으로 하여 보정된 제1편집점 추천 정보를 획득하는 단계; 및
    상기 보정된 제1편집점 추천 정보에 기초하여 영상 편집 사용자 인터페이스를 생성하여 제공하는 단계; 를 더 포함하며,
    상기 영상 편집 사용자 인터페이스는,
    상기 제1편집점 추천 정보를 포함하는 영상 편집 화면을 포함하며, 상기 영상 편집 화면에 대한 사용자의 조정 입력을 허용하는 것을 특징으로 하는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  7. 제6항에 있어서,
    상기 영상 편집 사용자 인터페이스에 대한 상기 조정 입력에 기초하여 상기 보정된 제1편집점 추천 정보에 대응하는 제1편집점 보정 정보를 획득하는 단계;
    상기 보정된 제1편집점 추천 정보 및 상기 제1편집점 보정 정보에 기초하여 상기 제1사용자에 관련한 제1편집 이력 정보를 획득하는 단계; 및
    상기 제1편집 이력 정보를 통해 제1사용자 데이터베이스를 구축하는 단계;
    를 더 포함하는,
    사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법.
  8. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
    제1항 또는 제6항의 방법을 수행하는, 장치.
  9. 하드웨어인 컴퓨터와 결합되어, 제1항 또는 제6항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.
KR1020210106497A 2021-05-28 2021-08-12 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램 KR102354593B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220007543A KR20230024826A (ko) 2021-05-28 2022-01-19 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210069556 2021-05-28
KR1020210069556 2021-05-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220007543A Division KR20230024826A (ko) 2021-05-28 2022-01-19 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램

Publications (1)

Publication Number Publication Date
KR102354593B1 true KR102354593B1 (ko) 2022-01-24

Family

ID=80049721

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210106497A KR102354593B1 (ko) 2021-05-28 2021-08-12 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램
KR1020220007543A KR20230024826A (ko) 2021-05-28 2022-01-19 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220007543A KR20230024826A (ko) 2021-05-28 2022-01-19 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램

Country Status (1)

Country Link
KR (2) KR102354593B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116546091A (zh) * 2023-07-07 2023-08-04 深圳市四格互联信息技术有限公司 流式内容的推荐方法、装置、设备及存储介质
KR20230140849A (ko) * 2022-03-30 2023-10-10 중앙대학교 산학협력단 영상 컨텐츠 추천 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100085720A (ko) 2009-01-21 2010-07-29 삼성전자주식회사 하이라이트 영상 구성 방법 및 장치
KR20180035134A (ko) * 2016-09-28 2018-04-05 (주) 프람트 타임라인 기반의 소셜 네트워크 서비스 제공시스템
KR20200065811A (ko) * 2018-11-30 2020-06-09 전상규 클라우드 기반의 그래픽 영상 통합 방송 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100085720A (ko) 2009-01-21 2010-07-29 삼성전자주식회사 하이라이트 영상 구성 방법 및 장치
KR20180035134A (ko) * 2016-09-28 2018-04-05 (주) 프람트 타임라인 기반의 소셜 네트워크 서비스 제공시스템
KR20200065811A (ko) * 2018-11-30 2020-06-09 전상규 클라우드 기반의 그래픽 영상 통합 방송 시스템

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230140849A (ko) * 2022-03-30 2023-10-10 중앙대학교 산학협력단 영상 컨텐츠 추천 장치 및 방법
KR102590388B1 (ko) * 2022-03-30 2023-10-16 중앙대학교 산학협력단 영상 컨텐츠 추천 장치 및 방법
CN116546091A (zh) * 2023-07-07 2023-08-04 深圳市四格互联信息技术有限公司 流式内容的推荐方法、装置、设备及存储介质
CN116546091B (zh) * 2023-07-07 2023-11-28 深圳市四格互联信息技术有限公司 流式内容的推荐方法、装置、设备及存储介质

Also Published As

Publication number Publication date
KR20230024826A (ko) 2023-02-21

Similar Documents

Publication Publication Date Title
KR102354592B1 (ko) 스트리밍 데이터 기반 영상 편집점 추천 방법, 서버 및 컴퓨터프로그램
EP3803846B1 (en) Autonomous generation of melody
Ferreira et al. Learning to dance: A graph convolutional adversarial network to generate realistic dance motions from audio
US20190122409A1 (en) Multi-Dimensional Puppet with Photorealistic Movement
WO2021178379A1 (en) Systems and methods for automating video editing
KR102354593B1 (ko) 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램
KR102301097B1 (ko) 번역 단말들의 평가 정보에 기반하여 전문 번역 서비스 플랫폼을 제공하기 위한 방법
Roy et al. iMusic: a session-sensitive clustered classical music recommender system using contextual representation learning
CN113515669A (zh) 基于人工智能的数据处理方法和相关设备
KR102434666B1 (ko) 사전 데이터베이스를 활용하여 음성 데이터에 기반한 텍스트를 생성하기 위한 방법 및 컴퓨팅 장치
US20220327402A1 (en) Automated Compositing of Content Compilations
KR102286638B1 (ko) 하이라이트 영상 자동 편집을 위한 컴퓨터 프로그램
US20230419579A1 (en) Three-dimensional face animation from speech
CN117216234A (zh) 基于人工智能的话术改写方法、装置、设备及存储介质
KR102425239B1 (ko) 사용자 데이터 기반 딥러닝을 통한 추천 편집점 정교화 방법, 서버 및 컴퓨터프로그램
US11533518B2 (en) Audio customization in streaming environment
KR102303626B1 (ko) 단일 이미지에 기반하여 비디오 데이터를 생성하기 위한 방법 및 컴퓨팅 장치
KR102623459B1 (ko) 사용자의 보컬 평가에 기반한 오디션 이벤트 서비스 제공 방법, 장치 및 시스템
Rivera Practical TensorFlow. js
KR102623419B1 (ko) 사용자의 단말을 이용한 보컬 데이터 수집 및 이를 이용한 보컬 평가 방법
US11967000B2 (en) Methods and systems for generating one or more emoticons for one or more users
KR102564182B1 (ko) 인공지능 모델을 활용하여 영상 데이터 기반 얼굴 표정 영상 추출 및 이를 활용한 콘텐츠 생성 방법, 장치 및 시스템
KR102623424B1 (ko) 사용자 맞춤형 보컬 평가 보고서 제공 방법
KR102661431B1 (ko) 분류된 고객 음성 피드백을 생성하는 방법
US20220382806A1 (en) Music analysis and recommendation engine

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant