KR101606190B1 - 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템 - Google Patents

라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템 Download PDF

Info

Publication number
KR101606190B1
KR101606190B1 KR1020120091087A KR20120091087A KR101606190B1 KR 101606190 B1 KR101606190 B1 KR 101606190B1 KR 1020120091087 A KR1020120091087 A KR 1020120091087A KR 20120091087 A KR20120091087 A KR 20120091087A KR 101606190 B1 KR101606190 B1 KR 101606190B1
Authority
KR
South Korea
Prior art keywords
music
information
signal
radio signal
database
Prior art date
Application number
KR1020120091087A
Other languages
English (en)
Other versions
KR20140025044A (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 KR1020120091087A priority Critical patent/KR101606190B1/ko
Publication of KR20140025044A publication Critical patent/KR20140025044A/ko
Application granted granted Critical
Publication of KR101606190B1 publication Critical patent/KR101606190B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4826End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템이 개시된다. 음악 추천 방법은 현재의 상황 정보를 기초로 질의어를 생성하는 단계, 상기 생성한 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색하는 단계, 상기 사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링하는 단계 및 상기 필터링한 음악 정보를 기초로 재생 목록을 생성하는 단계를 포함할 수 있다.

Description

라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템{MUSIC RECOMMENDATION METHOD BASED ON USER CONTEXT AND PREFERENCE USING RADIO SIGNAL ANALYSIS AND MUSIC RECOMMENDATION SYSTEM USING THEREOF}
본 발명의 실시예들은 라디오 방송 신호의 음원을 분석하여 선곡 데이터베이스를 구축하고 이를 활용하여 사용자의 상황과 선호도가 반영된 음악을 추천하는 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템에 관한 것이다.
최근 스마트 폰(Smart Phone)과 같은 온라인 휴대기기가 대중화됨에 따라 사용자는 수많은 디지털 미디어에 대한 접근이 용이해졌고, 이에 따라 효과적인 정보 검색 및 추천 방식의 필요성이 증가하고 있다. 특히, 음악을 추천하는데 있어서 사용자가 해당 음악에 대해 사전 지식이 없어도 해당 사용자에게 적합한 음악을 추천할 수 있는 방식에 대한 요구가 증가하고 있다.
음악 추천 기법은 음악 정보 검색에서 더 나아가 사용자의 취향, 환경 등을 반영하여 제공하는 알고리즘이다. 일반적으로 음악 추천 기법은 사용자의 취향 및 환경을 분석하기 위해 사용자의 입력을 받거나, 사용자의 청취패턴, 즉 사용자가 과거 재생했던 음악 목록 등을 활용한다. 그러나, 이러한 방식은 사전에 입력된 사용자의 정보와 음악에 대한 메타정보를 바탕으로 해당 사용자에게 적합한 음악에 대해 학습해야 하는 과정이 필요하다. 따라서, 종래의 음악 추천 기법은 사용자에게 적합한 음악을 추천하기 위하여 신뢰할 수 있는 사전 지식이 필요하다. 예를 들어, 종래의 음악 추천 기법에서는 음악 전문가의 도움을 받거나 특정한 피험자의 참여를 통해 사전 지식을 확보한다. 이러한 방식은 다양한 음악과 다양한 사용자의 연령층, 성향을 반영하기 위해서 상당한 시간과 노력을 필요로 한다. 또한 전문가의 피험자의 지식에 대한 완벽한 신뢰가 불가능한 문제가 있다.
따라서 기존의 음악 추천 기법은 정확도 및 만족도를 높이기 위해서 다양한 사용자의 취향, 상황 정보를 반영한 신뢰할 수 있는 많은 양의 데이터가 필요하다. 또한, 이러한 데이터를 지속적으로 취득할 수 있는 자동화된 기법에 대한 연구가 필요하다는 문제점이 있다.
사용자가 음악에 대해 사전 지식이 없어도 해당 사용자에게 적합한 음악을 추천할 수 있는 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템이 제공된다.
음악 전문가의 도움을 받거나 사용자의 참여를 통해 사전지식을 확보하지 않고도 사용자가 원하는 음악을 추천할 수 있는 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템이 제공된다.
보다 빠르게 안정적으로 사용자에게 음악을 추천할 수 있는 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템이 제공된다.
음악 추천 방법은 현재의 상황 정보를 기초로 질의어를 생성하는 단계, 상기 생성한 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색하는 단계, 상기 사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링하는 단계 및 상기 필터링한 음악 정보를 기초로 재생 목록을 생성하는 단계를 포함할 수 있다.
일측에 따르면, 상기 현재의 상황 정보는 상기 사용자가 위치하는 지역의 현재 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함하고, 상기 사용자의 설정 정보는 상기 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함할 수 있다.
다른 측면에 따르면, 상기 질의어를 생성하는 단계는 컴퓨터의 현재 시간 정보 및 기상청에서 제공되는 현재 날씨 정보에 기초하여 생성된 상기 현재 상황 정보를 기초로 기 설정된 질의 조건의 우선 순위에 따라 복수개의 질의어를 생성하는 단계일 수 있다.
또 다른 측면에 따르면, 상기 음악 정보를 검색하는 단계는 상기 생성한 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 검색하는 단계 및 상기 검색된 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 기 설정된 유사도 이상의 특징 정보를 포함하는 음악 정보를 검색하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 음악 정보를 검색하는 단계는 상기 생성한 복수개의 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 각각 검색하는 단계 및 상기 검색된 각각의 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 매치되는 특징 정보를 포함하는 음악 정보를 각각 검색하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 재생 목록을 생성하는 단계는 상기 필터링된 음악 정보를 각 음악 정보가 선곡된 횟수를 기초로 정렬하여 상기 재생 목록을 생성하는 단계일 수 있다.
또 다른 측면에 따르면, 상기 데이터베이스는 음성과 음악이 혼재된 라디오 신호가 방송될 때의 상황 정보를 수집하는 단계, 상기 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하는 단계, 상기 분리한 음악 신호에서 특징 정보를 추출하는 단계, 상기 추출한 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 단계 및 상기 중복되는 구간이 병합된 특징 정보를 상기 수집한 상황 정보 별로 저장하는 단계를 통해 구축될 수 있다.
컴퓨터로 구현되는 데이터베이스 구축 방법은 음성과 음악이 혼재된 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하는 단계, 상기 분리한 음악 신호에서 특징 정보를 추출하는 단계, 상기 추출한 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 단계 및 상기 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스를 구축하는 단계를 포함할 수 있다.
일측에 따르면, 상기 음악 신호를 분리하는 단계는 상기 라디오 신호를 실시간으로 샘플링하는 단계, 상기 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하여 상기 샘플링한 라디오 신호가 음악 신호인지 판단하는 단계 및 상기 샘플링한 라디오 신호가 기 설정된 시간 이상 음악 신호로 판단되는 경우 상기 샘플링한 라디오 신호를 녹음함으로써 상기 라디오 신호에서 음악 신호를 분리하는 단계를 포함할 수 있다.
다른 측면에 따르면, 방송 주파수 대역에 존재하는 각 음계에 대한 프로파일을 생성하는 단계 및 상기 생성한 프로파일을 기초로 상기 정합도를 측정하기 위한 가중치 벡터를 생성하는 단계를 더 포함하고, 상기 샘플링한 라디오 신호가 음악 신호인지 판단하는 단계는 상기 생성한 가중치 벡터와 상기 샘플링한 라디오 신호에서 추출된 특성 벡터를 비교함으로써 상기 샘플링한 라디오 신호가 음악 신호인지 판단하는 단계일 수 있다.
또 다른 측면에 따르면, 상기 특징 정보가 중복되는 구간을 병합하는 단계는 상기 추출한 복수개의 특징 정보 간의 유사도를 계산하여 SSM(Self-Similarity Matrix)을 생성하는 단계 및 상기 생성한 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 특징 정보가 중복되는 구간을 병합하는 단계 이후에, 상기 추출된 복수개의 특징 정보 중 가장 긴 길이를 가지는 특징 정보를 상기 음악 신호에 대한 대표 특징 정보로 결정하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 라디오 신호가 방송될 때의 상황 정보를 수집하는 단계를 더 포함하고, 상기 데이터베이스를 구축하는 단계는 상기 수집한 상황 정보 별로 상기 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스를 구축하는 단계일 수 있다.
또 다른 측면에 따르면, 상기 상황 정보는 상기 라디오 신호가 방송될 때의 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함할 수 있다.
또 다른 측면에 따르면, 상기 구축한 데이터베이스는 상기 사용자에게 음악을 추천하는 음악 추천 시스템이 현재의 상황 정보를 기초로 생성한 질의어를 이용하여 음악 정보를 검색 시 이용될 수 있다.
음악 추천 시스템은 현재의 상황 정보를 기초로 질의어를 생성하는 질의어 생성부, 상기 생성한 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색하는 음악 정보 검색부, 사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링하는 필터링부 및 상기 필터링한 음악 정보를 기초로 재생 목록을 생성하는 재생 목록 생성부를 포함할 수 있다.
데이터베이스 구축 시스템은 음성과 음악 혼재된 라디오 신호가 방송될 때의 상황 정보를 수집하는 상황 정보 수집부, 상기 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하는 음악 신호 분리부, 상기 분리한 음악 신호에서 특징 정보를 추출하는 특징 정보 추출부, 상기 추출한 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 중복 구간 병합부 및 상기 중복되는 구간이 병합된 특징 정보를 상기 수집한 상황 정보 별로 저장하는 특징 정보 저장부를 포함할 수 있다.
과거 방송된 라디오 신호와 실시간으로 방송되는 라디오 신호를 자동으로 분석하여 사용자의 취향/상황에 적합한 음악을 추천함으로써 사용자가 자신이 원하는 음악에 대해 사전 지식이 없어도 해당 사용자에게 적합한 음악을 추천할 수 있다.
과거 방송된 라디오 신호와 실시간으로 방송되는 라디오 신호에서 선곡된 음악을 분석하여 사용자의 취향/상황에 적합한 음악을 추천할 수 있기 때문에 음악 전문가의 도움을 받거나 사용자의 참여를 통해 사전지식을 확보하지 않고도 사용자가 원하는 음악을 추천할 수 있다.
음악 신호에서 특징 정보가 중복되는 구간을 병합한 후 이를 방송 당시의 상황 정보 별로 저장함으로써 보다 빠르게 음악 정보를 검색할 수 있기 때문에 보다 빠르고 안정적으로 사용자에게 음악을 추천할 수 있다.
도 1은 본 발명의 일실시예에 있어서, 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일실시예에 있어서, 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 시스템의 인터페이스를 나타내는 예시도이다.
도 3은 본 발명의 일실시예에 있어서, 사용자 상황 및 선호도를 반영하는 음악을 추천하기 위한 데이터베이스를 구축하는 시스템을 나타내는 블록도이다.
도 4는 본 발명의 일실시예에 있어서, 라디오 신호에서 음악과 음성을 분리하는 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 라디오 신호의 주파수와 음계 주파수 간의 정합도 측정을 위한 가중치 벡터 생성 과정을 나타내는 도면이다.
도 6은 본 발명의 일실시예에 있어서, 음악과 음성이 혼재된 라디오 신호에 대한 처리 과정을 나타내는 도면이다.
도 7은 본 발명의 일실시예에 있어서, SSM(Self-Similarity Matrix)를 나타내는 도면이다.
도 8은 본 발명의 일실시예에 있어서, 음악 구조 인식을 위한 신호 처리 과정을 나타내는 도면이다.
도 9는 본 발명의 일실시예에 있어서, 라디오의 음원을 분석하여 사용자 상황 및 선호도를 반영하는 음악을 추천하는 방법을 나타내는 흐름도이다.
도 10은 본 발명의 일실시예에 있어서, 사용자 상황 및 선호도를 반영하는 음악을 추천하기 위한 데이터베이스를 구축하는 방법을 나타내는 흐름도이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 있어서, 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 시스템을 나타내는 블록도이다.
도 1을 참조하면, 본 발명에 따른 음악 추천 시스템(100)은 질의어 생성부(110), 음악 정보 검색부(120), 필터링부(130) 및 재생 목록 생성부(140)를 포함한다.
질의어 생성부(110)는 현재의 상황 정보를 기초로 사용자에게 추천할 음악 정보의 검색을 위한 질의어를 생성한다. 여기서, 현재의 상황 정보는 사용자가 위치하는 지역의 현재 시간, 요일, 온도, 날씨, 계절 등에 대한 정보를 포함할 수 있다. 상기 질의어 생성부(110)는 상기 현재의 상황 정보를 컴퓨터의 현재 시간 정보 및 기상청에서 제공되는 현재의 날씨 정보를 기초로 생성할 수 있다.
일 예로, 음악 추천 시스템(100)은 음악 추천 시스템(100)의 현재 시간 정보로부터 현재 시간(아침, 오전, 정오, 오후, 저녁, 새벽 등), 요일(월, 화, 수 등), 계절(1월, 2월, 3월 등) 등에 대한 정보를 추출하고, 기상청으로부터 제공되는 날씨 XML(eXtensible Markup Language)로부터 현재 사용자가 위치하는 지역의 날씨, 온도 등 정보를 추출하여 상기 사용자가 위치하는 지역에 대한 현재의 상황 정보를 생성할 수 있다. 그러나, 사용자의 현재 지역과 음악 추천 시스템(100)이 위치하는 지역이 다른 경우(예를 들어, 사용자의 현재 지역이 뉴욕이고 음악 추천 시스템이 위치하는 지역이 서울인 경우), 질의어 생성부(110)는 사용자의 단말로부터 현재 시간 정보를 수신하여 해당 사용자가 위치하는 지역의 현재 시간, 요일, 계절 등에 정보를 추출하고, 기상청에서 제공되는 해당 사용자의 지역에 대한 현재의 날씨 정보를 기초로 상기 현재의 상황 정보를 생성할 수도 있다.
음악 정보 검색부(120)는 질의어 생성부(110)에서 생성된 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스(150)에서 음악 정보를 검색한다.
구체적으로, 음악 정보 검색부(120)는 질의어 생성부(110)에서 생성된 질의어를 이용하여 데이터베이스(150)에서 현재의 상황 정보에 해당하는 과거의 상황 정보가 검색될 때까지 상기 현재의 상황 정보의 우선순위에 따라 순차적으로 검색하고, 검색된 과거의 상황 정보에 관련된 음악 정보의 특징 정보를 추출할 수 있다. 이때, 상기 과거의 상황 정보에 관련된 음악 정보는 과거의 특정 상황에서 라디오에서 선곡되어 방송된 음악 정보일 수 있는데 사용되는 특징 정보는 Mel-Frequency Cepstral Coefficients, Short Time Energy, Zero Crossing Rate, Spectral Rolloff, Spectral Flux, Spectral Centroid 등일 수 있다. 이후, 음악 정보 검색부(120)는 추출한 특징 정보와 기 설정된 유사도 이상의 특징 정보를 포함하는 음악 정보를 사용자에게 추천할 음악 정보로서 다음의 표 1과 같은 데이터베이스(150)의 선곡 음악 테이블을 이용하여 검색하고 추출할 수 있다.
속성 비고 수집 방법
Id 레코드 id(primary key)
Day 요일(월, 화, 수, 목, 금, 토, 일) 컴퓨터 시간
Month 월(계절) 컴퓨터 시간
Time 시간(아침, 오전, 정오, 오후, 저녁, 새벽) 컴퓨터 시간
Weather 날씨 기상청 날씨 xml
Feature vector MFCC(2~6), Spectral Rolloff, Spectral Centroid, Spectral Flux, Zero Crossing Rate 인식된 음악에 음악 추출
알고리즘 적용
이를 위하여 음악 추천 시스템(100)은 상기 데이터베이스(150)를 구축하는 데이터베이스 구축부(미도시)를 더 포함할 수 있다. 데이터베이스 구축부는 음성과 음악이 혼재된 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하고 분리한 음악 신호에서 특징 정보를 추출한다. 그리고, 추출한 특징 정보를 분석하여 음악 신호에서 특징 정보가 중복되는 구간을 병합한 후 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스(150)를 구축할 수 있다.
구체적으로, 데이터베이스 구축부는 라디오 신호가 방송된 당시의 상황 정보를 수집할 수 있다. 그리고, 과거에 방송된 라디오 신호를 샘플링하거나 현재 방송되고 있는 라디오 신호를 실시간으로 샘플링할 수 있다.
예를 들어, 데이터베이스 구축부는 라디오 신호를 실시간으로 샘플링하고 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하여 상기 샘플링한 라디오 신호가 음악 신호인지 판단한다. 이 때, 데이터베이스 구축부는 상기 샘플링한 라디오 신호가 기 설정된 시간(예를 들어, 5초) 이상 음악 신호로 판단되면 상기 샘플링한 라디오 신호를 녹음함으로써 상기 라디오 신호에서 음성 신호와 음악 신호를 분리하여 음악 신호만을 녹음할 수 있다.
여기서, 데이터베이스 구축부는 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하기 위하여 방송 주파수 대역에 존재하는 각 음계에 대한 프로파일을 생성하고 상기 생성한 프로파일을 기초로 가중치 벡터를 생성할 수 있다. 그리고, 상기 생성한 가중치 벡터와 상기 샘플링한 라디오 신호에서 추출된 특성 벡터를 비교함으로써 상기 샘플링한 라디오 신호가 음성 신호인지 또는 음악 신호인지를 판단할 수 있다.
이후, 데이터베이스 구축부는 라디오 신호에서 분리된 음악 신호에서 특징 정보들을 추출하고, 추출한 복수개의 특징 정보 간의 유사도를 계산하여 SSM(Self-Similarity Matrix)을 생성할 수 있다. 그리고, 생성한 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간 즉, 음악의 반복되는 구간, 변화가 없는 구간 또는 유사한 구간을 병합하고, 병합된 특징 정보를 상기 수집한 라디오 신호가 방송된 당시의 상황 정보 별로 저장할 수 있다.
이때, 데이터베이스 구축부는 추출된 복수개의 특징 정보 중 가장 긴 길이를 가지는 특징 정보를 해당 음악 정보에 대한 대표 특징 정보로 결정함으로써 추천 음악 검색 시 보다 빠르게 음악 정보가 검색되도록 할 수 있다.
한편, 상기 질의어 생성부(110)는 하나의 질의어 만을 생성하는 것이 아니라, 현재의 상황 정보를 기초로 기 설정된 질의 조건의 우선 순위에 따라 복수개의 질의어를 생성할 수도 있다. 상기 우선 순위는 점진적으로 질의 조건이 완화되도록 설정될 수 있다.
일 예로, 질의어 생성부(110)는 현재 시간에 가중치를 적용한 제1 질의어를 생성하고, 날씨에 가중치를 적용한 제2 질의어를 생성할 수 있다. 이 경우, 음악 정보 검색부(120)는 데이터베이스(150)에서 제1 질의어에 해당하는 과거의 상황 정보와 제2 질의어에 해당하는 과거의 상황 정보를 각각 검색하고, 상기 검색된 각각의 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 매치되는 특징 정보를 포함하는 음악 정보를 각각 검색할 수 있다. 이 때, 각각의 질의어 별로 검색된 음악 정보는 각각의 음악 정보가 선곡된 횟수를 기초로 선택될 수도 있다.
음악 정보 검색부(120)를 통해 복수개의 음악 정보가 검색되면, 필터링부(130)는 사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링한다. 이 때, 사용자의 설정 정보는 상기 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함할 수 있다.
일 예로, 필터링부(130)는 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함하는 사용자의 설정 정보를 해당 사용자의 단말로부터 입력 받아 음악 정보 검색부(120)에서 검색된 음악 정보들을 필터링함으로써 각각의 사용자 별로 개인적 취향 등이 반영된 음악 정보가 추천되도록 할 수 있다.
재생 목록 생성부(140)는 필터링부(130)에서 필터링된 음악 정보를 기초로 재생 목록을 생성한다. 이 때, 재생 목록 생성부(140)는 필터링부(130)에서 필터링된 음악 정보를 각 음악 정보가 선곡된 횟수를 기초로 정렬하여 재생 목록을 생성할 수 있다.
따라서, 본 발명에 따른 음악 추천 시스템(100)은 과거 방송된 라디오 신호와 실시간으로 방송되는 라디오 신호를 자동으로 분석하여 사용자의 취향 및 상황에 적합한 음악을 추천할 수 있기 때문에 사용자는 자신이 원하는 음악에 대한 사전 지식이 없어도 원하는 음악을 추천 받을 수 있다.
또한, 본 발명에 따른 음악 추천 시스템(100)은 과거 방송되거나 실시간으로 방송되는 라디오 신호에서 선곡된 음악을 분석하여 사용자의 취향/상황에 적합한 음악을 추천하기 때문에, 별도로 음악 전문가의 도움을 받거나 사용자의 참여를 통해 사전지식을 확보하지 않고도 사용자가 원하는 음악을 추천할 수 있다.
뿐만 아니라, 본 발명에 따른 음악 추천 시스템(100)은 음악 신호에서 특징 정보가 중복되는 구간을 병합한 후 이를 방송 당시의 상황 정보 별로 저장하기 때문에 데이터베이스에 저장된 수많은 음악 정보 중에서 사용자가 원하는 음악 정보를 보다 빠르게 검색할 수 있다.
도 2는 본 발명의 일실시예에 있어서, 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 시스템의 인터페이스를 나타내는 예시도이다.
본 발명에 따른 음악 추천 시스템은 도 2(a)에 도시된 것과 같은 웹 기반 인터페이스를 통해 사용자에게 음악 추천 서비스를 제공하거나, 도 2(b)에 도시된 것과 같은 모바일 인터페이스를 통해 사용자에게 음악 추천 서비스를 제공할 수 있다.
도 2에 도시된 것과 같이 본 발명에 따른 음악 추천 시스템은 실제 라디오의 조작 방법과 유사한 간단하고 손쉬운 사용자 인터페이스를 통해 자동으로 음악을 추천하기 때문에, 사용자는 원하는 음악에 대한 사전지식이 없이도 자신의 상황 및 선호도가 반영된 음악을 청취할 수 있고, 음악 추천 시스템은 추천 결과에 대한 사용자의 피드백을 음악 추천 서비스에 반영할 수 있다.
도 3은 본 발명의 일실시예에 있어서, 사용자 상황 및 선호도를 반영하는 음악을 추천하기 위한 데이터베이스를 구축하는 시스템을 나타내는 블록도이다. 이하, 상술한 데이터베이스가 음악 추천 시스템과는 별도의 데이터베이스 구축 시스템을 통해 구축되는 경우에 대해 설명한다.
데이터베이스 구축 시스템은 음악 신호 분리부(310), 특징 정보 추출부(320), 중복 구간 병합부(330) 및 특징 정보 저장부(340)를 포함한다.
음악 신호 분리부(310)는 음성과 음악이 혼재된 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리한다. 이하, 음악 신호 분리부(310)가 라디오 신호에서 음악 신호를 분리하는 과정을 도 4를 참조하여 보다 상세히 설명한다.
도 4는 본 발명의 일실시예에 있어서, 라디오 신호에서 음악과 음성을 분리하는 과정을 설명하기 위한 도면이다.
도 4를 참조하면, 음악 신호 분리부(310)는 먼저 라디오 신호를 실시간으로 샘플링한다. 그리고, 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하여 상기 샘플링한 라디오 신호가 음악 신호인지 판단한다. 이 때, 음악 신호 분리부(310)는 상기 샘플링한 라디오 신호가 음성 신호로 인식되면 상기 샘플링한 라디오 신호를 저장하지 않고(도 4a 참조), 상기 샘플링한 라디오 신호가 기 설정된 시간(예를 들어, 5초) 이상 음악 신호로 인식되면 상기 샘플링한 라디오 신호를 녹음할 수 있다(도 4b 참조). 이후, 녹음 중인 라디오 신호가 일정 시간 이상 음악 신호가 아닌 것으로 인식되면, 음악 신호 분리부(310)는 녹음을 중지하고 이전까지 녹음된 데이터를 웨이브(wave) 포맷으로 저장함으로써 라디오 신호에서 음성 신호 광고의 CM송(commercial song), 로고송(logo song) 등을 제거하고 음악 신호만을 인식하여 분리할 수 있다.
도 5는 본 발명의 일실시예에 있어서, 라디오 신호의 주파수와 음계 주파수 간의 정합도 측정을 위한 가중치 벡터 생성 과정을 나타내는 도면이고, 도 6은 본 발명의 일실시예에 있어서, 음악과 음성이 혼재된 라디오 신호에 대한 처리 과정을 나타내는 도면이다. 이하, 도 5 및 도 6를 참조하여 라디오 신호에서 음악 신호를 분리하는 과정을 보다 상세히 설명한다.
음악 신호와 음성 신호의 차이점 중 하나는, 음악 신호는 특정 주파수대(음계)에 주파수가 집중된다는 것이다. 따라서, 음악 신호 분리부(310)는 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하기 위하여, 도 5에 도시된 것과 같이 방송 주파수 대역에 존재하는 각 음계에 대한 프로파일(scale frequency)을 생성하고, 이를 기초로 정합도를 측정하기 위한 가중치 벡터를 생성할 수 있다.
도 5와 같은 과정을 통해 가중치 벡터가 생성되면, 음악 신호 분리부(310)는 도 6에 도시된 것과 같이 라디오 신호(Mixed Radio Signal)와 상기 가중치 백터 간의 부정합(mismatch)의 정도를 측정하고, 이를 기초로 이진화(Thresholding)를 수행하여 음성 신호와 음악 신호를 분류할 수 있다.
특징 정보 추출부(320)는 음악 신호 분리부(310)에서 분리된 음악 신호에서 특징 정보를 추출하고, 중복 구간 병합부(330)는 특징 정보 추출부(320)에서 추출된 특징 정보를 분석하여 음악 신호에서 특징 정보가 중복되는 구간을 병합한다. 이하, 도 7 및 도 8을 참조하여 음악 신호에서 특징 정보가 중복되는 구간을 병합하는 과정을 보다 상세히 설명한다.
도 7은 본 발명의 일실시예에 있어서, SSM(Self-Similarity Matrix)를 나타내는 도면이고, 도 8은 본 발명의 일실시예에 있어서, 음악 구조 인식을 위한 신호 처리 과정을 나타내는 도면이다.
빠른 음악 추천/검색을 위해서는 특성 벡터를 효율적으로 저장해야 한다. 그러나, 기존의 저장 방식은 짧은 시간단위(30ms~500ms)의 샘플링으로 인하여, 음악 신호에 중복되는 특성이 있음에도 불구하고 긴 길이(400~8000개의 벡터 집합)를 갖는 데이터를 저장하기 때문에 시스템의 공간적 낭비가 심하고 검색/추천 시 소요되는 계산량 및 시간이 크다는 문제점이 있다. 따라서, 본 발명에 따른 데이터베이스 구축 시스템은 반복되는 구간과 변화가 없는 구간을 인식하여 일정한 구조를 바탕으로 특성 벡터 저장한다.
이를 위하여 중복 구간 병합부(330)는 특징 정보 추출부(320)에서 추출된 복수개의 특징 정보 간의 코사인 유사도를 계산하여 도 7과 같은 SSM(Self-Similarity Matrix)을 생성할 수 있다. 도 7의 적색 부분은 특징 정보가 유사한 부분으로, 중복 구간 병합부(330)는 해당 영역을 정확히 찾아냄으로써 음악의 반복되는 구간, 유사한 구간을 알아낼 수 있고, 이를 구조화 할 수 있다.
SSM이 생성되면 중복 구간 병합부(330)는 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간 즉, 음악의 반복되는 구간, 변화가 없는 구간 또는 유사한 구간을 병합하고, 병합된 특징 정보를 상기 수집한 상황 정보 별로 저장할 수 있다.
예를 들어, 중복 구간 병합부(330)는 SSM에서 경계부분을 찾기 위하여 도 8과 같은 신호 처리 과정을 수행할 수 있다. 먼저, 도 8(a)와 같이 20샘플 길이를 갖는 윈도우를 적용, 윈도우 내부에서 행 방향의 표준 편차를 계산하고 총합을 취함으로써 얻어진 도 8(b)와 같은 파형에서 도 8(c)와 같이 피크(local maxima)를 찾는다. 그리고, 도 8(d)와 같이 피크를 기준으로 음악을 분할한 후 SSM에 기반한 클러스터링 알고리즘을 적용하여 도 8(e)와 같이 각 세그먼트를 분류한다. 이후, 인접한 동일 클러스터의 세그먼트를 병합하면, 음악의 모든 세그먼트는 고유의 클러스터를 갖게 되고, 동일 클러스터인 세그먼트들은 노래의 반복되는 부분이거나 유사도가 크게 높은 부분이라 판단할 수 있다.
특징 정보 저장부(340)는 상술한 과정을 통해 중복되는 구간이 병합된 특징 정보를 저장한다. 이때, 복수개의 특징 정보 중 가장 긴 길이를 가지는 특징 정보는 해당 음악 정보에 대한 대표 특징 정보로 결정됨으로써 추천 음악 검색 시 보다 빠르게 음악 정보가 검색되도록 할 수 있다.
한편, 데이터베이스 구축 시스템(300)은 라디오 신호가 방송될 당시의 상황 정보를 수집하는 상황 정보 수집부(미도시)를 더 포함할 수 있다.
이 경우, 특징 정보 저장부(340)는 상황 정보 수집부에서 수집된 상황 정보 별로 중복되는 구간이 병합된 특징 정보를 저장할 수 있다. 여기서, 상기 상황 정보는 상기 라디오 신호가 방송될 때의 시간, 요일, 온도, 날씨, 계절 등에 대한 정보를 포함할 수 있다.
이와 같은 과정을 통해 구축된 데이터베이스는 음악 추천 시스템이 현재의 상황 정보를 기초로 생성한 질의어를 이용하여 음악 정보를 검색할 때 이용될 수 있다.
도 9는 본 발명의 일실시예에 있어서, 라디오의 음원을 분석하여 사용자 상황 및 선호도를 반영하는 음악을 추천하는 방법을 나타내는 흐름도이다. 이하, 도 9를 참조하여 본 발명에 따른 음악 추천 방법에 대해 설명한다.
음악 추천 시스템은 먼저 현재의 상황 정보를 기초로 사용자에게 추천할 음악 정보의 검색을 위한 질의어를 생성한다(910). 여기서, 현재의 상황 정보는 사용자가 위치하는 지역의 현재 시간, 요일, 온도, 날씨, 계절 등에 대한 정보를 포함할 수 있다. 상기 현재의 상황 정보는 컴퓨터의 현재 시간 정보 및 기상청에서 제공되는 현재의 날씨 정보를 기초로 생성될 수 있다.
일 예로, 음악 추천 시스템은 음악 추천 시스템의 현재 시간 정보로부터 현재 시간(아침, 오전, 정오, 오후, 저녁, 새벽 등), 요일(월, 화, 수 등), 계절(1월, 2월, 3월 등) 등에 대한 정보를 추출하고, 기상청으로부터 제공되는 날씨 XML(eXtensible Markup Language)로부터 현재 사용자가 위치하는 지역의 날씨, 온도 등 정보를 추출하여 상기 사용자가 위치하는 지역에 대한 현재의 상황 정보를 생성할 수 있다. 그러나, 사용자의 현재 지역과 음악 추천 시스템이 위치하는 지역이 다른 경우(예를 들어, 사용자의 현재 지역이 뉴욕이고 음악 추천 시스템이 위치하는 지역이 서울인 경우), 음악 추천 시스템은 사용자의 단말로부터 현재 시간 정보를 수신하여 해당 사용자가 위치하는 지역의 현재 시간, 요일, 계절 등에 정보를 추출하고, 기상청에서 제공되는 해당 사용자의 지역에 대한 현재의 날씨 정보를 기초로 상기 현재의 상황 정보를 생성할 수도 있다.
질의어가 생성되면, 음악 추천 시스템은 생성된 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색한다(920).
구체적으로, 음악 추천 시스템은 현재의 환경 정보를 기초로 생성한 질의어를 이용하여 데이터베이스에서 현재의 상황 정보에 해당하는 과거의 상황 정보를 검색하고, 검색된 과거의 상황 정보에 관련된 음악 정보의 특징 정보를 추출할 수 있다. 이때, 상기 과거의 상황 정보에 관련된 음악 정보는 과거의 특정 상황에서 라디오에서 선곡되어 방송된 음악 정보일 수 있다. 이후, 추출한 특징 정보와 기 설정된 유사도 이상의 특징 정보를 포함하는 음악 정보를 사용자에게 추천할 음악 정보로서 데이터베이스에서 검색하여 추출할 수 있다.
이를 위하여 음악 추천 시스템은 음성과 음악이 혼재된 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하고 분리한 음악 신호에서 특징 정보를 추출한 후, 추출한 특징 정보를 분석하여 음악 신호에서 특징 정보가 중복되는 구간을 병합하고 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스를 구축할 수 있다.
구체적으로, 음악 추천 시스템은 라디오 신호가 방송된 당시의 상황 정보를 수집하고, 과거에 방송된 라디오 신호를 샘플링하거나 현재 방송되고 있는 라디오 신호를 실시간으로 샘플링할 수 있다.
예를 들어, 음악 추천 시스템은 라디오 신호를 실시간으로 샘플링하고 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하여 상기 샘플링한 라디오 신호가 음악 신호인지 판단할 수 있다. 이 때, 상기 샘플링한 라디오 신호가 기 설정된 시간(예를 들어, 5초) 이상 음악 신호로 판단되면 상기 샘플링한 라디오 신호를 녹음함으로써 상기 라디오 신호에서 음성 신호와 음악 신호를 분리하여 음악 신호만을 녹음할 수 있다.
여기서, 음악 추천 시스템은 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하기 위하여 방송 주파수 대역에 존재하는 각 음계에 대한 프로파일을 생성하고 상기 생성한 프로파일을 기초로 가중치 벡터를 생성할 수 있다. 그리고, 상기 생성한 가중치 벡터와 상기 샘플링한 라디오 신호에서 추출된 특성 벡터를 비교함으로써 상기 샘플링한 라디오 신호가 음성 신호인지 또는 음악 신호인지를 판단할 수 있다.
이후, 음악 추천 시스템은 라디오 신호에서 분리된 음악 신호에서 특징 정보들을 추출하고, 추출한 복수개의 특징 정보 간의 유사도를 계산하여 SSM(Self-Similarity Matrix)을 생성할 수 있다. 그리고, 생성한 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간 즉, 음악의 반복되는 구간, 변화가 없는 구간 또는 유사한 구간을 병합하고, 병합된 특징 정보를 상기 수집한 라디오 신호가 방송된 당시의 상황 정보 별로 저장할 수 있다.
이때, 추출된 복수개의 특징 정보 중 가장 긴 길이를 가지는 특징 정보는 해당 음악 정보에 대한 대표 특징 정보로 결정될 수 있다.
한편, 음악 추천 시스템은 현재의 상황 정보를 기초로 기 설정된 질의 조건의 우선 순위에 따라 복수개의 질의어를 생성할 수도 있다. 상기 우선 순위는 점진적으로 질의 조건이 완화되도록 설정될 수 있다.
일 예로, 음악 추천 시스템은 현재 시간에 가중치를 적용한 제1 질의어를 생성하고, 날씨에 가중치를 적용한 제2 질의어를 생성할 수 있다. 이 경우, 음악 추천 시스템은 데이터베이스에서 제1 질의어에 해당하는 과거의 상황 정보와 제2 질의어에 해당하는 과거의 상황 정보를 각각 검색하고, 상기 검색된 각각의 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 매치되는 특징 정보를 포함하는 음악 정보를 각각 검색할 수 있다. 이 때, 각각의 질의어 별로 검색된 음악 정보는 각각의 음악 정보가 선곡된 횟수를 기초로 선택될 수도 있다.
음악 추천 시스템은 복수개의 음악 정보가 검색되면, 사용자의 설정 정보를 기초로 검색된 음악 정보를 필터링한다(930). 이 때, 사용자의 설정 정보는 상기 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함할 수 있다.
일 예로, 음악 추천 시스템은 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함하는 사용자의 설정 정보를 해당 사용자의 단말로부터 입력 받아 검색된 음악 정보들을 필터링함으로써 각각의 사용자 별로 개인적 취향 등이 반영된 음악 정보가 추천되도록 할 수 있다.
음악 추천 시스템은 검색된 음악 정보가 필터링되면 각 음악 정보가 선곡된 횟수를 기초로 정렬하여 재생 목록을 생성할 수 있다(940).
도 10은 본 발명의 일실시예에 있어서, 사용자 상황 및 선호도를 반영하는 음악을 추천하기 위한 데이터베이스를 구축하는 방법을 나타내는 흐름도이다.
데이터베이스 구축 시스템은 라디오 신호의 주파수를 기초로 음성과 음악이 혼재된 라디오 신호에서 음악 신호를 분리하고(1010). 분리한 음악 신호에서 특징 정보를 추출한다(1020).
상기 음악 신호는 상기 라디오 신호를 실시간으로 샘플링하고, 상기 샘플링한 라디오 신호의 주파수와 기 설정된 음계 주파수 간의 정합도를 측정하여 상기 샘플링한 라디오 신호가 음악 신호인지 판단하고, 상기 샘플링한 라디오 신호가 기 설정된 시간 이상 음악 신호로 판단되는 경우 상기 샘플링한 라디오 신호를 녹음함으로써 분리될 수 있다.
이 때, 샘플링한 라디오 신호가 음악 신호인지 판단하기 위하여 데이터베이스 구축 시스템은 방송 주파수 대역에 존재하는 각 음계에 대한 프로파일을 생성하고 이를 기초로 가중치 벡터를 생성한 후 상기 생성한 가중치 벡터와 상기 샘플링한 라디오 신호에서 추출된 특성 벡터를 비교할 수 있다.
음악 신호에서 특징 정보가 추출되면, 데이터베이스 구축 시스템은 추출된 특징 정보를 분석하여 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합한다(1030).
일 예로, 상기 특징 정보는 추출된 복수개의 특징 정보 간의 유사도를 계산하여 생성된 SSM(Self-Similarity Matrix)에 기반한 클러스터링 알고리즘을 통해 병합될 수 있다. 이때, 병합된 특징 정보 중 가장 긴 길이를 가지는 특징 정보는 해당 음악 신호에 대한 대표 특징 정보로 결정될 수 있다.
한편, 데이터베이스 구축 시스템은 해당 라디오 신호가 방송될 때의 상황 정보를 수집할 수 있다. 상기 상황 정보는 해당 라디오 신호가 방송될 때의 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함할 수 있다. 이 경우, 상기 중복되는 구간이 병합된 특징 정보는 상기 수집한 상황 정보 별로 저장됨으로써 데이터베이스가 구축될 수 있다(1040).
본 발명에 따른 자동화된 라디오 선곡 정보 분석을 통해 구축된 데이터베이스는 다양한 음악 추천 시스템에 적용될 수 있다. 또한, 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템은 일반 사용자뿐만 아니라 주파/인터넷 라디오 방송 산업 전반에서 활용될 수 있다.
본 발명에 따른 음악 추천 방법 및 데이터베이스 구축 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 음악 추천 시스템
110: 질의어 생성부
120: 음악 정보 검색부
130: 필터링부
140: 재생 목록 생성부
150: 데이터베이스

Claims (26)

  1. 음악 추천 시스템이 사용자에게 음악을 추천하는 방법에 있어서,
    현재의 상황 정보를 기초로 질의어를 생성하는 단계;
    상기 생성한 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색하는 단계;
    상기 사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링하는 단계; 및
    상기 필터링한 음악 정보를 기초로 재생 목록을 생성하는 단계
    를 포함하고,
    상기 데이터베이스는,
    음성과 음악이 혼재된 상기 라디오 신호를 샘플링하고, 샘플링된 라디오 신호의 주파수와 기설정된 음계 주파수 간의 정합도를 측정하는 가중치 벡터를 생성하고,
    상기 가중치 벡터와 상기 샘플링된 라디오 신호 간의 부정합 정도를 측정하여 이진화를 수행함에 따라 상기 샘플링된 라디오 신호에서 음성 신호와 음악 신호를 분리하고, 분리된 상기 음악 신호에서 추출된 특징 정보를 저장하여 구축되는 것을 특징으로 하는 음악 추천 방법.
  2. 제1항에 있어서,
    상기 현재의 상황 정보는,
    상기 사용자가 위치하는 지역의 현재 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함하고,
    상기 사용자의 설정 정보는,
    상기 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 음악 추천 방법.
  3. 제1항에 있어서,
    상기 질의어를 생성하는 단계는,
    컴퓨터의 현재 시간 정보 및 기상청에서 제공되는 현재 날씨 정보에 기초하여 생성된 상기 현재 상황 정보를 기초로 기 설정된 질의 조건의 우선 순위에 따라 복수개의 질의어를 생성하는 단계인 것을 특징으로 하는 음악 추천 방법.
  4. 제1항에 있어서,
    상기 음악 정보를 검색하는 단계는,
    상기 생성한 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 검색하는 단계; 및
    상기 검색된 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 기 설정된 유사도 이상의 특징 정보를 포함하는 음악 정보를 검색하는 단계
    를 포함하는 것을 특징으로 하는 음악 추천 방법.
  5. 제3항에 있어서,
    상기 음악 정보를 검색하는 단계는,
    상기 생성한 복수개의 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 각각 검색하는 단계; 및
    상기 검색된 각각의 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 매치되는 특징 정보를 포함하는 음악 정보를 각각 검색하는 단계
    를 포함하는 것을 특징으로 하는 음악 추천 방법.
  6. 제1항에 있어서,
    상기 재생 목록을 생성하는 단계는,
    상기 필터링된 음악 정보를 각 음악 정보가 선곡된 횟수를 기초로 정렬하여 상기 재생 목록을 생성하는 단계인 것을 특징으로 하는 음악 추천 방법.
  7. 제1항에 있어서,
    상기 데이터베이스는,
    상기 가중치 벡터를 생성하기 이전에, 상기 음성과 음악이 혼재된 라디오 신호가 방송될 때의 상황 정보를 수집하고, 분리된 상기 음악 신호에서 추출된 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하고, 상기 중복되는 구간이 병합된 특징 정보를 상기 수집한 상황 정보 별로 저장하여 구축되는 것을 특징으로 하는 음악 추천 방법.
  8. 컴퓨터로 구현되는 데이터베이스 구축 방법에 있어서,
    음성과 음악이 혼재된 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하는 단계;
    상기 분리한 음악 신호에서 특징 정보를 추출하는 단계;
    상기 추출한 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 단계; 및
    상기 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스를 구축하는 단계
    를 포함하고,
    상기 라디오 신호에서 음악 신호를 분리하는 단계는,
    상기 음성과 음악이 혼재된 라디오 신호를 샘플링하고, 샘플링된 라디오 신호의 주파수와 기설정된 음계 주파수 간의 정합도를 측정하는 가중치 벡터를 생성하고, 상기 가중치 벡터와 상기 샘플링된 라디오 신호간의 부정합도를 측정하여 이진화를 수행함에 따라 상기 샘플링된 라디오 신호에서 음성 신호와 상기 음악 신호를 분리하는 것
    을 특징으로 하는 데이터베이스 구축 방법.
  9. 제8항에 있어서,
    상기 음악 신호를 분리하는 단계는,
    상기 라디오 신호를 실시간으로 샘플링하고,상기 샘플링된 라디오 신호가 기 설정된 시간 이상 음악 신호로 판단되는 경우 상기 샘플링된 라디오 신호를 녹음하는 것
    을 특징으로 하는 데이터베이스 구축 방법.
  10. 삭제
  11. 제8항에 있어서,
    상기 특징 정보가 중복되는 구간을 병합하는 단계는,
    상기 추출한 복수개의 특징 정보 간의 유사도를 계산하여 SSM(Self-Similarity Matrix)을 생성하는 단계; 및
    상기 생성한 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 단계
    를 포함하는 것을 특징으로 하는 데이터베이스 구축 방법.
  12. 제11항에 있어서,
    상기 특징 정보가 중복되는 구간을 병합하는 단계 이후에,
    상기 추출된 복수개의 특징 정보 중 가장 긴 길이를 가지는 특징 정보를 상기 음악 신호에 대한 대표 특징 정보로 결정하는 단계를 더 포함하는 것을 특징으로 하는 데이터베이스 구축 방법.
  13. 제8항에 있어서,
    상기 라디오 신호가 방송될 때의 상황 정보를 수집하는 단계를 더 포함하고,
    상기 데이터베이스를 구축하는 단계는,
    상기 수집한 상황 정보 별로 상기 중복되는 구간이 병합된 특징 정보를 저장함으로써 데이터베이스를 구축하는 단계인 것을 특징으로 하는 데이터베이스 구축 방법.
  14. 제13항에 있어서,
    상기 상황 정보는,
    상기 라디오 신호가 방송될 때의 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 데이터베이스 구축 방법.
  15. 제8항에 있어서,
    상기 구축한 데이터베이스는,
    사용자에게 음악을 추천하는 음악 추천 시스템이 현재의 상황 정보를 기초로 생성한 질의어를 이용하여 음악 정보를 검색 시 이용되는 것을 특징으로 하는 데이터베이스 구축 방법.
  16. 현재의 상황 정보를 기초로 질의어를 생성하는 질의어 생성부;
    상기 생성한 질의어를 이용하여 라디오 신호를 기초로 구축된 데이터베이스에서 음악 정보를 검색하는 음악 정보 검색부;
    사용자의 설정 정보를 기초로 상기 검색한 음악 정보를 필터링하는 필터링부; 및
    상기 필터링한 음악 정보를 기초로 재생 목록을 생성하는 재생 목록 생성부
    를 포함하고,
    상기 데이터베이스는,
    음성과 음악이 혼재된 상기 라디오 신호를 샘플링하고, 샘플링된 라디오 신호의 주파수와 기설정된 음계 주파수 간의 정합도를 측정하는 가중치 벡터를 생성하고,
    상기 가중치 벡터와 상기 샘플링된 라디오 신호 간의 부정합 정도를 측정하여 이진화를 수행함에 따라 상기 샘플링된 라디오 신호에서 음성 신호와 음악 신호를 분리하고, 분리된 상기 음악 신호에서 추출된 특징 정보를 저장하여 구축되는 것을 특징으로 하는 음악 추천 시스템.
  17. 제16항에 있어서,
    상기 질의어 생성부는,
    컴퓨터의 현재 시간 정보 및 기상청에서 제공되는 현재 날씨 정보에 기초하여 상기 사용자가 위치하는 지역의 현재 시간, 요일, 온도, 날씨 및 계절 중 적어도 하나에 대한 정보를 포함하는 상기 현재의 상황 정보를 생성하고, 상기 생성한 현재의 상황 정보를 기초로 기 설정된 질의 조건의 우선 순위에 따라 복수개의 질의어를 생성하는 것을 특징으로 하는 음악 추천 시스템.
  18. 제16항에 있어서,
    상기 음악 정보 검색부는,
    상기 생성한 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 검색하고, 상기 검색된 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 기 설정된 유사도 이상의 특징 정보를 포함하는 음악 정보를 검색하는 것을 특징으로 하는 음악 추천 시스템.
  19. 제17항에 있어서,
    상기 음악 정보 검색부는,
    상기 생성한 복수개의 질의어를 이용하여 상기 데이터베이스에서 상기 현재의 상황 정보에 해당하는 과거의 상황 정보를 각각 검색하고, 상기 검색된 각각의 과거의 상황 정보에 관련된 음악 정보의 특징 정보와 매치되는 특징 정보를 포함하는 음악 정보를 각각 검색하는 것을 특징으로 하는 음악 추천 시스템.
  20. 제16항에 있어서,
    상기 필터링부는,
    상기 사용자가 선호하는 음악 스타일, 장르, 상기 사용자의 연령 및 음악 발매 년도 중 적어도 하나에 대한 정보를 포함하는 상기 사용자의 설정 정보를 입력 받아 상기 검색된 음악 정보를 필터링하는 것을 특징으로 하는 음악 추천 시스템.
  21. 제16항에 있어서,
    상기 재생 목록 생성부는,
    상기 필터링된 음악 정보를 각 음악 정보가 선곡된 횟수를 기초로 정렬하여 상기 재생 목록을 생성하는 것을 특징으로 하는 음악 추천 시스템.
  22. 제16항에 있어서,
    상기 데이터베이스는,
    분리된 상기 음악 신호에서 추출된 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합한 후 상기 중복되는 구간이 병합된 특징 정보를 저장함으로써 구축되는 것을 특징으로 하는 음악 추천 시스템.
  23. 음성과 음악 혼재된 라디오 신호가 방송될 때의 상황 정보를 수집하는 상황 정보 수집부;
    상기 라디오 신호의 주파수를 기초로 상기 라디오 신호에서 음악 신호를 분리하는 음악 신호 분리부;
    상기 분리한 음악 신호에서 특징 정보를 추출하는 특징 정보 추출부;
    상기 추출한 특징 정보를 분석하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 중복 구간 병합부; 및
    상기 중복되는 구간이 병합된 특징 정보를 상기 수집한 상황 정보 별로 저장하는 특징 정보 저장부
    를 포함하고,
    상기 음악 신호 분리부는,
    상기 음성과 음악이 혼재된 라디오 신호를 샘플링하고, 샘플링된 라디오 신호의 주파수와 기설정된 음계 주파수 간의 정합도를 측정하는 가중치 벡터를 생성하고, 상기 가중치 벡터와 상기 샘플링된 라디오 신호간의 부정합도를 측정하여 이진화를 수행함에 따라 상기 샘플링된 라디오 신호에서 음성 신호와 상기 음악 신호를 분리하는 것
    을 특징으로 하는 데이터베이스 구축 시스템.
  24. 제23항에 있어서,
    상기 음악 신호 분리부는,
    상기 샘플링된 라디오 신호가 기 설정된 시간 이상 음악 신호로 판단되는 경우 상기 샘플링된 라디오 신호를 녹음하는 것을 특징으로 하는 데이터베이스 구축 시스템.
  25. 삭제
  26. 제23항에 있어서,
    상기 중복 구간 병합부는,
    상기 추출한 복수개의 특징 정보 간의 유사도를 계산하여 SSM(Self-Similarity Matrix)을 생성하고, 상기 생성한 SSM에 기반한 클러스터링 알고리즘을 이용하여 상기 음악 신호에서 상기 특징 정보가 중복되는 구간을 병합하는 것을 특징으로 하는 데이터베이스 구축 시스템.
KR1020120091087A 2012-08-21 2012-08-21 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템 KR101606190B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120091087A KR101606190B1 (ko) 2012-08-21 2012-08-21 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120091087A KR101606190B1 (ko) 2012-08-21 2012-08-21 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020160032773A Division KR101733913B1 (ko) 2016-03-18 2016-03-18 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템

Publications (2)

Publication Number Publication Date
KR20140025044A KR20140025044A (ko) 2014-03-04
KR101606190B1 true KR101606190B1 (ko) 2016-04-04

Family

ID=50640379

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120091087A KR101606190B1 (ko) 2012-08-21 2012-08-21 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템

Country Status (1)

Country Link
KR (1) KR101606190B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101675957B1 (ko) 2015-03-10 2016-11-15 연세대학교 산학협력단 신호 성분 분석을 이용한 음악 인기도 예측 시스템 및 방법
KR102077228B1 (ko) * 2015-09-03 2020-04-07 삼성전자주식회사 전자 장치 및 이의 제어 방법

Also Published As

Publication number Publication date
KR20140025044A (ko) 2014-03-04

Similar Documents

Publication Publication Date Title
TWI553494B (zh) 基於多模態融合之智能高容錯視頻識別系統及其識別方法
US8396878B2 (en) Methods and systems for generating automated tags for video files
Zhang Automatic singer identification
US8213767B1 (en) Methods and systems for performing top concepts extraction
CN109478195A (zh) 用于搜索引擎的选择和优化的方法和系统
KR100676863B1 (ko) 음악 검색 서비스 제공 시스템 및 방법
US8214374B1 (en) Methods and systems for abridging video files
CN105975568B (zh) 一种音频处理方法及装置
US20130138232A1 (en) Apparatus and method for extracting highlight section of music
RU2451332C2 (ru) Способ и устройство для вычисления метрики подобия между первым вектором признаков и вторым вектором признаков
CN109376265A (zh) 歌曲推荐列表生成方法、介质、装置和计算设备
US20130060784A1 (en) Methods and systems for providing word searching inside of video files
KR101606190B1 (ko) 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템
Vallet et al. Speech trax: A bottom to the top approach for speaker tracking and indexing in an archiving context
KR101733913B1 (ko) 라디오의 음원 분석을 통한 사용자 상황 및 선호도 반영 음악 추천 방법과 이를 이용한 음악 추천 시스템
Levy et al. Lightweight measures for timbral similarity of musical audio
Salmon et al. An Effortless Way To Create Large-Scale Datasets For Famous Speakers.
JP2004219804A (ja) 類似音声音楽検索装置,類似音声音楽検索処理方法,類似音声音楽検索プログラムおよびそのプログラムの記録媒体
Broux et al. An active learning method for speaker identity annotation in audio recordings
Nagavi et al. Content based audio retrieval with MFCC feature extraction, clustering and sort-merge techniques
Bigot et al. Exploiting speaker segmentations for automatic role detection. An application to broadcast news documents
Stein et al. From raw data to semantically enriched hyperlinking: Recent advances in the LinkedTV analysis workflow
Shao et al. Automatically generating summaries for musical video
JP2004333605A (ja) 前後の検索結果利用型類似音楽検索装置,前後の検索結果利用型類似音楽検索処理方法,前後の検索結果利用型類似音楽検索プログラムおよびそのプログラムの記録媒体
Du et al. Content-based music similarity computation with relevant component analysis

Legal Events

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

Payment date: 20190102

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 5