da-analysis / asac_4_dataanalysis

ASAC 4기 Data Analysis Project
0 stars 1 forks source link

co-review 데이터가 있는 경우에 이미지/텍스트 피처 각각 추가했을 때 훈련데이터 성능 확인 #24

Open syleeie2310 opened 2 months ago

syleeie2310 commented 2 months ago

1) 이미지 데이터 넣었을 때 임베딩 그대로 넣었을 때랑, 이미지 유사도 만 넣었을 때... 2) 텍스트 데이터 넣었을 때 => 피처 코사인 유사도(평균, 중앙값, 1분위수, 2분위수, 3분위수 첨도, 왜도, 표준편차...), 임베딩(평균, 중앙값, 1분위수, 2분위수, 3분위수 첨도, 왜도, 표준편차...) 데이터 그대로 넣었을 때.... 3) 이미지 &텍스트 데이터 넣었을 때 1 x 2

각각 비교 필요

모델은 부스팅 모델

JIYUN0710 commented 2 months ago

5배수로 한것에서, co-review, 텍스트 임베딩(하나의 칼럼에), 텍스트 통계량, 텍스트 통계량 유사도, 텍스트 임베딩 통계량 평균, 이미지 임베딩(하나의 칼럼에), 이미지 임베딩 유사도 컬럼을 추가해서 save가 되긴했는데, 아래와 같은 문구가 나온거면, 제대로 저장되지 않은건가요?! 델타테이블이 아닌 파켓파일로 저장해야할까요?

image

syleeie2310 commented 2 months ago

쿼리할 때 많은 양을 불러오면 드라이버에서 디폴트로 maxResultsize로 조절하는데 디폴트가 4기가라서 그런거네요

어제 카톡으로 말씀드렸지만 spark config 함수에 spark.driver.maxResultSize 조절해보시고 select 불러올 때 모든 컬럼이 아니라 적절하게 컬럼 선택해서 보셔야 될 수도 있겠군요.

https://kb.databricks.com/jobs/job-fails-maxresultsize-exception

syleeie2310 commented 2 months ago

maxDepth: int = 5, maxBins: int = 32 (2개는 4X3=12개 실험) https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.ml.classification.GBTClassifier.html

stepSize: float = 0.1도 여유되면 하기.

maxMemoryInMB=256 <- 만약 검색해보고 사람들이 512메모리나 더 늘리면 어떻게 되는건지? 빨라지는지??

syleeie2310 commented 2 months ago

파라미터 튜닝하면 결정되면 그거가지고 랭킹 점수 계산하기

그 중에 가장 좋은 모델만 형섭님이 사용할 수 있도록 저장해주세요. (아래 이슈) https://github.com/da-analysis/asac_4_dataanalysis/issues/25

JIYUN0710 commented 2 months ago

image

@syleeie2310 위와 같은 결론을 얻었는데, 적은 데이터가 아닌 원래 6번모델과 적은 데이터로 모델링한 것을 최종 모델로 선택할까요?!

syleeie2310 commented 2 months ago

이미지 피쳐 코사인 유사도 넣은게 AUC 기준으로는 조금이라도 좋군요.

근데 나중에 랭킹 모델 평가할 때 데이터가 부족할거 같아서 그런데 2개 정도 따로 모델 만들어서 둘다 랭킹 평가해볼까요?

JIYUN0710 commented 2 months ago

넵! 알겠습니다!!ㅎㅎ 감사합니당

JIYUN0710 commented 2 months ago

image

5백만개 데이터 있는 트레인에 텍스트통계량 유사도, 이미지 유사도 추가해서 테이블 저장하려는데, 저장이 안됩니다! 파켓파일로 저장해두어야할까요?!

syleeie2310 commented 2 months ago

위에 보면 out of disk space error는 enale autosacling local storage on the cluster 하라고 안내가 나와있네요 해당 설정 옵션 켜두고 다시 저장 시도하심 될듯 해요 (델타로)

s3 문제는 아니고 로컬에서 작업하면서 디스크가 꽉 차서 그래요. 제가 클러스터 설정 방금 바꿔놨으니 (Enable autoscaling local storage)

다시 사용해보고 저장 또 안되면 말해주시구요.

JIYUN0710 commented 2 months ago

넵! 바로 해보겠습니다!!

JIYUN0710 commented 2 months ago

image

위 사진과 같이 파라미터 튜닝중인데, 아래 spark jobs가 안뜨고 위에 시간을 제대로 돌아가고있는데, 잘 돌아가고 있는건가요?! 멈추고 다시 돌려봐도 동일합니다!

syleeie2310 commented 2 months ago
syleeie2310 commented 2 months ago

https://github.com/sberbank-ai-lab/RePlay/blob/main/experiments/01_replay_basics.ipynb

syleeie2310 commented 2 months ago

https://sberbank-ai-lab.github.io/RePlay/

syleeie2310 commented 2 months ago

from replay.experiment import Experiment from replay.metrics import Coverage, HitRate, NDCG, MAP

metrics = Experiment(test, {NDCG(): K, MAP() : K, HitRate(): [1, K], Coverage(train): K, Precision,Recall, MRR,NDCG }) %%time metrics.add_result("1-1 모델", model_data) metrics.results