65
2
장
스칼라와 스파크를 활용한 데이터 분석
서 찾을 수 없다. 이 데이터를 기반으로 하는 우리의 모델에 이 특징들을 포함시켜야 하는지는
명확하지 않다.
이제, 좋은 특징임에 틀림없는
cmp
_
plz
,
cmp
_
by
,
cmp
_
bd
,
cmp
_
lname
_
c1
과
cmp
_
bm
값의 합을 사용하여 레코드 간의 쌍의 유사도를 평가하는 간단한 평가 모델을 사용할 것이다.
일부 누락된 값은
null
대신
0
을 사용해 합을 구할 것이다. 계산된 평가 점수와
is
_
match
열의
값으로 데이터프레임을 만들고 문턱값
Threshold
을 바꿔가며 평가 점수가 매치된 레코드와 매치되
지 않은 레코드를 얼마나 잘 구분해내는지를 평가하여 우리가 만든 간단한 모델의 성능을 대략
가늠해볼 수 있다.
2.12
실제 환경을 위한 모델 준비하기
앞에서
Spark
SQL
질의로 평가 점수를 계산하는 함수를 만들 수 있었다. 하지만 점수를 매
기는 규칙이나 머신러닝 모델을 배포해야 하는데 어떤 질문에 답을 만들어내는
Spark
SQL
을 실행할 시간이 충분히 주어지지 않는 상황이 자주 발생한다. 이런 상황에서는 스파크에
서 동작하지만 코드를 실행하는 데 스파크
JAR
파일을 사용하여 만들어진 코드나 이를 실
행할
SparkSession
이 필요하지 않은 함수를 작성하고 테스트할 수 있어야 한다.
우리 모델에서 스파크에 특화된 컴포넌트를 추상화하기 위해서는 데이터프레임의 필드를
Row
내부의 동적으로 조회할 수 있는 필드 대신 정적으로 입력된 변수로 작업할 수 있는 간단
한 레코드 ...