전체 글 51

CS231n 5강 Convolutional Neural Networks

Convolutional Neural Networks 기존의 FC layer에서는 32 x32 x 3의 이미지를 하나의 벡터로 펼친다음에 가중치를 곱하였다. 하지만 CNN에서는 기존의 이미지 구조를 그대로 유지할 수 있다. CNN에서는 작은 필터가 가중치가 되는데, 위의 예시에서는 5x5x3의 shape를 가지는 필터가 우리의 가중치인 것이다. 이 필터를 가지고 이미지를 슬라이딩하면서 가중치와 입력을 곱(내적)하는 것이다. 이미지는 channel 을 가지는데, 필터도 이미지와 동일한 깊이의 channel을 가진다. 가령 32 x 32 x 3 의 이미지에 5x5x3의 필터를 사용하면 이미지의 가로 세로의 관점에서는 일부를 보지만 깊이는 전체를 보는 것이다. 필터는 이미지를 sliding 하면서 필터의 각 ..

CS231n 4강 Introduction to Neural Networks

3강 요약 함수 F로 classifier(network) 정의 (x : input data, W : weights, 출력 : score vector) Loss function 으로 우리의 함수 F가 얼마나 성능이 안좋은지 확인 (e.g. SVM, BCE 등...) 함수 F가 training dataset에만 fit 하는 것을 방지하기 위해(우리의 목표는 test dataset) Regularization term 추가 Loss가 가장 낮아지는 W를 찾고자 Gradient Descent 활용 Computational graphs 우리는 최종적으로 gradient 값을 자동으로 계산하기 위해 analytic gradient를 사용할 것이다. Computational graph 를 활용하여 analytic g..

CS231n 3강 Loss Functions and Optimization

Linear classifier을 정의했다면 이제는 뭘 해야할까? 우선 좋은 가중치(W)를 설정하는 것이 필요하다. 그렇다면 우리의 가중치가 좋은지 나쁘지를 어떻게 알 수 있을까? => W를 입력으로 받아서 스코어를 확인하고 우리의 W가 얼마나 좋고 나쁜지를 정량화 해주기 위한 손실함수가 필요 => 손실함수를 이용해서 Loss를 최소화 하는 최적의 W를 찾아야 함(최적화) Define a loss function that quantifies our unhappiness with the scores across the training data. 학습 데이터 전체 scores에 대해 가중치(모델)의 성능을 수치화하기 위한 loss function을 정의 Come up with a way of efficien..

CS231n 2강 Image Classification Pipeline

Image Classification Problem A core task in Computer Vision 고양이나 강아지 트럭과 같은 이미지를 올바르게 분류하는 문제는 사람에게는 쉽지만 컴퓨터에게는 어려운 문제이다. 우리가 이미지를 바라보는 방식과 컴퓨터가 바라보는 방식에는 차이가 있다. 컴퓨터는 이미지를 픽셀이라는 단위로 읽게 된다. 우리의 이미지가 800 x 600 의 x 3 (3 : channels RGB) 크기를 가진다고 하면 컴퓨터는 800 x 600 x 3 개의 숫자 정보로 이미지를 읽는 것이다. Semantic Gap 고양이 사진을 예로 들자면, 고양이는 우리가 이미지에 부여한 semantic label 이다. 고양이라는 semantic idea와 pixel 값 (이미지 배열) 사이에는 큰..

백준 10799번 : 쇠막대기(S2)

https://www.acmicpc.net/problem/10799 10799번: 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저 www.acmicpc.net ✨ 문제 여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저의 배치는 다음 조건을 만족한다. 쇠막대기는 자신보다 긴 쇠막대기 위에만 놓일 수 있다. - 쇠막대기를 다른 쇠막대기 위에 놓는 경우 완전히 포함되도록 놓되, 끝점은 겹치지 않도록 놓는다. 각 쇠막대기를 자르는 레이저는 ..

카테고리 없음 2024.02.05

백준 2493번 : 탑(G5)

https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net ✨ 문제 KOI 통신연구소는 레이저를 이용한 새로운 비밀 통신 시스템 개발을 위한 실험을 하고 있다. 실험을 위하여 일직선 위에 N개의 높이가 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세우고, 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사하고, 탑의 기둥 모두에는 레이저 신호를 수신하는..

백준 1935번: 후위 표기식2(S3)

https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이 www.acmicpc.net ✨ 문제 - 후위 표기식과 각 피연산자에 대응하는 값들이 주어져 있을 때, 그 식을 계산하는 프로그램을 작성하시오. ✨ 접근방법 - stack을 이용하여 피연산자는 stack에 저장해주고, 연산자를 만났을 경우에는 stack에서 값을 pop해서 계산해준 뒤 다시 stack에 pop하는 방식으로 구현하였다. - 다만 문제의 조건이 뚜렷하지 않아 예외처리를 하기 애매하다고 느껴졌다. ✨ 후..

백준 1158번 : 요세푸스 문제(S4)

https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net ✨ 문제 요세푸스 문제는 다음과 같다.N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열..

반응형