일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 다이나믹 프로그래밍
- 큐
- pytorch
- 퀵정렬
- 선형대수
- 딥러닝
- 캐치카페신촌점 #캐치카페 #카페대관 #대학생 #진학사 #취준생
- 인공지능
- rnn
- 알고리즘
- GRU
- 이진 탐색
- BFS
- 스택
- 머신러닝
- 그리디
- RESNET
- DFS
- AI
- 삽입정렬
- 계수정렬
- 선택정렬
- 최단 경로
- 정렬
- LSTM
- Machine Learning
- 재귀함수
- Today
- Total
목록전체 글 (88)
hyeonzzz's Tech Blog

2. 사이킷런으로 시작하는 머신러닝 - 사이킷런의 기반 프레임워크 익히기 1) Estimator 클래스 사이킷런 클래스는 fit( )과 predict( )만을 이용해 간단하게 학습과 예측 결과를 반환한다 Classifier : 분류 알고리즘을 구현한 클래스 Regressor : 회귀 알고리즘을 구현한 클래스 Estimator : Classifier + Regressor (지도학습의 모든 알고리즘을 구현한 클래스를 통칭) 2) 사이킷런에 내장된 데이터 세트 형태 일반적으로 딕셔너리 형태이다. 키는 보통 data, target, target_name, feature_names, DESCR로 구성돼 있다 data : 피처의 데이터 세트 target : 분류 - 레이블 값, 회귀 - 숫자 결괏값 데이터 세트 t..

2. 사이킷런으로 시작하는 머신러닝 - 사이킷런 소개와 특징 1) 사이킷런(scikit-learn) 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리이다 2. 사이킷런으로 시작하는 머신러닝 - 붓꽃 품종 예측하기 지도학습 : 정답이 주어진 데이터를 학습한 뒤 정답을 예측하는 방식 분류(Classification) : 대표적인 지도학습 방법의 하나 데이터 세트 학습 데이터 세트 : 학습에 이용 테스트 데이터 세트 : 모델의 예측 성능을 평가 하이퍼 파라미터 : 최적의 학습을 위해 직접 입력하는 파라미터들 1. 데이터 세트 분리 - 데이터를 학습 데이터와 테스트 데이터로 분리 2. 모델 학습 - 학습 데이터릴 기반으로 ML 알고리즘을 적용해 모델을 학습시킴 3. 예측 수행 - 학습된 ML 모델을 ..
1. 파이썬 기반의 머신러닝과 생태계 이해 - 판다스 1) 데이터 핸들링 - 판다스 DataFrame : 여러 개의 행과 열로 이뤄진 2차원 데이터를 담는 데이터 구조체, 칼럼이 여러 개 Index : 개별 데이터를 고유하게 식별하는 Key 값 Series : 칼럼이 하나뿐인 데이터 구조체 DataFrame은 여러 개의 Series로 이뤄졌다 2) 판다스 시작 - 파일을 DataFrame으로 로딩, 기본 API read_table() : 필드 구분 문자가 탭('\t') = read_csv('파일명', sep='\t') read_csv() : 필드 구분 문자가 콤마(',') filepath 입력 titanic_df = pd.read_csv('titanic_train.csv') print('titanic 변..

1. 파이썬 기반의 머신러닝과 생태계 이해 - 넘파이 1) 넘파이 머신러닝의 주요 알고리즘은 선형대수와 통계 등에 기반한다 넘파이 - 파이썬에서 선형대수 기반의 프로그램을 쉽게 만들 수 있도록 지원하는 대표적인 패키지 - 루프를 사용하지 않고 대량 데이터의 빠른 배열 연산을 가능하게 한다 - C/C++과 같은 저수준 언어 기반의 호환 API를 제공 - 수행 성능이 매우 중요한 부분은 C/C++ 기반의 코드로 작성하고 이를 넘파이에서 호출하는 방식으로 통합한다 (텐서플로) 하지만 2차원 형태의 행과 열 데이터를 처리하는 데에는 판다스가 더 편리하다! 2) 넘파이 ndarray 개요 array() array() 함수 : 리스트와 같은 다양한 인자를 입력받아서 ndarray로 변환 shape 변수 : ndar..
1. 파이썬 기반의 머신러닝과 생태계 이해 - 머신러닝의 개념 1) 머신러닝 머신러닝 : 애플리케이션을 수정하지 않고도 데이터를 기반으로 패턴을 학습하고 결과를 예측하는 알고리즘 기법을 통칭한다 데이터를 기반으로 통계적인 신뢰도를 강화 → 다양한 수학적 기법을 적용해 데이터 내의 패턴을 스스로 인지 → 신뢰도 있는 예측 결과를 도출 2) 머신러닝의 분류 지도학습과 비지도학습 지도학습 - 분류, 회귀, 추천 시스템, 시각/음성 감지/인지, 텍스트 분석, NLP 비지도학습 - 클러스터링, 차원 축소, 강화학습 3) 데이터 전쟁 머신러닝에서는 데이터와 알고리즘 둘다 매우 중요하다 머신러닝의 단점은 데이터에 매우 의존적이라는 것이다. 따라서 데이터를 이해하고 효율적으로 가공, 처리, 추출해 최적의 데이터를 구축..

지금부터는 딥러닝의 실제적인 면을 다룸- 하이퍼파라미터 튜닝- 최적화 알고리즘의 속도를 높여 적당한 시간 안에 학습할 수 있는 방법 1. Train/Dev/Test 세트▶ 신경망을 훈련시킬 때 결정 내려야 할 것신경망이 몇 개의 층을 가지는지각 층이 몇 개의 hidden unit을 가지는지학습률과 활성화 함수는 무엇인지(Idea → Code → Experiment) 반복하면서 하이퍼파라미터에 대한 선택을 개선한다!딥러닝에 경험이 많은 사람도 첫 시도만에 하이퍼파라미터에 대한 정확한 추측을 할 순 없다 따라서, 중요한 것은사이클을 효율적으로 도는 것데이터 세트를 잘 설정하는 것이다. ▶ Train/ dev/ test setstrain 세트 : 훈련을 위해 사용되는 데이터, 계속 훈련 알고리즘을 적용 ..

1. 벡터화▶ 벡터화 (Vectorization)내장 함수를 써 코드에서 for문을 없앨 수 있다큰 데이터 세트를 학습시킬때 코드 실행시간을 줄일 수 있어 중요하다▶ 로지스틱 회귀 계산 - Non-vectorizedw, x : 열 벡터 (R^(n_x)의 차원을 가진 벡터)벡터화 되지 않은 구현일 땐 w^Tx를 계산하기 위해 z=0for i in range(n_x): z+= w[i] * x[i]z += b를 계산해야 했다. 벡터화되지 않아 느리다 ▶ 로지스틱 회귀 계산 - Vectorizedw^Tx 를 직접 계산한다z = np.dot(w,x) + b훨씬 빠르다 ▶ 코드 실습import numpy as npa = np.array([1,2,3,4])print a[ 1 2 3 4 ]#벡터화 이용import t..

1. 계산 그래프 (Computation Graph)▶ 계산 그래프 (Computation Graph): 계산 과정을 그래프로 나타낸 것 ▶ 신경망의 계산순전파 (forward propagation) : 신경망의 출력값을 계산역전파 (back propagation) : 경사나 도함수를 계산 ▶ J(a,b,c)=3(a+bc) 의 계산 그래프 만드는 과정u = bcv = a+uJ = 3v 2. 계산 그래프로 미분하기▶ 연쇄 법칙 (Chain rule): 합성함수의 도함수는 합성함수를 구성하는 함수의 미분을 곱함으로써 구할 수 있다 ▶ back propagation 이용1. v에 대한 J의 도함수 구하기v = 11 -> 11.001J = 33 -> 33.003따라서 v에 대한 J의 도함수는 3이다 2. a..

1. 이진 분류▶ 이진 분류 (Binary Classification): 그렇다 / 아니다 2개로 분류하는 것입력된 사진을 나타내는 feature vector x를 가지고 y가 0인지 1인지를 예측하는 것 (‘그렇다’ = 1, ‘아니다’= 0 ) 빨강, 초록, 파랑 픽셀을 한 열로 나열하면 벡터 x의 전체 차원은 64*64*3 = 12288이 된다특성 벡터 x를 가지고 y가 1인지 0인지 예측한다*신경망에서 학습하는 방법은 순전파 (forward propagation)와 역전파 (back propagation)가 있다 ▶ 표기법 설명x : 훈련 샘플들y : 출력될 레이블m : 훈련샘플의 갯수 훈련 세트 : {(x^(1),y^(1)), (x^(2),y^(2)),..., (x^(m),y^(m))}m_trai..

1. 신경망은 무엇인가?신경망 : 입력(x)와 출력(y)를 매칭해주는 함수를 찾는 과정딥러닝 : 신경망을 학습시키는 것 ▶ 주택 가격 예측 - 기본적인 신경망 알아보기가운데 원은 hidden unit이다신경망은 x를 입력으로 받아 y를 출력하는 함수를 찾아낸다충분한 데이터가 주어지면 더 잘 알아낼 수 있다해당 뉴런에 관계없는 입력값이라도 입력으로 넣어주어야 한다. 관계 여부는 신경망이 학습하면서 알아서 조절해 준다 2. 신경망을 이용한 지도학습▶ 머신러닝의 방법지도학습 (Supervised learning) : 정답이 있는 (label 되어있는) 데이터를 사용하여 학습시키는 방법비지도학습 (Unsupervised learning) : 정답이 없는 (label 되어있지 않은) 데이터를 사용하여 학습시키는..