본문 바로가기
728x90
반응형
SMALL

Python Library180

[Matplotlib] 이미지맵 (imshow) 이미지맵 (imshow) 원하는 사이즈의 pixel을 원하는 색으로 채워서 만든 그림이다. 원하는 크기의 행렬을 만들어서 각 칸을 원하는 색으로 채우는 것이다. 각 칸을 채우는 방법은 colormap, RGB, RGBA가 있다. colormap img = cv2.imread('8.jpg', cv2.IMREAD_GRAYSCALE) print("8") plt.imshow(img) plt.show() 보라색과 노란색이 나온 이유는 colormap의 디폴트 값이 viridis로 설정되어 있기 때문 보라색과 노란색이 나온다. viridis라는 colormap은 최솟값이 보라, 최댓값이 노랑이다. 입력한 숫자를 0~1 사이로 nomalize하여 색으로 나타낸다. colormap을 변경하고자 할때, cmap 옵션을 .. 2021. 12. 22.
Matplotlib Matplotlib 파이썬에서 데이터를 차트나 플롯 (plot)으로 그려주는 데이타 시각화 (Data Visualization) 라이브러리 패키지이다. matplotlib는 라인 plot, 바 차트, 파이차트, 히스토그램, Box Plot, Scatter Plot 등을 비롯하여 다양한 차트와 plot 스타일을 지원하며, Matplotlib.org 갤러리 웹페이지에서 다양한 샘플 차트를 볼 수 있다. 2021. 12. 22.
[Keras] model / weight 저장 및 불러오기 model / weight 저장 및 불러오기 keras에서 model과 weight를 저장 및 불러오는 방법을 살펴보자. ◦ model 저장 및 불러오기 (json / yaml) ◦ weights 저장 및 불러오기 (h5df) ◦ 둘 다 저장 및 불러오기 (h5) 각각의 방법들은 독립적이다. model 저장 및 불러오기 # json으로 model 저장 # layer layer = keras.layers.Dense(3, activation="relu") layer_config = layer.get_config() new_layer = keras.layers.Dense.from_config(layer_config) # Sequential model model = keras.Sequential([keras.I.. 2021. 12. 21.
[Keras] 손실 함수 (Loss Function) 손실 함수 (Loss Function) 손실 함수(목적 함수 또는 최적화 점수 함수)는 하나의 model을 compile하기 위해 필요한 두 개의 매개 변수 중 하나이다. 또한, loss function은 single data set을 다룬다. model.compile(loss='mean_squared_error', optimizer='sgd') from keras import losses model.compile(loss=losses.mean_squared_error, optimizer='sgd') 기존의 손실 함수를 이름으로 전달하거나 TensorFlow / Theano의 심볼릭 함수(symbolic function)를 매개 변수로 전달할 수 있다. symbolic function는 다음의 두 인자를.. 2021. 12. 20.
[Keras] 학습 학습 keras model들은 입력 데이터와 label로 구성된 Numpy 배열 위에서 이루어진다. model을 학습기키기 위해서는 일반적으로 fit함수를 사용한다. (https://keras.io/api/models/sequential/) 여기서 리턴 값으로 학습 이력 (History) 정보를 return한다. 여기에는 loss, acc, val_loss, val_acc 값과 매 epoch 마다 각기 다른 값들이 저장되어 있다. ◦ loss : 훈련 손실값 ◦ acc : 훈련 정확도 ◦ val_loss : 검증 손실값 ◦ val_acc : 검증 정확도 # For a single-input model with 2 classes (binary classification): model = Sequential.. 2021. 12. 20.
[Scikit-Learn] train_test_split 모듈을 활용하여 학습과 테스트 세트 분리 train_test_split 모듈 scikit-learn의 model_selection 패키지 안에 train_test_split 모듈을 활용하여 손쉽게 학습 데이터 셋 (train set)과 테스트 셋 (test set)을 분리할 수 있다. train / test 은 train / validation 으로 볼 수 있다. ML 모델에 train 데이터를 100% 학습시킨 후 test 데이터에 모델을 적용했을 때 성능이 잘 안 나오는 경우가 있다. 이것을 보통 과적합 (overfitting)되었다라고 한다. 즉, 모델이 가진 학습 데이터에 overfitting되도록 학습하면 이를 조금이라도 벗어난 케이스에 대해서는 예측율이 현저히 떨어진다. 그렇기 때문에 overfitting을 방지하는 것은 전체적인 모.. 2021. 12. 20.
[Keras] 컴파일 (Compile) 컴파일 (Compile) 모델을 학습시키기 이전에, compile 메소드를 통해서 학습 방식에 대한 환경설정을 해야 한다. 다음의 세 개의 인자를 입력으로 받는다. 최적화 (optimizer) rmsprp나 adagrad와 같은 기존의 정규화기에 대한 문자열 식별자 또는 Optimizer 클래스의 인스턴스를 사용할 수 있다. 오차역전파로 node의 weight와 bias을 계속 업데이트하여 만들어진 model을 통해 더 나은 결과를 얻는다. 데이터의 양이 늘어나거나 hidden layer의 개수가 늘어날수록 계산이 복잡해지고 시간이 오래 걸린다. 따라서 이 시간을 줄이기 위한 방법이 경사하강법 (Gradient Descent)이다. gradient descent이란 loss function 그래프에서 학.. 2021. 12. 20.
[Keras] Sequential 모델 Sequential 모델 # Keras expects this data format (n_samples, height, width, channels) sequential model은 layer를 선형으로 연결하여 구성한다. layer 인스턴스를 생성자에게 넘겨줌으로써 sequential model을 구성할 수 있다. from keras.models import Sequential from keras.layers import Dense, Activation model = Sequential([ Dense(32, input_shape=(784,)), Activation('relu'), Dense(10), Activation('softmax'), ]) 다른 방법으로 .add() 메소드를 통해서 쉽게 layer.. 2021. 12. 20.
케라스 (Keras) 케라스 (Keras) keras의 핵심적인 데이터 구조는 model이다. keras에서 제공하는 sequence model로 원하는 레이어를 쉽게 순차적으로 쌓을 수 있다. 케라스 모델링 순서 1. 데이터 set 생성하기 원본 데이터를 불러오거나 데이터를 생성하여 데이터로부터 훈련, 검증, 시험 set을 만든다. 때 DL model의 학습 및 평가를 할 수 있도록 포맷 변환 2. model 구성하기 sequence model을 생성한 뒤 필요한 layer를 추가하며 구성 좀 더 복잡한 model이 필요할 때는 keras 함수 API를 이용 3. 모델 학습과정 설정 학습하기 전, 학습에 대한 설정을 수행한다. 손실 함수 및 최적화 방법을 정의하며 compile() 함수를 사용 4. model 학습시키기 훈.. 2021. 12. 20.
사이킷런 (Scikit-Learn) 사이킷런 (Scikit-Learn) scikit-learn이란 python을 대표하는 머신 러닝 라이브러리이다. scikit-learn은 오픈 소스로 공개되어 있으며, 개인, 비즈니스 관계없이 누구나 무료로 사용가능하다. scikit-learn은 현재도 활용하여 개발이 이루어지고 있으며, 인터넷에서 정보를 찾기 쉽다. 샘플 데이터 셋이 부속되어 있으므로, 설치하여 바로 기계 학습을 시험해 볼 수 있다. 설치 pip install -U scikit-learn Classification 개체가 속한 범주 식별한다. Regression (회귀) 개체와 연결된 연속 값 속성을 예측한다. Clustering (군집화) 유사한 개체를 세트로 자동 그룹화한다. Dimensionality Reduction (차원 축소.. 2021. 12. 20.
728x90
반응형
LIST