분류 전체보기

    Mini Batch and Data Load

    Mini Batch and Data Load

    Mini Batch 전체 데이터를 더 작은 단위로 나누어서 해당 단위로 학습하는 개념 미니 배치 학습 시, 미니 배치만큼 가져가서 그에 대한 비용(cost)를 계산하고 경사하강법 수행한다. 그리고 그 다음 미니 배치를 가져가서 경사 하강법을 사용하고 마지막까지 이를 반복. 이렇게 전체 데이터에 대한 학습 1회 끝나면 -> 1 Epoch DONE *Epoch(에포크) : 전체 train data가 학습에 한번 사용된 주기를 말함 *미니 배치 경사 하강법은 전체 데이터의 일부만을 보고 경사 하강법을 수행하므로 최적값으로 수렴하는 과정에서 값이 조금 헤매기도 하지만 training 속도가 빠름 *Iteration : 한 번의 에포크 내에서 이루어지는 매개변수인 W와 b의 업데이트 횟수. Data Load fr..

    Linear Regression

    Linear Regression

    Simple Linear Regression Data Definition dataset : hours(x) , points(y) 데이터는 torch.tensor의 형태를 띄고 있다. Hours(x) Points(y) 1 1 2 2 3 3 x_train = torch.FloatTensor([[1], [2], [3]]) y_train = torch.FloatTensor([[1], [2], [3]]) print(x_train) print(x_train.shape) print('-------------------') print(y_train) print(y_train.shape) ##################output################### tensor([[1.], [2.], [3.]]) tor..

    Tensor manipulation

    Tensor manipulation

    pytorch는 numpy와 매우 비슷하며 호환성이 높다. t = torch.FloatTensor([0., 1., 2., 3., 4., 5., 6.]) print(t) FloatTensor라는 함수를 사용하여 float형 1차원 배열을 tensor로 표현. GPU 사용하려면 torch.cuda.FloatTensor 함수 사용하면 되는데 나는 도대체 왜 cuda 오류가 나는건지.... 언젠가 cuda와의 싸움에서 승리하고 말겠음........... 중요한건 꺾이지 않는 마음이지.. 그치.. 나도 GPU 쓰고싶단 말이다.. ! 어쨌든 본론으로 돌아와서 print(t.dim()) print(t.size()) print(t.shape) print(t[2:5], t[-1], t[:4]) ##############..

    [Algorithm] DP

    public class seq_Matrix { /* * 연쇄행렬 최소곱셈 알고리즘 * 두개 이상의 행렬을 곱할 때, 최소 곱셈 횟수를 구함 * 복잡도 : O(n^3) * DP table의 칸의 개수 n*n = n^2 . * 한개의 칸을 채울 때 필요한 연산의 개수는? * 최악의 경우 DP[1][6]인 경우에 가장 많은 연산을 요구. * 한칸을 채울 때 최악의 경우 n번의 연산을 해야하므로 * O(n^3)의 시간복잡도 가진다. */ public static int minmult(int n, int d[], int P[][]){ int M[][] = new int[n+1][n+1]; for(int i = 0; i < n; i++) M[i][i] = 0; for(int diag = 0; diag < n; di..

    13900 순서쌍의 곱의 합

    결합법칙 쓰면 간단해지는 문제 package baekjoon; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class b13900 { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int N = Integer.parseInt(br.readLine()); int input[] = new int[N]; st = new StringTokenizer..

    16139 인간-컴퓨터 상호작용

    16139 인간-컴퓨터 상호작용

    package baekjoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class b16139 { public static void main(String[] args) throws IOException { //Scanner sc = new Scanner(System.in); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; StringBuilder sb = new StringBuilder()..