본문 바로가기

전체 글45

[C++] STL 자료구조: Queue queue는 stack과 다르게 시작 지점에서 pop이 가능하고 마지막 위치에 push가 가능한 자료구조이다. queue는 들어온 순서대로 원소를 저장하고, 원소를 먼저 들어온 순서대로 꺼내야 할 때 주로 사용된다.큐는 한 쪽에선 원소를 넣고 나머지 한 쪽.. 2024. 4. 3.
[C++] STL 자료구조: stack ​vector와 string은 동적 배열로 임의 위치의 접근, 수정과 마지막 위치의 삽입, 삭제가 O(1)이고, 임의 위치의 삽입, 삭제가 O(n)이라는 특징을 가지고 있어서 연속적인 정보를 저장하는데 적합하다.stack은 두 자료구조처럼 임의 위치의 접근, 수정을 제공하지 않으며, 마지막 위치의 접근, 삽입, 삭제에만 특화된 자료형이다. 따라서 stack은 원소들을 순서대로 집어넣거나 가장 최근에 들어온 원소를 확인할 때 주로 사용된다. 원소들은 삽입된 순서대로 가장 먼저 삽입된 원소가 맨 위에 오도록 저장되어있으며, 항상 가장 마지막에 삽입된 원소부터 접근할 수 있다. (프링글스를 뒤집어서 아래부터 감자칩을 넣는다고 생각하면 된다)이러한 특성을 LIFO(Last In First Out)이라고 한다.v.. 2024. 3. 31.
Assignmenft 1-3 (SoftMax) softmax 문제를 풀면서 느낀거는 강의를 듣고서만 풀 수 없는 거 같다. 여러 검색들과 정리된 식들, 코드로 어떻게 옮길 것인가를 반복하면서 풀었다. 이번 코드는 내가 풀지 못했고 다른 코드를 가져와서 분석하는 식으로 공부했다... **softmax_loss_naive 가중치 W:(D,C) /c는 클래스의 갯수 / 각 클래스에 대한 예측 점수를 계산하는 벡터 미니배치 X:(N,D) / N개의 minibatches, D는 각 data point의 차원 수 traing label y:(N,) / y[i]는 미니 배치 내 datapoint의 ground_table / 이미지의 정답 클래스 SoftMax -sigmoid 보다 학습이 더 잘된다 -loss function으로 cross-entrophy를 쓴다 .. 2024. 3. 30.
Matrix-2주차 스터디 2주차에는 numpy, list vs np.array, slicing, boolean 인덱싱, randn 함수, sort(오름차순), reshape에 대해 배웠다.이후 데이터를 colab으로 읽어들이고 여러 함수들을 써서 그래프를 시각화하는 연습을 했다.이를 위해 Matplotlib, Seaborn 등을 사용하였다. 0) 설치기본설치##matplotlib 설치!pip install matplotlibimport matplotlib.pyploy as pltimport matplotlibimport pandas as pdprint(matplotlib.__version__)글꼴 설치(한글용)!sudo apt-get install -y fonts-nanum!sudo fc-cache -fv.. 2024. 3. 29.