서로 다른 음파를 구별하기위한 피처 벡터 디자인


10

다음 4 가지 파형 신호를 고려하십시오.

signal1 = [4.1880   11.5270   55.8612  110.6730  146.2967  145.4113  104.1815   60.1679   14.3949  -53.7558  -72.6384  -88.0250  -98.4607]

signal2 = [ -39.6966   44.8127   95.0896  145.4097  144.5878   95.5007   61.0545   47.2886   28.1277  -40.9720  -53.6246  -63.4821  -72.3029  -74.8313  -77.8124]

signal3 = [-225.5691 -192.8458 -145.6628  151.0867  172.0412  172.5784  164.2109  160.3817  164.5383  171.8134  178.3905  180.8994  172.1375  149.2719  -51.9629 -148.1348 -150.4799 -149.6639]

signal4 = [ -218.5187 -211.5729 -181.9739 -144.8084  127.3846  162.9755  162.6934  150.8078  145.8774  156.9846  175.2362  188.0448  189.4951  175.9540  147.4631  -89.9513 -154.1579 -151.0851]

신호

신호 1과 2는 비슷해 보이고 신호 3과 4는 비슷해 보입니다.

입력 n 신호로 가져 와서 각 그룹 내의 신호가 유사한 m 개의 그룹으로 나누는 알고리즘을 찾고 있습니다.

이러한 알고리즘의 첫 번째 단계는 일반적으로 각 신호에 대한 특징 벡터 를 계산하는 것입니다 : .에프나는

예를 들어, 특징 벡터를 다음과 같이 정의 할 수 있습니다 : [width, max, max-min]. 이 경우 다음과 같은 특징 벡터를 얻게됩니다.

에프1=[13,146,245]

에프2=[15,145,223]

에프=[18,181,406]

에프4=[18,189,408]

특징 벡터를 결정할 때 중요한 것은 유사한 신호가 서로 가까운 특징 벡터를 얻고 다른 신호는 멀리 떨어진 특징 벡터를 얻는다는 것입니다.

위의 예에서 우리는 다음을 얻습니다.

|에프2에프1|=22.1,|에프에프1|=164.8

따라서 신호 2가 신호 3보다 신호 1과 훨씬 더 유사하다는 결론을 내릴 수 있습니다.

특징 벡터로서 신호의 이산 코사인 변환의 항을 사용할 수도 있습니다. 아래 그림은 이산 코사인 변환에서 처음 5 개의 항에 의해 신호의 근사와 함께 신호를 보여줍니다. 코사인 변환

이 경우 이산 코사인 계수는 다음과 같습니다.

F1 = [94.2496  192.7706 -211.4520  -82.8782   11.2105]

F2 = [61.7481  230.3206 -114.1549 -129.2138  -65.9035]

F3 = [182.2051   18.6785 -595.3893  -46.9929 -236.3459]

F4 = [148.6924 -171.0035 -593.7428   16.8965 -223.8754]

이 경우 다음을 얻습니다.

|에프2에프1|=141.5,|에프에프1|=498.0

이 비율은 위의 간단한 특징 벡터만큼 크지 않습니다. 이것이 더 간단한 특징 벡터가 더 낫다는 것을 의미합니까?

지금까지 2 개의 파형 만 표시했습니다. 아래 그림은 그러한 알고리즘에 입력되는 다른 파형을 보여줍니다. 이 플롯의 각 피크에서 피크 왼쪽에서 가장 가까운 최소값에서 시작하여 피크 오른쪽에서 가장 가까운 최소값에서 신호가 추출됩니다.자취

예를 들어 signal3은 샘플 217과 234 사이의이 플롯에서 추출되었습니다. Signal4는 다른 플롯에서 추출되었습니다.

궁금한 경우; 이러한 각 음모는 공간의 서로 다른 위치에서 마이크에 의한 사운드 측정에 해당합니다. 각 마이크는 동일한 신호를 수신하지만 신호의 시간이 약간 이동하여 마이크에서 마이크로 왜곡됩니다.

특징 벡터는 신호 벡터를 서로 근접한 신호와 함께 그룹화하는 k- 평균과 같은 클러스터링 알고리즘으로 전송 될 수있다.

파형 신호를 식별하는 데 유용한 기능 벡터를 설계하는 데 경험이 있거나 조언이 있습니까?

또한 어떤 클러스터링 알고리즘을 사용 하시겠습니까?

답변에 미리 감사드립니다!


M 템플릿 중 하나를 사용하여 입력 신호의 양호 도트 제품은 어떻습니까? 최소 제곱 오차가있는 것을 취합니다. 그것은 내가 시작할 곳이 될 것입니다. 우연히 그런 것을 시도 했습니까?
Spacey

안녕 모하마드! 문제는 미리 파형을 모른다는 것입니다. 나는 피크 주변의 모든 신호에 관심이 있으며 미리 알지 못하는 많은 다른 형태를 가질 수 있습니다.
Andy

이러한 기능을 "특징"으로 직접 사용하는 것보다 이러한 벡터를 특성화 할 새로운 기능을 찾으려고하는 이유는 무엇입니까? (그들은 같은 길이 여야합니다). k- 평균 군집화의 경우, 획득 된 신호의 최소 점에서 추출 된 작은 벡터 사이의 "거리"가 먼저 계산 된 다음 알고리즘은 이들을 최소 분산의 k- 세트로 그룹화하려고 시도합니다. 당신은 후 것 같습니다.
A_A

안녕 A_A! 벡터의 크기가 줄어 듭니다. 이산 코사인 계수를 사용할 때 18에서 5까지의 신호 3의 경우. 2. 스무딩이 진행되고 있습니다. 신호가 시끄럽고 급격한 변동에 관심이 없습니다.
Andy

3
기계 학습 사람들은 당신이해야 주장 결코 멀리 정보를 던지지 - 시스템은 모든 걸 배워야한다. 물론, 그들은 실행하는 데 백만 년이 걸리는 알고리즘을 설계하는 사람들과 동일하지만 요점은 장점이 없습니다. 본질적으로, 가능한 적은 정보를 버리고 남은 것을 배우고 싶습니다. 이것은 베이지안 프레임 워크 (솔직히 대부분의 신호 처리가 요즘으로 이루어져야 함)에서 수행 되어야 하는 문제로 저를 깨뜨립니다. 그러나 이것이 두드러진 특징을 해결하는 것이 중요하지 않다는 것을 의미하지는 않습니다.
Henry Gomersall 2016 년

답변:


2

신호를 분리하기 위해 객관적인 기준 만 원하거나 누군가가들을 때 어떤 종류의 유사성을 갖는 것이 중요합니까? 물론 신호를 조금 더 길게 (1000 개가 넘는 샘플) 제한해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.