ai tech 25

ai tech 15일차

# generative model 데이터를 생성해내는 모델이다. 하지만 그것만이 전부는 아니다. generation: 강아지와 같은 이미지를 만들어내는 것은 당연한것이고, density estimation: 어떤 이미지가 들어왔을때, 그 이미지가 강아지인지 고양이인지 아무것도 아닌지 알아낼 수 있다. 입력이 주어졌을때 확률값을 얻어낼수 있는 모델을 explicit model이라고 한다. 그냥 generation만 할수 있는 경우에는 inplicit model이라고 한다. unsupervised representation learning: 꼬리가 있고 귀가 있고 이런 내용들을 배울 수 있다. 이것을 feature learning이라고 한다. 그렇다면 p는 어떻게 만들까? # basic 이산분포 Bernou..

ai tech 2021.02.05

ai tech 14일차

# 시퀀스 데이터 순차적으로 들어오는 데이터를 시퀀스 데이터라고 한다. 소리, 문자열, 주가 등의 데이터도 시퀀스 데이터이다. 독립동등분포 가정을 잘 위배하기 때문에, 순서를 바꾸거나 과거 정보에 손실이 발생하면 데이터의 확률분포도 바뀌게 된다. 즉, 과거 정보 또는 앞뒤 맥락 없이 미래를 예측하거나 문장을 완성하는 것은 불가능하다. # 시퀀스 데이터를 다루는 방법 이전 시퀀스 정보를 가지고 앞으로 발생할 데이터의 확률분포를 다루기 때문에, 조건부 확률을 이용할 수 있다. 식으로는 최초 데이터부터의 확률을 사용하지만, 실제로는 모든 최초부터의 데이터를 사용하지는 않는다. 시퀀스 데이터를 다루기 위해서는 길이가 가변적이더라도 처리가 가능한 모델이 필요하다. 그런데 모든 초기부터의 확률이 항상 필요한것은 아..

ai tech 2021.02.04

ai tech 13일차

# convolution 신호처리 분야에서 두개의 함수가 있을때 두 함수를 잘 섞어주는 방법 또는 연산자이다. 연속적인 형태와 이산적인 형태로 나눠서 볼 수 있다. I라는 것이 전체 이미지라고 하면 K를 필터라고 볼 수 있다. 3*3 필터에 7*7 이미지를 컨볼루션하면 5*5출력이 나오게 된다. 소위 도장을 찍는다고 표현할 수 있는데 필터 행렬을 이미지 행렬에 순차적으로 찍어서 행렬곱을 하고 출력 행렬의 원소를 얻는 것이다. # 그럼 convolution을 어디다 써먹을까? 이미지에 필터를 컨볼루션하게되면 이미지를 블러하거나 엠보스하거나 외곽선만 따는 등의 기능을 할 수 있게 된다. # RGB 이미지 32 * 32 이미지라고 하면 3개의 채널이 있다. 5 * 5 필터로 컨볼루션하더라도 필터에 3개의 채널..

ai tech 2021.02.03

ai tech 12일차

공부전략을 대학교때의 전략으로 바꾸기로 했다. 수업시간에 최대한 머릿속에 입력을 하고, 기초를 따로 채워나가면서 수업시간에 배운내용을 매꿔나가는 것이다. 이렇게 하니깐 멘탈이 회복되면서 지식을 쌓는 느낌이 들었다. # 그라디언트 디센트 손실함수의 편미분을 구해서 빼주는 방식으로 최저 손실을 만드는 파라미터를 찾아주는것이 그라디언트 디센트였다. 1차 미분을 진행하기 때문에, 국소적으로 봤을때 좋은 로컬 미니멈을 찾아간다. # 최적화의 컨셉(대부분이 통계학에서 나온 용어들이다.) Generalization Under-fitting vs over-fitting Cross validation Bias-variance tradeoff Bootstrapping Bagging and boosting # General..

ai tech 2021.02.02

ai tech 11일차

뭔가 당황스럽다. 파이토치는 배우지도 않았는데, 파이토치로 만들어진 프로젝트를 던져받았고, 딥러닝은 맛도 안보고 선형회귀밖에 하지 않았는데, 딥러닝 모델이랑 파라미터를 던져받았다.. 두분 교수님은 서로 거기서 배울거라고 하면서 본인들 파이토치 프로젝트만 보여주는데 이해가 1도 되지않는다;; # 조건부확률 상황 B가 일어날 확률을 분모로 놓고 상황 B가 일어난 동안 A도 일어날 확률, 교집합의 사건을 분자로 넣어서 구한다. # 베이즈정리 모델의 모수를 추정할 때 사용한다. 데이터가 조건부 확률을 이용하여 새로 추가될 때 정보가 업데이트하는 내용과 연관되어있다. A가 조건부로 주어졌을때 B의 사건이 일어날 확률은 B가 조건부로 주어졌을때 A의 사건일 일어날 확률에, A가 일어날 확률을 나눠주고, B가 일어날..

ai tech 2021.02.01

ai tech 10일차

벌써 10일차에 돌입했다. 슬슬 적응되어가니 속도좀 내어볼까? matplotlib # 개론 우리의 데이터는 어떻게 생겼을까? 파이썬의 데이터 시각화 도구 다양한 그래프를 지원하고 판다스와 연동된다. pyplot이라는 객체를 사용하여 데이터를 표시 객체에 그래프를 쌓은다음 flush하는 개념이다. import matplotlib.pyplot as plt X = range(100) Y = range(100) plt.plot(X, Y) plt.show() 최대 단점 argument를 kwargs로 받는다 그래서 알트탭으로 어떤 데이터를 받는지 확인이 어렵다. # figure 객체 그래프는 원래 figure객체에 생성된다. pyplot객체를 사용하면, 기본 figure에 그래프가 그려진다. X_1 = range..

ai tech 2021.01.29

ai tech 9일차

pandas2 # groupby sql groupby와 같다. 인덱스가 같은 데이터끼리 묶어주고(split) 묶은 데이터끼리의 연산(sum, std)을 하고(apply) 모든 인덱스들끼리 모아서 보여준다(combine) # 팀으로 묶어서 포인트들을 합한것으로 팀을 나타내라. df.groupby("Team")["Points"].sum() # 한 개 이상의 column을 묶을 수도 있다. h_index = df.groupby(["Team", "Year"])["Points"].sum() # 이렇게 만든 경우 인덱스는 멀티인덱스이다. h_index.index # 만들어놓은 그룹바이에서 특정 데이터만 볼 수도 있다. h_index["Devils":"Kings"] # 그룹바이를 테이블 형태로 나타낼수도 있다. h_..

ai tech 2021.01.28

ai tech 8일차

# pandas 구조화된 데이터의 처리를 지원하는 파이썬 라이브러리 파이썬에서 사용하는 엑셀이라고 생각하면 된다. panel data라는 단어에서 pandas라는 단어가 나왔다. numpy와 통합하면서 강력한 스프레드시트 처리 기능 제공 인덱싱, 연산용 함수, 전처리 함수 등을 제공 데이터 처리 및 통계 분석을 위해 사용 테이블 형태(tabular)의 데이터를 처리할 때 사용한다. # 사용하는 용어 # 설치 conda create -n ml python=3.8 # 가상환경생성 activate ml # 가상환경실행 conda install pandas # pandas 설치 jupyter notebook # 주피터 실행하기 # 데이터 로딩 import pandas as pd data_url = "https:..

ai tech 2021.01.27

ai tech 7일차

# 미분 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구이다. 미분은 함수의 주어진 점에서의 접선의 기울기를 구한다. import sympy as sym from sympy.abc import x sym.diff(sym.poly(x**2 + 2*x + 3), x) poly(2*x +2, x, domain='zz') # 미분의 용도 한 점에서의 접선의 기울기를 알면 어느 방향으로 점을 움직여야 함수값이 증가하는지 감소하는지 알 수 있다. 이는 다차원에서도 적용되기 때문에 다차원에서 함수가 어느방향으로 이동해야 증가하는지 감소하는지 알 수 있게 된다. 함수를 증가시키고 싶다면 x에 미분값을 더하고, 감소시키고 싶으면 x에 미분값을 뺀다. 즉, 함수값을 증가시키고 싶다면 x에 미분값을 더하고 함수값을..

ai tech 2021.01.26

ai tech 6일차

강의 # numpy 코드로 방정식 표현하기 coefficient_matrix = [2, 2, 1], [2, -1, 2], [1, -1, 2]] constant_vector = [9, 6, 5] # 직접 만들지 말고, 적절한 외부 라이브러리를 사용하자! 다양한 matrix 계산을 어떻게 만들 것인가? 굉장히 큰 matrix에 대한 표현 처리 속도 문제 # numpy(넘파이) 파이썬의 고성능 과학 계산용 패키지 matrix와 vector와 같은 array연산의 사실상의 표준 # numpy 특징 일반 리스트에 비해 빠르고 메모리 효율적이다. 반복문 없이 데이터 배열에 대한 처리를 지원한다. 선형대수와 관련된 다양한 기능을 제공한다. c, c++, 포트란 등의 언어와 통합 가능하다. # 가상환경 만들기 cond..

ai tech 2021.01.25