본문 바로가기
SMALL

전체 글139

Chap04. 영어 텍스트 분류_모델링 2 이전 포스팅에서는 머신러닝 모델을 사용하여 감정 분석을 수행하였다. Chap04. 텍스트 분류_모델링 1 이전 포스팅에서는 탐색적 데이터 분석 과정과 데이터 전처리 과정에 대해 알아보았다. Chap04. 텍스트 분류_데이터전처리 실습 텍스트 분류란 자연어 처리 기술을 활용해 글의 정보를 추출해서 yuna96.tistory.com 이번 포스팅은 딥러닝 분야의 순환 신경망에 대해 실습하면서 알아보자. 1. 순환 신경망 분류 모델 순환 신경망(RNN)은 언어 모델에서 많이 쓰이는 모델 중 하나로 다른 모델들과 달리 이미 주어진 단어 특징 벡터를 활용해 모델을 학습하지 않고 텍스트 정보를 입력해서 문장에 대한 특징 정보를 추출한다. 이 모델이 나타내는 현재 정보는 이전 정보가 점층적으로 쌓이면서 정보를 표현할 .. 2021. 7. 29.
Chap04. 영어 텍스트 분류_모델링 1 이전 포스팅에서는 탐색적 데이터 분석 과정과 데이터 전처리 과정에 대해 알아보았다. Chap04. 텍스트 분류_데이터전처리 실습 텍스트 분류란 자연어 처리 기술을 활용해 글의 정보를 추출해서 문제에 맞게 사람이 정한 범주(Class)로 분류하는 문제다. 텍스트 분류의 방법과 예시 등 이론적인 내용은 앞에서 살펴봤으므로 yuna96.tistory.com 오늘은 이어서 직접 모델에 적용하고 텍스트의 감정이 긍정인지 부정인지를 예측할 수 있는 모델을 만들어보자. 실습할 모델은 로지스틱 회귀 모델과 랜덤 포레스트 모델이다. 1. 로지스틱 회귀 모델 로지스틱 회귀 모델은 주로 이항 분류를 하기 위해 사용되며 분류 문제에서 사용할 수 있는 가장 간단한 모델이다. 로지스틱 회귀는 선형 결합을 통해 나온 결과를 토대로.. 2021. 7. 26.
2-1. Spark의 저수준 API Spark의 저수준 API의 종류로는 RDD, 분산형 공유 변수(어큐뮬레이터, 브로드캐스트 변수)가 있다. 이는 모두 분산형 공유변수로 뒤에서 조금 더 자세히 알아보자. 대부분의 상황에서는 구조적 API를 사용하는 것이 좋으나 물리적 데이터의 배치를 아주 세밀하게 제어하는 경우나 RDD를 사용해 개발된 기존 코드를 유지해야 하는 경우 등 비즈니스나 기술적 문제를 처리하지 못하는 경우에는 저수준 API를 사용하여야 한다. 때문에 이번 포스팅에서는 저수준 API에 대해 알아보자. 먼저, 저수준 API를 사용하기 위해서는 SparkContext를 사용해야한다. SparkContext는 Sparksession을 이용해 접근할 수 있는데, 자세한 건 뒤에서 설명하도록 하겠다. [RDD(Resilient Distr.. 2021. 7. 23.
Chap04. 텍스트 분류_데이터전처리 실습 텍스트 분류란 자연어 처리 기술을 활용해 글의 정보를 추출해서 문제에 맞게 사람이 정한 범주(Class)로 분류하는 문제다. 텍스트 분류의 방법과 예시 등 이론적인 내용은 앞에서 살펴봤으므로 참고하면 좋겠다. Chap03. 자연어처리 개요_텍스트 분류 및 유사도 오늘은 자연어 처리 문제 중 가장 대표적이고 많이 하는 텍스트 분류와 텍스트끼리 얼마나 비슷한지를 계산하는 유사도에 대하여 알아보도록 하자. [ 텍스트 분류 ] 텍스트 분류(Text Classification) yuna96.tistory.com 이번 포스팅에서는 실제로 데이터를 가지고 텍스트 분류를 실습하면서 텍스트 분류가 무엇인지에 대해 알아보도록 하자. 실습은 영어와 한글을 나누어서 진행하는데, 그 이유는 자연어 처리 기술을 통해 언어를 처리.. 2021. 7. 21.
Chap03. 자연어처리 개요_데이터 이해하기 자연어 처리를 해결하면서 우리는 모델을 만들고 훈련 후에 성능을 평가하고, 생각보다 성능이 안 나온다면 모델에 문제가 있다고 판단하고 다른 모델을 사용한다. 이처럼 모델에 문제가 있는 경우도 있지만 우선적으로 해당 문제를 잘 해결하기 위해서는 데이터 이해가 선행되어야 하며 이러한 과정 속에서 생각하지 못한 데이터의 여러 패턴이나 잠재적인 문제점 등을 발견할 수 있다. 위와 같은 과정을 탐색적 데이터 분석(EDA : Exploratory Data Analysis)이라 하며, 데이터에 대한 선입견 없이 데이터가 보여주는 수치만으로 분석을 진행해야 한다. 그리고 이러한 데이터 분석 과정은 모델링 과정과 서로 상호 작용하면서 결과적으로 성능에 영향을 주기 때문에 매우 중요한 작업이다. 간단한 실습을 통해 데이터.. 2021. 7. 13.
1-2. 스파크 간단히 살펴보기 이전 포스팅에서는 아파치 스파크의 역사와 철학, 설치 방법에 대해서 알아보았다. 이번 포스팅에서는 스파크의 기본 배경지식을 알아본 후에 클러스터, 스파크 애플리케이션과 구조적 API를 살펴보면서 스파크의 핵심 용어와 개념을 접하고 사용법을 익혀보자. 스파크의 기본 아키텍처 보통 '컴퓨터'라고 하면 집이나 직장 책상 위에 놓인 장비 한대를 떠올린다. 이 컴퓨터는 영화를 보거나, 문서 작업을 하기에는 아주 적합하지만 한 대의 컴퓨터로는 수행하기 힘든 작업이 존재한다. 특히 데이터를 처리하는 경우를 말하는데, 위에서 말한 컴퓨터는 대규모 정보를 연산할만한 자원이나 성능이 없고, 연산이 가능하다 해도 너무 많은 시간이 소요된다. 때문에 컴퓨터 클러스터라는 기술이 여러 컴퓨터의 자원을 모아 하나의 컴퓨터처럼 사용.. 2021. 7. 10.
1-1. Apache Spark란 Apache Spark란? 아파치 스파크는 간단하게 스파크라고 많이 불리며, 현재 가장 활발하게 개발되고 있는 병렬 처리 오픈소스 엔진, 통합 컴퓨팅 엔진이며 클러스터 환경에서 데이터를 병렬로 처리하는 라이브러리의 집합이다. 이러한 기능들 덕분에 빅데이터에 관심 있는 여러 개발자와 데이터 과학자에게 표준 도구가 되어가고 있다. 스파크는 파이썬, 자바, 스칼라, R의 총 4가지의 언어를 지원하고 SQL 뿐만 아니라 스트리밍, 머신러닝에 이르기까지 넓은 범위의 라이브러리를 제공한다. 또한 스파크는 단일 노트북 환경에서부터 수천 대의 서버로 구성된 클러스터까지 다양한 환경에서 실행이 가능하다. 이러한 특성을 활용해 빅데이터 처리를 쉽게 할 수 있으며 엄청난 규모의 클러스터로 확장이 가능하다. 아래의 그림은 스.. 2021. 7. 7.
Chap03. 자연어처리 개요_텍스트 분류 및 유사도 오늘은 자연어 처리 문제 중 가장 대표적이고 많이 하는 텍스트 분류와 텍스트끼리 얼마나 비슷한지를 계산하는 유사도에 대하여 알아보도록 하자. [ 텍스트 분류 ] 텍스트 분류(Text Classification)는 자연어 처리 기술을 활용해 특정 텍스트를 사람들이 정한 몇 가지 범주(Class) 중 어느 범주에 속하는지 분류하는 문제다. 분류해야 할 범주의 수에 따라 문제를 구분하기도 하는데, 분류 개수가 2가지일 때는 이진 분류(Binary classification) 문제라 하며, 3가지 이상일 경우 다중 분류(Multi classification) 문제라 한다. 텍스트 분류 문제를 해결하는 방법은 크게 지도학습과 비지도학습으로 나뉘며, 각각의 방법에 대하여 알아보자. ▶ 지도학습을 통한 텍스트 분류 .. 2021. 7. 7.
chap03. 자연어 처리 개요_단어 표현 자연어 처리는 크게 4가지(텍스트 분류, 텍스트 유사도, 텍스트 생성, 기계 이해)에 따라 어떻게 처리를 할지 달라진다. 이번 챕터에서는 자연어 처리를 통해 어떤 문제를 해결할 수 있고, 어떤 방식으로 해결하는지에 대해 알아본다. 먼저, 위에서 언급한 4가지를 알아보기 전에 단어 표현이라는 것에 대해 알아보자. [ 단어 표현 ] 자연어 처리란, 컴퓨터가 인간의 언어를 이해하고 분석 가능한 모든 분야를 말한다. 즉, 자연어 처리의 가장 기본적인 문제는 '어떻게 자연어를 컴퓨터에게 인식시킬 수 있을까?'가 된다. 컴퓨터는 모든 값을 이진화된 값으로 받아들이는데, 텍스트는 그중 "유니코드" 또는 "아스키 코드"라는 방식을 통해 인식한다. 이런 이진화된 방식을 자연어 처리에 그대로 사용하기에는 언어적 특성이 전.. 2021. 7. 6.
LIST