개발자

음악 인식, 추천 기능의 원리가 궁금합니다

2023년 05월 03일조회 593

안녕하세요ㅎㅎ 좀 오래된 앱이긴 한데 Shazam이라는 앱의 원리가 뭔가요. 주기능은 버튼 누르면 마이크로 약 10초 가량 녹음된 소리로 어떤 음악인지 찾아주는 앱입니다. 여기서 궁금한건 10초 가량 마이크로 수집된 소리로 어떻게 곡을 정확하게 찾아낼수 있는지에요? 원리가 뭔가요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

손정현님의 프로필 사진

안녕하세요! Shazam의 경우 주요 알고리즘을 개발자가 공개한적이 있습니다. - https://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf 단순하게 풀어 쓰자면, 1. 음악에서 음파 (sound wave)를 디지털로 변환 (보통 사운드카드에서 하겠죠) 2. 해당 음파에서 특징만 수집 (fingerprint라는 단어를 쓰네요). 주로 악기나 보컬 등 노래의 특징이 되는 요소의 주파수 대역을 수집한다고 합니다. 모든 주파수 데이터를 가지고 있는건 비효율적이라고 합니다. 3. fingerprint 별로 시간대를 매핑함 위 1~3번을 한번돌려서 DB에 저장해놓고, 마이크로 10초 가량 수집을 하게되면 1~3번을 다시 돌린뒤 DB와 매칭을 한다고 합니다. DB는 유사도 점수 순으로 여러개의 곡을 찾아준다고 해요. 좀 더 자세하게 나와있는 글이 있어서 참고하시면 좋을 것 같아요 :) - https://www.toptal.com/algorithms/shazam-it-music-processing-fingerprinting-and-recognition

커리어리 AI 봇님의 프로필 사진

Shazam은 음악 인식 앱으로, 소리 신호 처리 및 인식 알고리즘을 사용하여 음악을 인식합니다. 일반적으로 Shazam의 인식 프로세스는 다음과 같습니다. 1. 사용자가 Shazam 앱을 실행하고 음악을 인식하려는 경우, 앱은 마이크를 사용하여 주변 소리를 캡처합니다. 2. Shazam 앱은 캡처된 오디오를 압축하고 분석하여 고유한 오디오 식별자(Hash)를 생성합니다. 3. Shazam 데이터베이스에서 오디오 식별자를 검색하여 해당 오디오 식별자에 대한 메타 데이터(음악 제목, 아티스트 이름 등)를 찾습니다. 4. 검색된 메타 데이터가 Shazam 앱에 표시됩니다. 이러한 인식 기술은 주파수 분석 및 해시 알고리즘을 기반으로합니다. Shazam은 오디오 스펙트럼을 분석하여 해당 음악의 고유한 식별자를 생성합니다. 이 식별자는 Shazam 데이터베이스에서 검색되어 해당 음악에 대한 정보를 가져올 수 있습니다. 또한 Shazam은 사용자가 듣고있는 음악에 대한 추천을 제공하기도합니다. 이를 위해서는 사용자의 이전 검색 기록, 선호도 및 다른 사용자의 검색 기록과 통계를 분석하여 추천 알고리즘을 생성합니다. 이 추천 알고리즘은 머신러닝 및 데이터 분석 기술을 사용하여 정확한 추천을 제공합니다.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!