분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
도배 하자 유형 분류 AI 경진대회
제출파일 0점 관련
무슨이슈때문인지.. 제출파일이 최근 3일동안 계속 0점으로 처리되네요..
submit.to_csv('./out/submit_10.csv', index=False, encoding='utf-8')
위 코드와 같이, 제출파일이 utf-8이어야하는 부분 고려해서 작성했었고, 기존에는 잘됬었는데 갑자기 말썽이네요..
제가 Mac이라서 그런지 잘모르겠는데.. 혹시 해결하신분 있으신가요?ㅠㅠ
참고로, 아래사진에서 Default - 쉼표로 구분된 값 (.csv)로 해도 안되고, CSV UTF-8(쉼표로 분리) (.csv)로 해도 안되네요..
몇일동안 삽질만하고있는거같아서 답답하네요..
삭제된 댓글입니다
해결했습니다 ㅎㅎ
엇 혹시 어떻게 해결하셨나요ㅠㅠ
저의 경우 training code와 inference code가 따로있는데 폴더 리스트를 class 명으로 뒀었고 이를 추출하는 과정이 reproducible하지 않았습니다.
딱 0점이 아니신가보군요ㅠ
저는 맥북이어서 그런지, 딱 0점이 나와서 이럴수 있나 싶습니다ㅠ
네 0.0002 이런 식으로 나와서.. 전 윈도우에서 코랩 사용했었습니다.
저도 colab에서 베이스라인 코드대로 생성해서 제출하는데, 계속 0점으로 나와요,
sample_submission.csv를 그대로 제출하면 0이 아닌 점수가 나오고요
몇일째 이러고 있어요.. 누가 이유를 아실까요?
아마 포맷문제일 가능성이 커보이네요..
저는 코렙에서 진행하는데 label의 글씨(encoding 규격)가 달라서 그런 것 같아요.
LabelEncoder로 라벨을 바꿔주셨다면 학습하신 후에 해당 글씨에 대한 후처리를 진행해주신 다음에 제출하시면 될 것 같아요.
제출하시기 전에 예컨대 if label == "훼손": label = "훼손"(직접 타이핑한 글자, **주의 라벨 복붙 하지 마세요!!) 이런 식으로 바꿔주신 다음에 제출해보셔요.
문제 해결하셨나요?
LabelEncoder 쓴걸 inverse_transoform 안하고 손코딩 한 뒤에 to_csv에 encoding='utf-8'추가해서 내니까 문제가 안생기네요.
이거때문에 몇일을날린지... 허무하네요;
코드 공유 해주실 수 있으실까요 ,,!
submit.to_csv('submit.csv', index=False, encoding='utf-8') 을 말씀하시는 것 같네요
df[df.label=='오염']을 하게되면 실제로 있음에도 데이터가 안뜰거에요!
제 예상으로는 제가 입력한 '오염'과 df.label에 있는 '오염'은 우리가 보기엔 똑같은 한글이지만 인코딩이 달라서 그런 것 같습니다.
(예시로, 제가 입력한 '오염'은 utf-8이고 df.label에 있는 '오염'은 'cp949')
따라서, read_csv를 할 때 encoding을 넣어주는 것도 하나의 방법이 될 수 있을 것 같습니다.
저는 LabelEncoder를 사용해서 0,1,... 으로 변환한 뒤에, 나중에 le.inverse_transform을 사용하지 않고 아래의 함수를 사용해서 역변환해줬습니다.
아래의 함수 참조 부탁드립니다.
def label_decoder(label):
new_label =[
'가구수정' if l==0 else
'걸레받이수정' if l==1 else
'곰팡이' if l==2 else
'꼬임' if l==3 else
'녹오염' if l==4 else
'들뜸' if l==5 else
'면불량' if l==6 else
'몰딩수정' if l==7 else
'반점' if l==8 else
'석고수정' if l==9 else
'오염' if l==10 else
'오타공' if l==11 else
'울음' if l==12 else
'이음부불량' if l==13 else
'창틀,문틀수정' if l==14 else
'터짐' if l==15 else
'틈새과다' if l==16 else
'피스' if l==17 else
'훼손' if l==18 else
'NaN' for p in label
]
return np.array(new_label)
참고로, [(i,label) for i,label in enumerate(le.classes_)]로 본인의 클래스가 함수와 매칭이 잘 되어있는지 확인 후 사용하셔야합니다!!
정말 정말 감사합니다!
덕분에 쉽게 문제 해결하였습니다 감사합니다!!
삭제된 댓글입니다
혹시 이 문제 관련된 공식 답변 받을 수 없을까요.. 일주일째 온갖 방법 동원해서 고쳐볼라 했는데 해결이 안됩니다
한고쿠 대회는 또 이런 게 있구나 흠냐
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
저도 어제부터 0점에 가깝게 나오고 있어서 답답하네요