Loading...
2024. 4. 19. 04:03

Unity 기본5 - C# 배열에 대해

1. 배열 데이터를 저장하는 공간인 변수 그런데 데이터 하나당 변수를 하나씩 만들면 비효율적 데이터가 100개면 100개의 변수를 모두 만들어 관리하기는 어렵다. 하나의 이름으로 여러개의 데이터를 모아 저장하는 자료구조 1) 선언하는 방법? int[] a; a는 정수형의 배열 혹은 string[] a; 하면 문자열의 배열 (자료형)[] a; 해서 해당 자료형의 배열을 선언 선언만 되었지, 아무런 값도 지정되어 있지 않아 출력하면 에러남 2) 초기화가 필요함 a라는 이름을 가진 int배열에 5개의 정수가 들어갈 배열이라고 초기화 int[] a = new int[5]; 정수가 들어갈 수 있는 방 5개짜리 배열을 만들고 이름을 a라고 한다 이렇게 초기화된 상태면, 출력할때 int배열인 것을 인식함 zero b..

C++ 알고리즘 기초21 -배열 심화1(C++ 배열 초기화)-

1. 배열 값 참조 i번째 원소는 index i-1번에 위치한다. index 0 1 2 3 arr 1 5 2 8 만약 2번 원소 2를 9로 바꾸고 싶다면, 해당 값을 참조해서, 9를 할당하면 된다. arr[2] = 9; 다음은 2번 원소를 단순히 바꾸는 코드 #include using namespace std; int main() { int arr[4]; for (int i = 0; i > arr[i]; } cout arr[i]; } cout 55 4. 배열 초기화 C++에서는 자바와는 다르게 int 배열을 초기화할때, 기본값으로 0이 들어가지 않고 쓰레기값이 들어간다 그래서 모든 값에 0이 들어가게 초기화하고 싶다면,... // 숫자 별 출현 횟수. int count_ar..

2차원 배열에서 경로의 개수 구하기 - 최단 경로가 아닌 경우

1. 문제 1520번: 내리막 길 (acmicpc.net) 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 2. 풀이 이 문제에서 핵심은 "어떤 칸을 최초 방문할 때 해당 칸에서 목적지까지 도달할 수 있는 경우의 수에 대한 정보를 기록해 놓고, 다음 방문 시 기록된 값을 참조해서 반복된 연산을 피하는 것이다" dp[y][x]를 (x,y)에서 (n-1,m-1)까지 조건에 맞는, 도달하는 경우의 수라고 정의하자. m,n = map(int,stdin.readline().split()) maps = [list(map(in..

2022. 3. 11. 22:58

딥러닝 모델에서 가중치를 초기화하는 방법(weight initialization)

신경망을 학습할 때 가중치를 초기화하고 update해야하는데 어떻게 초기화해야 학습에 좋을까? 단순히 0으로 시작해버린다면 gradient가 0으로 계산되는 경우가 많을 것. 너무 큰 값으로 시작한다면, 계산된 activation이 너무 커질 것. 단순한 예시로 위와 같은 신경망에서, bias = 0이라고 가정한다면... z = W1(W2(W3...(Wn(X))..))로 계산되는데, n개의 weight들의 곱에 input X의 곱으로 중간 output이 계산된다. 만약 weight들의 원소가 1보다 작은 값들이라면.. weight들을 곱할수록 0에 가까워진다. 하지만, 1보다 조금이라도 크다면 weight들을 많이 곱할수록 매우 커진다. 그러다보니 weight들을 처음에 어떤 값들로 시작하는게 딥러닝 학..