본문 바로가기

전체 글79

[AI] 간단한 RNN 모델로 노래 가사 예측하기 안녕하세요! 오늘은 노래 가사를 데이터로 사용하여, 특정 단어가 주어졌을 때 다음 단어로 어떤 게 나올지 예측해보는 프로그램을 실습하겠습니다! 먼저, 필요한 라이브러리를 불러옵니다. import numpy as np from tensorflow.keras.layers import Embedding, Flatten, Dense, LSTM, SimpleRNN from tensorflow.keras.models import Sequential from tensorflow.keras.preprocessing.text import one_hot from tensorflow.keras.preprocessing.sequence import pad_sequences from tensorflow.keras.preproc.. 2022. 12. 18.
[AI] Fashion Mnist 데이터셋을 사용한 CNN 저번 글에서는 Fashion Mnist를 사용하여 이미지의 라벨을 추론하는 실습을 했었는데요 2022.12.17 - [AI, 빅데이터/AI] - [AI] Fashion Mnist 데이터셋으로 이미지 분류하기 [AI] Fashion Mnist 데이터셋으로 이미지 분류하기 안녕하세요! 오늘은 교과서처럼 사용되는 데이터셋중 하나인 Fasion MNIST 데이터셋으로 이미지를 분류해볼 예정입니다. 데이터셋에 대한 자세한 내용은 캐글에서 확인하시길 바랍니다. Fashion MNIST foxyprogramming.tistory.com CNN을 하기 전까지의 과정에 대한 내용은 위의 글에서와 마찬가지로 진행합니다. 라이브러리는 추가할 부분이 있습니다. CNN 모델 구성할 때 필요한 라이브러리를 추가합니다. impor.. 2022. 12. 18.
[AI] K-Means Clustering 이번 글에서는 군집화로 널리 사용되는 비지도 학습 중 하나인 K-means 클러스터링에 대해 알아보겠습니다 먼저 비지도 학습은 컴퓨터에게 우리가 정답을 주지 않고 데이터만 주었을 때 데이터 안에서 패턴이나 구조등을 발견하는 것을 말합니다. 대표적으로 군집화 알고리즘이 있으며, 이는 추천 시스템, 검색 엔진 등에 사용되곤 합니다. 군집화의 목표는 서로 유사한 데이터들은 같은 그룹으로, 서로 유사하지 않는 데이터는 다른 그룹으로 묶는 것입니다. 이때, 몇개의 그룹인지 또는 데이터간의 유사 데이터를 정의해야 하는데 이런 문제들을 해결하는 방법 중 하나가 K-means 알고리즘입니다. K-means에 K는 무엇일까요? K는 클러스터 그룹의 수를 말합니다. 데이터를 줬을 때 몇개의 그룹으로 묶을 것인지를 지정하는.. 2022. 12. 18.
[AI] Fashion Mnist 데이터셋으로 이미지 분류하기 안녕하세요! 오늘은 교과서처럼 사용되는 데이터셋중 하나인 Fasion MNIST 데이터셋으로 이미지를 분류해볼 예정입니다. 데이터셋에 대한 자세한 내용은 캐글에서 확인하시길 바랍니다. Fashion MNIST | Kaggle Fashion MNIST An MNIST-like dataset of 70,000 28x28 labeled fashion images www.kaggle.com 바로 시작해볼까요? 먼저 필요한 라이브러리를 불러옵니다. import tensorflow as tf from tensorflow import keras import numpy as np import matplotlib.pyplot as plt 다음으로 Fasion Mnist 데이터를 불러옵니다. fashion_mnist = .. 2022. 12. 17.
[AI] RNN(Recurrent Neural Network)와 LSTM, GRU의 개념알기 우리의 실생활 데이터는 많은 부분에서 '순서(Sequence)'가 중요합니다. 예를 들어 I Like Apple이라는 문장이 있습니다. 순서가 바뀐다면 I Kiel ppAle로 될 수 있는 거죠. 그렇게 된다면 우리는 이해를 못 하게 되겠죠? 텍스트가 아니더라도, 음성, 헬스 케어 데이터, 주식 데이터 등 수많은 분야에서 순서는 중요합니다. 이러한 순서 처리를 위한 기본적인 Neural Network가 바로 RNN(Recurrent Neural Network)입니다 다음은 RNN의 기본적인 구조입니다. 반복되는 구조네요 RNN은 장기 의존성의 문제를 가집니다. 이를 해결하기 위한 방법 중 하나가 바로 LSTM(Long Short-Term Memory)인데, LSTM은 RNN에 비해 오랫동안 정보를 기억하.. 2022. 12. 17.
[AI] CNN 구현 시 고려해야할 사항들 안녕하세요! 저번 글에서는 CNN의 구조와 각 layer의 기능에 대해 알아보았는데요 2022.12.07 - [분류 전체보기] - [AI] CNN (Convolution Neural Network) 개념알기 [AI] CNN (Convolution Neural Network) 개념알기 안녕하세요! Foxyhyun입니다! 오늘은 이미지 분류의 기초인 CNN에 대해 알아보려고 합니다 Convolution Neural Network, 줄여서 CNN이라고 부르죠. 파라미터만 지정하면 특징 추출도 알고리즘이 자동으로 이 foxyprogramming.tistory.com 오늘은 CNN을 구현할 때 고려해야할 사항들에 대해 알아볼까 합니다. 먼저, 데이터 세트 구성하는 부분입니다. 우리의 목적은 Cost Functio.. 2022. 12. 7.
[AI] CNN (Convolution Neural Network) 개념알기 안녕하세요! Foxyhyun입니다! 오늘은 이미지 분류의 기초인 CNN에 대해 알아보려고 합니다 Convolution Neural Network, 줄여서 CNN이라고 부르죠. 파라미터만 지정하면 특징 추출도 알고리즘이 자동으로 이미지의 데이터를 추출하며, 영상 처리에 유용하게 쓰이고 있습니다. 주로 Convolution + pooling + flatten + fully-connected + softmax의 구조로 표현됩니다 먼저 Convolution에 대해 알아보겠습니다. Convolution layer에서는 해당하는 요소들을 각각 곱하고 이 값을 모두 더하는 연산을 수행합니다. 아래 그림과 같이, 커널이라는 것을 이동시키며 연산을 수행합니다. 여기서 padding이라는 것을 하는데, Convolutio.. 2022. 12. 7.
[Python] List Comprehension mat = [[1,2,3],[4,5,6],[7,8,9]] new = [x for a in mat for x in a] print(new) 안녕하세요! 이번 글에서는 파이썬에서 한 리스트에서 다른 리스트를 만들어내는 간결한 문법인 List Comprehension에 대해 알아보려 합니다. 먼저 리스트 컴프리헨션 분법을 사용하면 알고리즘을 작성할 때 파생되는 자료 구조를 쉽게 생성할 수 있습니다. a = [1,2,3,4,5] b = [x**2 for x in a] a라는 리스트에 있는 각 숫자의 제곱을 계산한다고 하면, b와 같이 계산을 수행할 수 있습니다. map과 달리 리스트 컴프리헨션을 사용하면 입력 리스트에 있는 아이템을 간편하게 걸러내서 그에 대응하는 출력을 결과에서 삭제할 수 있습니다. map은 .. 2022. 11. 23.
[Python] PEP 8 스타일 가이드 PEP8(Python Enhancement Proposal #8)은 파이썬 코드를 일관성 있게 작성하여 유지보수와 가독성에 도움을 주는 가이드입니다. 오늘은 PEP8에 대한 내용을 소개하려고 합니다. 자세한 내용은 아래의 링크에서 확인할 수 있습니다 https://peps.python.org/pep-0008/ PEP 8 – Style Guide for Python Code | peps.python.org PEP 8 – Style Guide for Python Code Author: Guido van Rossum , Barry Warsaw , Nick Coghlan Status: Active Type: Process Created: 05-Jul-2001 Post-History: 05-Jul-2001, 01.. 2022. 11. 23.