본문 바로가기

전체 글311

The Open Images Dataset V4, Kuznetsova, Google AI, 2018 Abstract 9.2M 개의 이미지 19.8k개의 concept에 대한 3천10만개의 이미지-레벨 레이블 600개의 object class에 대한 1천5백4십만개의 bounding box 57개의 class에 대한 visual relationship 표기가 3십만7500개 이다. 이 데이터들은 image classification, object detection, visual relationship detection 영역의 발전에 사용되기를 바라고 있다. 1. Introduction 이미지 소개 2. Dataset Acquisition and Annotation 2.1 Image Acquisition 2.2 Classes 2.3 Image-Level Lables 이미지를 분류하는 것은 시간도 많이 걸리.. 2019. 7. 18.
1018 체스판 다시 칠하기 일일이 다 해보면 된다. 단순반복 노동은 한 번만 그 원리를 알면, 나머지는 정말 쉽다. 특히 반복할 때 컴퓨터는 절대 실수하지 않는다. 8x8의 크기의 filter로 체스판을 자르고 올바른 체스판으로 만들기 위해 뒤집어야할 횟수 중 최소가 되는 것을 고른다. 추가 테스트 케이스 9 9 WBWBWBWBB BWBWBWBWB WBWBWBWBW BWBWBWBWB WBWBWBWBW BWBWBWBWB WBWBWBWBW BWBWBWBWB WBWBWBWBW #include char a[52][52]; int main() { int n, m; scanf("%d %d", &n, &m); for (int i=0; i 2019. 7. 18.
[brute-force] 1436 영화감독 숌 N 2019. 7. 16.
GAN Generative Adversial Network Generator 생성자는 랜덤 벡터 'z'를 입력으로 받아 가짜 이미지를 출력하는 함수다. z는 균등분포(Uniform Distribution)나 정규분포(Normal Distribution)에서 무작위로 추출된 값이다. 생성자는 이렇게 단순한 분포를 사람 얼굴 이미지와 같은 복잡한 분포로 매핑(mapping)하는 함수이다. 생성자 모델에 충분한 수의 매개 변수가 있다면 어떤 복잡한 분포도 근사할 수 있다고 알려져 있다. z 벡터(latent vector)가 존재하는 공간을 잠재 공간(latent space)라 한다. **Discriminator** 구분자는 생성자가 만들어낸 fake image를 입력으로 받아 이미지가 진짜인지 가짜인지 출력한다. D.. 2019. 7. 16.
Mask-RCNN Facebok AI Research (FAIR), Kaiming He, 24 Jan 2018 Marr Prize at ICCV 2017 Abstract object instance segmentation 을 위한 프레임워크. 학습이 쉽고 Faster R-CNN에 조금의 overhead만 추가해서 5 fps의 빠르기 정도로 실행된다. COCO 셋에서 instance segmentation, bbox object detection, person keypoint detection 에서 가장 높은 결과를 보였다. 1. Introduction instance segmentation은 두 가지 과제를 합친 것이다. object detection : bbox를 이용하여 object를 분류하고, 위치를 찾는 것. se.. 2019. 7. 16.
6. 브루트포스(brute-force) part 2 6.7 최적화 문제(Optimization problem) 문제의 답이 하나가 아니라 여러 개이고, 그 중에서 어떤 기준에 따라 가장 '좋은' 답을 찾아 내는 문제 ex) n개의 사과 중에서 r개를 골라 무게의 합을 최대화 하는 문제 최적화 문제를 해결하는 방법 중 기초적인 것은 완전 탐색 이다. 가능한 답을 모두 생성해 보고 그중 가장 좋은 것을 찾아내면 되기 때문에, 가장 직관적인 방법이기도 하다. 다른 방법으로는 동적계획법(DP), 조합탐색, 결정문제 등으로 문제를 더욱 빠르게 풀 수 있다. ex) 여행하는 외판원 문제 (Traveling Salesman Problem, TSP) 6.10 많이 등장하는 완전 탐색 유형 모든 순열 만들기 가능한 순열의 수 N!, N이 10을 넘어간다면 .. 2019. 7. 15.
[brute-force] 2798 블랙잭 블랙잭 100가지 중에 3가지를 고르는 경우의 수는, 10C3 = 161,700 경우의 수 별로 없으면 컴퓨터의 무식하고 빠른 연산을 살려서 모든 경우를 체크하여 보자. 가능한 조합을 모두 고르는 함수를 마침 공부하였다! sum = 0 인 상황에서 m - sum = 0 && d.. 2019. 7. 15.
연산자 오버로딩 vector v; 를 선언해보자. 이 상황에서 cout으로 pair쌍을 출력해보고 싶다. c++은 연산자를 사용자가 필요한 방향으로 쓸 수 있게 돕는다. 2019. 7. 14.
6. 브루트포스(brute-force) part 1 브루트 포스 - 무식하게 풀기 6.2 재귀호출과 완전 탐색 재귀호출 재귀호출시 쪼개지지 않는 가장 작은 작업에서 함수를 return 하여 종료시켜야 한다. 가장 작은 단위를 기저 사례 (base case)라 한다. 중첩 반복문 대체 완전 탐색 구현 ex) 모든 조합의 경우의 수 찾기 #include #include /* 모든 조합의 경우를 출력한다. 재귀호출을 이용한다. 다중 for문을 대체할 때 유용하다. */ using namespace std; int cnt = 0; void printVector(vector v){ for (auto i : v) printf("%d ", i); printf("\n"); } // nCm void combination(int n, vector & v, int m){ i.. 2019. 7. 14.
17298 오큰수 일단 비교를 해야하니 담아둘 컨테이너가 필요하다. 배열을 백만개 선언할 수 도있고, 벡터를 이용할 수도 있지만, 간단하게 배열을 써보자. 그렇게 한다면, 최악의 경우 (제일 큰 숫자가 맨 오른쪽에 있는 경우) 탐색시간이 O(백만^2) 이 들어서 시간초과가 날 것이다. 스택에 하나씩 넣고 빼면서 비교해볼까 4 3 5 2 7 을 예로들면, stack 3 stack 3 5 들어간 5가 3보다 크므로 출력 stack 3 5 2 stack 3 5 2 7 들어간 7이 5보다 크므로 출력 들어간 7이 2보다 크므로 출력 7 다음에 들어간 것이 없으므로 -1 출력 .... 흠 무언가 의미가 다가오지 않는다. 이럴 때는 발상을 뒤집어 보자. 배열에 3 5 2 7을 넣어놓고, stack에 배열 끝 자리부터 거꾸로 담는다... 2019. 7. 14.
728x90