본문 바로가기

전체 글64

[DL] 가중치 초기화 : Xavier, LeCun, He 가중치 초기화(weight initialization)란?딥러닝 모델을 학습하기 전, 각 layer의 weight를 설정하는 방법이다. 그냥 랜덤한 숫자로 초기화 해버리면, 학습이 극도로 느려지거나 실패할 수 있기 때문에 잘 설계되어야 한다. 특히, Gradient Vanishing (기울기 소실)과 Gradient Explosion (기울기 폭발)문제가 일어날 수 있다. - sigmoid, tanh 등 비선형 함수를 사용할 경우, 역전파 과정에서 기울기가 거의 0 가중치 초기화 방법 정리1. Xavier"Understanding the difficulty of training deep feedforward neural networks"https://proceedings.mlr.press/v9/gloro.. 2025. 4. 9.
[DL] RARE: Retrieval-Augmented Reasoning Modeling https://arxiv.org/abs/2503.23513?utm_source=substack&utm_medium=email RARE: Retrieval-Augmented Reasoning ModelingDomain-specific intelligence demands specialized knowledge and sophisticated reasoning for problem-solving, posing significant challenges for large language models (LLMs) that struggle with knowledge hallucination and inadequate reasoning capabilities undearxiv.org "RARE는 외부에서 지식을 불러.. 2025. 4. 9.
[DP] 백준 1965 상자넣기 - Python 풀이 https://www.acmicpc.net/problem/1965 정육면체 모양의 상자가 일렬로 늘어서 있다. 상자마다 크기가 주어져 있는데, 앞에 있는 상자의 크기가 뒤에 있는 상자의 크기보다 작으면, 앞에 있는 상자를 뒤에 있는 상자 안에 넣을 수가 있다. 예를 들어 앞에서부터 순서대로 크기가 (1, 5, 2, 3, 7)인 5개의 상자가 있다면, 크기 1인 상자를 크기 5인 상자에 넣고, 다시 이 상자를 크기 7인 상자 안에 넣을 수 있다. 하지만 이렇게 상자를 넣을 수 있는 방법은 여러 가지가 있을 수 있다. 앞의 예에서 차례대로 크기가 1, 2, 3, 7인 상자를 선택하면 총 4개의 상자가 한 개의 상자에 들어가게 된다. 상자의 크기가 주어질 때, 한 번에 넣을 수 있는 최대의 상자 개수를 출력하.. 2025. 3. 20.
[논문 리뷰] Transformers without Normalization : Dynamic Tanh 레이어로 정규화 없는 트랜스포머! 메타가 새로 발표한 프랜스포머 논문 https://arxiv.org/pdf/2503.10622 2025. 3. 20.
[논문 리뷰] Gemma 3 Technical Report - Google DeepMind 새로운 경량화 오픈소스 모델 https://storage.googleapis.com/deepmind-media/gemma/Gemma3Report.pdf?utm_source=substack&utm_medium=email https://developers.googleblog.com/en/introducing-gemma3/?utm_source=alphasignal Introducing Gemma 3: The Developer Guide- Google Developers BlogSince its first launch, Gemma models have been downloaded over 100 million times, with the community creating over 60,000 variations for all kinds o.. 2025. 3. 20.
[DFS/BFS] 백준 2468 안전 영역 Python 풀이 - BFS https://www.acmicpc.net/problem/2468 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다.먼저 어떤 지역의 높이 정보를 파악한다.그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다.이때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다.어떤 지역의 높이 정보는 행과 열의 크기가 각각 N인 2차원 배열 형태로 주어지며 배열의 각 원소는 해당 지점의 높이를 표시하는 자연수이다.물에 잠기지 않는 안전한 영역이라 함은 물에 잠기지 않는 지점들이 위, 아래, 오른쪽 혹은 왼쪽으로 인접해 있으며 그 크기가 최대인 .. 2025. 3. 18.
[SQL] 프로그래머스 lv.5 오프라인/온라인 판매 데이터 통합하기 2022년 3월 오프라인/온라인 상품 판매 데이터의 판매 날짜, 상품ID, 유저ID, 판매량OFFLINE_SALE 테이블의 판매 데이터의 USER_ID 값은 NULL판매일을 기준으로 오름차순 , 상품 ID를 기준으로 오름차순, 유저 ID를 기준으로 오름차순  이 문제의 핵심은 UNION / UNION ALL 을 사용하는 것이다. UNION 은 중복 데이터를 삭제하고 정렬을 유발하지만 UNION ALL은 중복데이터를 처리하지 않고 정렬도 하지 않는다.동일한 날짜, 상품 ID 조합에 대해서는 하나의 판매 데이터만 존재한다고 했기 때문에, 중복 제거를 할 필요가 없다. 따라서 UNION ALL 을 사용한다.  또, OFFLINE_SALE 테이블의 판매 데이터의 USER_ID 값은 NULL으로 만들어주기 위해O.. 2025. 3. 18.
[DFS/BFS] 백준 2667 단지번호붙이기 python 풀이 https://www.acmicpc.net/problem/2667 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력하는 프로그램을 작성하시오.  전형적인 DFS/BFS 문제로, 나는 BFS 로 풀이해 보았다.  우선 n 길이의 정사각형 모양이기에 visited도 n만큼 만들어 줬다. 또, 상하좌우로 움직이기.. 2025. 3. 17.
[BFS/DFS] 백준 2644 : 촌수 계산 Python 풀이 평소 약했던 DP랑 그리디 부분을 연습하느라 한동안 BFS/DFS 를 연습 못했다 ㅠㅠ 오랜만에 풀어본 BFS/DFS 문제.문제는 쉽지만 오랜만에 풀어서 그런지 내 머리가 잘 안돌아갔다.  BFS 랑 DFS 모두 적용해서 풀어보았다 . 우선 여기서 중요한건 양방향으로 경로를 설정해 주는 것. 보통 start = 0 혹은 1로 설정해주던 문제와 다르게 이 문제에서는 바로 target_node[0]부터 시작하도록 했다. 1. BFS 풀이우선 n, target_node, m, pc 를 입력받고 양방향 그래프를 만들어 준다. pc_r = [[] for _ in range(n+1)]for parent,child in pc : pc_r[parent].append(child) pc_r[child].appe.. 2025. 3. 14.