DataScience/인공지능

    GPU 사용 유무 + 모델 학습코드로 GPU 확인 with Tensorflow_python

    내 컴퓨팅 환경 정보 OS : window 11 그래픽카드 : GeForce RTX 3080 CUDA Toolkit : 11.2 Cudnn : 8.1 Tensorflow : 2.10.0 파이썬으로 GPU 정보와 사용 유무 확인 방법 1 # tensorflow device 확인 from tensorflow.python.client import device_lib device_lib.list_local_devices() 위 결과처럼 GPU가 나와야 성공 * CPU만 나오면 GPU연결 실패 방법 2 # tensorflow version 확인 후 GPU 확인 import tensorflow as tf print(f'tf.__version__: {tf.__version__}') gpus = tf.config.ex..

    가상환경 구성 및 주피터(jupyter notebook) 연결

    가상환경 구성 사전에 Anaconda가 설치되어야 함(아래 링크 참고) https://4u.ne.kr/%EC%95%84%EB%82%98%EC%BD%98%EB%8B%A4anaconda-%EC%84%A4%EC%B9%98-%EB%B0%A9%EB%B2%95/ 아나콘다(Anaconda) 설치 방법 - FOR YOU 파이썬은 여러 라이브러리를 설치하여 프로젝트를 개발하는데, 프로젝트마다 환경(가상환경)을 달리 구성하고 필요한 패키지(모듈)를 이것저것 설치하기도 하는데, 이때 필요한 가상환경을 아 4u.ne.kr 가상환경 명령어는 Anaconda prompt나 git bash 둘 중에 아무거나 사용 1. 생성 가상환경 이름만 쳐서 생성해도 되지만 되도록 본인의 작업환경에 맞게 python 버전을 선택해서 설치하는것이..

    DL.4 _ 신경망 용어정리, Keras Hyperparameters

    신경망 용어 정의 뉴런(Neuron): 뉴런은 신경계를 구성하는 세포이다. 딥러닝에서는 이러한 뉴런을 모사한 인공 뉴런인 퍼셉트론은 다수의 입력 신호를 받아 하나의 신호를 출력한다. 입력층(Input Layer):입력층(Input Layer)은 데이터 셋으로부터 입력을 받는 층으로 보통 입력변수와 입력 노드의 수를 같게 설정한다. 보통 입력층은 어떤 계산도 수행하지 않고 그냥 값들을 전달하기만 하는 특징을 가지고 있다. 은닉층(Hidden Layer):입력층과 출력층 사이에 있는 층들을 은닉층이라고 부르는데 은닉층은 계산 결과를 사용자가 확인 할 수 없기 때문에 은닉층이라는 이름이 붙었다. 출력층(Output Layer):신경망에서 가장 오른쪽, 마지막 층이 출력층으로 예측하고 하는 클래스를 출력해주는 ..

    DL.3 _ keras 하이퍼파라미터, 활동함수(Activation function)

    ○ 목차 활동 함수 Step Function Sigmoid Function ReLU + hyperbolic tangent (Tanh) + Leaky ReLU + Softmax 과적합을 방지하는 하이퍼 파라미터 튜닝 Weight Decay Weight constriant Drop-Out Learning rate 활성함수 (Activation function) 신경망 회로에서, 한 노드에 대해 입력값을 다음 노드에 보낼지 말지에 대해 결정하는 함수. - 계단함수 (Step function) 0을 기준으로 0보다 작으면 데이터를 보내지 않고, 0보다 같거나 크면 데이터를 보내는 유형의 함수이다. 다만 해당 함수는 미분할 수 없으므로, 실제로는 사용되지 않는다. - Sigmoid Function 위의 Step ..

    DL.1.1 _ 인공신경망이란, 퍼셉트론 알고리즘

    딥러닝의 역사 많은 사람들이 딥러닝이 최근에 개발이 된 기술이라고 많이 생각한다. 하지만 과거부터 존재했다. 신경망 개요 1950년대 고양이 신경세포의 실험을 통해 얻어진 신경망 아이디어는 오늘날 다층신경망(MLP, multilayer perceptron)의 발전으로 매우 강력한 머신러닝 기술 중 한 가지가 되었다. 이제는 머신러닝에서 독립하여 딥러닝이라는 학문으로 발전하여 단순 계산만 잘 하던 컴퓨터를 사물인식, 분할기술, 자연어 처리 등은 컴퓨터가 잘 못하는 영역까지 사람보다 뛰어난 성과를 보이며 발전하고 있다. 왜 신경망이 다시 대두되었는가? 핵심 알고리즘의 발전, Framework의 발전, CUDA (Gpu library, 연산 속도 증가), ImageNet과 같은 Dataset의 발전 등 이런 ..

    ML _ 교차검증(k-fold, Randomized Search CV, GridSearchCV)

    ◎ 교차검증 지금까지는 데이터를 훈련/검증/테스트 세트로 나누어 학습을 진행해 왔습니다.(이 방법은 hold-out 교차검증 이라고 합니다.) 이 방법은 어떤 문제점을 가지고 있을까요? 학습에 사용가능한 데이터가 충분하다면 문제가 없겠지만, 훈련세트의 크기가 모델학습에 충분하지 않을 경우 문제가 될 수 있습니다. 검증세트 크기가 충분히 크지 않다면 예측 성능에 대한 추정이 부정확할 것입니다. 이것 외에 다른 문제점도 있습니다. 여러분은 앞으로 수많은 기계학습 알고리즘을 사용할 것인데 모든 문제에 적용가능한 최고의 학습 모델은 없다는 것을 알고 계시지요? 우리 문제를 풀기위해 어떤 학습 모델을 사용해야 할 것인지? 어떤 하이퍼파라미터를 사용할 것인지? 이러한 문제가 모델선택(Model selection) ..