GroundDev / VisionResearch

Research of Vision Framework
0 stars 0 forks source link

[WWDC] 덥덥디씨 영상 #1

Open GroundDev opened 2 years ago

GroundDev commented 2 years ago

Vision이라. Vision이라 함은 시야를 의미할텐데. 이게 뭘까요? 아이작으로 부터 우리 ios 개발자들은 WWDC 영상을 많이 참고하는게 좋다는 얘기를 들은 적이 있습니다. 애플에서 긴 시간동안 고심해서 만드는 영상들인 만큼, 정보에 대한 신뢰성도 물론이거니와 이해하기도 좋고 정보집약도가 높은 것으로 보입니다. 그래서 이번에도 Vision이 무엇일까? 라는 질문에 대한 답을 우선 WWDC 영상을 보는 것으로 찾아보기로 하였습니다.

GroundDev commented 2 years ago

[WWDC] Vision with Core ML

에 대해 다룬다고 합니다.

Custom Image Classification

Worth more than a thousand pictures

목표 : Create an app helping shoppers identify items 이를 위해서 필요한 단계

  1. Train a custom classifier
  2. Build an iOS app
  3. Keep an eye on pitfalls

첫번째 단계인 train을 하는 과정은 Create ML을 이용합니다. 그를 위해서는 너무나도 당연하게도 첫번째로는 우선 사진을 찍어야겠죠? 그런 다음 사진들을 폴더에 넣는데 이때 폴더명은 classification label로 활용됩니다. 그럼 이제 이런 질문이 나올거예요. "얼마나 필요한데?" 이거에 대해서는 최소한 각 카테고리별로 10장은 있어야 한다고 할 수 있긴 하겠지만, 최소한인거죠. 더 많을수록 더 좋고요 실제로 classifier의 퍼포먼스 또한 더 훌륭해집니다. 근데 유의할점이 있어요. 데이터셋의 imbalance가 심하면 안됩니다. 예를 들어서 한 카테고리에는 수천장의 사진이 있는데 다른 쪽에는 막 10장있고 이러면 이 모델은 실제로는 잘 학습되지 않을거예요. 그래서 대부분의 카테고리에서 비슷한 분포를 가지는게 좋습니다.

여기에 이제 augmentation이 들어갑니다. 이 녀석은 모델을 더 견고하게 만드는데 도움을 주죠. 그러나 이게 다양성을 담보하진 않습니다. 그래서 여전히 분류하고자 하는 객체가 담긴 이미지들이 많이 필요한건 맞는데, 그럼에도 augmentation을 통해 이미지들을 못살게굴죠! 막 노이즈 넣고 블러하고 회전시키고 뒤집고합니다. 그렇다보니 우리가 훈련시킬 때 classifier는 이것들을 다 다르게 봅니다.

GroundDev commented 2 years ago

[WWDC] Understanding Images in Vision Framework

Attention based saliency

Objectness based saliency

위 두 개념의 차이는 이미지를 보면 더 쉽게 이해할 수 있겠네요.

image image

근데 이제 여기까지 봤으면 대충 왜 그런지는 아실텐데, 둘 중 attention based saliency가 좀 더 복잡한 saliency입니다.

그러한 attention based saliency를 결정하는 주요 요소는 다음과 같습니다.

  1. Contrast
  2. Faces
  3. Subjects
  4. Horizons
  5. Light

위의 요소들로부터 무엇이 돌출된(salient)건지 그렇지 않은지를 결정하죠.