분류 전체보기
-
[데이터 분석] 행위자 기반 모형 (Agent Based Model) [긴 버전]Data Science/데이터 분석, ML 2023. 8. 15. 23:06
1. 들어가는 글 몬테 카를로 시뮬레이션에 대해 쓰면서 잠깐 말했지만, 시뮬레이션을 하는 방법 중에 행위자 기반 모형이라는 게 있습니다. 처음 이걸 접할 때가 아마 대학원 첫 학기로 기억해요. 당시에는 아직 연구주제를 명확하게 정하던 때가 아니라 이것저것 관심을 갖고 있었어요. 특히 학부에서는 잘 다루지 않았던 행동경제학은 게임이론과 더불어 경제학도라면 관심가질 만한 분야일거에요. 때마침 한 선배가 행동경제학에서 주로 하는 시뮬레이션을 학습하는 모임을 추천해주셔서 참여한 적이 있어요. Netlogo를 활용했는데, 처음엔 나비모형이라는 걸 배웠습니다. 나비모형이라고 하니까 왠지 나비효과 같은 걸 생각했는데 그런 건 아니었어요. 단순히 나비가 펄럭펄럭 날아서 산까지 날아가는 걸 만들어 보는 거 였습니다. 그..
-
[데이터 분석] 몬테 카를로 시뮬레이션(MC Simulation) [긴 버전]Data Science/데이터 분석, ML 2023. 8. 7. 22:37
1. 들어가는 글 근의 공식을 기억하시나요? 근의 공식은 이차방정식의 해를 구하는 공식을 말합니다. 더보기 식(1)과 같은 이차방정식이 있다고 할 때, 근의 공식은 식(2)처럼 생겼습니다. $$ \begin{align} &ax^{2} + bx + c = 0 \quad where \; a \neq 0 \tag{1} \\[15 pt] &x = \frac{-b \pm \sqrt{b^{2} -4ac}}{2a} \tag{2} \end{align} $$ 근의 공식처럼, 공식은 다양한 목적으로 쓰입니다. 어떤 현상을 기술하기 위해서, 또는 세상에 작용하는 법칙을 설명하기 위해서, 또는 문제를 해결하는 방법을 기술하기 위해서, 이렇게 문제를 해결하는 식이 있는 경우는 그래도 친절한 편이에요. 식이 아무리 복잡하더라도,..
-
[연구일지 #1] 위대한 기업은 무엇일까Project/연구 2023. 7. 30. 20:43
1. 참 오랜만에 블로그를 다시 시작하게 되었습니다. 예전에 썼던 얼마 안되는 포스트를 수정하면서 다시 시작을 하려고 합니다. 이 기회에 과거에 멈춰있던 작업들을 다시 시작해보려구요. 수익의 파이프라인을 만들어보려고 합니다. 첫번째 작업으로 주식 자동매매 작업을 다시 이어서 하려고 합니다. 하고 싶은 작업들이 여러 개 있는데, 아마 순서대로 진행하지는 않을 것 같습니다. 작업하다가 막히면 금방 포기하고 싶어지더라구요. 벽을 느끼는 순간이 오면 잠시 다른 작업을 하다가 돌아오려고 합니다. 2. 대학원을 졸업하고 취업을 하면서, 전공을 살려보겠다고 처음 주식 자동매매 만드는 데에 도전했어요. 주식 매매하는 프로그램은 만드는 건 참고자료가 많아서 어렵지 않았습니다. 문제는 어떤 종목을, 어떤 가격에 사고 팔지..
-
[ML] 릿지Ridge, 라쏘LASSO를 배울 때 나오는 그래프는 뭘까Data Science/데이터 분석, ML 2022. 5. 2. 23:48
1. 들어가는 글 이번에는 릿지Ridge와 라쏘LASSO에서 꼭 마주하게 되는 한 그래프를 다루려고 합니다. 릿지, 라쏘에 대해서는 나중에 자세히 다루려고 해요 릿지나 라쏘는 몇 가지 좋은 성능이 있어서 많이 사용됩니다. 아이디어도 아주 간단한 편이에요. 선형회귀를 하되, 제약식을 두고 한다. OLS를 배웠다면 릿지나 라쏘를 이해하는 건 어렵지는 않습니다. 물론 수식으로 써두고 보면 이해하기 어려워 보이긴 하지만요. 다만 릿지나 라쏘 그 자체보다는, 교과서에 나오는 등고선 그래프가 조금 어렵게 느껴지기도 합니다. 대체 정체가 뭘까요? 2. 등고선 그래프 책마다 다르지만 릿지와 라쏘를 다루거나 L1, L2 정규화를 다루는 챕터에서 마주치는 그래프가 있습니다. ISLR(An Introduction to St..
-
[연구] 볼린저밴드를 활용한 주식 종목 선정 - 2주간의 결과카테고리 없음 2020. 10. 25. 16:46
이전 글 볼린저밴드를 활용한 주식 종목 선정 - 1주간의 결과에서 본격적으로 프로그램을 돌린 후 부터 약 8일 정도의 수익률을 구했다. 지난 주까지의 결과는 2.274%의 손실을 입었었다. 당시의 결과는 아래 표와 같다. 거래일 포트폴리오 일간 수익률 코스피 등락율 2020년 10월 6일 (화) 0.234% 0.34% 2020년 10월 7일 (수) 1.023% 0.89% 2020년 10월 8일(목) 1.193% 0.21% 2020년 10월 12일(월) -0.114% 0.49% 2020년 10월 13일(화) 0.540% -0.02% 2020년 10월 14일(수) -1.631% -0.94% 2020년 10월 15일(목) -1.193% -0.81% 2020년 10월 16일(금) -2.291% -0.83% 지난..
-
[부록] 뉴턴랩슨법 구현Data Science/부록 2020. 10. 23. 22:58
뉴턴-랩슨법(Newton's Method)을 구현해보려고 합니다. 뉴턴-랩슨법이 무엇인지는 이전 글을 참고해주세요. 파이썬으로 간단하게 구현을 했는데요, 여기서 구하고자 하는 $f(x) = x^{2} + 8x - 17$입니다. 구해보면 이 때의 해 $x$는 $1.7445626$이 나옵니다. $f(x) = 0$을 만들어주는 $x$를 구해보기 위해 근의 공식에 대입하면, $x = -4 \pm \sqrt{33}$이 나옵니다. $\sqrt{33} = 5.74456264654$이니, 실제로도 정확하게 구해주네요. 코드는 아래와 같습니다. def ftn(x): z = x*x + 8*x - 17 return(z) xt = 100 h = 0.000000001 epsilon = 0.0000001 i = 1 while 1..
-
[ML] 뉴턴-랩슨법(Newton's Method)을 쓰는 이유Data Science/데이터 분석, ML 2020. 10. 23. 22:51
0. 들어가는 글 데이터 분석을 하다보면 종종 뉴턴 방법(Newton's method) 또는 뉴턴-랩슨법(Newton-raphson's method)을 만나는 경우가 있습니다. 뉴턴-랩슨법은 해(Solution)을 구하는 방법으로 알려져 있긴 합니다.해를 구할 때 뉴턴-랩슨법을 직접 사용하는 경우도 있고, 개념을 차용하기도 합니다. 대표적으로 딥러닝에서 경사하강법(Gradient descent)을 들 수 있겠네요. 아무튼 다양한 분야에서 활용되고 있는 뉴턴-랩슨법을 소개하려고 합니다. 알아두면 생각보다 유용하거든요. 1. 해(Solution)을 구하는 방법? 앞서 말한대로 뉴턴-랩슨법은 해(Solution)를 구하는 방법 중 하나입니다. 구체적으로는 함수값을 0으로 만들어주는 값을 찾을 때 꽤 유용하고 ..
-
[부록] 최소제곱법 공식 유도② 단순회귀모형Data Science/부록 2020. 10. 17. 21:56
이전 글에서 최소제곱법으로 구한 추정량을 유도했는데, 이번에는 단순회귀모형으로 해보려고 한다. 단순회귀모형이나 다중회귀모형이나 기본적인 아이디어는 같다. 다만 단순회귀에 비해 다중회귀는 변수가 조금 많다보니 행렬로 표기할 뿐이다. 우선 단순회귀모형은 다중회귀모형과 달리 설명변수를 하나만 사용하는 모형이다. 식은 아래와 같이 생겼다. $$ y_i = \alpha + \beta x_i + u_i \qquad i = 1, 2, \cdots , N$$ 표본크기는 $N$개라고 가정했다. $y$는 종속변수(Dependant Variable), $x$는 설명변수(Explanatory Variable), $u$는 오차항(Error Term, Unobservable Factor)을 말한다. 선형식에서 일반적으로 상수항을..