source: www.investopedia.com/articles/basics/11/3-s-simple-investing.asp 위 자료로 부터 요약 작성함. Beginner’s Guide to Asset Classes stable - volatile에 따라 나뉨. 일반적으로 알려진 각 asset class의 risk 정도에 따라 오름차순으로 적음. Cash pros: simple, understandable, safest cons: inflation Bonds debt instrument representing a loan usually by the corporate and the government the rates are determined by the Interest rates Mutual Fu..
source: www.investopedia.com/terms/f/fundamentalanalysis.asp 위 자료로부터 요약 작성함. Fundamental analysis it represents that doing the analysis with the following indicators: the stock's annual dividend payout, earnings per share, P/E ratio, and many other quantitative factors also its brand recognition. also the market as a whole can be evaluated doing Fundamental Analysis of such as S&P 500 reports Qu..
텐서플로(Tensorflow), 케라스(Keras), 파이토치(PyTorch) 등으로 랜덤 포레스트, 신경망(CNN, RNN, GAN)등의 모델을 학습시킬 때 loss 값이 nan이 되는 경우가 있다. 아래에 나와있는 방법들로 대개 해결된다. 가장 먼저 df.isnull().any()로 데이터셋에 NaN이나 inf 값이 들어있는지 확인한다. (데이터 셋이 pandas DataFrame 형태인 경우) 다른 optimizer들을 사용해본다. Ex. sgd, adam, nadam learning rate(학습률)을 낮춰본다. 특성 스케일링을 다른 방식으로 해본다. Ex. (0, 1)을 (-1, 1)로
David Foster Wallace gave a commencement speech to the graduating class at Kenyon College in 2005 and below is the transcript of it This is Water “Greetings parents and congratulations to Kenyon’s graduating class of 2005. There are these two young fish swimming along and they happen to meet an older fish swimming the other way, who nods at them and says “Morning, boys. How’s the water?” And the..
저자인 나심 탈렙은 책 으로 유명한 사람이다. 저자가 직접 서문에서 밝히듯 전반적으로 어투가 직설적이다. 노벨 경제학상 수상자인 로버트 머튼이나 마이런 숄즈 등 직접 실명을 언급하며 비판한다. 마이런 숄즈를 두고 펀드를 두 번이나 파산시키고 대학에서 리스크 관리 강의를 할 자격이 없으니 은퇴 후 집에서 스도쿠나 두고 있어야 한다고 조롱한다. 저자는 책 전반에 걸쳐 시니컬한 태도를 유지하고 월 스트리트 동료 트레이더들에 대한 비아냥과 독설까지도 서슴지 않는다. 이 책은 크게 4부로 구성된다. 1부에서는 보이는 역사, 숨은 역사, 희귀 사건(Rare events)에 대해 속성을 다룬다. 저자는 많은 사람들이 조지 소로스나 워렌 버핏같은 부자들이 전적으로 노력과 재능에 의해 성공을 이루었다고 보는 것은 착각이..
비지도 학습 현실의 대부분의 데이터들은 레이블이 없는 경우가 많다. 사실 어찌보면 당연하다. 예를 들어보자. Youtube 서비스의 추천 알고리즘을 개발한다고 하자. Youtube 서비스를 이용하는 사람들의 접속, 동영상 시청 여부, 시간등에 대한 데이터는 구하기 쉬울 것이다. 하지만 이 데이터를 가지고 어떻게 사용자를 분류해 각 사용자에 맞는 동영상을 추천할까? 동영상을 추천하는 작업은 사용자를 분류한 이후의 별개의 작업이므로 여기서는 어떻게 올바르게 사용자를 분류할 수 있을 지에 대해 생각해보자. 사용자의 Youtube 사이트, 어플 접속, 동영상 시청 여부에 대한 데이터 셋에는 각 사용자들을 어떻게 분류해야하는 지에 대한 정답이 표면적으로 나와있지 않을 것이다. 즉 지도 학습이 가능한 데이터 셋과 ..
머신러닝 파이프라인 머신러닝 수행 과정을 정형화하는 파이프라인을 구축해본다. 일반적으로 머신러닝은 대략 아래와 같은 순서로 진행한다. 더보기 1. 큰 그림 보기 2. 데이터 가져오기 3. 데이터 탐색과 시각화 4. 데이터 준비 5. 모델 선택과 훈련 6. 모델 세부튜닝 1. 큰 그림 보기 문제 정의부터 시작해야한다. 해결하려는 문제가 어떤 종류의 문제인가? 지도 학습으로 해결할 수 있는 문제인가?(데이터에 예측하려고하는 레이블, 타깃값이 있는가) 비지도 학습 혹은 강화 학습? 또한, 예를 들어 주식 가격(삼성전자의 종가라고 하자.)을 예측하고 싶다면, 내일 삼성전자의 종가가 오늘 종가에 비해 오를지 혹은 떨어질지를 예측하고 싶은가?(분류) 아니면 정확한 종가를 예측하고 싶은가?(회귀) 데이터를 실시간으로..
현실의 대부분의 데이터들은 특성을 적게는 수백 개에서 많게는 수백만 개를 가지고 있다. 특히 만약 데이터가 이미지라면 샘플 하나 당 가지고 있는 특성의 수는 이미지의 크기에 따라 기하급수적으로 늘어난다. 예를 들어 28 * 28 해상도의 저해상도 이미지만 해도 28 * 28 = 784개의 특성을 가지고 있다. 128 * 128 해상도의 이미지라면 총 16384개의 특성을 가지게 된다. 이렇게 수많은 수의 특성을 가지고 있는 데이터는 모델로 하여금 학습을 어렵게한다. 또한 샘플 하나 당 연산량이 많아 학습 속도도 느려지게 된다. 차원 축소 그렇다면 이 문제를 어떻게 해결할까? 방법은 여러가지가 존재하나 대표적으로 차원 축소() 알고리즘을 사용해 해결한다. 여기서 말하는 차원은 특성과 같다. 즉 특성의 수를..
위에서 새로운 특성을 기존의 특성을 거듭제곱해 만들었다. 왜 세제곱이나 네제곱이 아닌 거듭제곱일까? 즉 차수를 어떻게 정해야할까? 가장 간단한 방법은 반복 실험을 통해 알아보는 것이다. 즉 교차 검증을 통해 확인하면 된다. 또 다른 방법이 있다. 학습 곡선을 이용하면 된다. 학습 곡선은 train set과 valid set의 모델의 성능을 train set의 크기의 함수로 나타낸 것이다. 무슨 말인가? 그림으로 보자. 즉 점점 train set의 크기를 늘려가며(training set의 크기를 1, 2, 3, ... 점점 더 추가하면서 테스트) 모델을 훈련시키면서 동시에 valid set으로 모델의 성능을 평가하는 것이다. 코드로 구현하면 아래와 같다. 여기까지는 좋다. 하지만 이 다음에 무엇을 해야하는..
데이터가 선형이라면 선형 모델을 사용하면 된다. 하지만 만약 아래와 같이 데이터가 비선형이면 어떻게 해야 할까? 신기하게도 비선형 데이터를 학습하는데 선형 모델을 사용할 수 있다. 바로 기존의 데이터에 각 특성의 거듭제곱을 새로운 특성으로하여 추가된 데이터에 선형 모델을 훈련시키는 것이다. 이것을 다항 회귀라 한다. 특성의 거듭제곱을 구하고 이를 새로운 특성으로 하여 기존 데이터에 추가하는 것은 어려운 일이 아니다. 하지만 매번 이렇게 똑같은 작업을 반복하는 것은 지양해야한다. 따라서 우리가 직접 함수를 구현할 수도 있겠지만 다행히 사이킷런에서는 PolynomialFeature라는 메서드가 구현되어 있다. 이를 이용하여 위의 비선형 데이터에 선형 모델을 훈련시켜보자. 먼저 거듭제곱 항을 추가하고 변형된 ..