신호 분석 관점에서 컨볼 루션과 상호 상관의 차이점


33

교차 상관과 컨볼 루션의 차이점을 이해하려고합니다. 나는 대답을 이해했습니다 . 또한 아래 그림을 이해합니다.

그러나 신호 처리 측면에서 (내가 거의 알지 못하는 분야), 두 개의 신호 (또는 신호와 필터)가 주어지면 언제 컨볼 루션을 사용하고 언제 교차 상관을 사용하는 것이 좋을까요? 즉, 실제 분석에서 컨볼 루션과 상호 상관을 선호 할 것입니다.

이 두 용어가 많이 사용되는 것 같습니다. 그 용도는 무엇입니까?

코볼 루션

* 여기서 상호 상관 g*ff*g

답변:


24

신호 처리에서 두 가지 문제가 일반적입니다.

  • 입력이 때이 필터의 출력은 무엇입니까 ? 답은 x ( t ) * h ( t ) 로 주어진다 . 여기서 h ( t ) 는 필터의 "임펄스 응답"이라고하는 신호이고, * 는 컨볼 루션 연산이다.엑스()엑스()h()h()

  • 잡음이있는 신호 가 주어지면 , 신호 x ( t )는 어떻게해서 y ( t )에 존재 합니까? 다시 말해, x ( t ) + n ( t ) 형식의 y ( t ) 는 어디 입니까? 여기서 n ( t ) 는 노이즈입니까? 답은 y ( t )x ( t ) 의 상관 관계에 의해 찾을 수 있습니다 . 주어진 시간 지연에 대해 상관이 큰 경우와이()엑스()와이()와이()엑스()+()()와이()엑스() 라면 답이 '예'라고 확신 할 수 있습니다.τ

관련된 신호가 대칭 인 경우 컨볼 루션과 상호 상관은 동일한 작업이됩니다. 이 경우는 DSP의 일부 영역에서도 매우 일반적입니다.


알았다. 명확하고 밝은 답변을 주셔서 감사합니다!
MathBgu

3
임펄스 응답 설명에서 내가 좋아하는 것은 컨볼 루션이 "역전 된"이유를 실제로 직감한다는 것입니다. 이산적인 용어로, 전류 출력은 시간 0에서의 전류 입력 x 임펄스 응답 + 이전 입력 임펄스 응답의 잔류 출력 (입력 n-1 * 임펄스 1 + 입력 n-2 * 임펄스 2 등)입니다.
Jean-Frederic PLANTE

@ Jean-FredericPLANTE 예, 그것을 설명하는 좋은 방법입니다.
MBaz

@ Jean-FredericPLANTE 주석이있는 대답은 더 합리적입니다.
tpk

12

컨볼 루션상호 상관 이라는 두 용어 는 DSP에서 매우 유사한 방식으로 구현됩니다.

사용하는 응용 프로그램에 따라 다릅니다.

만약 선형시 불변 필터링 동작을 수행하는 경우에는 컨 볼브 시스템의 임펄스 응답 신호.

두 신호 사이의 "유사성 측정"인 경우 상호 상관 관계가 있습니다.

일치하는 필터 를 만들려고 할 때 두 용어가 함께 나타납니다 .

여기에서 주어진 신호 에 알려진 "pulse"(신호) p [ n ]이 포함되어 있는지 여부를 결정하려고합니다 . 그렇게하는 한 가지 방법은, 주어진 신호를 컨 볼브하는 것입니다 이야 공지 된 펄스의 시간 반전과 P : 당신이 지금 알려진 펄스 주어진 신호의 상호 상관을 수행하기 위해 회선을 사용하고 있습니다.에스[][]에스


사이드 노트

"교차 상관"이라는 용어는 DSP 분야에서 (일부) 오용됩니다.

통계를 들어, 상관 관계 측정 방법에 가까운 두 변수 사이가되어야하는 값 + 1 .1+1

상호 상관의 Wikipedia 항목에서 볼 수 있듯이 DSP 버전이 사용되며 다음과 같이 표시됩니다.

상호 상관은 하나의 지연과 다른 것에 대한 지연의 함수로서 두 계열의 유사성의 척도입니다.

DSP 정의의 문제점 : 는이 "유사성"측정이 각 신호의 에너지에 의존한다는 것입니다.

엑스[]와이[+]

1
이것은 나에게 매우 도움이됩니다. 고맙습니다!
MathBgu

3

신호 처리에서, 회선은 LTI 시스템의 출력을 얻기 위해 수행된다. 일반적으로 상관 관계 (자동 또는 상호 상관 관계)는 나중에 다른 계산을 수행하는 데 사용되도록 계산됩니다.

상관 관계, 공분산 및 상관 계수를 혼동하지 않도록주의해야합니다. 상관 관계는 반드시 -1과 1 사이 일 필요는 없습니다. 상관 계수 ( https://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient )는 두 개의 임의 변수 분산에 의해 조정되므로 -1과 1 사이입니다. . 우리가 기억해야 할 것은 두 개의 임의 변수가 얼마나 관련되어 있는지 분석하기 위해 통계 신호 처리에서 수행되는 실제 연산은 상관이 아니라 "공분산"입니다. 그러나 신호가 센서에 의해 캡처되어 전압으로 변환되고 ADC로 디지털화되는 대부분의 응용 분야의 경우 신호가 제로 평균이라고 가정 할 수 있으므로 상관 관계는 공분산과 같습니다.


나는 그 링크를 살펴볼 것이다. 고맙습니다!
MathBgu

3

@MathBgu 위의 답변을 모두 읽었으며 모두 다음과 같이 컨볼 루션 공식을 고려하여 더 나은 이해를 위해 추가하고 싶은 매우 유익한 정보입니다.

에프(엑스)(엑스)=에프(τ)(엑스τ)τ

상호 상관 관계

(에프)()=데프에프(τ)(+τ)τ,

()()

우리는 컨볼 루션을 사용하여 두 개의 블록 / 신호를 가지고 있고 시간 영역에서 서로 직 렬 (직렬) 인 시스템의 출력 / 결과를 얻습니다.


thos additionsl clearification point를 언급 해 주셔서 감사합니다!
MathBgu

f *의 *는 복잡한 결합체를 의미합니까? "y 축을 가로 지르는"대신에 "시간 축을 뒤집으십시오"를 고려하십시오. y 축을 언급 할 때.
Petrus Theron

2

컨볼 루션과 상관 관계의 의미에는 많은 미묘함이 있습니다. 둘 다 선형 대수학의 내부 산물과 투영에 대한 더 넓은 아이디어에 속합니다. 즉, 하나의 벡터를 다른 벡터에 투영하여 후자의 방향에 얼마나 "강한"지를 결정합니다.

이 아이디어는 신경망의 영역으로 확장되는데, 여기서 우리는 매트릭스의 각 행에 데이터 샘플을 투영하여 해당 행에 얼마나 잘 맞는지 결정합니다. 각 행은 특정 클래스의 객체를 나타냅니다. 예를 들어, 각 행은 필기 인식을 위해 문자를 알파벳으로 분류 할 수 있습니다. 각 행을 뉴런이라고하는 것이 일반적이지만 일치하는 필터라고도합니다.

본질적으로, 우리는 두 가지가 얼마나 유사한 지 측정하거나 신호 또는 이미지와 같은 무언가에서 특정 기능을 찾으려고 노력하고 있습니다. 예를 들어, 대역 통과 필터를 사용하여 신호를 컨볼 루션 할 때 해당 대역에 어떤 콘텐츠가 있는지 확인하려고합니다. 신호를 사인파 (예 : DFT)와 상관시킬 때 신호에서 사인파 주파수의 강도를 찾고 있습니다. 후자의 경우 상관 관계가 미끄러지지 않지만 여전히 두 가지를 "상관"시킵니다. 내부 제품을 사용하여 신호를 정현파에 투사합니다.

그렇다면 차이점은 무엇입니까? 컨볼 루션에서는 신호가 필터와 관련하여 역방향입니다. 시변 신호를 사용하면 데이터가 필터에 입력 된 순서대로 상관됩니다. 잠시, 상관 관계를 단순히 내적 (dot product)으로 정의합니다. 즉, 하나의 것을 다른 것에 투영합니다. 처음에는 신호의 첫 부분을 필터의 첫 부분과 상관시킵니다. 신호가 필터를 통해 계속됨에 따라 상관 관계가 더욱 완벽 해집니다. 신호의 각 요소에는 해당 시점에서 "터치"하는 필터 요소 만 곱해집니다.

따라서 컨벌루션을 통해 우리는 어떤 의미로 상관 관계를 맺고 있지만 신호가 시스템과 상호 작용할 때 변화가 발생하는 순서를 유지하려고 노력하고 있습니다. 그러나 필터가 대칭 인 경우가 많지만 실제로는 중요하지 않습니다. 컨벌루션과 상관 관계는 동일한 결과를 산출합니다.

상관 관계를 사용하면 두 신호를 비교할뿐 이벤트 순서를 유지하려고하지 않습니다. 그것들을 비교하기 위해, 우리는 그것들이 같은 방향, 즉 일직선을 향하게하고 싶습니다. 신호가 서로 위상이 다르거 나 더 큰 신호에서 작은 신호를 찾는 경우를 대비하여 한 신호를 다른 신호 위로 밀어서 각 시간 창에서 유사성을 테스트 할 수 있습니다.

이미지 처리에서는 상황이 약간 다릅니다. 우리는 시간에 신경 쓰지 않습니다. Convolution에는 여전히 유용한 수학적 속성이 있습니다. 그러나 더 큰 이미지의 일부를 더 작은 이미지와 일치 시키려고하면 (즉, 일치하는 필터링) 기능이 정렬되지 않기 때문에 이미지를 뒤집기를 원하지 않습니다. 물론, 필터가 대칭이 아닌 한. 이미지 처리에서 상관 관계 및 컨벌루션은 때때로 신경망 과 상호 교환 적으로 사용됩니다 . 이미지가 2 차원 데이터의 추상 표현 인 경우에도 시간은 여전히 ​​관련이 있습니다. 예를 들어, 한 차원은 시간입니다 (예 : 스펙트로 그램).

요약하자면, 상관 관계와 컨볼 루션은 내부 제품을 슬라이딩 시키며, 공간이나 시간에 따라 변하기 때문에 한 가지를 다른 것에 투영하는 데 사용됩니다. 컨볼 루션은 순서가 중요한 경우에 사용되며 일반적으로 데이터를 변환하는 데 사용됩니다. 상관 관계는 일반적으로 더 큰 것 안에서 더 작은 것, 즉 일치하는 것을 찾기 위해 사용됩니다. 두 "사물"중 적어도 하나가 대칭 인 경우 어떤 것을 사용하든 상관 없습니다.


0

Convolution 및 Correlation에서 발생하는 상황을 이해하려고 시도하는 경우 신호 처리를 제쳐두고 두 가지 모두 매우 유사한 작업입니다. 유일한 차이점은 컨벌루션 (Convolution)에 있으며, 변수 중 하나는 제품의 누적을 수행하기 전에 반전 (플립)됩니다. 위의 어느 곳에서도 단어 신호를 사용하고 있지 않습니다 . 나는 수행 된 작업 측면에서만 이야기하고 있습니다.

이제 신호 처리를 보도록하겠습니다.

컨볼 루션 연산은 입력 singal ( x )과 시스템의 임펄스 응답 ( h )이 주어지면 선형 시간 불변 시스템 (LTI 시스템)의 출력을 계산하는 데 사용됩니다 . LTI 시스템의 출력을 얻기 위해 Convolution 작업 만 사용되는 이유를 이해하려면 큰 파생이 있습니다. 여기에서 파생물을 찾으십시오.

http://www.rctn.org/bruno/npb163/lti-conv/lti-convolution.html

상관 연산은 두 신호 x와 y 사이의 유사성을 찾기 위해 사용됩니다. 상관 값이 클수록 두 신호 간의 유사성이 더 큽니다.

여기서 차이점을 이해하십시오.

  • 컨볼 루션-> 신호와 시스템 간 (필터)

  • 두 신호 간의 상관 관계->

따라서 신호 분석 관점에서 컨볼 루션 작동은 사용되지 않습니다. 신호 분석 관점에서는 상관 관계 만 사용됩니다. 컨볼 루션은 시스템 분석 관점에서 사용됩니다.

컨벌루션과 상관의 연산을 이해하는 가장 좋은 방법은 문제의 다이어그램에 표시된 것처럼 두 개의 연속 변수 사이에서 두 컨볼 루션과 상관이 수행 될 때 발생하는 상황을 이해하는 것입니다.

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