SQL 16
-
from pyspark2pmml import PMMLBuilder pmmlBuilder = PMMLBuilder(spark.sparkContext, train, cvModel) pmmlBuilder.buildFile("Titanic.pmml") ## 빌딩 예제 from pypmml import Model model = Model.load("Titanic.pmml") model.predict(df) ## 로딩, 호출 예제 범용 머신러닝 모델 파일 포멧 Scikit-Learn, PyTorch, Tensorflow, Spark MLlib 등의 다양한 머신러닝 개발 플랫폼의 환경에서 통용되는 머신러닝 파일 포맷이 있다. PMML과 MLeap 등이 있다. 이 공통 파일 포맷을 이용하면 어디서나 호환이 가능하다. ..
-
-
ML 라이브러리의 모델 튜닝은 최적의 하이퍼 파라미터를 선택하는 것에서 시작한다. 하나씩 테스트 해보는 것과 다수를 동시에 테스트 하는 방법이 있다. 모델 선택에서 테스트 방법으로는 교차검증 Cross Validation 홀드아웃 Train-Validation Split 이 두가지 테스트는 보통 ML Pipeline과 함께 사용된다. 교차검증이 홀드아웃 테스트보다 오버피팅 문제가 감소하기 때문에 안정적이다. Estimator 머신러닝 모델 혹은 ML Pipeline Evaluator 머신러닝 모델의 성능 Parameter 훈련 반복 회수 등의 하이퍼 파라미터 - ParamGridBuilder을 사용해 ParamGrid 타입의 변수를 생성한다. - 주로 트리 관련 알고리즘에서 깊이, 훈련횟수와 관련있다. ..
-
-
-
세 가지의 테이블을 JOIN 하여 사용한다. 여기에서 session_timestamp, user_session_channel 두 개의 테이블은 sessionId 가 같은 수로 존재하지만 session_transaction 테이블에는 sessionId가 덜 존재한다. 그래서 두 테이블은 Inner JOIN 하고, session_transaction 테이블은 LEFT JOIN한다. 없는 sessionId는 NULL값으로 채워지게 된다. 매칭이 안되는 sessionId가 있는지 알아본다. 두 개의 방향을 모두 검사해야 한다. FROM schema.table1 A JOIN schema.table2 B ON A.primary = B.primary LEFT JOIN schema.table3 C ON A.primar..
-
-
Boolean 값에서 항상 True False 값만 있는 것이 아니라 Null값도 존재할 수 있다. Flag is True = Flag is not False 만약 Flag에 Null 값이 없고 오직 True, False로만 이루어져 있다면 이 식이 맞지만 Null값이 존재할 경우 not False가 반드시 True라고 할 수 없다. flag가 식에 해당되면 1을 더하는 문장을 실행한다. CASE WHEN flag = True THEN 1 END 여기에 COUNT() true_cnt1으로 출력한다. NULL의 비교와 연산은 항상 IS, IS NOT으로 수행한다. 만약에 =, !=, 로 수행하면 잘못된 결과가 나온다.
-