게시글 카테고리

LeetCode

[HashMap] Ransom Note

HashMap = Dictionary in python  The point of this problem is to create a HashMap that stores the counts of the letters that appears in magazine, and subtract counts if the same letter is in ransomNote.  The problem was setting the if conditions,  1. char must be in the counter (obiviously), otherwise we cannot make ransomNote with magazine2. Each letter should be used once in magazine, so the wo..

LeetCode

[Linked List] Middle of the Linked List

Linked List 자료구조를 다루는 문제이다.  Pointer 2개를 사용하는 테크닉을 사용하여 중간의 node를 리턴하는 방식이다. slow pointer는 옆으로 한 칸만 가고, fast pointer는 딱 2배의 속도인 옆으로 두 칸을 간다. 만약 fast pointer가 linked list의 끝에 도달하거나 끝보다 더 뒤에 있는 식으로 도달한다면, slow pointer는 자동으로 중간에 위치할 것이다(속도가 딱 반이므로, fast가 끝에 도달하면 slow는 그 반절인 중간에 있을 것). Linked list이므로 일단 두 pointer를 head로 initialize해주고, 뒤의 node에 접근하고 싶은 경우 .next 를 써주면 된다. 뒤의 뒤 node에 접근하고 싶은 경우 .next.n..

Neural Networks

LSTM (Long Short Term Memory) 직관적 설명

LSTM은 기존의 Vanilla RNN이 long-term memory에 취약하다는 단점을 보완하기 위해 나온 아키텍처이다. 기존의 RNN은 동일한 weight와 구조로 layer가 계속 반복되다 보니 vanishing gradient / exploding gradient 문제가 있었고, 이로 인한 long-term memory를 기억하는 데에 문제가 생기게 된다. LSTM은 큰 틀에서 이 문제를 short-term memory가 flow 할 수 있게 하는 path, long-term memory가 flow 할 수 있게 하는 path를 구분하여 두면서 해결하고자 하였다.  LSTM의 해결책 LSTM의 구조에 대한 가장 유명한 그림이다.  중간에 구조들이 보이는 것이 하나의 LSTM block이고, 이러한..

Decision Making

[논문리뷰] Neural Additive Models: Interpretable Machine Learning with Neural Nets

Interpretable Modeling 관련하여 찾아던 중 Neural Additive Models: Interpretable Machine Learning with Neural Nets 이라는 논문을 찾아 간단하게 공부하게 되었다. (Spotlight (Top 3%) at NeurIPS 2021)   Deep Neural Networks(DNN)이 black-box이기 때문에 healthcare, finance, criminal justice와 같이 고위험군 task에서는 적용가능성에 문제점이 있기에 더욱 더 interpretation 가능한 방법론이 필요하다고 말한다. 기존의 방법론인 LIME과 같은 방법론들은 모델의 behavior에 대한 설명 디테일이 부족하거나, fail to provide a..

Decision Making

Generalized Additive Models(GAMs)

GAM이란? Generalized Additive Models (GAMs) are a type of statistical model that extend Generalized Linear Models (GLMs) by allowing the linear predictor to be a sum of smooth functions of the predictor variables. This flexibility makes GAMs highly effective for capturing non-linear relationships between predictors and the response variable. GLM의 연장선이며 smooth function을 추가해 독립변수와 종속변수 간의 non-linear..

Decision Making

Generalized Linear Models(GLMs)

GLM이란? / 모델은 어떻게 생겼는가 Generalized Linear Models (GLMs) are a flexible extension of ordinary linear regression models that allow for the response variable to have a non-normal distribution.  여기서 response variable이란 Y(종속변수, 독립변수에 따라 변하는 값)을 뜻한다. 일반적인 선형회귀모델과는 다르게 종속변수가 non-normal 분포를 가질 수 있게 extend 해놓은 것이 GLM이다. 반대로 predictor variable이란 독립변수를 의미한다. 예를 들어, 집값을 예측하는 경우 집의 크기, 교통의 편의성, 집의 연식 등이 predi..

최적화 이론

Convex function & Sets

오늘은 convex set과 function들에 대해 다루어볼 예정입니다. convex set이 무엇인지 알아보기 전에, line segment가 무엇인지 알아보도록 하겠습니다. Line segment Line segment는 우리 말로 '선분' 입니다. 이제부터 선분을 수학적으로 정의해보도록 하겠습니다. ((x))와 ((y))라는 점이 있고, ((0)) ((\leq)) ((\lambda)) ((\leq 1)) 인 조건에서, ((\lambda))((x)) + (( (1 - \lambda) ))((y)) 가 바로 line segment입니다. 왜 이렇게 표현되는고 하니, ((\lambda))가 1이 되면 그냥 ((x))점이고, ((\lambda))가 0이 되면 그냥 ((y))점이니, ((\lambda))가..

에이전트 인공지능

Deterministic vs Stochastic policy

안녕하세요, 오늘은 강화학습에서 등장하는 개념인 Deterministic policy와 Stochastic policy에 대해 다뤄보도록 하겠습니다. Policy란? 강화학습 분야에서 policy란, 어떤 에이전트가 주어진 환경과 상호작용하는 전략을 의미합니다. 환경이 주어지고 나서 , 어떻게 action을 취할 것인지에 대한 내용을 담고 있습니다. 만약에 현재의 상태에 대한 정보가 입력으로 주어지면, 다음 액션을 아웃풋으로 뱉어내는 함수입니다. 다시 말하자면, state를 action과 mapping 해주는 function 입니다. 이 policy는 상황에 따라 deterministic policy가 될 수도 있고, stochastic policy가 될 수도 있습니다. 이 둘이 무엇인지, 어떻게 다른지..

머신러닝

머신러닝이란?

안녕하세요, 오늘은 머신러닝이란 무엇인지, 그리고 머신러닝에는 어떠한 종류의 task들이 있는지를 알아보려고 합니다. 머신러닝에서 다뤄지는 문제들은, 그 목적함수와 output 또는 parameter에 따라 관점을 다르게 할 수 있는데요, 간략하게 개괄적으로 정리해보도록 하겠습니다. 머신러닝의 정의 위키피디아에서 머신러닝의 정의를 찾아보면, "경험을 통해 자동으로 개선하는 컴퓨터 알고리즘의 연구이다." 라고 적혀있습니다. 또한 아래의 이미지와 같이 많은 정의들을 보신 적이 있을 것입니다. 형식적으로 간단하게 정의를 말씀드리면, 데이터를 학습하여 예측, 분석 등을 행하는 것입니다. 하지만 실제로는, 조금 더 엄밀하게 정의를 한다면 다음과 같을 것입니다. " 관측한 데이터를 바탕으로, 각각의 task에 대한..

선형대수

그람-슈미트 과정(Gram-Schmidt Process) - part 1

안녕하세요, 오늘은 그람-슈미트 과정을 직접적으로 다루기 전 그람-슈미트를 왜 하는지와, 직교성과 Orthonomal에 대해서 설명해보려고 합니다. 그람-슈미트 과정은, 이를 왜 하는지에 대한 이유와 필요한 개념들을 설명하기 위한 part 1과, 직접 계산을 해보는 part 2로 나누어서 다뤄볼 것입니다. 반드시 직전의 게시물을 보고 오시는 것을 추천드립니다. https://jaehoonstudy.tistory.com/21 부분공간에 벡터 투영시키기(Projection onto Subspaces) 오늘은 벡터를 부분공간에 project하는 방법에 대해서 알아보도록 하겠습니다. 지난 게시물인 '직교성과 부분공간' 의 마지막 부분에 이어서 진행해보도록 하겠습니다. https://jaehoonstudy.tis..

ShinyJay
'분류 전체보기' 카테고리의 글 목록