[백준] 13549번 문제, 숨바꼭질 3
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 score = int(input()) #점수 입력받기 if(score >= 90) : print("A") # 100점 or 90점대 A elif(score >= 80) : ...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 print("[프로필 페이지에서 보이는 문제 맞은 개수]") print("[백준 아이디]")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.util.Vector;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 N = int(input()) S = N+1 for i in range(1, S): print(i)
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = int(input()) # 단 수 N을 입력받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 print("Hello World!")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.*;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = input()
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.math.BigInteger;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 12 n, x = input().split() # n과 x를 동시에 입력받고 공백을 기준으로 나누기 n = int(n) # n을 int형으로 변환 x = int(x) # x를 int형으로 변환 L...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python s = input() # 소문자로 단어 입력받기 check = [-1] * 26 # 0~25 인덱스를 -1로 초기화
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 print("|\_/|") print("|q p| /}") print("( 0 )\"\"\"\\") print("|\"^\"` |") print("||_/=\\\\__|")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java public class Main {
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() # a, b를 문자열로 입력받아 공백을 기준으로 나누기 a = int(a) # a를 int형으로 변환 b = int(b) # int형으로 변환 print(a-b) # a-b를 출력
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() a = int(a) b = int(b) print(a+b)
문제 여기를 눌러 문제를 확인하세요.
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 score = int(input()) #점수 입력받기 if(score >= 90) : print("A") # 100점 or 90점대 A elif(score >= 80) : ...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 print("[프로필 페이지에서 보이는 문제 맞은 개수]") print("[백준 아이디]")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.util.Vector;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 N = int(input()) S = N+1 for i in range(1, S): print(i)
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = int(input()) # 단 수 N을 입력받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 print("Hello World!")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.*;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = input()
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.math.BigInteger;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 12 n, x = input().split() # n과 x를 동시에 입력받고 공백을 기준으로 나누기 n = int(n) # n을 int형으로 변환 x = int(x) # x를 int형으로 변환 L...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python s = input() # 소문자로 단어 입력받기 check = [-1] * 26 # 0~25 인덱스를 -1로 초기화
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 print("|\_/|") print("|q p| /}") print("( 0 )\"\"\"\\") print("|\"^\"` |") print("||_/=\\\\__|")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java public class Main {
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() # a, b를 문자열로 입력받아 공백을 기준으로 나누기 a = int(a) # a를 int형으로 변환 b = int(b) # int형으로 변환 print(a-b) # a-b를 출력
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() a = int(a) b = int(b) print(a+b)
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 score = int(input()) #점수 입력받기 if(score >= 90) : print("A") # 100점 or 90점대 A elif(score >= 80) : ...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 print("[프로필 페이지에서 보이는 문제 맞은 개수]") print("[백준 아이디]")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.util.Vector;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 N = int(input()) S = N+1 for i in range(1, S): print(i)
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = int(input()) # 단 수 N을 입력받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 print("Hello World!")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.*;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = input()
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.math.BigInteger;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 12 n, x = input().split() # n과 x를 동시에 입력받고 공백을 기준으로 나누기 n = int(n) # n을 int형으로 변환 x = int(x) # x를 int형으로 변환 L...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python s = input() # 소문자로 단어 입력받기 check = [-1] * 26 # 0~25 인덱스를 -1로 초기화
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 print("|\_/|") print("|q p| /}") print("( 0 )\"\"\"\\") print("|\"^\"` |") print("||_/=\\\\__|")
문제 여기를 눌러 문제를 확인하세요. 코드 ```java public class Main {
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() # a, b를 문자열로 입력받아 공백을 기준으로 나누기 a = int(a) # a를 int형으로 변환 b = int(b) # int형으로 변환 print(a-b) # a-b를 출력
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() a = int(a) b = int(b) print(a+b)
1. ToDo Docker 설치를 한 후에 간단하게 테스트해보자. 그래서 DockerFile로 python으로 짜여진 코드를 실행시키는 Image 파일을 만들어보겠다.
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 score = int(input()) #점수 입력받기 if(score >= 90) : print("A") # 100점 or 90점대 A elif(score >= 80) : ...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 print("[프로필 페이지에서 보이는 문제 맞은 개수]") print("[백준 아이디]")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 N = int(input()) S = N+1 for i in range(1, S): print(i)
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = int(input()) # 단 수 N을 입력받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 print("Hello World!")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = input()
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 12 n, x = input().split() # n과 x를 동시에 입력받고 공백을 기준으로 나누기 n = int(n) # n을 int형으로 변환 x = int(x) # x를 int형으로 변환 L...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python s = input() # 소문자로 단어 입력받기 check = [-1] * 26 # 0~25 인덱스를 -1로 초기화
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 print("|\_/|") print("|q p| /}") print("( 0 )\"\"\"\\") print("|\"^\"` |") print("||_/=\\\\__|")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() # a, b를 문자열로 입력받아 공백을 기준으로 나누기 a = int(a) # a를 int형으로 변환 b = int(b) # int형으로 변환 print(a-b) # a-b를 출력
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() a = int(a) b = int(b) print(a+b)
문제 여기를 눌러 문제를 확인하세요.
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 score = int(input()) #점수 입력받기 if(score >= 90) : print("A") # 100점 or 90점대 A elif(score >= 80) : ...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 print("[프로필 페이지에서 보이는 문제 맞은 개수]") print("[백준 아이디]")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 N = int(input()) S = N+1 for i in range(1, S): print(i)
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = int(input()) # 단 수 N을 입력받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 print("Hello World!")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 ```python N = input()
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 6 7 8 9 10 11 12 n, x = input().split() # n과 x를 동시에 입력받고 공백을 기준으로 나누기 n = int(n) # n을 int형으로 변환 x = int(x) # x를 int형으로 변환 L...
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 ```python s = input() # 소문자로 단어 입력받기 check = [-1] * 26 # 0~25 인덱스를 -1로 초기화
문제 여기를 눌러 문제를 확인하세요. 코드 ```python import sys
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 5 print("|\_/|") print("|q p| /}") print("( 0 )\"\"\"\\") print("|\"^\"` |") print("||_/=\\\\__|")
문제 여기를 눌러 문제를 확인하세요. 코드 ```python a, b = map(int, input().split()) # 한 줄에 두 개의 수 입력 받기
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() # a, b를 문자열로 입력받아 공백을 기준으로 나누기 a = int(a) # a를 int형으로 변환 b = int(b) # int형으로 변환 print(a-b) # a-b를 출력
문제 여기를 눌러 문제를 확인하세요. 코드 1 2 3 4 a, b = input().split() a = int(a) b = int(b) print(a+b)
문제 여기를 눌러 문제를 확인하세요.
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.util.Vector;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.*;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.math.BigInteger;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java public class Main {
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.util.Vector;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.*;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner; import java.math.BigInteger;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;
문제 여기를 눌러 문제를 확인하세요. 코드 ```java public class Main {
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
딥러닝이 나오기 이전에 많이 사용되고 좋은 성능을 보여준 서포트 벡터 머신에 대해 리뷰하겠다. 글의 내용은 책 핸즈온 머신러닝을 참고하여 작성했다.
프로젝트 진행 도중에 관심 영역을 뽑기 위한 마스크 정보가 mat 파일에 있어 이를 가져오기 위해서는 scipy 라이브러리에 있는 loadmat()으로 쉽게 가져올 수 있다. 다음 명령어로 scipy 라이브러리를 설치한다.
국립공원공단 프로젝트를 진행하는 도중에 지도를 그려야 될 상황이 되었는데 python으로 지도를 그리기 적절한 라이브러리가 무엇이 있을까 탐색하다가 멘토께서 Folium을 추천해주셔서 사용했다. 우선 패키지를 다운로드하자.
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
json 파일을 읽은 다음에 데이터 프레임을 만들려고 한다. 사용하는 json은 MS-ASL 데이터에 대한 정보가 담긴 파일이다.
데이콘이나 캐글에서 이미지 데이터를 사용할 때 데이터셋 폴더 안에 csv 파일과 이미지 파일을 같이 주는데 csv 파일 경우에 이미지 파일명이 있는 상대 경로와 label이 명시되어 있다. 그래서 이미지 데이터를 사용하기 위해 csv 파일에 있는 이미지 파일 경로로 이미지를 loa...
모델을 학습하고 test 데이터셋로 검증해 모델을 수정한다면, 그 모델은 좋은 모델이라고 할 수 없다. test 데이터셋은 딱 한 번만 사용되어야 하기 때문에 검증 데이터(validation data)를 만들어 학습 과정에서 제대로 학습이 되는지 확인한다. 없는게 없는 sklear...
데이콘 대회에 참여할 때 높은 정확도를 추출하고자 좋은 성능을 보여주는 모델을 사용하고자 했다. 하지만 대회 규정에서 학습된 모델을 사용하는 것이 위반이 될 경우가 있기 때문에 모델 구조만 불러와 내 데이터셋으로 학습시켰다. 모델 구조만 불러오는 방법과 학습된 모델을 불러오는 방법...
LeNet-5는 손글씨, 우편 인식 등 이미지 분류에 쓰이던 DNN(Deep Neural Network)이다. LeNet-5에 대한 자세한 정보는 [1]에서 찾아 볼 수 있지만, 간단하게 설명한 후에 TensorFlow로 어떻게 구현해야 하는지 코드리뷰를 하겠다.
MySQL 명령어로 내가 만든 테이블의 구조를 보는 방법을 알아보자 데이터베이스를 선택한 다음에 어떤 테이블들이 있는지 확인해보자
MySQL 사용자를 추가하는 방법과 사용자에게 권한을 추가하는 방법을 알아보자. MySQL 접속 후 현재 사용자 리스트를 확인해보자.
Export로 인해 만들어진 *.sql 파일을 다른 PC에서 Import 하는 방법에 대해 알아보자. 여러 가지 방법이 있겠지만, 내가 사용한 방법은 아래와 같다.
Ubuntu 20.04에서 MySQL 8.0 설치 및 보안 설정을 어떻게 하는지 정리를 해보았다. 우선 터미널에서 MySQL를 설치하는 방법은 다음과 같다.
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
인공지능 학습을 위해 Ubuntu에서 그래픽 카드를 사용할텐데 Ubuntu 20.04 버전에서 그래픽 드라이버 설치 방법을 공유하려고 한다. (RTX 3090임)
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
윈도우10 환경에서 Apache로 웹 서버를 만들려고 하는데 Apache 설정하는 과정에서 종종 에러로 인해 서비스가 실행이 되지 않는다.
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
1. 경로명 사용법
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
인공지능 학습을 위해 Ubuntu에서 그래픽 카드를 사용할텐데 Ubuntu 20.04 버전에서 그래픽 드라이버 설치 방법을 공유하려고 한다. (RTX 3090임)
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
윈도우10 환경에서 Apache로 웹 서버를 만들려고 하는데 Apache 설정하는 과정에서 종종 에러로 인해 서비스가 실행이 되지 않는다.
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
1. 경로명 사용법
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
딥러닝이 나오기 이전에 많이 사용되고 좋은 성능을 보여준 서포트 벡터 머신에 대해 리뷰하겠다. 글의 내용은 책 핸즈온 머신러닝을 참고하여 작성했다.
프로젝트 진행 도중에 관심 영역을 뽑기 위한 마스크 정보가 mat 파일에 있어 이를 가져오기 위해서는 scipy 라이브러리에 있는 loadmat()으로 쉽게 가져올 수 있다. 다음 명령어로 scipy 라이브러리를 설치한다.
국립공원공단 프로젝트를 진행하는 도중에 지도를 그려야 될 상황이 되었는데 python으로 지도를 그리기 적절한 라이브러리가 무엇이 있을까 탐색하다가 멘토께서 Folium을 추천해주셔서 사용했다. 우선 패키지를 다운로드하자.
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
json 파일을 읽은 다음에 데이터 프레임을 만들려고 한다. 사용하는 json은 MS-ASL 데이터에 대한 정보가 담긴 파일이다.
데이콘이나 캐글에서 이미지 데이터를 사용할 때 데이터셋 폴더 안에 csv 파일과 이미지 파일을 같이 주는데 csv 파일 경우에 이미지 파일명이 있는 상대 경로와 label이 명시되어 있다. 그래서 이미지 데이터를 사용하기 위해 csv 파일에 있는 이미지 파일 경로로 이미지를 loa...
모델을 학습하고 test 데이터셋로 검증해 모델을 수정한다면, 그 모델은 좋은 모델이라고 할 수 없다. test 데이터셋은 딱 한 번만 사용되어야 하기 때문에 검증 데이터(validation data)를 만들어 학습 과정에서 제대로 학습이 되는지 확인한다. 없는게 없는 sklear...
데이콘 대회에 참여할 때 높은 정확도를 추출하고자 좋은 성능을 보여주는 모델을 사용하고자 했다. 하지만 대회 규정에서 학습된 모델을 사용하는 것이 위반이 될 경우가 있기 때문에 모델 구조만 불러와 내 데이터셋으로 학습시켰다. 모델 구조만 불러오는 방법과 학습된 모델을 불러오는 방법...
LeNet-5는 손글씨, 우편 인식 등 이미지 분류에 쓰이던 DNN(Deep Neural Network)이다. LeNet-5에 대한 자세한 정보는 [1]에서 찾아 볼 수 있지만, 간단하게 설명한 후에 TensorFlow로 어떻게 구현해야 하는지 코드리뷰를 하겠다.
프로젝트를 수행하다가 다른 사람의 브랜치에 있는 코드를 참고하기 위해 파일을 열었는데 뭔가 수정을 해버려서 push 해주지 않으면 브랜치 변경을 할 수 없게 됐다.
깃허브에서 이슈나 ReadMe를 다룰 때 마크다운 언어를 사용하는데 이슈나 ReadMe 안에 이미지를 넣고 그 이미지의 크기를 조절하는 방법에는 두 가지가 있다.
Local Repository
프로젝트를 진행하다가 이상한 걸 remote에 푸쉬해버리는 바람에 커밋 기록 삭제하는 방법을 찾아 다녔다. reset과 revert로도 할 수 있다는데,,, reset은 잘못하다가 커밋을 전부 날려 버릴 것 같아 사용하지 않았고 revert는 과정이 어려웠다. 그래서 위험하...
로컬 저장소에서 리모트 저장소에 push 할 경우 아래와 같은 메세지가 뜨는 경우가 있습니다. 1 2 3 4 hint: Updates were rejected because the tip of your current branch is behind hint: its remote co...
현재 브랜치의 위치와 커밋 기록을 보기 위해 git log를 자주 사용한다.
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
프로젝트를 수행하다가 다른 사람의 브랜치에 있는 코드를 참고하기 위해 파일을 열었는데 뭔가 수정을 해버려서 push 해주지 않으면 브랜치 변경을 할 수 없게 됐다.
깃허브에서 이슈나 ReadMe를 다룰 때 마크다운 언어를 사용하는데 이슈나 ReadMe 안에 이미지를 넣고 그 이미지의 크기를 조절하는 방법에는 두 가지가 있다.
Local Repository
프로젝트를 진행하다가 이상한 걸 remote에 푸쉬해버리는 바람에 커밋 기록 삭제하는 방법을 찾아 다녔다. reset과 revert로도 할 수 있다는데,,, reset은 잘못하다가 커밋을 전부 날려 버릴 것 같아 사용하지 않았고 revert는 과정이 어려웠다. 그래서 위험하...
로컬 저장소에서 리모트 저장소에 push 할 경우 아래와 같은 메세지가 뜨는 경우가 있습니다. 1 2 3 4 hint: Updates were rejected because the tip of your current branch is behind hint: its remote co...
현재 브랜치의 위치와 커밋 기록을 보기 위해 git log를 자주 사용한다.
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
1. 에러명 1 AH01630: client denied by server configuration:
1. ToDo 여기를 보면 SSL 인증을 받아 https 접속이 가능해졌다. 하지만 여전히 도메인으로 접속하면 http를 기본으로 접속하게 된다. 그래서 http 요청 시 https로 redirect해서 https를 보여주도록 해야 한다.
1. ToDo 윈도우즈에서 Apache 환경을 구축하는건 쉽다. 우선 여기에서 32/64 bit 환경에 맞춰 Apache 파일을 다운 받아 서버 폴더로 지정할 경로에 압축을 푼다.
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
인공지능 학습을 위해 Ubuntu에서 그래픽 카드를 사용할텐데 Ubuntu 20.04 버전에서 그래픽 드라이버 설치 방법을 공유하려고 한다. (RTX 3090임)
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
1. 에러명 1 2 3 CUDA error: no kernel image is available for execution on the device CUDA kernel errors might be asynchronously reported at some other API call,...
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
1. 에러명 1 AH01630: client denied by server configuration:
1. 문제 논문에 OpenCV 관련해서 초안을 작성하다가 새로운 정보를 접했다. 새로운 정보가 무엇이냐면, 많은 사람들이 OpenCV의 라이선스가 BSD 라이선스만 있는 줄 알지만, 공식 사이트에 따르면 <= 4.4.0 버전은 원래대로 BSD 라이선스를 사용하지만, >=...
1. 에러명 1 You have to remove (or rename) that container to be able to reuse that name.
1. 에러명 1 2 3 CUDA error: no kernel image is available for execution on the device CUDA kernel errors might be asynchronously reported at some other API call,...
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
1. 에러명 1 AH01630: client denied by server configuration:
1. 문제 논문에 OpenCV 관련해서 초안을 작성하다가 새로운 정보를 접했다. 새로운 정보가 무엇이냐면, 많은 사람들이 OpenCV의 라이선스가 BSD 라이선스만 있는 줄 알지만, 공식 사이트에 따르면 <= 4.4.0 버전은 원래대로 BSD 라이선스를 사용하지만, >=...
1. 에러명 1 You have to remove (or rename) that container to be able to reuse that name.
1. 에러명 1 2 3 CUDA error: no kernel image is available for execution on the device CUDA kernel errors might be asynchronously reported at some other API call,...
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
1. 에러명 1 AH01630: client denied by server configuration:
1. 문제 논문에 OpenCV 관련해서 초안을 작성하다가 새로운 정보를 접했다. 새로운 정보가 무엇이냐면, 많은 사람들이 OpenCV의 라이선스가 BSD 라이선스만 있는 줄 알지만, 공식 사이트에 따르면 <= 4.4.0 버전은 원래대로 BSD 라이선스를 사용하지만, >=...
1. 에러명 1 You have to remove (or rename) that container to be able to reuse that name.
MySQL 명령어로 내가 만든 테이블의 구조를 보는 방법을 알아보자 데이터베이스를 선택한 다음에 어떤 테이블들이 있는지 확인해보자
MySQL 사용자를 추가하는 방법과 사용자에게 권한을 추가하는 방법을 알아보자. MySQL 접속 후 현재 사용자 리스트를 확인해보자.
Export로 인해 만들어진 *.sql 파일을 다른 PC에서 Import 하는 방법에 대해 알아보자. 여러 가지 방법이 있겠지만, 내가 사용한 방법은 아래와 같다.
Ubuntu 20.04에서 MySQL 8.0 설치 및 보안 설정을 어떻게 하는지 정리를 해보았다. 우선 터미널에서 MySQL를 설치하는 방법은 다음과 같다.
MySQL 명령어로 내가 만든 테이블의 구조를 보는 방법을 알아보자 데이터베이스를 선택한 다음에 어떤 테이블들이 있는지 확인해보자
MySQL 사용자를 추가하는 방법과 사용자에게 권한을 추가하는 방법을 알아보자. MySQL 접속 후 현재 사용자 리스트를 확인해보자.
Export로 인해 만들어진 *.sql 파일을 다른 PC에서 Import 하는 방법에 대해 알아보자. 여러 가지 방법이 있겠지만, 내가 사용한 방법은 아래와 같다.
Ubuntu 20.04에서 MySQL 8.0 설치 및 보안 설정을 어떻게 하는지 정리를 해보았다. 우선 터미널에서 MySQL를 설치하는 방법은 다음과 같다.
1. ToDo https를 설정하기 위해서는 SSL이 있어야 하는데 유료이다. 하지만 능력자분들이 win-acme와 Let’s encrypt로 무료 SSL 인증서를 발급할 수 있게 해줬다. win-acme 프로그램을 통해 무료로 발급 가능한데 여기에서 프로그램을 다운로드 하면 된다...
1. ToDo 여기를 보면 SSL 인증을 받아 https 접속이 가능해졌다. 하지만 여전히 도메인으로 접속하면 http를 기본으로 접속하게 된다. 그래서 http 요청 시 https로 redirect해서 https를 보여주도록 해야 한다.
1. ToDo 윈도우즈에서 Apache 환경을 구축하는건 쉽다. 우선 여기에서 32/64 bit 환경에 맞춰 Apache 파일을 다운 받아 서버 폴더로 지정할 경로에 압축을 푼다.
1. ToDo Docker 설치를 한 후에 간단하게 테스트해보자. 그래서 DockerFile로 python으로 짜여진 코드를 실행시키는 Image 파일을 만들어보겠다.
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
Stage 1
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
Stage 1
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
현재 브랜치의 위치와 커밋 기록을 보기 위해 git log를 자주 사용한다.
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
시리즈 마지막 글로 6주 동안 프로젝트 하면서 있었던 일에 대해 적고 최종 후기로 시리즈를 정리하려고 한다.
이 글은 빅리더 시리즈 2편이며 경남대학교에서 있었던 일을 이야기하며 정보를 공유하려고 한다. 1편이 궁금한 사람은 여기를 참고하자.
이 후기는 데이터청년캠퍼스 2022에 참여해 경남대학교 빅리더 AI 아카데미 교육 과정을 직접 이수한 후에 작성한 것으로 처음에 후기가 없어 어려움이 있었던 것을 생각해 후기글을 남기기로 했음. 1편은 빅리더에 대해, 2편은 경남대에서, 3편은 국립공원공단과 협업 프로젝트를 통해...
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
1. 경로명 사용법
Local Repository
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
1. 경로명 사용법
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
어파치에서 제공하는 프록시 모듈을 사용해 Tomcat을 호출하려고 한다. apach2에 대한 root 설정 파일은 /etc/apache2/apache2.conf이며, 서버에서 운영할 사이트에 대한 설정은 /etc/apache2/sites-available에서 한다.
오늘은 Tomcat9 서버 설정을 해보자 배포하기 위해서 도메인이 당연히 필요하지만, 도메인 없이 localhost에서 배포 연습을 해보고 싶어하는 사람을 위해 localhost에서도 배포하는 방법을 작성하겠다. Tomcat은 기본적으로 8080포트를 차지하고 있으며, 포트가 ...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
1. 경로명 사용법
Local Repository
로컬 저장소에서 리모트 저장소에 push 할 경우 아래와 같은 메세지가 뜨는 경우가 있습니다. 1 2 3 4 hint: Updates were rejected because the tip of your current branch is behind hint: its remote co...
인공지능 학습을 위해 Ubuntu에서 그래픽 카드를 사용할텐데 Ubuntu 20.04 버전에서 그래픽 드라이버 설치 방법을 공유하려고 한다. (RTX 3090임)
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
인공지능 학습을 위해 Ubuntu에서 그래픽 카드를 사용할텐데 Ubuntu 20.04 버전에서 그래픽 드라이버 설치 방법을 공유하려고 한다. (RTX 3090임)
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
1. 에러명 1 2 3 CUDA error: no kernel image is available for execution on the device CUDA kernel errors might be asynchronously reported at some other API call,...
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 뱀과 사다리 게임을 코드로 구현하는 문제로 1에서 출발해 100에 도달할 때 최소 이동 수를 출력하면 된다. 사다리 개수 N과 뱀 개수 M을 입력 받고 그 개수 만큼의 좌표를 입력 받아 N_position과 M_position에 딕셔너리 형태로 저장한다.(탐색 시간 O(...
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
Ubuntu 20.04에서 MySQL 8.0 설치 및 보안 설정을 어떻게 하는지 정리를 해보았다. 우선 터미널에서 MySQL를 설치하는 방법은 다음과 같다.
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
1. ToDo Docker 설치를 한 후에 간단하게 테스트해보자. 그래서 DockerFile로 python으로 짜여진 코드를 실행시키는 Image 파일을 만들어보겠다.
데이콘 대회에 참여할 때 높은 정확도를 추출하고자 좋은 성능을 보여주는 모델을 사용하고자 했다. 하지만 대회 규정에서 학습된 모델을 사용하는 것이 위반이 될 경우가 있기 때문에 모델 구조만 불러와 내 데이터셋으로 학습시켰다. 모델 구조만 불러오는 방법과 학습된 모델을 불러오는 방법...
LeNet-5는 손글씨, 우편 인식 등 이미지 분류에 쓰이던 DNN(Deep Neural Network)이다. LeNet-5에 대한 자세한 정보는 [1]에서 찾아 볼 수 있지만, 간단하게 설명한 후에 TensorFlow로 어떻게 구현해야 하는지 코드리뷰를 하겠다.
json 파일을 읽은 다음에 데이터 프레임을 만들려고 한다. 사용하는 json은 MS-ASL 데이터에 대한 정보가 담긴 파일이다.
데이콘이나 캐글에서 이미지 데이터를 사용할 때 데이터셋 폴더 안에 csv 파일과 이미지 파일을 같이 주는데 csv 파일 경우에 이미지 파일명이 있는 상대 경로와 label이 명시되어 있다. 그래서 이미지 데이터를 사용하기 위해 csv 파일에 있는 이미지 파일 경로로 이미지를 loa...
1. 에러명 1 AH01630: client denied by server configuration:
1. ToDo 윈도우즈에서 Apache 환경을 구축하는건 쉽다. 우선 여기에서 32/64 bit 환경에 맞춰 Apache 파일을 다운 받아 서버 폴더로 지정할 경로에 압축을 푼다.
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
1. 문제 논문에 OpenCV 관련해서 초안을 작성하다가 새로운 정보를 접했다. 새로운 정보가 무엇이냐면, 많은 사람들이 OpenCV의 라이선스가 BSD 라이선스만 있는 줄 알지만, 공식 사이트에 따르면 <= 4.4.0 버전은 원래대로 BSD 라이선스를 사용하지만, >=...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
1.그래프 그래프는 광범위한 분야에서 활용되고 있는 자료구조이다. 그러다보니 코딩테스트 문제 출제 1순위이다. 그래프는 정점과 간선의 집합으로 하나의 간선은 두 개의 정점을 연결한다. 그래프는 G=(V, E)로 표현하는데 간선에 방향이 있는 그래프를 방향그래프, 간선에 방향이 없...
문제 여기를 눌러 문제를 확인하세요.
문제 여기를 눌러 문제를 확인하세요.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
인공지능 프로젝트를 진행하다보면 데이터나 모델 가중치 등 개수가 많고 용량이 큰 파일을 깃허브 레파지토리에 업로드하는 경우가 있는데 이럴 때 용량 제한으로 업로드가 거부된다.
git commit을 통해 커밋 메세지 입력 시 issue와 연결하기 위해서는 #[이슈번호]로 표기하면 된다.
현재 브랜치의 위치와 커밋 기록을 보기 위해 git log를 자주 사용한다.
현재 브랜치의 위치와 커밋 기록을 보기 위해 git log를 자주 사용한다.
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
vi는 가벼운 텍스트 데이터라서 서버에서 간단한 텍스트 수정 작업을 할 때 자주 사용한다. 그래서 Unix에서는 vi editor가 기본으로 설치되어 있어 자주 사용하고 Linux도 vi가 있지만, vi를 개선한 vim editor를 사용한다. 두 가지 모드로 명령 모드와 입력...
윈도우10 환경에서 Apache로 웹 서버를 만들려고 하는데 Apache 설정하는 과정에서 종종 에러로 인해 서비스가 실행이 되지 않는다.
윈도우10 환경에서 Apache로 웹 서버를 만들려고 하는데 Apache 설정하는 과정에서 종종 에러로 인해 서비스가 실행이 되지 않는다.
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
유닉스의 장점으로 작은 명령어들을 수행해 큰 작업을 수행해낸다. 처음에 수행한 명령의 출력이 다음 명령의 입력으로 들어가기 때문에 이렇게 입출력을 연결하는 것을 파이프(pipe)라고 한다. 그리고 pipe 방식으로 주로 처리하는 명령들을 필터라고 부르는데 오늘은 필터 명령어에 ...
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
알고리즘 다각형 면적을 구하는 문제인데 수학에 강하다면 쉽게 풀 수 있다. 하지만 수학을 잘 모른다면 신발끈 정리을 보고 이해하면 쉽게 풀 수 있다.
로컬 저장소에서 리모트 저장소에 push 할 경우 아래와 같은 메세지가 뜨는 경우가 있습니다. 1 2 3 4 hint: Updates were rejected because the tip of your current branch is behind hint: its remote co...
로컬 저장소에서 리모트 저장소에 push 할 경우 아래와 같은 메세지가 뜨는 경우가 있습니다. 1 2 3 4 hint: Updates were rejected because the tip of your current branch is behind hint: its remote co...
프로젝트를 진행하다가 이상한 걸 remote에 푸쉬해버리는 바람에 커밋 기록 삭제하는 방법을 찾아 다녔다. reset과 revert로도 할 수 있다는데,,, reset은 잘못하다가 커밋을 전부 날려 버릴 것 같아 사용하지 않았고 revert는 과정이 어려웠다. 그래서 위험하...
프로젝트를 진행하다가 이상한 걸 remote에 푸쉬해버리는 바람에 커밋 기록 삭제하는 방법을 찾아 다녔다. reset과 revert로도 할 수 있다는데,,, reset은 잘못하다가 커밋을 전부 날려 버릴 것 같아 사용하지 않았고 revert는 과정이 어려웠다. 그래서 위험하...
깃허브에서 이슈나 ReadMe를 다룰 때 마크다운 언어를 사용하는데 이슈나 ReadMe 안에 이미지를 넣고 그 이미지의 크기를 조절하는 방법에는 두 가지가 있다.
깃허브에서 이슈나 ReadMe를 다룰 때 마크다운 언어를 사용하는데 이슈나 ReadMe 안에 이미지를 넣고 그 이미지의 크기를 조절하는 방법에는 두 가지가 있다.
깃허브에서 이슈나 ReadMe를 다룰 때 마크다운 언어를 사용하는데 이슈나 ReadMe 안에 이미지를 넣고 그 이미지의 크기를 조절하는 방법에는 두 가지가 있다.
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
새로운 CUDA 11 다운로드를 위해 기존에 CUDA가 설치되어 있다면 충돌 방지를 위해 삭제해줘야 된다.
Ubuntu 20.04에서 MySQL 8.0 설치 및 보안 설정을 어떻게 하는지 정리를 해보았다. 우선 터미널에서 MySQL를 설치하는 방법은 다음과 같다.
Export로 인해 만들어진 *.sql 파일을 다른 PC에서 Import 하는 방법에 대해 알아보자. 여러 가지 방법이 있겠지만, 내가 사용한 방법은 아래와 같다.
Export로 인해 만들어진 *.sql 파일을 다른 PC에서 Import 하는 방법에 대해 알아보자. 여러 가지 방법이 있겠지만, 내가 사용한 방법은 아래와 같다.
MacBook M1 칩에서 Firebase를 이용해 Swift 프로젝트를 진행하려고 했는데 pod install 하는 과정에서 에러가 발생했다. M1 칩 이슈라고는 하는데 구글링을 해보면 다른 고수분들이 해답을 찾아 올렸다. 그래서 에러에 대한 별다른 설명은 필요 없으니 내가 ...
MAC에서 homebrew를 설치하면 다른 tool을 쉽게 설치하고 버전 관리할 수 있다. 그런데 M1칩을 가지고 있는 MAC에서 homebrew 설치 시 /opt/homebrew에 있기 때문에 기존 intel칩의 경로인 /usr/local/…와 다르기 때문에 path를 맞춰야 ...
프로젝트를 수행하다가 다른 사람의 브랜치에 있는 코드를 참고하기 위해 파일을 열었는데 뭔가 수정을 해버려서 push 해주지 않으면 브랜치 변경을 할 수 없게 됐다.
프로젝트를 수행하다가 다른 사람의 브랜치에 있는 코드를 참고하기 위해 파일을 열었는데 뭔가 수정을 해버려서 push 해주지 않으면 브랜치 변경을 할 수 없게 됐다.
프로젝트를 수행하다가 다른 사람의 브랜치에 있는 코드를 참고하기 위해 파일을 열었는데 뭔가 수정을 해버려서 push 해주지 않으면 브랜치 변경을 할 수 없게 됐다.
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
알고리즘 경로를 찾는 문제에서는 다익스트라가 최고라고 하지만 가중치 0과 가중치 1만 있는 그래프에서는 0-1 너비 우선 탐색이 더 좋은 성능을 보여준다. 실제로 다익스트라는 시간복잡도 $O(ElogE)$ 또는 $O(VlogV)$를 가지지만, 0-1 너비 우선 탐색의 경우 시간...
1. ToDo Docker 설치를 한 후에 간단하게 테스트해보자. 그래서 DockerFile로 python으로 짜여진 코드를 실행시키는 Image 파일을 만들어보겠다.
1. ToDo Docker 설치를 한 후에 간단하게 테스트해보자. 그래서 DockerFile로 python으로 짜여진 코드를 실행시키는 Image 파일을 만들어보겠다.
1. 에러명 1 You have to remove (or rename) that container to be able to reuse that name.
1. 에러명 1 You have to remove (or rename) that container to be able to reuse that name.
LeNet-5는 손글씨, 우편 인식 등 이미지 분류에 쓰이던 DNN(Deep Neural Network)이다. LeNet-5에 대한 자세한 정보는 [1]에서 찾아 볼 수 있지만, 간단하게 설명한 후에 TensorFlow로 어떻게 구현해야 하는지 코드리뷰를 하겠다.
데이콘 대회에 참여할 때 높은 정확도를 추출하고자 좋은 성능을 보여주는 모델을 사용하고자 했다. 하지만 대회 규정에서 학습된 모델을 사용하는 것이 위반이 될 경우가 있기 때문에 모델 구조만 불러와 내 데이터셋으로 학습시켰다. 모델 구조만 불러오는 방법과 학습된 모델을 불러오는 방법...
모델을 학습하고 test 데이터셋로 검증해 모델을 수정한다면, 그 모델은 좋은 모델이라고 할 수 없다. test 데이터셋은 딱 한 번만 사용되어야 하기 때문에 검증 데이터(validation data)를 만들어 학습 과정에서 제대로 학습이 되는지 확인한다. 없는게 없는 sklear...
데이콘이나 캐글에서 이미지 데이터를 사용할 때 데이터셋 폴더 안에 csv 파일과 이미지 파일을 같이 주는데 csv 파일 경우에 이미지 파일명이 있는 상대 경로와 label이 명시되어 있다. 그래서 이미지 데이터를 사용하기 위해 csv 파일에 있는 이미지 파일 경로로 이미지를 loa...
데이콘이나 캐글에서 이미지 데이터를 사용할 때 데이터셋 폴더 안에 csv 파일과 이미지 파일을 같이 주는데 csv 파일 경우에 이미지 파일명이 있는 상대 경로와 label이 명시되어 있다. 그래서 이미지 데이터를 사용하기 위해 csv 파일에 있는 이미지 파일 경로로 이미지를 loa...
json 파일을 읽은 다음에 데이터 프레임을 만들려고 한다. 사용하는 json은 MS-ASL 데이터에 대한 정보가 담긴 파일이다.
1. ToDo 윈도우즈에서 Apache 환경을 구축하는건 쉽다. 우선 여기에서 32/64 bit 환경에 맞춰 Apache 파일을 다운 받아 서버 폴더로 지정할 경로에 압축을 푼다.
1. ToDo https를 설정하기 위해서는 SSL이 있어야 하는데 유료이다. 하지만 능력자분들이 win-acme와 Let’s encrypt로 무료 SSL 인증서를 발급할 수 있게 해줬다. win-acme 프로그램을 통해 무료로 발급 가능한데 여기에서 프로그램을 다운로드 하면 된다...
1. ToDo https를 설정하기 위해서는 SSL이 있어야 하는데 유료이다. 하지만 능력자분들이 win-acme와 Let’s encrypt로 무료 SSL 인증서를 발급할 수 있게 해줬다. win-acme 프로그램을 통해 무료로 발급 가능한데 여기에서 프로그램을 다운로드 하면 된다...
1. ToDo https를 설정하기 위해서는 SSL이 있어야 하는데 유료이다. 하지만 능력자분들이 win-acme와 Let’s encrypt로 무료 SSL 인증서를 발급할 수 있게 해줬다. win-acme 프로그램을 통해 무료로 발급 가능한데 여기에서 프로그램을 다운로드 하면 된다...
1. 문제 논문에 OpenCV 관련해서 초안을 작성하다가 새로운 정보를 접했다. 새로운 정보가 무엇이냐면, 많은 사람들이 OpenCV의 라이선스가 BSD 라이선스만 있는 줄 알지만, 공식 사이트에 따르면 <= 4.4.0 버전은 원래대로 BSD 라이선스를 사용하지만, >=...
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
1. 에러명 1 Bad file descriptor (C:\...\epoll.cpp:100)
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
관심 영역(ROI; Region Of Interest)을 추출해내기 위해서는 두 개의 데이터가 필요한데 그것은 원본 이미지 데이터와 마스크 이미지 데이터이다. 알고리즘을 간단하게 이야기하자면, 원본 이미지에 마스크 이미지를 올려 마스크 이미지에서 일반적으로 검은색이 아닌 흰색으로...
국립공원공단 프로젝트를 진행하는 도중에 지도를 그려야 될 상황이 되었는데 python으로 지도를 그리기 적절한 라이브러리가 무엇이 있을까 탐색하다가 멘토께서 Folium을 추천해주셔서 사용했다. 우선 패키지를 다운로드하자.
국립공원공단 프로젝트를 진행하는 도중에 지도를 그려야 될 상황이 되었는데 python으로 지도를 그리기 적절한 라이브러리가 무엇이 있을까 탐색하다가 멘토께서 Folium을 추천해주셔서 사용했다. 우선 패키지를 다운로드하자.
프로젝트 진행 도중에 관심 영역을 뽑기 위한 마스크 정보가 mat 파일에 있어 이를 가져오기 위해서는 scipy 라이브러리에 있는 loadmat()으로 쉽게 가져올 수 있다. 다음 명령어로 scipy 라이브러리를 설치한다.
프로젝트 진행 도중에 관심 영역을 뽑기 위한 마스크 정보가 mat 파일에 있어 이를 가져오기 위해서는 scipy 라이브러리에 있는 loadmat()으로 쉽게 가져올 수 있다. 다음 명령어로 scipy 라이브러리를 설치한다.
딥러닝이 나오기 이전에 많이 사용되고 좋은 성능을 보여준 서포트 벡터 머신에 대해 리뷰하겠다. 글의 내용은 책 핸즈온 머신러닝을 참고하여 작성했다.
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Object Detection 문제에서 모델 성능을 평가할 때 단일 레이블이먄 AP(Average Precision)을 사용하고 다중 레이블이면 mAP(mean Average Precision)을 사용한다. mAP는 AP로 계산할 수 있고 AP는 PR 곡선(Precision-Rec...
Stage 1