분류 전체보기(224)
-
Python(Colab) 자연어처리
✔️자연어 * 프로그래밍언어와 같이 인공적으로 만든 기계 언어와 대비되는 단어로, 우리가 일상에서 주로 사용하는 언어 ✔️자연어 처리란? * 컴퓨터가 한국어나 영어와 같은 인간의 자연어를 읽고, 이해할 수 있도록 돕는 인공지능의 한 분야 * 자연어에서 의미 있는 정보를 추출하여 활용 * 기계가 자연어의 의미를 이해하게 함 * 기계가 사람의 언어로 소통할 수 있게 하는 것이 목표 ✔️ 활용분야 * 문서 분류, 스팸 처리와 같은 분류 * 문제부터 검색어 추천과 같은 추천 기능, 음성 인식, 질의 응답, 번역 등의 다양한 분야에서 사용 자연어 처리 용어 1. 자연어이해(NLU) * 자연어처리의 하위 집합 * 기계가 다양한 텍스트의 숨겨진 의미를 해석하려면 사전 처리 작업들과 추가 학습이 필요 * 텍스트에 명시..
2023.07.02 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 + 전이학습 (Alien vs predator)
✔️전이학습 * 하나의 작업을 위해 훈련된 모델을 유사 작업 수행 모델의 시작점으로 활용하는 딥러닝 접근법 * 신경망은 처음부터 새로 학습하는 것보다, 전이 학습을 통해 업데이트하고 재 학습하는 편이 더 빠르고, 간편하다 * 전이 학습은 여러 응용 분야 중에서도 특히 검출, 영상 인식, 음성 인식, 검색 분야에 많이 사용 ✔️ 고려해야할 점 * 데이터의 크기: 모델 크기의 중요성은 모델을 배포할 위치와 방법에 따라 달라진다. * 정확도: 재 훈련전의 모델 성능은 어느 정도인지 확인이 필요 * 예측속도: 하드웨어 및 배치 크기와 같은 다른 딥러닝 요소는 물론, 선택된 모델의 구조와 크기에 따라 달라진다. 파이토치에서 제공되는 사전학습 모델들이 많이 존재한다. kaggle 데이터 (에일리언 vs 프레데터)로..
2023.06.24 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 + CNN + 손글씨 데이터
CNN을 적용해서 손글씨 데이터를 분류해보자 1. 기초설정 import torch import torch.nn as nn import torch.optim as optim import torchvision.datasets as datasets import torchvision.transforms as transforms import matplotlib.pyplot as plt from torch.utils.data import DataLoader 2. 코랩 환경에서 GPU로 돌리기 device = 'cuda' if torch.cuda.is_available() else 'cpu' print(device) 3. 데이터셋 받아오기 train_data = datasets.MNIST( root='data', t..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 + CNN 사용해보기
1. 기초설정 import torch import torch.nn as nn import torch.optim as optim 2. 데이터 설정 # 예제 데이터 준비 # 배치 크기 / 채널 / 세로 / 가로 inputs = torch.Tensor(1,1,28,28) print(inputs.shape) 3. 컨볼루젼2d 사용 conv1 = nn.Conv2d(in_channels=1,out_channels=32,kernel_size=3, padding='same') out1 = conv1(inputs) print(out1.shape) 해석 첫번째 ) 1개 입력 데이터 / 32개 출력 데이터 / 필터 사이즈 (3,3) / padding으로 주위가 0(black) 설정 두번째) 예시 데이터를 컨볼루전에 대입 세..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 딥러닝 + CNN기초(이미지)
✔️ CNN(Convolutional Neural Networks) - 합성곱 뉴런 신경망 - 형태: 전통적인 뉴럴 네트워크 + 컨볼루셔널 레이어 - 컨볼루셔널 레이어를 통해 입력받은 이미지의 특징을 추출 -> 추출한 특징을 기반으로 기존 뉴럴 네트워크 이용 - 이미지 분류 / 예측에 많이 사용 특징) * 특히 이미지를 분류할 때 DNN(Deep Neural Network)의 문제점을 가지고 있다. * 일반적인 DNN은 1차원 형태의 데이터를 사용 * 2차원 이상의 데이터가 입력되는 경우는 flatten 시켜서 한줄로 데이터를 변환 후 넣어야함. * 이미지의 공간적/지역적 정보가 손실된다. * 따라서 DNN의 문제점을 해결하기 위해 이미지를 그대로 (Raw Input) 받음으로 공간적 / 지역적 정보를 ..
2023.06.21 -
Python(Colab) 파이토치(Pytorch) + 활성화 함수
✔️활성화 함수 (Activation Function) - 신경망의 성능을 향상 시키기 위해 사용한다 - 직선 layer를 여러개 써봐야 1개의 직선이 최선이다. - 선형함수: 입력값과 가중치를 곱한 결과를 그대로 출력 - 신경망에서 여러개의 선형 활성화 함수를 사용한다면, 최중 출력값은 입력값과 가중치의 선형 조합으로 표현 - 이는 입력데이터의 비선형 관계를 표현할수 없다. - 신경망의 입력 데이터의 비선형 관계를 잘 학습할 수 있도록 하기 위해 비선형 활성화 함수를 사용한다. 1. Sigmoid() 주로 은닉층에서 사용하지 않고, 출력층(output layout)에서만 사용 import numpy as np import matplotlib.pyplot as plt def sigmoid(x): retu..
2023.06.21