💻 개인공부 💻 100

[금융공학] Geometric Brownian Motion 소개

1. GBM(Geometric Brownian Motion)이란? GBM은 주식의 기하학적 브라운 운동을 말하며, 2개의 parameter $\mu$(drift parameter)와 $\sigma$(volatility parameter)를 가진다. - $\mu$ (drift parameter) : 주식 가격의 트랜드를 반영하는 변수이다. 기울기를 나타낸다. - $\sigma$ (volatility parameter) : 주식 가격의 변동성을 반영하는 변수이다. 그래프의 떨리는 정도를 나타낸다. 현재 시간을 0이라 하고, $y$시기의 주식 가격을 $S(y)$라고 하자. 변수로 $\frac{S(t+y)}{S(y)}$가 있다고 하자. ($\frac{S(2)}{S(1)}$, $\frac{S(3)}{S(2)}$...

[ 경제성공학 ] Doubling Rule 소개 및 Python으로 간단하게 구현하기

은행에 원금 $P$를 넣으면, n년 뒤에는 이자율이 붙어 (복리라고 가정했을 때) 미래가치 $F$의 값은 $F = P(1+r)^n$ 라는 금액이 된다. Doubling Rule이란 미래가치 F값이 원금보다 2배가 되는 시점을 말한다. 그렇다면 Doubling Rule을 만족시키는 $n$값을 구해보도록 하자. ① 2P를 만족시키는 F값 나타내기 $F = 2P = P(1+r)^n$ $2P = P(1+r)^n$ P>0이므로 각 항으로 P로 나누면 $2 = (1+r)^n$ 각 항에 $ln$을 취해주면 $ln2$ = $n$ x $ln(1+r)$ 가 된다. ② $ln(1+r)$을 $r$로 치환하기 위 그래프는 $y=r$그래프와 $y=ln(1+r)$그래프이다. r이 매우 작은 경우, $ln(1+r)$은 r과 매우 비..

[백준 - 10870] 피보나치 수 5

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 8..

[ 딥러닝 알아가기 ] Transfer Learning과 Fine Tuning

Transfer Learning (전이학습) 성능이 좋은 딥러닝 모델을 만드는 최고의 방법은 바로 많은 수의 데이터를 확보하는 것이다. 하지만 데이터의 수가 많지 않거나 데이터를 확보하는데 많은 비용이 드는 경우가 존재할 수 있다. 이를 해결하기 위해 Transfer Learning(전이학습)을 이용한다. 전이학습이란, 특정 분야에서 학습된 신경망의 일부 능력을 유사하거나 전혀 새로운 분야에서 사용되는 신경망의 학습에 이용하는 방법이다. 전이학습은 학습 데이터의 수가 적을 때 효과적이며, 전이학습 없이 학습할 때보다 훨씬 높은 정확도와 더 빠른 학습 속도를 제공한다. 전이학습에서 이용되는 학습된 신경망을 pretrained model이라고 부르며 대표적으로 ImageNet, ResNet, gooGleNe..

[ 웹 해킹 ] Introduction of Webhacking

1. 웹이란 무엇인가? - 웹이란 무엇인가? 웹의 정확한 어원은 월드 와이드 웹(World wide Web)이며, 간단하게 웹이라고 부른다. 웹의 사전적 의미인 거미줄과 같이 인터넷상에서 각각의 사용자가 연결되어 서로 정보를 공유한다는 의미를 가진다. 웹(Web) : HTTP를 이용하여 정보를 공유하는 통신 서비스 웹 서버(Web Server) : 서비스를 제공하는 대상 웹 클라이언트(Web Client) : 서비스를 받는 사용자 2. 웹 기초지식 - Web Browser : 웹에 접속하기 위해 사용하는 소프트웨어 웹을 사용하기 위해선 웹 브라우저를 사용해야 한다. 웹 브라우저는 HTTP를 통해 인터넷 상에서 통신을 하며 서버로부터 전달받은 다양한 웹 리소스(Web Resources)를 가공해 사용자가 ..

[ 딥러닝 알아가기 ] 컨볼루션 신경망(CNN) 예제 학습하기

▶ 컨볼루션 신경망 (Convolutional Neural Network)의 목적성DNN (Deep Neural Network)는 주로 1차원 형태의 데이터를 사용한다. 따라서 그림이나 이미지와 같은 2차원 형태의 데이터를 사용할 때는 1차원 형태로 flatten시켜야 한다. (완전 연결 계층, fully connected layer)   flatten을 시키는 완전 연결 계층은 크게 2가지의 문제점이 발생한다.1. 이는 데이터의 형상을 완전히 무시하게 된다.2. 추상화 과정 없이 바로 연산과정에 넘어가버리므로 학습시간과 능률 측면에서 효율성이 떨어진다.CNN은 이러한 문제점을 해결하기 위해 도입된 방법이다. CNN은 완전 연결 계층과 달리 2차원 형태의 배열을 그대로 사용할 수 있다. ▶ 이미지의 컨볼..

[ 딥러닝 알아가기 ] 역전파(backpropagation) 제대로 이해하기

▶ 역전파란 무엇인가 역전파는 레이블된 학습 데이터를 가지고 여러 개의 은닉층을 가지는 피드포워드 신경망을 학습시킬 때 사용되는 지도학습 알고리즘이다. 역전파는 크게 3단계의 과정이 반복적으로 이루어진다. 역전파의 단계는 아래 3개의 단계로 이루어져 있다. 1. 피드포워드 과정 모든 층에 있는 가중치를 적당히 작은 수로 초기화 학습 데이터 입력. 2. cost의 역전파 계산 과정 출력층에서 나타난 cost를 최소화하는 가중치 찾는 과정 최소제곱법을 이용해 cost를 제곱한 뒤, 가중치에 대하여 편미분. 델타 규칙 : 어떤 입력 노드가 출력 노드의 오차에 기여했다면, 두 노드의 연결 가중치는 해당 입력 노드의 출력과 출력 노드의 오차에 비례해 조절한다 3. 가중치 조정 앞 단계에서 계산된 에러의 최소평균제..

[ 딥러닝 알아가기 ] 경사하강법, 역전파, SoftMax 함수

▶ 손실함수와 경사하강법   머신러닝 모델은 위와 같은 구조로 이루어진다. 머신러닝모델에 입력값을 넣고, 출력값과 실제값의 차이를 구하여 이를 줄여가는 구조로 이루어져있다. 이때 출력값과 실제값의 차이를 손실, 비용, Cost라고 부르고, 이를 함수화한 것이 바로 비용함수이다. 그리고 비용함수의 함숫값을 줄여가는 방법으로 경사하강법이 이용된다. (Gradient Descent Algorithm) 비용함수와 경사하강법에 대하여 자세한 내용은 아래 링크에서 다루고 있다.  newindow.tistory.com/118?category=1137097 [ 딥러닝 알아가기 ] 선형회귀(Linear Regression)와 경사하강법▶ 선형 회귀(Linear Regression)이란 무엇일까 위의 그림을 보면 데이터 ..

[ tensorflow ] 간단한 선형회귀모델 만들기

문제 요구사항 분석 1. 변수 x,y,w,b 정의, variable 2. hypothesis, cost 함수 정의 3. cost값을 최소화하는 w값을 찾음. (learning_rate는 0.03으로 설정) 4. Session을 열고 초기화 5. x에 x, y에 y를 넣고 학습을 시킨 뒤(2001번) 적절한 w값과 b 값을 도출 소스코드 import tensorflow.compat.v1 as tf tf.disable_v2_behavior() x = [1,3,5,7] y = [7,15,21,31] w = tf.Variable(1.0) b = tf.Variable(0.0) # 변수 x,y,w,b Variable로 정의 hypothesis = x*w + b cost = tf.reduce_mean(tf.squar..