linearRegression

개요

지도학습을 하는 선형회귀 알고리즘입니다.

설명

지도학습을 하는 선형회귀 알고리즘입니다.

Example

집값에 대한 샘플데이터 입니다.

crim(범죄율)

age(연식)

tax(세금)

medv(집값)

0.671909988

90.30000305

307

16.60000038

1.002449989

87.30000305

307

21

8.055789948

95.40000153

666

13.80000019

fit으로 LinearRegression을 적용해 feature와 label의 선형 상관관계를 모델링하는 명령어 예제입니다.

crim, age, tax을 feature로, medv을 label로 학습하고 modelA로 저장합니다. (옵션은 100번 반복, feature 표준화입니다.)

* | fit linearregression FEATURES crim, age, tax LABEL medv maxIter=100 standardization=True INTO modelA

features

estimate

coefficientStandardErrors

space

meanAbsoluteError

rootMeanSquaredError

r2

intercept

33.470874208

0.050606818157


5.6438527876

7.8910514027

0.26239019966

crim

-0.17025122296

0.014574116347


None

None

None

age

-0.057344502576

0.0028028265109


None

None

None

tax

-0.015653811458

1.1493026629


None

None

None

predict로 modelA에 샘플 데이터를 다시 넣어 예측하는 명령어 예제입니다.

* | predict modelA crim, age, tax

crim

age

tax

medv

prediction

0.671909988

90.30000305

307

16.60000038

23.372551835

1.002449989

87.30000305

307

21

23.488310504

8.055789948

95.40000153

666

13.80000019

21.022852399

fit_predict로 LinearRegression을 적용해 feature와 label의 선형 상관관계를 모델링 후 예측하는 명령어 예제입니다.

* | fit_predict linearregression features lstat,tax LABEL medv maxIter=100 standardization=True INTO modelA

Parameters

SparkLinearRegression_command : FEATURES fields LABEL l_field params INTO model

이름

설명

필수/옵션

FEATURES fields

학습에 사용될 특징 column을 입력 받습니다.

필수

LABEL l_field

학습에 사용될 라벨 column을 입력 받습니다.

필수

params

*알고리즘 옵션을 지정해줍니다.

필수

INTO model

모델을 저장해주는 예약어 입니다.
경로 (/B-IRIS/USERS/dani/ML/)에 모델, 모델 메타 데이터가 저장됩니다.
예 : into modelA

옵션

*알고리즘 옵션

이름

설명

기본값

maxIter

학습 반복 수

100

regParam

정규화 계수 값

0.0

elasticNetParam

정규화 함수 타입으로 0.0~1.0의 범위
1.0에 가까울수록 ‘L1’ 타입, 0.0에 가까울수록 ‘L2’ 타입

0.0

fitintercept

훈련 데이터에 대한 증간된 표현을 사용할지 안 할지 정해주는 Boolean (편향을 학습에 사용할지 안 할지)

True

tol

최적화 함수에 대한 반복 수렴 오차 값.

1e-06

standardization

모델 fitting 전에 training 특징들을 표준화 해줄지 안 해줄지 정합니다.

False

solver

최적화 알고리즘을 정합니다. (Normal, l-bfgs, auto)

auto

Parameters BNF

SparkLinearRegression_command : FEATURES fields LABEL l_field params INTO_model
fields : field
       | fields COMMA field
field : WORD
      | TIMES
      | MINUS WORD
l_field : WORD
params : param
       | params param
       |
param : WORD EQUALS WORD
      | WORD EQUALS DOUBLE
      | WORD EQUALS LBRACKET words RBRACKET
      | WORD EQUALS LBRACKET doubles RBRACKET
words : WORD
      | words COMMA WORD
doubles : DOUBLE
        | doubles COMMA DOUBLE
INTO_model : INTO WORD
           |

WORD = \w+
COMMA = \,
FEATURES = FEATURES | features
LABEL = LABEL | label
INTO = INTO
EQUALS = \=
TIMES = \*
MINUS = -
LBRACKET = \[
RBRACKET = \]
DOUBLE = [-+]?[0-9]+(\.([0-9]+)?([eE][-+]?[0-9]+)?|[eE][-+]?[0-9]+)