SAS 프로시저 기반의 머신러닝은 그동안 거의 알려지지 않았었다. SAS의 머신러닝은 새로운 플랫폼인 SAS Viya 기반의 시각화 머신러닝(VDMML: Visual Data Mining and Machine Learning)과 SAS CAS(Cloud Analytics Service) 언어와 파이썬 및 R언어 기반으로 출시되었지만 일반 사용자들이 접근하기가 어려웠던 것이 사실이다. 이러한 접근성을 획기적으로 개선한 것이 SAS Viya Workbench for Learners이다. 특히 대학교 재학 중인 학생이나 교수들이 유용하게 활용할 수 있는 플랫폼이다.
SAS 사용자는 과거 통계 프로시저(PROC) 기반의 분석에 나름대로 자부심이 있었다. 그러나 급격히 인공지능 시대로 접어들면서 프로시저 기반의 인공지능 또는 머신러닝으로 자연히 이동하고자 했으나, 이에 걸맞은 환경과 프로시저가 제공되지 못했다. 머신러닝을 하고자 하는 데이터 과학자, 개발자 등의 일반적인 개발 환경은 현재 압도적으로 마이크로소프트 사가 제공하는 VS Code(Visual Studio Code)이다. SAS 사용자는 SAS Studio 또는 SAS Enterprise Guide 환경이다. 물론 전통적인 Program, Log, Output 윈도우를 갖는 환경도 다수 있다. 그러나 SVW(SAS Viya Workbench)는 시대적인 흐름에 발 맞춰 VS Code 방식의 개발 환경을 갖추고 있다. SVW는 범용 개발 환경인 VS Code와 SAS 사용자에게 친숙한 프로시저 기반으로 무장하여 기존 SAS 사용자가 아주 쉽게 새로운 표준으로 이동할 수 있게 되었다. 물론 SVW는 파이썬 사용자도 자연스럽게 특별한 코드 변화 없이 sasviya.ml 패키지를 기존개발 환경에서 이용할 수 있다.
본서는 기존 SAS 사용자가 프로시저 기반으로 머신러닝을 경험할 수 있도록 안내한다. 자연스럽게 VS Code를 경험하면서 보다 보편적인 개발 환경에도 접할 수 있게 하였다. 다양한 환경에서의 활용 가능성을 고려하여, 데이터 전처리 시 기존 데이터 스텝 이용보다는 데이터 과학자들의 또 다른 언어인 SQL(Structured Query Language)을 중심으로 활용하였다. 책의 구성은 예측 모델로 가장 많이 사용하는 10대 알고리즘, 예를 들어 결정나무 기반의 앙상블 모델인 포레스트(random forest), 그래디언트 부스팅(gradient boosting), 경량 그래디언트 부스팅(light GBM)을 포함하여 중점적으로 다뤘다. 실무에서 곧바로 활용할 수 있는 툴킷(toolkit)처럼 구성하였다. 조금 더 나아가 모델 해석을 위한 설명가능 머신러닝의 핵심인 샤플리(Shapley) 값에 대하여 추가적으로 수록하였다.
이 책은 SAS 사용자를 주 대상으로 하기 때문에 BASE SAS, SAS MACRO, DATA Step, PROC Step에 대한 지식이 있는 것으로 가정한다. 머신러닝에 대한 기본 지식은 필요로 하지 않지만 선형 회귀(linear regression)에 대한 지식은 있는 것으로 가정한다. 아무쪼록 SAS 사용자들의 기존 경험과 코드를 살리면서 성공적으로 머신러닝 개발자로 인도하는 기본 입문서가 되기를 바란다. 목차를 세분화하여 만들었기 때문에 따로 색인을 만들지 않았다.
좋은 책을 위해 최선을 다했지만, 오류나 부족한 부분이 있을 수 있다. 이에 대한 독자 여러분의 많은 조언을 구하며, 출간 후 나올 수 있는 수정사항 등은 자유아카데미 홈페이지 자료실(www.freeaca.com)을 통해 게시될 예정이니 참고 부탁드린다. 끝으로 나의 가족에게 감사의 말을 전한다.