Economics & Deeplearning

40 Must know Questions to test a data scientist on Dimensionality Reduction techniques 본문

머신러닝

40 Must know Questions to test a data scientist on Dimensionality Reduction techniques

이슈카 2017. 3. 21. 18:42

https://www.analyticsvidhya.com/blog/2017/03/questions-dimensionality-reduction-data-scientist

원문은 위에 링크에 존재합니다. 발번역입니다.
원문을 읽어보시는 게 좋을 것 같습니다.

수백개의 변수를 가진 데이터셋으로 모델을 만들거나 수 많은 변수들이 상관관계가 있을 경우, 차원 축소를 쓴다.

Questions & Answers

1. 1000개의 입력변수와 1개의 타겟 변수를 갖는 머신러닝 문제를 상상하자. 입력 변수들과 타겟 변수 사이의 관계에 기반하여 가장 중요한 100개를 선택한다.

이것은 차원 축소의 예인가?
A. Yes
B. No
Solution : (A)

2. [True or False] 차원 축소 알고리즘을 적용하기 위해서는 타겟변수가 꼭 필요하지 않다.

A. True
B. False
Solution: (A)
LDA는 타겟이 필요한 차원 축소 알고리즘의 예

3. 데이터셋에 4개의 변수를 갖고 있다(A,B,C,D) 다음의 행동을 한다.
Step 1 : 위의 변수를 사용해, 두개의 변수를 더 만든다. E = A + 3 * B, F = B + 5 * C + D
Step 2 : 그런 후 E와 F만은 사용해 랜덤포레스트 모형을 만들었다.
위의 방법이 차원 축소 방법인가?
A. True
B. False
Solution : (A)

그렇다, 왜냐하면 Step 1은 2차원으로 데이터를 나타냈다.

4. 아래 방법 중에 차원 축소에서 나은 성능을 보이는 것은?
A. 많은 결측값이 있는 변수 제거
B. 데이터에서 분산이 큰 변수 제거
C. 자료 트렌드와 유사하지 않은 변수 제거
D. 답 없음
Solution : (A)
만약 변수가 99% 정도로 많은 결측값이 있으면 제거할 수 있다.

5. [True or False] 차원 축소 알고리즘들은 모델을 만들때 계산 시간을 줄이는 방법중 하나이다.
A. True
B. False
Solution : (A)
자료의 차원을 줄이는 것은 모델 학습시에 시간을 줄일 수 있다.

6. 다음 알고리즘 중 차원 축소에 사용할 수 없는 것은?
A. t-SNE
B. PCA
C. LDA
D. None of these
Solution : (D)
모든 알고리즘이 차원축소 알고리즘

7. [True or False] PCA 저차원에서 시각화와 투영에 사용할 수 있다
A. TRUE
B. FALSE
Solution : (A)
저차원에서 데이터를 나타내보는 것은 유용하다. 첫 2개의 주성분을 사용할 수 있고, 산점도사용해 데이터를 시각화할 수 있다.

8. 가장 자주 사용되는 차원 축소 알고리즘은 주성분분석(PCA)이다. PCA에 대해 옳은 것은?
1. PCA는 비지도 방법
2. 이것은 큰 분산을 갖는 데이터 방향을 찾는다.
3. 주성분 분석의 최대 수 <= 변수의 수
4. 모든 주성분은 서로 직교한다.

A. 1,2
B. 1,3
C. 2,3
D. 1,2,3
E. 1,2,4
F. 위의 모두
Solution : (F)

9. 전처리 기법으로 차원 축소를 사용한다고 가정하자. (예를 들어, 모든 변수를 사용하는 것 대신에 PCA의 K개만 사용하고, 이 PCA 투영을 변수로 사용한다). 올바른 문장은?
A. 큰 'k'는 더 일반화(regularization)된다.
B. 큰 'k'는 덜 일반화(regularization)된다.
C. 말할 수 없다.
Solution : (B)
큰 K는 데이터의 특성을 더 보존할 수 있음으로 덜 스무스해지고 덜 일반화된다.

10. 최소 성능을 갖는 컴퓨터에서 작동할 때 차원축소를 위해 PCA보다 t-SNE를 사용하는 것이 나은 상황은?
A. 100만개 관찰치와 300개 변수
B. 10만개 관찰치와 310개 변수
C. 10,000개 관찰치와 8개 변수
D. 10,000개 관찰치와 200개 변수
Solution : (C)
t-SNE는 이차 복잡도 O(n^2)와 공간 복잡성을 갖음. 그러므로 매우 무거운 알고리즘. c는 단지 8개의 피쳐만이 있다고 선택해서는 안된다, 변수 의 갯수가 작을 때 차원 감소는 중요 정보 손실을 가져온다.

11. t-SNE 비용함수에 대해 올바른 문장은?
A. 본질적으로 비대칭이다.
B. 본질적으로 대칭이다.
C. SNE의 비용함수와 같다.
Solution : (B)
SNE의 비용함수는 본질적으로 비대칭이다. 이것은 기울기 강하를 사용해 수렴하기 어렵게 만든다. 대칭적 비용 함수는 SNE 와 t-SNE의 주요한 차이점 중 하나다.

12. 텍스트 데이터를 다룬다고 상상하자. 워드 임베딩(Worc2vec)을 사용해 단어를 표현한다. 워드 임베딩에서 1000차원으로 한다. 이 고차원 자료의 차원을 줄일 때, 유사한 의미를 갖는 유사한 단어들이 공간상에서 가장 근접하기를 원한다 가장 올바른 알고리즘은?
A. t-SNE
B. PCA
C. LDA
D. 이들 중 없음
Solution : (A)
t-SNE 는 자료를 줄이기 위해 최근접 이웃을 고려하는 t-분포 확률 이웃 임베딩을 나타낸다.

13. [True or False] t-SNE는 비모수적 사상(mapping)을 학습한다.
A. TRUE
B. FALSE
Solution : (A)
t-SNE는 입력 공간으로부터 매핑할 때 명시적 함수를 학습하지 않는 것을 의미하는 비 모수적 매핑을 학습한다.
더 자세한 정보는 다음을 읽으시오(https://lvdmaaten.github.io/tsne/)

14. t-SNE와 PCA에 대해 올바른 문장은?
A. t-SNE는 선형이고 PCA는 비선형이다.
B. t-SNE와 PCA 모두 선형
C. t-SNE와 PCA 모두 비선형
D. t-SNE는 비선형 PCA는 선형
Solution : (D)
자세한 설명은 여기(https://www.analyticsvidhya.com/blog/2017/01/t-sne-implementation-r-python/)

15. t-SNE 알고리즘에서 조정가능한 하이퍼파라미터는?
A. 차원의 수
B. Smooth measure of effective number of neighbours(perplexity)
C. 최대 반복 횟수
D. 모두 맞다
Solution : (D)

16. PCA와 비교하여 t-SNE에 대해 맞는 문장은?
A. 데이터 사이즈가 클 때, t-SNE는 더 나은 결과를 만드는데 실패한다.
B. t-SNE는 데이터 사이즈와 상관없이 항상 더 나은 결과를 만든다.
C. PCA는 작은 데이터 사이즈에 대해 t-SNE보다 항상 더 나은 성능을 낸다.
D. 이들 중 답 없음
Solution : (A)

17. Xi 와 Xj는 고차원 상에서의 두 구별되는 점, Yi와 Yj는 Xi와 Xj의 저차원의 표현
1. 데이터점 Xi와 Xj의 유사성은 조건부 확률 p(j|i)
2. 데이터점 Yi와 Yj의 유사성은 조건부 확률 q(j|i)
저차원 공간에서 Xi와 Xj를 완벽히 표현하려면 어느 것이 맞아야하는가?

A. p(j|i) = 0, q(j|i) = 1
B. p(j|i) < q(j|i)
C. p(j|i) = q(j|i)
D . p(j|i) \> q(j|i)
Solution : (C)
두 점의 유사성에 대한 조건부 확률은 동일해야한다. 왜냐하면 점 사이의 유사성은 완벽한 표현이 되기 위해 고차원과 저 차원 모두에서 유지되어야 하기 때문

18. LDA에 대해 참인것은?


A. LDA는 클래스사이의 거리는 최대화하고, 클래스 내의 거리는 최소화하려 한다.
B. LDA는 클래스 내의 거리와 클래스 사이의 거리 모두를 최소화하려 한다.
C. LDA는 클래스 사이의 거리는 최소화하고 클래스 내의 거리는 최대화한다.
D. LDA는 크래스 내의 거리와 클래스 사이의 거리 모두를 최대화한다.
Solution: (A)

19. LDA가 실패할 사례는?
A. 데이터에서 분산에는 차이가 있고 평균에 차이가 없는 경우
B. 데이터 분산은 차이가 없고, 평균에는 차이가 있는 경우
C. 데이터 분산과 평균에 차이가 있는 경우
D. 이들 중 답 없음
Solution : (A)

20. PCA와 LDA에 대해 참인 것은?
1. LDA 와 PCA 모두 선형 변환 기법이다
2. LDA는 지도학습 PCA는 비지도학습
3. PCA는 분산을 최대화하고, LDA는 다른 클래스 사이의 분리를 최대화한다.
A. 1,2
B. 2,3
C. 1,3
D. 3
E. 1,2,3
Solution : (E)

21. 고유값이 대체로 동일할 때 발생하는 것은?
A. PCA 독보적 성과
B. PCA 나쁜 성과
C. 말할 수 없다
D. 위의 답 없음
Solution : (B)
모든 고유 벡터들이 동일할 때, 주성분을 선택할 수 없다 왜냐하면 모든 주성분이 동일하기 때문이다.

22. PCA가 더 잘 작동하는 것?
1. 데이터에 선형 구조
2. 데이터가 곡면위에 있고, 평면위가 아님
3. 변수들의 단위가 같은 단위
A. 1,2
B. 2,3
C. 1,3
D. 1,2,3
Solution : (C)

23. PCA를 사용해 저차원 변수를 얻을 때 발생하는 것?
1. 이 변수들은 여전히 해석가능하다
2. 이 변수들은 해석력을 잃는다
3. 이 변수들은 자료의 모든 정보 표현을 가져온다
4. 이 변수들은 자료에 모든 정보 표현을 가져오지 못할 수도 있다
A. 1,3
B. 1,4
C. 2,3
D. 2,4
Solution : (D)
저차원 변수를 얻을 때 대부분은 정보를 잃고, 해석 불가능하다.

24. 키와 체중 사이의 산점도가 주어져있다고 가정한다.


하나의 축을 따라 최대 가변성을 포착할 수 있는 각도를 선택하라
A. 0 도
B. 45 도
C. 60 도
D. 90 도
Solution : (B)
B가 가능한한 가장 큰 분산을 갖는다.

25. 다음 선택중 참은?
1. PCA에서 파라미터를 초기화할 필요가 있다.
2. PCA에서 파라미터를 초기화할 필요가 없다.
3. PCA는 지역 최소점에 빠질 수 있다.
4. PCA는 지역 최소점에 빠지지 않는다.
A. 1,3
B. 1,4
C. 2,3
D. 2,4
Solution : (D)

PCA는 초기화할 파라미터를 갖지 않는 결정론적 알고리즘이고, 이것은 대부분의 머신러닝 알고리즘처럼 지역 최소화 문제를 갖지 않는다.

26. 아래의 스냅샷은 클래스 정보를 갖는 두 변수(X1, X2) 의 산점도이다. PCA와 LDA의 방향을 볼 수 있다.


더 나은 클래스 예측의 결과를 내는 알고리즘은?
A. PCA와 함께 분류 알고리즘 구축
B. LDA와 함께 분류 알고리즘 구축
C. 말할 수 없다
D. 답이 없다
Solution : (B)
만약 우리의 목표가 이들 점들을 분류하는 것이라면, PCA 투영은 더 해롭다 첫번째 주성분 축을 따라서 파란점과 빨간점이 겹치게 놓일 것이기 때문에 PCA는 분류기를 혼란스럽게 한다.

27. 이미지 데이터셋에 PCA를 적용할 때 올바른 것은?
1. 변할 수 있는 물체를 찾는데 효과적으로 사용될 수 있다.
2. 선형 변환에 불변한다.
3. 이미지 압축을 위해 사용될 수 있다.
4. 음영에 대해 불변하지 않는다.
A. 1,2
B. 2,3
C. 3,4
D. 1,4
Solution : (C)

28. 어떤 조건 아래서 SVD와 PCA는 같은 사영결과를 내는가?
A. 데이터가 0의 중앙값
B. 데이터가 0의 평균
C. 항상 같다
D. 답이 없다
Solution : (B)
데이터가 0의 평균 벡터를 가질 때, 그렇지 않다면 SVD를 취하기전에 데이터를 센터링해야한다

29. 2차원 상의 3개의 데이터점 : (-1, -1), (0,0), (1,1)이 있다.


이 데이터에 대한 첫번째 주성분은?
1. [sqrt(2)/2, sqrt(2)/2]
2. (1/sqrt(3), 1/sqrt(3))
3. ([-sqrt(2)/2, sqrt(2)/2])
4. (-1/sqrt(3), -1/sqrt(3))
A. 1,2
B. 3,4
C. 1,3
D. 2,4
Solution : (C)

30. 주성분 [sqrt(2)/2, sqrt(2)/2]를 이용해 1차원에 원 데이터를 투영시키면, 어떤 점을 얻는가?
A. (-sqrt(2)), (0), (sqrt(2))
B. (sqrt(2)), (0), (sqrt(2))
C. (sqrt(2)), (0), (-sqrt(2))
D. (-sqrt(2)), (0), (-sqrt(2))
Solution: (A)

31. 사영된 점들 (-sqrt(2)), (0), (sqrt(2))을 가지고, 원래 2차원 공간에서 표현하고, 원래 점들의 재구성으로 볼때, 재구성 오차는 무엇인가?
A. 0%
B. 10%
C. 30%
D. 40%
Solution : (A)
재구성 오차는 0 왜냐하면 모든 점은 완벽히 첫번째 주성분 축에 위치하기 때문이다.

32. LDA에서, 아이디어는 두개의 클래스를 분리하는 최적의 선을 찾는 것이다. 다음 이미지에 대해 올바른 사영은 어떤것인가?


A. LD1
B. LD2
C. 둘 다
D. 답 없음
Solution : (A)
LD1은 클래스를 분리하는 최적이기 때문에 올바른 사영

33. PCA는 시도하기에 좋은 기법이다, 왜냐하면 이해하기 단순하고 차원 축소에 일반적으로 사용하기 때문이다. 고유값을 얻고 나타낸다.
두개의 그래프 중 어느것이 PCA의 성능이 더 나은가? M은 M개의 주성분, D는 총 변수의 수


A. 왼쪽
B. 오른쪽
C. 어느 쪽이든
D. 답 없음
Solution : (B)
PCA는 빠르게 1에 근사할수록 좋다. 이것은 첫 주성분이 크고 나머지가 작을때 발생. PCA가 나쁜 경우는 모든 주성분들이 동일할 경우.

34. 참인것은?
A. LDA는 명시적으로 클래스사이의 차이를 모형화하기를 시도한다. PCA는 클래스 차이를 고려하지 않는다.
B. 둘다 클래스 차이를 모형화한다
C. PCA는 클래스 차이는 모형화하고, LDA는 하지 않는다.
D. 둘다 클래스 차이는 고려하지 않는다.
Solution : (A)

35. PCA가 적용된 후의 첫 두 주성분이 될 수 있는 것은?
1. (0.5, 0.5, 0.5, 0.5) 와 (0.71, 0.71, 0, 0)
2. (0.5, 0.5, 0.5, 0.5) 와 ( 0, 0, -0.71, -0.71)
3. (0.5, 0.5, 0.5, 0.5) 와 (0.5, 0.5, -0.5, -0.5)
4. (0.5, 0.5, 0.5, 0.5) 와 (-0.5, -0.5, 0.5, 0.5)

A. 1,2
B. 1,3
C. 2,4
D. 3,4
Solution : (D)
첫 두개는 고유벡터가 직교하지 않는다.

36. 로지스틱 회귀와 LDA 사이의 차이점은?
1. 클래스들을 잘 나누면, 로지스틱 회귀의 파라미터 추정들을 불안정해질 수 있다.
2. 샘플 크기가 작고, 각 클래스에 대해 변수들의 분포가 정규분포이면, 선형 판별 분석이 더 안정적이다.
A. 1
B. 2
C. 1,2
D. 답 없음
Solution: (C)
https://www.youtube.com/watch?v=RfrGiG1Hm3M
참조

37. PCA는 어떤것을 고려하는가?


A. 수직 오프셋
B. 직각 오프셋
C. 둘다
D. 답 없음
Solution : (B)
수직 오프셋은 잔차. 직각 오프셋은 PCA에서 유용함

38. 10개 클래스 분류 문제를 다룬다고 가정하고, LDA는 몇개의 판별문제를 다루는가?
A. 20
B. 9
C. 21
D. 11
E. 10
Solution : (B)
LDA는 최대 c-1 판별 벡터
더 많은 정보 https://books.google.co.in/books?id=MgGrCAAAQBAJ&pg=PA110&lpg=PA110&dq=LDA+produce+at+most+C-1+feature+projections&source=bl&ots=OHYbplX4IJ&sig=3wkoBzaAfZZplFSF6MXgH3wfl0I&hl=en&sa=X&ved=0ahUKEwiZxLTQ-trSAhUlS48KHVjfCHYQ6AEIUDAJ#v=onepage&q&f=false



39. hoover tower의 이미지과 다른 타워들의 이미지들로 구성된 데이터셋. PCA(Eigenface)를 사용해, 새로운 이미지에 대해 hoover tower 인지 아닌지 최근접 이웃기법을 사용해 모델링.
아이겐페이스 알고리즘으로부터 적절한 성능을 얻기 위해서는, 어떤 전처리가 필요한가?


1. 이미지에서 같은 위치에 타워가 위치하도록 정렬
2. 리사이즈 or 잘라내기를 사용해 동일 크기로 만들기
A. 1
B. 2
C. 1,2
D. 답 없음
Solution : (C)

40. 아래 이미지에서 주성분의 최적 갯수는?


A. 7
B. 30
C. 40
D. 말할 수 없다
Solution : (B)
30 주성분일때 최고 분산을 갖는다.

'머신러닝' 카테고리의 다른 글

catboost  (2) 2017.07.20
41 Essential Machine Learning Interview Questions (with answers)  (0) 2017.03.21
앙상블 기법 4 - 부스팅  (3) 2016.01.26
앙상블 기법 3 - 배깅과 보팅  (2) 2016.01.26
앙상블 기법 2  (0) 2016.01.26
Comments