이미지 해상도를 기준으로 기능 수를 계산하는 방법은 무엇입니까?


18

Andrew Ng의 신경 Netowrks의 비선형 가설을 방금 다루었 고, 우리는 100 x 100그레이 스케일 강도 의 해상도 이미지의 특징 수 를 결정하기 위해 객관식 질문을했습니다 .

답은 5 천만, x 이었습니다.10 75107

그러나 이전에는 50 x 50 픽셀의 회색조 이미지입니다. 기능 수는 50x50 (2500)입니다.

왜 아닌 x 입니까?10 7 10 , 000510710,000

그러나 그는 모든 2 차 항 ( )을 피처로 포함한다고 말합니다.xixj

100 × 100 픽셀 이미지 (RGB가 아닌 그레이 스케일)에서 자동차를 인식하는 것을 배우고 있다고 가정합니다. 기능을 픽셀 강도 값으로 설정하십시오. 모든 2 차 항 ( )을 피처로 포함하여 로지스틱 회귀를 학습하면 몇 개의 피처를 가질 수 있습니까?xixj

100x100에 관한 이전 슬라이드에서 2 차 특징 ( x ) = 3 백만개의 특징이지만, 여전히 연결에 손가락을 넣을 수는 없습니다.x jxixj

답변:


16

아마도 더 간단한 경우가 더 명확해질 것입니다. 100x100 대신 1x2 픽셀의 샘플을 선택한다고 가정 해 봅시다.

이미지의 샘플 픽셀

+----+----+
| x1 | x2 |
+----+----+

트레이닝 세트를 플로팅 할 때 선형 모델로 쉽게 분리 할 수 ​​없다는 것을 알았으므로 데이터에 더 잘 맞도록 다항식 항을 추가하기로 결정했습니다.

우리는 모든 픽셀 강도와 그로부터 형성 될 수있는 가능한 모든 배수를 포함하여 다항식을 구성하기로 결정합니다.

행렬이 작으므로 열거 해 봅시다.

x1, x2, x12, x22, x1×x2, x2×x1

위의 기능 시퀀스를 해석하면 패턴이 있음을 알 수 있습니다. 처음 두 용어 인 그룹 1은 픽셀 강도로만 구성된 기능입니다. 그 후의 두 그룹 인 그룹 2는 강도의 제곱으로 구성된 피처입니다. 마지막 두 항인 그룹 3은 모든 쌍별 (2) 픽셀 강도 조합의 곱입니다.

그룹 1 :x1, x2

그룹 2 :x12, x22

그룹 3 :x1×x2, x2×x1

그러나 문제가 있습니다. 순서대로 그룹 3 항 ( 및 )을 보면 동일한 용어 임을 알 수 있습니다. 우리의 주거 사례를 기억하십시오. 같은 집에 x1 = square 푸티 지, x2 = square 푸티 지라는 두 가지 기능이 있다고 상상해보십시오. 자, 우리는 복제 기능을 제거해야합니다 . 임의로 이라고 말하십시오 . 이제 그룹 3 기능 목록을 다음과 같이 다시 작성할 수 있습니다.x1×x2x2×x1x2×x1

그룹 3 :x1×x2

세 그룹 모두의 기능을 세어 5를 얻습니다.

그러나 이것은 장난감의 예입니다. 피처 수를 계산하기위한 일반 공식을 도출 할 수 있습니다. 원래 기능 그룹을 출발점으로 사용합시다.

sizegroup1+sizegroup2+sizegroup3=m×n+m×n+m×n=3×m×n

아! 그러나 그룹 3에서 중복 제품을 제거해야했습니다.

따라서 그룹 3의 기능을 올바르게 계산하려면 행렬에서 모든 고유 한 쌍별 제품을 계산할 수있는 방법이 필요합니다. 이항 계수로 수행 할 수 있습니다. 이항 계수는 동일하거나 큰 크기의 n 그룹에서 크기 k의 모든 고유 한 하위 그룹을 계산하는 방법입니다. 따라서 그룹 3의 기능을 올바르게 계산하려면 .C(m×n,2)

따라서 일반적인 공식은 다음과 같습니다.

m×n+m×n+C(m×n,2)=2m×n+C(m×n,2)

장난감 예제에서 피처 수를 계산하는 데 사용할 수 있습니다.

2×1×2+C(1×2,2)=4+1=5

그게 다야!


2
이 설명이 강의에서 주어 졌기를 바랍니다!
Ian Walker-Sperber

나는 우리가 설명하지 않고 과정에서 이것을 어떻게 알고 있어야하는지 궁금하다
Mohammed Noureldin

6

모든 선형 및 2 차 피처를 사용하는 경우 총 수는 다음과 같습니다.

100*100 + 100*100 + C(100*100,2) = 50015000
10000   + 10000   + 49995000     = 50015000
xi         xi^2       xixj

1
좀 더 설명해 주시겠습니까? 당신은 xi + xi ^ 2 + xixi를 말하고 있습니까? xi = 100이고 xj = 100입니까? xi와 xi ^ 2가 모두 100 * 100 인 이유는 무엇입니까? C (100 * 100,2) 란 무엇입니까?
Iancovici

4
(1) 완전히 100 * 100 픽셀이 있습니다. 강도를 기능으로 사용하는 경우 총 100 * 100 기능이 있습니다 .xi입니다. 그리고 (ii) 전력 밀도를 피쳐 (xi, xi) 또는 xi. ^ 2, 여전히 총 ​​100 * 100으로 사용할 수도 있습니다. 마지막으로 (iii) 두 픽셀 사이의 상관 관계를 사용하는 경우 총 C 쌍의 픽셀이 있습니다. 즉 (xi, xj), C는 수학 조합입니다 ( mathworld.wolfram.com/Combination.html )
lennon310

고마워, 마지막 질문은 왜이 문맥에서 xi = xi ^ 2입니까?
Iancovici

xi를 사용하여 단일 픽셀을 나타내고 xi ^ 2는 동일한 픽셀 (xi, xi)의 쌍을 사용한다는 의미입니다. 단일 픽셀의 수는 동일한 픽셀의 쌍과 동일합니다. 픽셀 강도와 관련이 없습니다. 혼란을 드려 죄송합니다.
lennon310

몇 년 후 같은 질문입니다. 가능한 강도 값 (0에서 255까지)도 고려해야합니까?
albus_c

0

( ) / 2 의 개념은 2 차 특징을 얻기 위해 작동 할 수도 있습니다. 따라서 n = 2500이면 x (i) = 2500이고 수식에 x를 대입하면 5 천만 개가됩니다.x2


2
내가 얻을 만,하지 만. 5025002/2350
whuber

0

100 * 100 픽셀 이미지가 있으면 @ whuber 5 천만이 발생합니다. 여기서 square (100 * 100) = 100000000 (10 million) 및 square (100 * 100) / 2 = 5 백만입니다. 이 답변을 바랍니다.


이것은이 질문에 대한 답변이 아니라 의견에 대한 답변입니다.
Michael R. Chernick
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.