-
Python FastIO - 프로그래밍 대회를 위한 파이썬 빠른 입출력
프로그래밍 대회나 기업 코딩 테스트에서는 제한 시간이 있기 때문에 최대한 빠르게 입출력을 처리하는 것이 중요하다. 특히, C언어에 비해 굉장히 느린 Python은 입출력 자체만으로 시간 초과가 나기도 한다. 따라서 Python을 주력 언어로 정했다면, 빠른 입출력을 위한 방법은 기본적으로 숙지하고 있어야 한다. 기본 입력 기본 제공되는 input(...
-
2022 서강대학교 프로그래밍 경시대회 Master 부문 - Python 정답 코드
대회 문제는 백준 온라인 저지에 공개되어있다. https://www.acmicpc.net/category/697 A. WARBOY (BOJ 26082) 1 2 3 4 5 6 7 import sys input = lambda: sys.stdin.readline().strip('\n') for T in range(1): a, b, c = m...
-
2022 서강대학교 프로그래밍 경시대회 Champion 부문 - Python 정답 코드
대회 문제는 백준 온라인 저지에 공개되어있다. https://www.acmicpc.net/category/697 A. 완전한 수열 (BOJ 26090) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 import sys input = lambda: sys.stdin.readli...
-
CS231n Lecture 4-1: Backpropagation
빠르고 정확한 Analytic gradient를 유도하고 사용하는 방법에 대해 배워보자. 계산 그래프 (Computational graph) 복잡한 형태의 함수를 나타내기 위해 계산 그래프(computational graph)를 사용할 것이다. 기본적으로 계산 그래프를 통해 어떤 함수든 표현 가능하다. 다음 예시는 $W$, $x$를 입력으로 받는 ...
-
CS231n Lecture 3-3: Image Features
Feature vector 이전에 간단한 형태의 inear classifier를 소개할 때, 이미지를 픽셀 그대로 입력 받는 방식을 소개했다. 그리고 아주 안 좋은 방법이라는 것을 알 수 있었다. 그래서 딥러닝 이전에는 두 가지 스테이지를 통해 입력을 변환한다. 먼저, 이미지에 대한 여러가지 특징(feature)들을 계산한다. 특징은 이미지의 ...
-
CS231n Lecture 3-2: Optimization
파라미터 $W$를 산과 계곡같은 풍경으로 비유하면 우리는 이 골짜기를 돌아다니는 사람과 같다. 이때 내가 있는 곳의 높이가 Loss인 셈이다. Loss는 $W$에 따라 변하고 이를 최소로 만드는 골짜기의 밑바닥에 해당하는 $W$를 찾는 것이 목표다. 이 과정을 해결하기 위한 방법들을 최적화(Optimization)이라고 한다. 손실 함수(Loss f...
-
CS231n Lecture 3-1: Loss Function and Regularization
앞서 배운 Linear Classifier는 Parametric model의 일종이었다. Prametric Model은 학습 데이터의 정보가 파라미터인 행렬 $W$로 요약되는 것을 말한다. 이번 강의에서 가장 좋은 행렬 $W$를 구하기 위해 학습 데이터를 어떻게 활용하는지 알아보자. 손실 함수 (Loss Function) 좋은 $W$를 구하는 방법...
-
CS231n Lecture 2-3: Linear Classifier
Linear Classifier(선형 분류기) Linear classifier(선형 분류기)는 간단하지만 중요하고 신경망과 CNN의 기반이 되는 알고리즘이다. 신경망을 레고블럭에 비유하기도 하는데, 다양한 컴포넌트들을 모아서 CNN이라는 타워를 짓는 셈이다. 앞으로 보게될 다양한 딥러닝 알고리즘의 가장 기본이 되는 블럭 중 하나가 Linear cla...
-
CS231n Lecture 2-2: K-Nearest Neighbor Classifier and Hyerparameter
최근접 이웃 분류기(Nearest Neighbor Classifier) 최근접 이웃 분류기(nearest neighbor classifier)는 아주 단순한 분류기가 있다. 학습 단계에서는 아무 일도 하지 않고, 모든 학습 데이터를 저장만 한다. 그리고 예측 단계에서 새로운 이미지가 오면 기존 학습 데이터들과 비교해서 가장 유사한 이미지를 찾는다. ...
-
CS231n Lecture 2-1: Image Classification
컴퓨터 비전(computer vision)에서 가장 핵심적인 task인 이미지 분류(image classification)에 대해 소개한다. 이미지 분류(Image Classificaion) 이미지 분류란 입력 이미지를 받아 미리 정해놓은 카테고리(category)들 중에서 속하는 하나의 레이블(label)을 찾는 문제다. 문제의 정의는 간단하지만...