Python

카우치베이스와 주피터 노트북으로 선형 회귀 모델 훈련하기: 단계별 튜토리얼

데이터 과학자들이 사랑하는 Jupyter 노트북 - 를 사용하면 Couchbase 문서 데이터베이스와 자연스럽게 페어링됩니다.

Jupyter Notebook logo

왜 그럴까요? 왜 주피터 노트북 웹 애플리케이션을 사용하면 데이터 시각화 및 머신 러닝과 같은 사용 사례를 위해 서술형 텍스트, 수식 등이 포함된 문서를 만들고 공유할 수 있습니다. 카우치베이스 를 사용하면 방대한 양의 데이터(반정형 및 비정형)를 대규모로 저장하고 처리할 수 있으며, 내러티브 텍스트(소셜 미디어 게시물 등), 방정식 등 세상에 넘쳐나는 모든 종류의 데이터를 지원할 수 있습니다.

이 글에서는 Couchbase 클러스터와 Jupyter Notebook 간의 연결을 설정한 다음, Couchbase에서 데이터를 가져와서 머신 러닝을 위한 선형 회귀 모델을 훈련하는 방법을 알아봅니다. 선형 회귀 방정식을 통해 범주형 변수를 사용하여 대상 변수의 값을 예측하는 예제를 살펴보겠습니다.

데이터 로드

시작하려면 다음 단계를 진행하여 샘플 데이터 세트를 로드합니다:

  1. Couchbase 클러스터의 관리자 콘솔에서 다음과 같이 버킷 > 버킷 추가로 이동하여 새 버킷을 만듭니다:

    Add a bucket in the Couchbase cluster admin console
  2. 다음과 같이 문서 > 문서 추가로 이동하여 버킷에 문서를 추가합니다:

    Add documents to a Couchbase bucket

    를 사용하거나 JSON 문서 목록 또는 CSV 파일을 업로드할 수 있습니다. 이 예제에서는 다음을 사용하여 CSV 파일을 업로드하겠습니다. cbimport. 내 문서의 모습은 다음과 같습니다:

    CSV file upload using the cbimport tool

  3. 파일은 작업하려는 모든 데이터가 될 수 있습니다. 이 예제에서는 Kaggle의 광고 데이터 세트.
  4. 그림과 같이 문서 > 가져오기로 이동합니다:

    Import the Kaggle advertising dataset documents into Couchbase

  5. 가져오려는 파일과 문서가 있는 데이터 버킷을 선택합니다:

    Select the file in the Couchbase data bucket

    이제 문서 메뉴가 다음과 같이 표시됩니다:

    The documents menu in the Couchbase admin console

  6. 관리 콘솔에서 다음과 같이 데이터 버킷에 대한 기본 인덱스를 만들어 데이터를 쿼리할 수 있도록 합니다:

    Add a primary index to a data bucket in the Couchbase Web Console

Jupyter 노트북 설치하기

먼저 카우치베이스-주피터-예제 다운로드 를 다운로드합니다. 그런 다음 다음 단계를 따르세요:

  1. 주피터 노트북 설치 파이썬 패키지 관리 시스템(pip) 또는 아나콘다.
  2. 다음을 사용하여 이 프로젝트에 대한 종속성을 설치합니다. pip 에서 요구 사항 파일을 셸에 저장합니다:
  3. 셸에서 주피터 노트북을 엽니다.
  4. 다음과 같이 Python 3으로 새 노트북을 만듭니다:

    Making a new Jupyter Notebook using Python 3

선형 회귀 모델이란 무엇인가요?

선형 회귀 모델은 범주형 또는 독립 변수의 강도를 결정하고 해당 변수의 효과를 예측하고 데이터의 추세를 파악할 수 있는 강력한 예측 분석용 모델입니다.

이름에서 유추할 수 있듯이 선형 회귀에서 데이터를 맞추는 데 사용하는 '곡선'은 선입니다. 회귀 방정식의 가장 간단한 형태는 다음과 같습니다. Y = MX + C에서 y 는 대상 변수를 나타냅니다, x 는 단일 범주형 변수를 나타내고 m 그리고 c 는 상수입니다. 이 예제에서는 간단한 선형 회귀 방정식을 사용하겠습니다.

이 예제에서 범주형 변수는 다음과 같습니다. TV, 라디오 그리고 신문. 대상 변수는 판매.

선형 회귀 모델 훈련

  1. 새 Jupyter 노트북에서 아래 코드를 사용해 Couchbase 서버에 연결합니다. 물론 사용자 이름과 비밀번호를 사용하세요. 관리자 그리고 123456.

    Connecting a Jupyter Notebook to Couchbase Server

  2. 여기 스크린샷에 표시된 대로 필요한 라이브러리를 가져옵니다. 사용 중인 환경에 이러한 라이브러리가 없는 경우 Python 패키지 관리자를 사용하여 해당 라이브러리의 최신 버전을 올바른 환경에 다운로드하세요, pip.

    Import required libraries using Python package manager

  3. 사용 선택 명령을 사용하여 데이터 버킷에서 판다스 데이터 프레임으로 데이터를 가져옵니다:

    Fetch data into a pandas data frame

  4. 판다 데이터 프레임의 콘텐츠는 다음을 사용하여 볼 수 있습니다. 설명() 명령어를 입력합니다:

    Using the describe command to view data frame contents

  5. 각 범주형 변수의 값에 해당하는 박스 플롯을 만들어 이상값을 감지합니다:

    Detect outliers using boxplot data visualization

  6. 각 범주형 변수에 대해 대상 변수에 대한 분산형 차트를 만들어 상관 관계를 파악합니다.
    다음 사항에 유의하세요. TV 의 상관관계가 가장 높은 것으로 나타났습니다.

    Categorical variable correlation using scatter plots for data visualization

  7. 데이터 집합을 분할하여 60%는 학습용으로, 나머지 40%는 테스트용으로 사용합니다. 이제 범주형 변수가 다음과 같은 경우 회귀 방정식의 계수 값을 결정할 수 있습니다. TV 로 설정하고 대상 변수는 판매를 사용하여 일반 최소 제곱 방법.

    Ordinary Least Squares method for regression testing

  8. 이제 여기에 표시된 코드를 사용하여 모델을 학습시킵니다:

    Training data in a Jupyter notebook

  9. 다음으로 다음을 대체합니다. 테스트 에 대한 기차 를 사용하여 다음과 같이 모델을 사용하여 테스트 세트의 값을 예측할 수 있습니다:

    Testing data for a TV variable in an advertising dataset

동일한 접근 방식을 사용하여 범주형 변수를 사용하여 모델을 학습하고 테스트할 수 있습니다. 라디오 그리고 신문에서도 사용할 수 있습니다:

Linear regression training data using a radio variable
Linear regression testing data using the radio variable
Training data in a Jupyter Notebook from Couchbase (newspaper variable)
Testing data in a Jupyter Notebook from Couchbase (newspaper variable)

머신 러닝 및 카우치베이스로 더 나아가기

이제 연결에 익숙해졌으니 이제 카우치베이스 서버 로 이동하여 선형 회귀의 머신 러닝 개념을 살펴보셨다면, 다음 포스팅을 통해 그 지식을 쌓으세요. 머신 러닝 모델 저장소로 Couchbase를 사용하는 방법 그리고 Couchbase를 사용하여 AI 기반 인사이트 확보하기.

직접 사용해 보세요:

여기에서 Couchbase 7 다운로드

 
 
 

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

Author

Posted by 아그리마 칸나

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.