[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기
반응형

🛠 기타 189

워드임베딩 - Word2Vec 기초활용

희소표현과 밀집표현 희소 표현 : 벡터 혹은 행렬의 값 대부분이 0으로 표현되는 방법이다. 단어의 개수가 늘어나면 차원이 한없이 커진다는 단점이 있다. 따라서 공간적 낭비가 있다. (ex. 원-핫 벡터) 밀집 표현 : 벡터의 차원을 단어 집합의 크기로 상정하지 않는다. 사용자가 설정한 값으로 모든 단어의 벡터 표현의 차원을 맞춘다. 또한 이 과정에서 0과 1이 아닌 실수값을 가지게 된다. 워드 임베딩 단어를 밀집 벡터의 형태로 표현하는 방법 LSA, Word2Vec, FastTest, Glove 등의 방법이 있다. Word2Vec 분산 표현 : 단어의 의미를 다차원 공간에 벡터화하는 것. 비슷한 위치의 단어는 비슷한 의미를 가진다는 가정하에 만들어진 표현 방법이다. 원-핫 벡터와 같은 희소 표현이 고차원..

단층 퍼셉트론 - 이진판단 이론

이진판단 문제의 신경망 처리 '예/아니요', '0/1', '사과인가 아닌가?','성공인가 실패인가?'와 같이 두개의 대답으로 분류가 가능한 문제를 말한다. 퍼셉트론의 선형연산은 이진판단 문제를 풀기엔 적합하지 않았다. 특정 임계치에 따라 출력치를 나눈다고해도 그런 식의 연산은 미분이 불가능하여 해당 값에 대한 학습을 어떻게 진행해야 할지, 손실함수를 어떻게 정의해야할지 어려웠다. 이에 따라 선형 연산에서는 일단 범위 제한이 없는 실숫값을 생산하고 이를 확률값의 성질에 맞게 변환해주는 비선형 함수를 찾아 이용했다. 값이 1에 가까우면 참으로 0에 가까우면 거짓을 선택하도록 한 것이다. 학습에 필요한 손실함수는 값이 0이상이고 추정이 정확해질수록 작아져야한다. 이는 교차 엔트로피를 사용한다. 이는 두 집단의..

[scikit-learn 라이브러리] Rasso 예제

Rasso 모델 Lasso(alpha, fit_intercept, normalize, precompute, copy_X, max_iter, tol, warm_start, positive, solver, random_state, selection) alpha : 값이 클수록 강력한 정규화(규제) 설정하여 분산을 줄임, 양수로 설정 fit_intercept : 모형에 상수항 (절편)이 있는가 없는가를 결정하는 인수 (default : True) normalize : 매개변수 무시 여부 precompute : 계산속도를 높이기 위해 미리 계산된 그램 매트릭스를 사용할 것인지 여부 copy_X : X의 복사 여부 max_iter : 계산에 사용할 작업 수 tol : 정밀도 warm_start : 이전 모델을 초..

[scikit-learn 라이브러리] Ridge 예제

Ridge 모델 Ridge(alpha, fit_intercept, normalize, copy_X, max_iter, tol, solver, random_state) alpha : 값이 클수록 강력한 정규화(규제) 설정하여 분산을 줄임, 양수로 설정 fit_intercept : 모형에 상수항 (절편)이 있는가 없는가를 결정하는 인수 (default : True) normalize : 매개변수 무시 여부 copy_X : X의 복사 여부 max_iter : 계산에 사용할 작업 수 tol : 정밀도 solver : 계산에 사용할 알고리즘 (auto, svd, cholesky, lsqr, sparse_cg, sag, saga) random_state : 난수 seed 설정 Ridge 예제 import numpy..

규제 선형모델 Ridge와 Lasso 개념 이해

규제(Regularization) 선형모델 선형모델의 과적합을 방지하기 위해 고안된 방법이다. 과적합된 모델은 특성들이 너무 복잡하게 적용되어 있어 일어난다. 따라서 현재 특성을 줄이거나 특성들의 영향력을 최소화하는 방법이 필요하다. 그렇게 고안된 것이 규제 선형모델이다. 과적합된 모델은 보통 특성이 증가하면서 분산(Variance) 정도가 높고, 편향(Bias)은 낮다. (과소적합된 모델은 분산은 낮지만 편향이 높다.) 따라서 분산정도를 줄여주기 위해 특성치들을 규제하여 사용한다. 규제는 정규화라고도 불린다. 규제 선형모델에는 대표적으로 Ridge와 Lasso가 있다. L1 Norm과 L2 Norm norm : 벡터의 크기 또는 길이를 측정하는 방법. L1,L2,L무한대 등 다양한 방법이 존재한다. L..

[scikit-learn 라이브러리] LinearRegression (선형회귀)

Linear Regression from sklearn.linear_model import LinearRegression LinearRegression(fit_intercept, normalize, copy_X, n_jobs) fit_intercept : 모형에 상수항 (절편)이 있는가 없는가를 결정하는 인수 (default : True) normalize : 매개변수 무시 여부 copy_X : X의 복사 여부 n_jobs : 계산에 사용할 작업 수 사용예시1 from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split def make_wave(n_samples=100): rnd =..

단층 퍼셉트론 - 코드 복습

https://inuplace.tistory.com/460?category=912534 단층 퍼셉트론 - 회귀분석 구현 데이터를 기반으로 전복의 고리수를 예측하는 단층 퍼셉트론을 구현해보자. 주어진 데이터는 'Sex', 'Length', 'Diameter', 'Height', 'Whole weight', 'Shucked weight', 'Viscera weight', 'Shell weight', 그리.. inuplace.tistory.com 위 구현의 확실한 이해를 위한 개인복습문서입니다. 다른 사람들의 가독성은 신경쓰지 않았습니다. 먼저 모듈은 당연히 불러와야한다. numpy 배열은 각 데이터 정보를 표현하는데 사용할 것이므로 필요하고, csv는 csv파일로부터 데이터를 불러올 것이므로 필요하다. ti..

IMDB Dataset을 활용한 나이브베이즈 예제

https://www.kaggle.com/lakshmi25npathi/imdb-dataset-of-50k-movie-reviews IMDB Dataset of 50K Movie Reviews Large Movie Review Dataset www.kaggle.com 텍스트 데이터 전처리(설명) 주어진 데이터를 처리하기 쉽도록 처리한다. 초기형태 : [오늘 나는 밥을 먹었다. 어제 나는 햄버거를 먹었다.] 특수문자(stopword) 제거 : [오늘 나는 밥을 먹었다 어제 나는 햄버거를 먹었다] Tokenize : [오늘, 나는, 밥을, 먹었다, 어제, 나는, 햄버거를, 먹었다] 이를 Dictionary에 빈도수 정보까지 포함해서 저장 -> Bag of Words(BOW) 생성 {"오늘": 1, "나는": ..

자주 사용되는 numpy.random 함수들

나올때마다 헷갈려서 정리함 np.random.seed(숫자) # 랜덤 시드 숫자를 정해준다 np.random.rand(행,열) # 주어진 형태의 0.0~1.0 사이의 난수 numpy 배열 생성 # 아무것도 입력하지 않으면 하나의 float 생성 np.random.randn(행,열) # 기댓값이 0이고 표준편차가 1인 표준 정규 분포를 따르는 난수 numpy 배열 생성 # 아무것도 입력하지 않으면 하나의 float 생성 np.random.randint(최소,최대,size=()) # 주어진 [최소,최대) 범위 안에서 임의의 정수 numpy 배열 생성 # size를 안주면 하나의 int 생성

[scikit-learn 라이브러리] KNN 분류기 옵션

KNeighborsClassifier(n_neighbors, weights, algorithm, leaf_size, p, metric, metric_params, n_jobs) n_neighbors : 이웃의 수 (default : 5) weights : 예측에 사용된 가중 함수 (uniform, distance) (default : uniform / uniform : 가중치를 동등하게 설정, distance : 가중치를 거리에 반비례하도록 설정) algorithm : 가까운 이웃을 계산하는데 사용되는 알고리즘 (auto, ball_tree, kd_tree, brute) leaf_size : BallTree 또는 KDTree에 전달 된 리프 크기 p : (1 : minkowski_distance, 2: ..

반응형