자연어처리 16

문서 표현 기법(ft. Scikit-learn & Gensim)

수업 내용 리마인드 및 아카이빙 목적의 업로드자연어 처리(NLP)에서 문서를 어떻게 표현하느냐는 아주 중요한 부분이에요. 오늘은 두 가지 대표적인 파이썬 라이브러리인 Scikit-learn(Sklearn)과 Gensim을 가지고 문서 표현 방법을 쉽게 설명해볼게요. 이 두 라이브러리는 각기 다른 장점이 있어서 상황에 맞게 잘 선택해서 사용하면 좋아요. Scikit-learn과 Gensim 비교Sklearn은 일반적인 머신러닝 작업에 적합해요. 텍스트 데이터를 다룰 때, 분류나 클러스터링 같은 고급 머신러닝 작업을 할 때 많이 사용해요.Gensim은 대규모 텍스트 데이터에서 주로 쓰이는 라이브러리인데요, 주제 모델링(LDA)이나 단어 임베딩(Word2Vec) 같은 작업에 특히 강점이 있어요.1. BoW (..

+ 개발 2024.09.08

N-gram: 텍스트에서 문맥 파악하기

수업 내용 리마인드 및 아카이빙 목적의 업로드 텍스트 데이터를 다룰 때 단어들의 순서와 문맥을 고려하는 것은 매우 중요해요. 특히 N-gram은 문맥을 일부 반영할 수 있는 방법으로, 인접한 단어들을 묶어 표현해주는 기법이에요. 이 글에서는 N-gram의 개념부터 실제로 어떻게 활용되는지까지 차근차근 살펴볼게요. N-gram이란?N-gram은 텍스트에서 연속된 n개의 단어 묶음을 의미해요. 예를 들어, "I love deep learning"이라는 문장에서 2-gram은 "I love", "love deep", "deep learning"과 같이 두 단어씩 묶은 형태가 되죠. 이렇게 하면 단순히 단어의 빈도만 고려하는 것이 아니라, 단어들의 순서를 유지하면서 문맥 정보를 파악할 수 있어요. 하지만 N-g..

+ 개발 2024.09.07

단어 표현(Word Representation)

수업 내용 리마인드 및 아카이빙 목적의 업로드 기계는 우리가 사용하는 문자를 그대로 이해할 수 없어요. 그래서 자연어 처리에서는 문자를 숫자로 변환하는 방법이 필요해요. 이 글에서는 단어를 숫자로 변환하는 대표적인 방법인 원-핫 인코딩(One-Hot Encoding)을 직접 구현하고, Scikit-learn을 이용한 방법까지 단계별로 설명드릴게요. 1. 원-핫 인코딩 (One-Hot Encoding)원-핫 인코딩은 단어를 고유한 숫자로 변환한 후, 해당 단어의 위치에만 1을 부여하고 나머지에는 0을 채우는 방법이에요. 이 방식은 단어 간의 관계나 유사성을 표현하지 않지만, 간단하고 명확하게 텍스트 데이터를 숫자로 변환할 수 있죠. 1) 직접 원-핫 인코딩 구현하기파이썬의 기본 라이브러리만 사용해서 원-핫..

+ 개발 2024.09.06

자연어 처리를 위한 텍스트 전처리(ft.NLTK & KoNLPy)

수업 내용 리마인드 및 아카이빙 목적의 업로드 자연어 처리에 관심이 있다면, 텍스트 데이터를 잘 다루는 것이 정말 중요해요. 그래서 오늘은 텍스트를 자연어 처리에 맞게 준비하는 텍스트 전처리에 대해 이야기해볼까 해요. 전처리 과정을 통해 중요한 정보는 그대로 두면서 불필요한 부분을 깔끔하게 정리하면, 훨씬 더 효과적인 분석이 가능해집니다. 1. 토큰화 (Tokenizing)먼저 토큰화에 대해 알아볼게요. 토큰화는 텍스트를 잘게 쪼개는 작업인데요, 주로 단어별로 나누는 "단어 토큰화(Word Tokenization)"와 문장별로 나누는 "문장 토큰화(Sentence Tokenization)"가 있어요. 앞으로의 실습에서는 단어 토큰화를 주로 사용하게 될 거예요. 2. 품사 부착(PoS Tagging)토큰화..

+ 개발 2024.09.05

텍스트 마이닝 : 개념부터 활용까지

수업 내용 리마인드 및 아카이빙 목적의 업로드 1. 텍스트 마이닝이란? 텍스트 마이닝(Text Mining)은 자연어 처리(NLP) 기술을 바탕으로 비정형 텍스트 데이터를 정형화하고, 그 속에서 유의미한 패턴과 정보를 찾아내는 기술이에요. 언어학, 통계학, 기계 학습 등이 융합된 이 기술은 이메일, 고객 리뷰, 소셜 미디어 게시물, 연구 보고서 등 다양한 텍스트 데이터를 분석하여 중요한 인사이트를 도출합니다. 2. 텍스트 마이닝과 데이터 마이닝의 차이점 텍스트 마이닝과 데이터 마이닝은 둘 다 데이터를 분석해 유의미한 정보를 추출하는 기술이지만, 분석 대상이 다릅니다.텍스트 마이닝: 비정형 텍스트 데이터를 분석하여 의미 있는 정보를 추출합니다. 주로 자연어 처리 기술을 사용해 데이터를 가공합니다.데이터 마..

+ 개발 2024.09.04

자연어 처리(NLP) 기초

수업 내용 리마인드 및 아카이빙 목적의 업로드 1. 자연어 처리와 전통적인 프로그래밍의 차이  전통적인 프로그래밍에서는 컴퓨터가 이해할 수 있는 언어로 직접 명령을 내리죠. 하지만 자연어 처리는 컴퓨터가 사람의 언어, 즉 우리가 평소에 쓰는 말을 이해하고 소통할 수 있도록 돕는 기술이에요. 예를 들어, "오늘 날씨 어때?"라고 물으면, 자연어 처리를 통해 컴퓨터가 이 질문을 이해하고 적절한 답을 줄 수 있답니다.  2. 데이터의 유형: 정형 데이터 vs 비정형 데이터  정형 데이터는 말 그대로 구조가 잘 잡힌 데이터에요. 엑셀 파일이나 데이터베이스에 저장된 데이터를 생각하시면 돼요. 반면, 비정형 데이터는 글이나 이메일, 소셜 미디어 글처럼 정해진 틀이 없는 데이터를 말해요. 요즘은 인터넷과 모바일 덕분..

+ 개발 2024.09.03