일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- RecSys
- 강화학습의 수학적 기초와 알고리듬의 이해
- conditional_edges
- subgraph
- LangChain
- humannode
- removemessage
- rl
- add_subgraph
- langgrpah
- Ai
- chat_history
- update_state
- 강화학습의 수학적 기초와 알고리듬 이해
- agenticrag
- 강화학습
- human-in-the-loop
- toolnode
- rag
- pinecone
- tool_calls
- summarize_chat_history
- tool_call_chunks
- adaptive_rag
- 추천시스템
- 밑바닥부터 시작하는 딥러닝
- REACT
- Python
- 밑바닥부터시작하는딥러닝 #딥러닝 #머신러닝 #신경망
- langgraph
- Today
- Total
목록전체 글 (46)
타임트리
신경망 학습에서 가중치 매개변수에 대한 손실 함수의 기울기를 수치 미분으로 구했다. 수치 미분은 구현하기 쉽지만 계산 시간이 오래 걸린다는 큰 단점이 있다. 따라서 이번 장에서는 기울기를 효율적으로 계산하는 오차역전파법(backpropagation)을 다룬다. 5.1 계산 그래프¶ 계산 그래프(computational graph)는 계산 과정을 복수의 노드(node)와 엣지(edge)로 표현한 것이다. 5.1.1 계산 그래프로 풀다¶ 계산 그래프에서 노드는 원으로 표기하고 원 안에는 연산 내용을 적는다. 또한, 계산 결과를 화살표 위에 적어 각 노드의 계산 결과가 왼쪽에서 오른쪽으로 전달한다. 계산 그래프의 사용법을 간단히 알아보기 위해 다음의 문제를 생각해보자. 1개에 100원짜리 사과 2개를 구입했다..
4.1 손실함수¶ 신경망 학습은 현재의 상태를 하나의 지표로 표현하며, 해당 지표를 가장 좋게 만들어주는 매개변수 값을 탐색한다. 이러한 지표를 신경망에서는 손실 함수라고 한다. 4.1.1 오차제곱합¶ 가장 많이 사용되는 손실 함수는 오차제곱합(sum of squared error; SSE)이며 식 (1)과 같다. \begin{equation} E = \frac{1}{2}\sum_k (y_k - t_k)^2 \end{equation} 여기서 $y_k$는 신경망으로 추정한 값(출력), $t_k$는 정답 레이블, $k$는 데이터의 차원 수를 나타낸다. 예를 들어, 앞서 MNIST 데이터셋에서 $y_k$는 신경망의 k번째 반복의 출력인 y_prob이며, $t_k$는 정답 레이블 t[k]가 된다. In [1]:..
3.3 다차원 배열의 계산¶3.3.1 다차원 배열¶다차원 배열은 숫자를 N차원으로 나열한 것을 말한다. 1차원 배열의 예를 살펴보자. In [1]: import numpy as np A = np.array([1, 2, 3, 4]) print(A) [1 2 3 4] 배열의 차원 수는 np.ndim() 함수로, 배열의 형상은 shape 메서드로 확인할 수 있다. 결과를 살펴보면 A는 1차원 배열이고 원소 4개로 이루어져 있다. 주의할 점은 A.shape가 튜플(tuple)을 반환한다는 것이다. 이는 1차원 배열이라도 다차원 배열일 때와 통일된 형태로 결과를 반환하기 위함인데, 예를 들어 2차원 배열일 때는 (4, 3), 3차원 배열일 때는 (4, 3, 2)와 같은 튜플을 반환한다. In [2]: print(..
퍼셉트론은 복잡한 함수도 표현할 수 있다는 장점이 있지만, 가중치를 설정을 사람이 직접 해줘야한다는 단점이 있다. 하지만, 신경망은 가중치의 적절한 값을 데이터로부터 학습한다. 이번 장에서는 신경망에 대한 개요를 다루고 신경망이 입력 데이터가 무엇인지 식별하는 처리 과정을 알아본다. 3.1 퍼셉트론에서 신경망으로¶3.1.1 신경망의 예¶신경망을 그림으로 나타내면 다음과 같다. 여기에서 가장 왼쪽을 입력층, 중간을 은닉층, 마지막 층을 출력층이라고 한다. 은닉층의 뉴런은 사람 눈에 보이지 않아 '은닉(hidden)'이라 한다. 앞으로는 입력층부터 출력층까지 차례로 0층, 1층, 2층이라 부르기로 하자. 3.1.2 퍼셉트론 복습¶아래와 같은 구조의 네트워크를 생각해보자. 위 그림은 $x_1$, $x_2$라는..
정밀 의학(Precision medicine) 또는 개인 맞춤 의료(Personalized medicine)란 하나의 치료로 모든 환자를 다루는 게 아닌 환자 개인의 상황에 따라 맞춤진료, 맞춤치료 및 질병 예방 등을 목표로 하는 의료 모델을 말한다. 이때 Subgroup analysis는 정밀 의학(또는 개인 맞춤 의료)의 핵심으로 특성 변수들로 정의된 대상들로부터 측정한 target 변수에 대한 treatment effect를 평가하는 것을 의미한다. 이를 통해 treatment effect가 다른 양상을 보이는 부분 집단(subgroup)을 찾고, subgroup에 대해 target과 특성 변수를 다르게 모델링해줌으로써 보다 정밀한, 혹은 개인 맞춤의 의료 서비스를 제공할 수 있다는 것이다. 다시 ..
얼마 전 한국에너지공단에서 주최하고 DACON에서 주관한 전력사용량 예측 AI 경진대회에 참여했다. 이 대회의 주제는 전력 수요 예측 시뮬레이션을 통한 효율적인 인공지능 알고리즘을 발굴하는 것으로, 익명화된 건물 정보와 함께 기후 정보를 활용해 60개 건물의 일주일 전력사용량을 매 시간마다 예측하는 문제였다. 팀명을 정하지 않은 채 팀 병합 후 분석을 진행하다 보니 닉네임 j_sean이 그대로 팀명으로 정해졌다. (의도치 않게 j_sean팀의 j_sean으로 참가하게 되었다!) 대학생 시절 데이터 분석 연합 동아리 BITAmin을 통해 알게 된 두 명의 팀원들과 함께 팀장으로 참여했다. 틈틈이 하지만 열심히 참여한 결과, 위와 같이 Modeling 분야에서 1위를 하게 되었다! 따라서 이번 공모전에 참여..