DATA/ML and DL

    [개발환경] 왜 GPU를 사용하는지?

    [개발환경] 왜 GPU를 사용하는지?

    왜 GPU를 사용하는지? GPU는 ALU를 여러개 가지고 연산을 한번에 처리할 수 있다. throughput(jobs/hour)가 높다 = 병렬연산(동시연산) 컴퓨터 하드웨어는 전력효율을 높이는 것이 중요하다. CPU는 전력 효율을 높이기 위해 latency(지연)을 줄이는 반면, GPU는 전력 효율을 높이기 위해 throughput을 늘린다. CPU는 다음 일을 빠르게, GPU는 한번에 많은 일을 해낼 수 있는 것이다. 참고 블로그: CPU와 GPU의 차이 (tistory.com)

    [Scikit-learn]Linear Regression(선형 회귀)

    [Scikit-learn]Linear Regression(선형 회귀)

    회귀 모델 실습 1. 사용 라이브러리 불러오기 # 사용 라이브러리 import numpy as np import matplotlib.pyplot as plt 2. 고정된 출력 확인 하기 위한 Random Seed 고정 import os, random # random seed 고정 def set_seeds(seed): os.environ['PYTHONHASHSEED'] = str(seed) random.seed(seed) np.random.seed(seed) # tf.random.set_seed(seed) # Tensorflow 사용시 SEED = 555 set_seeds(SEED) 3. 특성 행렬과 타겟 벡터 생성 r = np.random.RandomState(10) x = 10 * r.rand(100)..

    딥러닝과 신경망

    들어가기 전에.. 상하위 개념으로서는 인공지능 - 머신러닝 - 딥러닝으로 인공지능이 상위 개념에 속한다. 인공지능은 인간 수준 이상, 머신러닝은 답과 샘플로 규칙을 찾는 것, 딥러닝은 머신러닝의 한 기법으로서 신경망을 활용하는 머신러닝 방식이라고 알고 있었다. Deep Learning 강의노트: wendys.tistory.com/136 인공지능은 기존 시스템의 개발자가 특정 규칙을 설정하고 입력에 대한 출력을 정의하는 방식과는 다르게 자체 규칙 시스템을 가지고 있다. 머신러닝이란 제공된 데이터와 알고리즘을 통해 컴퓨터가 스스로 학습해 작업 수행 방법을 익히는 것을 의미한다. 딥러닝은 병렬 연산화가 최적화된 GPU의 등장으로 복잡한 연산과정이 가능해지면서 뇌의 뉴런과 유사한 정보 입출력 계층을 활용해 데이..

    텍스트 다루기

    공부하기 전에.. 하루하루 강의 컨텐츠를 접하기 때문에 가끔 Fundamental을 수행할 때 내가 어느 지점에 와있는지 궁금해질때가 있다. 이건 왜 배우지?라는 생각을 먼저 하는 편인데 이번 노드에서도 여러 부분들 중에 왜 텍스트를 다루는 법에 대해 배울까? 라고 궁금한 분이 있을거 같다. 아닌가..?! 텍스트 데이터를 다루는 법을 지금 초반에 배우는 이유는 AI든 데이터분석이든 데이터 전처리 단계에서나 분석 과정에서 텍스트와 파일 다루기는 필수적이기 때문이다. 예를 들어 컴퓨터로 이미지 파일을 여러개 읽어올 때도 'a.jpg', 'b.jpg' 라는 파일을 한번에 불러와야하는 상황이 있다. 이때 당연히 윈도우에서 파일탐색기처럼 한번에 불러오면 정말 좋겠지만 코드를 짤 때는 그런 GUI는 없다..! 그럼..

    검증용 데이터(validation set) 사용하는 이유

    참고문헌 : 데이터셋 이야기 https://tykimos.github.io/2017/03/25/Dataset_and_Fit_Talk/ validation 하는 이유 딥러닝은 마치 정답지를 보고 공부하면서 문제 풀이를 학습하는 것 입니다. 그래서 기본적으로 데이터셋에는 라벨이 포함된 train set과 학습에는 포함되지 않을 test set이 있습니다. 그리고 주로 train set에서 일부분을 분리하여 validation set으로 활용합니다. 처음에 validation set에 대해서 단순히 train set을 학습시킬때 잘 학습되고 있는지 체크하기 위한 정도의 dataset으로 이해했습니다. 하지만, k-fold, cross validation, grid search, random search 등의 ..

    [Tensorflow] mnist 코드

    사용 라이브러리 tensorflow: 프레임워크 keras: 프레임워크 numpy: array 연산 matplotlib: 시각화 import tensorflow as tf from tensorflow import keras import numpy as np import matplotlib.pyplot as plt 모델 구현 코드 keras.models.Sequential keras.layers.Conv2D keras.layers.MaxPool2D keras.layers.Flatten keras.layers.Dense mnist = keras.datasets.mnist (x_train, y_train), (x_test, y_test) = mnist.load_data() x_train_norm, x_test..