전체 글 71

파이토치(Pytorch): RNN 기반 이름 분류기 구현

수업 내용 리마인드 및 아카이빙 목적의 업로드 이번 글에서는 PyTorch를 활용해 이름 분류기를 만들어 볼 거예요. 이 실습에서는 이름 데이터를 사용해 특정 언어를 예측하는 모델을 만들어 보고, 학습한 후 모델의 성능을 평가해보겠습니다. 과정을 차근차근 따라가면 어렵지 않게 이해할 수 있으니, 함께 진행해봐요.1. 필요한 라이브러리 불러오기우선 실습에 필요한 라이브러리들을 불러올게요. GPU를 사용 가능한 경우, GPU를 사용해 학습 속도를 높일 수 있습니다.import torchimport torch.nn as nnimport torch.optim as optimfrom torch.nn.utils.rnn import pad_sequencefrom torch.utils.data import Datase..

+ 개발 2024.09.22

RNN과 LSTM의 차이점과 활용(시계열 데이터 처리)

수업 내용 리마인드 및 아카이빙 목적의 업로드 AI와 딥러닝을 배우다 보면 RNN(순환 신경망)과 LSTM(장단기 메모리)라는 용어를 자주 듣게 됩니다. 특히 시계열 데이터를 처리하는 데 뛰어난 성능을 보여주는데요. 오늘은 RNN과 LSTM의 기본 개념부터 그 차이점까지 하나씩 알아보겠습니다! 1. RNN(순환 신경망)이란?RNN은 순환 신경망(Recurrent Neural Network)의 약자입니다. 일반적인 신경망은 과거의 정보를 기억하지 못하는 단점이 있는데, RNN은 이전 시점의 정보를 활용해 새로운 데이터를 처리할 수 있습니다. 예를 들어, 문장이나 시간에 따라 변화하는 데이터를 다룰 때 유용해요. 1) RNN의 작동 방식RNN의 핵심 아이디어는 이전 시점의 정보를 반영해 더 나은 예측을 하자..

+ 개발 2024.09.21

파이토치(Pytorch): 다중 선형 회귀 모델 구현

수업 내용 리마인드 및 아카이빙 목적의 업로드  이번 글에서는 다중 선형 회귀를 파이토치로 직접 구현해보는 과정을 소개할게요. 다층 퍼셉트론(MLP) 모델을 사용해서 비선형 데이터에 대한 예측을 해볼 거예요. 처음부터 끝까지 함께 진행하면서 학습 과정과 평가 방법까지 차근차근 살펴봐요.  1. 필요 모듈 로드 먼저, 필요한 라이브러리를 가져오고 GPU가 사용 가능한지 확인해볼게요. 파이토치, 데이터 전처리 및 시각화를 위한 다양한 모듈들을 사용합니다. !pip install torchinfoimport torchimport torch.nn as nnimport torch.optim as optimfrom torch.utils.data import DataLoader, Dataset, random_spli..

+ 개발 2024.09.20

파이토치(Pytorch): 단순 선형 회귀 모델 구현

수업 내용 리마인드 및 아카이빙 목적의 업로드  이번 글에서는 파이토치(Pytorch)를 사용하여 단순 선형 회귀 모델을 구현하고 학습시키는 과정을 단계별로 살펴볼게요. 기본적인 데이터셋 생성부터 모델 정의, 학습, 평가, 시각화까지 전체 워크플로우를 다뤄요. 이 글을 통해 선형 회귀 모델이 어떻게 작동하는지 이해하고, 파이토치를 이용해 직접 모델을 구현해봐요.  1. 필요한 라이브러리 로드 먼저 실습에 필요한 라이브러리부터 설치하고 가져와야겠죠? torchinfo는 모델 구조를 확인하는 데 유용한 도구에요.pip install torchinfoimport torchimport torch.nn as nnimport torch.optim as optimfrom torch.utils.data import D..

+ 개발 2024.09.19

딥러닝(Deep Learning) 입문

수업 내용 리마인드 및 아카이빙 목적의 업로드  딥러닝은 최근 AI(인공지능) 기술의 핵심으로 자리 잡고 있습니다. 이미지 인식, 음성 인식, 자율주행차 등 우리가 일상에서 사용하는 기술의 기반이죠. 그렇다면 딥러닝(Deep Learning)이란 무엇일까요? 오늘은 딥러닝의 기본 개념부터 주요 학습 기법까지 차근차근 알아보겠습니다. 1. 딥러닝이란?딥러닝은 AI(인공지능)와 머신러닝의 한 분야로, 인간의 뇌처럼 작동하는 신경망(Neural Network)을 사용하여 데이터를 학습하고 예측하는 기술입니다. 쉽게 말해, 데이터를 보고 스스로 학습하여 결과를 도출하는 방법인데요, 머신러닝과 비슷하지만 더 복잡한 구조의 알고리즘을 사용해 더 깊이 있는 학습을 가능하게 합니다. 2. 머신러닝과 딥러닝의 차이딥러닝..

+ 개발 2024.09.18

머신러닝(Machine Learning) 입문

수업 내용 리마인드 및 아카이빙 목적의 업로드 머신러닝(Machine Learning)이라고 들어보셨나요? 요즘 AI(인공지능)라는 단어와 함께 자주 등장하는 용어인데요, 머신러닝은 데이터를 통해 컴퓨터가 스스로 학습하고 예측할 수 있도록 하는 기술이에요. 이 글에서는 머신러닝이 무엇인지, 그리고 머신러닝에서 사용되는 다양한 학습 방법에 대해 쉽고 간단하게 설명해 드릴게요! 1. 머신러닝이란?머신러닝은 컴퓨터가 사람처럼 데이터를 분석하고 학습해 스스로 결론을 내리는 과정을 말해요. 예를 들어, 수많은 사진을 보고 고양이와 강아지를 구분할 수 있게 되거나, 기온 데이터를 통해 내일의 날씨를 예측할 수 있는 기술이죠.머신러닝은 크게 AI(인공지능)의 한 분야로, 그중에서도 딥러닝(Deep Learning)이..

+ 개발 2024.09.17

Word2Vec 모델 만들기

수업 내용 리마인드 및 아카이빙 목적의 업로드1. 영어 Word2Vec 만들기1) 필요 모듈 로드먼저 Word2Vec 학습을 위해 필요한 라이브러리를 불러옵니다.import reimport urllib.requestimport zipfilefrom lxml import etreefrom nltk.tokenize import word_tokenize, sent_tokenizeimport nltknltk.download("punkt") 2) 데이터 로드데이터는 TED 강연 텍스트로, XML 형식으로 제공됩니다. content 태그 사이의 내용을 추출합니다.# 데이터 다운로드urllib.request.urlretrieve("https://raw.githubusercontent.com/ukairia777/ten..

+ 개발 2024.09.16

임베딩 기법 비교: Word2Vec, GloVe, FastText.

수업 내용 리마인드 및 아카이빙 목적의 업로드 자연어 처리는 말 그대로 컴퓨터가 사람의 언어를 이해하고 처리할 수 있도록 도와주는 분야입니다. 그중에서 단어를 숫자로 변환하여 벡터로 표현하는 방법을 임베딩(Embedding)이라고 해요. 오늘은 그 대표적인 기법들인 Word2Vec, GloVe, 그리고 FastText를 차근차근 알아보려고 합니다. 1. Word2Vec – 단어와 단어 사이의 관계를 학습하자!Word2Vec은 단어를 벡터로 표현하는 대표적인 임베딩 기법이에요. 이 방법은 단순히 단어를 숫자로 바꾸는 것에서 끝나는 게 아니라, 단어 사이의 관계까지 고려해서 단어 벡터를 만듭니다. 1) Embedding과 Vectorization의 차이먼저 Vectorization은 단어를 수치로 변환하는 ..

+ 개발 2024.09.15

뉴스 데이터 LDA 분석(ft. Gensim & Scikit-learn)

수업 내용 리마인드 및 아카이빙 목적의 업로드1. Twenty Newsgroups 데이터를 통한 LDA 분석 (Gensim)Twenty Newsgroups 데이터셋은 사이킷런에서 제공하는 20개의 서로 다른 주제를 가진 뉴스 그룹 데이터를 포함하고 있습니다. 이 데이터셋을 활용하여 LDA 분석을 수행해보겠습니다. 1) 필요 모듈 로드먼저, 데이터 전처리와 모델링에 필요한 라이브러리를 로드합니다.import pandas as pdfrom sklearn.datasets import fetch_20newsgroupsimport nltkfrom nltk.corpus import stopwordsfrom sklearn.feature_extraction.text import TfidfVectorizerfrom ge..

+ 개발 2024.09.14

뉴스 데이터 LSA 분석(ft. Numpy & Scikit-learn)

수업 내용 리마인드 및 아카이빙 목적의 업로드 LSA(Latent Semantic Analysis)는 문서의 단어 간 숨겨진 의미를 분석하는 강력한 방법 중 하나입니다. 이번 글에서는 LSA를 활용해 간단한 실습을 진행하고, 뉴스 데이터를 분석하는 과정을 단계별로 살펴보겠습니다. 1. LSA 간단 실습LSA는 문서-단어 행렬(DTM)을 특이값 분해(SVD)를 통해 분석하는 방법입니다. 이를 통해 문서 내에 존재하는 잠재적 의미를 추출할 수 있어요. 1) DTM 행렬 생성먼저, 예시 데이터로 문서-단어 행렬(DTM)을 만들어봅니다.import numpy as npA = np.array([[0,0,0,1,0,1,1,0,0], [0,0,0,1,1,0,1,0,0], ..

+ 개발 2024.09.13