본문 바로가기
728x90
반응형

전체 글150

[Error] [Pytorch] TypeError: '<' not supported between instances of 'Example' and 'Example' (Torchtext BucketIterator 사용때 마주한 에러) Torchtext BucketIterator 를 쓸 때, trainset, valset , testset을 각각 iterator로 바꿔주는 부분에서 마주한 에러다 1. 상황 torchtext.legacy.data 안에 TabularDataset 으로 csv 파일을 불러온 뒤 trainset, valset , testset 로 split 했다. 확인해보면 모두 객체로 되어있음 각각의 trainset, valset , testset 이제 iterator로 만들기 위해서 BucketIterator.split()을 쓰는데 에러가 발생했다. train_iter는 문제없이 할당이 되었는데 val_iter와 test_iter를 확인해봤을때 위와 같은 type error 가 발생했다 ;; 2. 해결방법 https://.. 2022. 3. 29.
[Deep learning] [논문리뷰] DIEN - Deep Interest Evolution Network for Click-Through Rate Prediction (CTR 추천알고리즘, sequence, AUGRU) 1. Introduction 2. Related Work 3. DIEN : Deep Interest Evolution Network 1) BaseModel * feature representation * Embedding, MLP * Loss function 2) Interest Extractor Layer * auxiliary loss 3) Interest Evolving Layer * augru 4. Experiements 5. Conclusion 1. Introduction CTR (Click Through Rate) 은 사용자가 플랫폼에 게시된 광고를 클릭할지 말지 예측하는 Task E커머스 시장에서 유저들의 성향과 그 성향의 변화를 포착하는게 CTR 성능을 높이는 핵심 이전의 대부분 CTR 모델.. 2022. 3. 24.
[error] ParserError: Error tokenizing data. C error: Expected 1 fields in line 21, saw 2 ParserError: Error tokenizing data. C error: Expected 1 fields in line 21, saw 2 csv parsing error다. 가지고 있는 csv 파일 구분자가 뭔지 파악하고 read_csv에 함께 입력해줘야한다. data = pd.read_csv(data_path + 'ratings_train.csv', sep='\t') 요로코롬 구분자만 입력해주면 해결 완~ 2022. 3. 24.
[Deep Learning] [논문 코드 구현] Deep FM : A Factorization-Machine based Neural Network for CTR Prediction (deepctr-torch 사용하기! ) 0. Deep FM 논문 설명 https://huidea.tistory.com/279 [Deep learning] [논문리뷰] Deep FM : A Factorization-Machine based Neural Network for CTR Prediction (CTR, FM, wide&deep 개 논문 link : https://arxiv.org/pdf/1703.04247.pdf 오늘은 추천 알고리즘 중 click through rate (상품클릭률) task를 다루는 알고리즘 중 하나인 DeepFM(Deep Factorization Machine)을 살펴보겠다 ! 해당 논문.. huidea.tistory.com 이전에 살펴본 광고 추천 알고리즘 CTR 논문 중 DeepFM 모델을 구현한 코드이다. 사실.. 2022. 3. 17.
[Deep Learning] [Pytorch] ValueError: y_true contains only one label (0.0). Please provide the true labels explicitly through the labels argument. (deepfm-torch) 사용에서 마주친 에러 ! deep fm 모델링 당시 마주했던 에러다 저 위의 중국인 언니의 말대로 batch size를 늘리니까 해결이 되었다. logloss를 계산할 때 batch size 너무 작아서 발생한 에러라고 하는데... 아직은 명쾌하게 이해는 안되지만, 일단은 메모메모 2022. 3. 14.
[Deep learning] [논문리뷰] Deep FM : A Factorization-Machine based Neural Network for CTR Prediction (CTR, FM, wide&deep 개념 추가) 논문 link : https://arxiv.org/pdf/1703.04247.pdf 오늘은 추천 알고리즘 중 click through rate (상품클릭률) task를 다루는 알고리즘 중 하나인 DeepFM(Deep Factorization Machine)을 살펴보겠다 ! 해당 논문은 딥러닝 네트워크와 기존 CTR 분야에서 인정받던 머신러닝 알고리즘 FM을 합친 알고리즘이다 논문 한 줄 요약 : 상품, 광고, 고객 데이터 embedding 시킨 뒤에 concat 한 뒤 전체 벡터 값을 각각 Factorization machine 모델, Neural Network 모델에 태우고 각각 결과값 sigmoid로 계산해서 고객이 해당 상품광고 클릭할지 안할지(CTR) 판단하는 이진 분류 모델 1. Introduc.. 2022. 3. 11.
[Deep Learning] [Pytorch] ValueError: Expected more than 1 value per channel when training, got input size torch.Size([1, 512, 1, 1]) - model.eval()로 해결 ! 에러 발생 상황 : 1) Resnet 에 배치사이즈 100으로 이미지 데이터를 학습 시켰다. 2) 모델 학습이 완료된 후 학습한 모델에 1개의 테스트 인풋을 넣고 예측값을 확인하려했다. 3) 에러가 발생했다. ValueError: Expected more than 1 value per channel when training, got input size torch.Size([1, 512, 1, 1]) 즉, 모델에 입력된 토치 텐서 사이즈가 1개 이상이길 바라는데, 입력 토치 텐서는 1개라서 문제가 생긴거다. 해결 방법 : batchsize 무시한채 데이터 1개를 test 할꺼면, model.eval() 을 선언해야한다. model.train() 으로 되어있을 땐 애초에 설정한 모델의 배치사이즈와 맞지 않으.. 2022. 3. 8.
[Deep Learning] [Pytorch] Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! 에러 내용 출처 : https://sweetdev.tistory.com/946 [ML][PyTorch] Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! 에러 해결하기 각 parameter를 보면 Tensor가 에러 나는 이유가 몇 가지 보입니다. data가 Tensor로 변환이 되는 data인가? 연산하고 있는 Tensor간 data type이 같은가? 연산시 CPU Tensor와 GPU Tensor를 같은 device로 통일했.. sweetdev.tistory.com 이유 : check list * 데이터가 텐서로 변환이 되었는가? * 데이터끼리 data type 이 같은가 * 모델 입력.. 2022. 3. 6.
[Machine learning] 우도(likelihood) 총정리 (MLE, log-likelihood, cross-entropy) 머신러닝을 수식 기반으로 뜯어보면 우도 개념이 빈번히 등장하는데, 우도 개념을 확실히 잡고 가보려한다. 우도는 분류 문제의 loss function 으로 Maximum log-likelihood (MLE)로 등장한다. 우도를 이해하기 위해선 확률의 개념과 비교하는게 용이하다. 1. 확률 : PDF의 면적 일반적으로 확률 이라고 하면, 이산형 확률 변수를 생각하기 쉽다. 동전을 뒤집었을 때 앞면이 나올 확률, 주사위를 던졌을 때 숫자 2가 나올 확률 등등 하지만 우리가 분석하고자 하는 확률이 연속형 확률이라면? 오늘의 낮 최고기온이 20이상 25 이하일 확률은? 고양이의 무게가 4kg 이상 5kg 이하일 확률은? 연속형 확률 변수를 나타낼때는 위와 같이 확률 밀도 함수(Probability Density .. 2022. 3. 4.
[ML - python code] logistic regression으로 위스콘신 암데이터 분류하기 (coefficient, odds, ROC AUC, Threshold 해석까지) 실제 코드 링크는 : https://colab.research.google.com/drive/1nDxpmTZC-KxBR9eQpk6u2PJsVu70UEdn?usp=sharing 0. Import module¶ from sklearn.datasets import load_breast_cancer import numpy as np import pandas as pd import scipy as sp from sklearn.preprocessing import StandardScaler from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics i.. 2022. 3. 4.
728x90
반응형