RMSE, R2, 데이터 전처리 및 모델 평가
Shared on August 3, 2026
Rmse 정도 하죠. 이것도 보여주고. 근데 이런 걸 보여줄 때는 어떻게 계산하는지를 당연히 보여줘야 돼요. 새로운 매출을. Rmse는 어떻게 계산하는지 안 보여줘도 되고요. 아 이거 파이썬 코드가 있긴 한데. 사실 이제 그렇기 때문에 이제 왜 자기가 뭘 했는지 알아야 되는 이유가 그런 거예요. 왜냐면 이렇게 하면 이렇게 계산하는 게 뭐냐고 했을 때 그런 걸 알아야 되네요. 아 이런 걸로 내가 이걸 잘했다는 걸 보여줘도 되냐. 낮으면 좋은 건데 왜 이런 게 의미가 있냐. 사실 남들이 안 쓰는 걸 하려면 거기에 대한 설명도 있어야 되거든요. 예를 들어 뭐 내 거는 뭐 로그스켓에서 보였는데 Rmse 너무 작아서 실제로 이게 뭐 0.01이나 0.0이나 별 차이가 없어 보이지만 뭐 Relative한 에러로 봤을 때도 이게 엄청 큰 차이다. 뭐 이런 설명이 필요하거든요. 왜냐면 사실 에러라는 게 뭐 예를 들어 시험이 시험이
쉬운데 90점 맞은 거랑 어려운데 90점 맞은 거랑 되게 다른 거잖아요. 그런 거를 이제 추가로 보여야 되는 게 있고요. 아직 전체 필드 이거는... 아 네 그건 못 할 수 있죠. 이것도 43.9%라는 게 이것도 당연히 이게 무슨 매치인지도 봐야 되고요. 30x32로 한 거... 아 그래서 당연히 이게 파워가 마이너스가 있으면 당연히 안 되겠죠? 이거는 이제 힘을 배워... 에너지는 당연히 음수가 없잖아요. 사실 그건 다 0으로 말해요. 정확히는 이제 로그값 기준으로 1보다 낮은 값은 다 버려도 돼요.
로그가 아니라 이제 그래서 저는 이제 다 그냥 1보다 작은 건 다 1로 그냥 노마그리지 해놓고요 사실 1이면 의미가 없거든요 실제로 그 데이터에서도 그냥 0인 거예요 사실 로그 씌우고 막 Z스코어 하셨을 때 예예 뭐 그거랑 비슷한 그거랑 똑같은 건 아닌데 얘 같은 경우는 그냥 그냥 1보다 작은 건 다 1로 만들어 놓고 로그 씌워가지고 하는 게 나쁘지 않아요? 혹시 그럼 이 필드 이건 어떻게 하셨을지 혹시? 아 그게 제가 이 필드 제가 로그로 했죠 그냥 로그로 해도 되고 사실 뭐
로그가 좀 더 낫긴 해요. 왜냐면 0과 1 사이로 노멀라이즈 해도 되고 마우스 1과 1 사이로 해도 되는데 저는 로그로 할 것 같아요. 로그가 좀 나쁘지 않아요. 파워 칼은 0에서 23만 그 사이였는데 네. 그것도 그러면 로그 씌우고 Z 스코어로? 아 뭐 로그를 씌우고 Z 스코어로 해도 되고 그냥 뭐 로그 씌우고 그대로 해도 되고 상관없어요. Z 스코어 씌우는 게 낫죠 사실 로그 씌우고. 근데 이게 그렇게 하는 문제가 내가 노멀라이즈한 Z 값에 대한 뭐 민 배리언스 트레이닝 해서 외우고 있다가 테스트에 적용을 해야 되는데 그게 이제 뭐 그
CU 같은 데 잘 안 될 수도 있다는 부분들이 있긴 하죠. 근데 큰 상관은 없을 거예요. 이걸 어떻게 다시 복원하고 이런 과정을... 네, 그런 것도 사실 생각을 해야 돼요. 그냥 왜냐하면 이제 데이터가 어느 정도 있고 할 때 그런 거를 어떻게 작냐에 따라 성능이 확확 바뀌는 경우도 있거든요. 보통은 그러면 사실 문제가 있는 거지만 그게 뭐 사실 학습이 안 되는 경우도 있어요. 그냥 그런 거를 잘 잡아주지 않으면. 왜냐하면 이게 정보가 흔히 말하는 로스 펑션이 되게 복잡하기 때문에 이걸 이게 뭐 어느 정도 완만하게 만들어야 내가 어디서 시작해도 잘 수렴을 하지. 걔를 이제 좀 수렴이 어렵게 만들어 놓으면 그냥 되게 이상한 데 가서 수렴하고 학습이 안 되고 그런 경우도 많아서.
네 일단 쭉 내려 90% 이거 그래서 그 21 여기서는 보통은 이제 R2 네 보통 R2로 하는 거죠 아 이걸로 한번 다시 로그 파워 기준으로는 사실 근접했을 수도 있어요 이거 말 그대로 근데 파워 자체는 R2는 로그를 다시 복원한 다음에 해야죠 원본 파워로 근데 미디언 릴레이티브 에러가 20%면 R2가 0.9는 절대 안 나올 것 같은데 정확히는 모르겠네요 이거는 네
좀 더 낮아질 것 같긴 한데...
이렇게 간단하게 짜놨었습니다 이것도 다시 한번 찾아봐서 프로젠 어떻게 쓸지 그래서 이거를 좀 해보면 좋을 것 같아요 더 지금 데이터도 줬으니까 네 그거 3만 개짜리도 잘 열어보고 거기서 제가 이거 제가 완전 로우도 드렸을 거고 이제 사실 이거는 여기선 어느 정도 멈춰놓고 제가 이제 2주 동안 없거든요 이번 주 이번 주 제 생각에는 수요일까지만 나올 것 같고 다음 주는 아예 안 나와요 네 그러니까 그동안 제가 줬던 코드랑 데이터랑 다 드렸거든요 네 한번 그거 그 주요하에 있어요?
서버에 올려놓은거 있습니다. 모바일 스토러로 이따가. 아.. 제가 데이터 드린거를 서버에 올려놓으셨나요? 네. 서버에 올려놓은거 있습니다. 모바일 스토러로 이따가. 그래요? 어디 올려갔어요? 이거 이 파일이고 하나는. 아 네 데이터 한번 볼래요? 여기 013040이 그거거든요. 저게 원본이에요. 맨 위에 있게요. 아마 안 열릴거에요 이게. 아 엄청 붙었어요. 이게 아마 3만개가 들어있으니까. 여기 서버에요? 네. 익스트랙트는거 보이네요. 네.
아 왜 이래. 이거, 이거가 안돼. 이걸로. 아 되네. 아 어떡해. 아 이거 아니. 어디야. 아아...
0.0 그냥 0135-4공 있지 않나? 네
아 데이터로 가요.
그래서 어... 근데 여기 사실 LST라는 너무 많이 나오거든요. 어떻게 보여줘야지. 아니면 KM 같은 걸로 10개. 아 뭐 그게 여기서 잘 보면. 근데 여기서 보면 사실... 그래서 이게 간단한 게 간단히 설명을 잘해주자면 이게 있거든요? 이게 무슨 소리냐면 이게 이미지 번호고요. 네. 그 이미지 파일을 보면 이미지 번호가 다 있어요. 0번부터 시작하면 걔는 아마 0번부터 시작할 거야 이미지는
그래서 아닌가 1번인가 이미지 번호 아마 1번부터 시작할거야. 그 이미지 번호에 해당하는 그럼 이제 뭐 예를 들어 이게 보면은 그 파일이 이름이 어떻게 되어있냐면 이름이 여기서 예를 들어 vr1 이렇게 되어있어요. 이런 식으로 되어있어요. 이러면 1번 이미지에 739nm 파장에 1항 H필드가 있어요. 그게 아마 뭐 그 텔? 텔 뭐라고? 이거 누가 보더라?
검색해봐요. 저도 이걸 잘 안 하고. 근데 뭐 그런 식으로 해서 3만 개가 다 있어요. E랑 H가. 그걸 봐. 그리고 사실 그게 아니라 파워만 가져있는 것도 있는데.
근데? 손상승 하나 하나? 누구? 현승 학생이요. 현승.. 조금 늦는다 할 때..
이런 식으로 뒤에 헤드 10개만 했는데 이런 식으로 하면 이렇게 다 있죠? 이게 1랑 1치 9번 이미지에 1464nm 파장을 쐈을 때 1필드랑 1치필드 그렇게 있어요. 그래서 그거를 사실 전철에 하는 코드가 다 있어요. 그게 아마 루안이 아니라 이거 말고 데이터말고 제가
200GB짜리 조그만 그거에 준 거 있잖아요. 그거는 여기 있습니다. 이거 뭐야. 아니, 이거 말고 제가 하나 더 줬잖아요. 네. 그것도 올려놨는데 어디였지. 아, 이건 이 파일인가? 아, 네. 여기에 보면 이제 이건가? 그러니까 여기랑 여기에 제가 만들었던 파이썬 파일들이 다 있거든요. 네. 그냥 파인스 파인 통째로 줬어요. 웨이트도 있어요. 그래서 아마...
이건가? 이게... 뭐 이런 식으로 디스틸드 파워인데 아 이거 그거구나 아무튼 이거를 하면 이거는 그거고요 이 H블더로부터 파워 예측한 그거고 네 이거는 전체... 네 이거 말고 여기에 들어가서 모델 웨이트를 보면 이게 아마...
이 모델이 이미지랑 파장주면 파워 예측하는 모델이고요. 로그로 예측할 거예요. 그냥 생 로그로. 그리고 이거를 돌리는 게 아마 em.power라는 파이썬 파일에 있을 거고 그걸 돌리는 게 아마 테스트 fp 모델이거나 fp 모델 v2 거나 그럴 거거든요. 그래서 그거를 좀 한번 보면 될 거예요. 그래서 뭐...
데이터셋 같은 경우도 이렇게 트레이 테스트도 제가 해놨고요. 이미지 데이터랑. 사실 이게 파워 관련된 데이터 그대로 쓰면 되고요. 이거 형식은 아마 EM 파워에 가면 여기에 이거 파이썬으로 열면 여기에 이런 거 있어가지고 클론한테 시켜가지고 좀 읽어보라고 하면 될 거예요. 저도 좀 돼가지고 기억이 잘 안 나는데. 그리고 뭐 사실 뭐 Inverse in EM diffusion 쪽에 있긴 한데 아무튼 뭐
그렇습니다. 지금 그러면 만장 이미지가 있잖아요. 저도 그러면 세 파장에서 해야 될까요? 랜덤으로 아니면 12 파장으로 그냥 하는 게. 어떤 걸요? 그 만장의 이미지를 교수님은 세 개의 파장을 랜덤으로 쏘셨을까요? 400에서 800에서 하나 랜덤 탭플링하고 800에서 1200에서 하나 랜덤 탭플링하고 1200에서 1600에서 하나 랜덤 탭플링했죠. 그렇게 하셨잖아요. 네. 저도 그럼 혹시 어떻게. 사실 그렇게 하는 게 더 낫죠. 왜냐하면 네. 그렇게 하는 게 이미지가 이미지가 너무 많은 게 아니라 실제로
그렇게 해야 이제 모든 파장에서 예측을 다 할 수 있죠. 웬만하면. 그러니까 파장을 아무거나 집어넣어서 예측이 되어야 되는데 물론 사실 12개. 12개로 하면은 그 중간간 인터플레이션 해서 잘 할 텐데 그래서 사실 12개로 할 거면 12개도 그냥 12개 아니라 거기서 샘플링해서 하는 게 낫죠. 400에서 500에서 샘플링해서 하는 게 나는데 뭐 그건 사실 큰 상관없어요. 그냥 그런데 뭐 사실 엄밀히 말하면 비슷한 헌병을 하려면 지금 만장의 파장 3개니까 100장의 파당 3개만, 300개만 가지고 해도 되죠.
100장에 파장세... 정확히 200장에... 지금 만장에 파장세계인데 제가 얘기로... 대사지 풀면 어떻게 보면...
아마 테스트가 제가 알기로 이게 1번부터 1000번을 테스트로 쓸 거예요. 제가 아는 게 맞으면. 그건 이렇게 뒤에서 랜덤 500, 500 이렇게 안 뽑고 그냥. 얘는 그냥 만 장 중에서 앞에 천 장은 트레이닝할 때 안 썼던 걸로 기억해요. 제가 기억이 맞으면. 그러니까 사실은 이제 그 똑같이 구리를 하든 뭘 하든 그냥 했을 때? 사실은 100장만 가지고
100장에다 9,000개를 학습한 모델을 가지고 거기 디스티를 하던 트랜스퍼러닝을 할 때는 트레이닝 사이즈랑 테스트 사이즈를 비슷하게 만들어주는 게 좋아요. 200개 하면 100개 100개 정도. 왜냐하면 그렇게 해야 사실 조그만 가지고, 왜냐하면 테스트 시 너무 적으면 말이 안 되거든요. 10개로 테스트 할 수 없잖아요. 200개 파당 3개 아니면 1000개 파당 3개에서 500개, 500개를 쪼개도 나쁘지 않아요. 이미지 1000개. 근데 이미지 1000개를 그냥 생자로 만들어도 되고 처음부터 이미지를. 그게 아니면 제가 본 이미지에
원래 있는 아마 1000번부터 1000번부터 10000번부터 10000번부터가 트레이닝이고 1번부터 1000번이 제가 알고 테스트거든요 제 기억이 맞으면 그러면 1번부터 1000개 중에 랜덤 500개 해서 얘는 테스트를 쓰고 그 다음에 1000번부터 10000개 중에 랜덤 500개 해서 얘는 테스트 트레이닝으로 써가지고 이 1000부터 10000까지 있는 트레이닝 데이터랑 그 다음 은으로 된 이 27000개겠죠? 9000개에다가 파장세계 이거랑 1500개 구리를 더하면 내가 1500개 구리를 가지고 테스트를 했을 때 과연 잘하겠느냐 원래 실제로 그냥 해보면 거의 잘 안되잖아요 근데 얼마나 더 잘하겠느냐 뭐 이런 거를 좀 보는 게 좋고 RMS이랑 R2로 보여주는 게 좋고 RMS이랑 R2는 파워를
기준으로, 그러니까 Transmittance를 기준으로, RMS랑 R2는 Transmittance라고 하는데 Transmittance는 그냥 그거 23만으로 나눈 노멀라이션 값에서 재면 돼요. 예측할 때도 그걸로 해도 되긴 하는데, 뭐 저는 로그로 했긴 한데, 그거는 이제 RMS와 R2는 0에서 1 사이에 노멀라이션 값에서 재면 돼요.
그리고 좀 데이터도 보고 코드 짠 것도 한번 보고 그냥 그 GPT랑 대화를 한번 봐봐요. 네. 이거는 제가 박사 말년이랑 코닥 따서 한 대화를 다 짜놓은 거거든요. GPT 어떠시죠? 그래서 좀 코드를 못 짠 부분도 있어요. 잘못 짠 것도 있고 그리고 GPT가 이거 좀 이상하게 짰다라고 하면 GPT가 이상하게 맞는 말일 수도 있는데 걔가 틀렸을 수도 있거든요. 그래서 그런 건 저한테 한번 물어보시는 게 나을 수도 있어요. 아, 이제는 거고. 그는 거고.
그렇습니다. 그러면 살짝... 정리...
감사합니다.
연구 여러 개 하는데 그래도 이거는 뭐 사실 하루아침에 할 수 있는 건 알고 준수학생이 이 연구는 사실 저랑 이렇게 해가지고 그래도 어느 정도는 뭐 결과가 있어야 거기, 하여튼 졸업만은 크게 뭐 적당히 해야 되는데 사실 이게 잘 되면은 요거는 이제 빨리 웹업을 해서 좀 이제 그 학회 어느 정도는 전화를 낼 수 있으면 좋거든요. 그래서 저는 생각에는 좀 주자가 나쁘지 않아서 전화를 낼 수 있을 것 같거든요. 막 네이처에 몰기지고 일어졌지 않나요? 아 그거야, 네이처 자매지라서. 네이처는 당연히 못내고요. 네이처는 훨씬 더 확가운데 있고요. 근데 뭐..
정말 잘 되면 이제 좀 되게 좋은 전환을 낼 수도 있고 근데 뭐 그렇게 하려면 되게 실험이 확고 그러니까 저희 실험뿐만 아니라 실제 데이터로 실제 실험으로 한 실험도 있을까 실제 디바이스로 한 실험이 포함이 돼 있어야 돼서 그 정도 3급에 낼 수 있을지 좀 봐야 될 것 같고 일단은 해보면 좋죠. 그럼 일단 천장 돌려보는데 일단 은 0에서 1,000번 중에 500개는 테스트 쓰고 나머지..
이거랑? 그 이미지를 가지고 구리에서 데이터를 만들라는 거죠. 무슨 소리냐면 은을 기준으로 은의 이미지들 있잖아요. 근데 지금도 구리에서 데이터 만들 때 제가 드린 이미지 썼잖아요. 네. 그게 은 이미지와 똑같거든요. 네. 그럼 이제 잘 생각해보면 어 나 은에서 이미지를 은의 이미지에다가 구리를 주고 파장을 다르기 쉬운 거를 했을 때 내가
그냥 아무 생각 없이 데이터 청결을 만들어서 걔를 테스트랑 트레인으로 분리하면 그 내가 구리를 테스트하는 이미지에 은의 트레이닝 모델이 좋은 이미지가 들어갈 수도 있죠. 그러니까 저희가 그걸 확실히 분리해야 되는 게 보면 이제 저희는 이제 자, 은으로 학습한 모델이 있고 그리고 여기에다가 구리 데이터를 조금을 더해서 좋은 결과가 없는 거라고요?
그러면 사실 얘가 본 트레이닝 이미지랑 얘가 본 트레이닝 이미지가 똑같아야겠죠? 정확히는 사실 이거를 테스트할 때 보는 이미지가
얘나 얘랑 겹치면 안 되겠죠? 테스트할 때는? 네, 테스트할 때. 그러려면 내가 구리로 테스트를 할 거 아니에요. 그럼 구리를 테스트할 이미지는 은의 테스트셀의 이미지를 들고 안다는 거죠. 아, 같은 이미지? 네, 그렇게 해야죠. 트레이닝하는 건 은의 트레이닝했던 이미지 중에 랜덤하게 500개를 뽑아서 거기에다가 파장한 뭐 랜덤하게 집어넣고 똑같이 그렇게 해서 트레이닝 500개 만들고 테스트는 똑같이 은의 테스트해서 이미지를 보고 그래서 나는 총 9,000개의 이미지에
우리 플러스 9천 개의 의미야? 사실 트레이닝은 이 9천 개 중에 볼 필요는 없어요. 테스트는 반드시 이걸 유지해주는 게 좋으니까 뭐라고 해야 될까? 사실 이미지를 그냥 처음부터 새 걸 만들었으면 상관없거든요. 근데 이미지를 있는 것 중에 가져다 쓰려면 트레이닝은 트레이닝끼리 테스트, 테스트끼리 맞춰줘야 되고 내가 이미지를 사실, 매트랩에 이미지 만든 코드도 있거든요. 그거를 그대로 가져다 쓸 거면 사실 그냥 해도 상관없어요. 그냥 한 다음에 렌던 말고 맥케씩 쪼개올도 될까요?
근데 이게 문제가 뭐냐면 예를 들어 은은 애초에 학습할 때 최인의 이미지만 봤죠. 근데 내가 뭐 예를 들어 은의 테스트에 있는 이미지를 얘.. 아 그니까 은은 최인이 있는지만 봤는데 내가 그 만개의 이미지를 랜덤하게 천 개를 뽑은 다음에 500개 가르면은 내가 구리로 테스트할 이미지 중에 얘가 본 이미지가 있을 거 아니에요. 아 겹치. 네 그러면 안 되겠죠. 그러면 이제 사실 네터세에 오염이 있어서 정확한 이제 평가가 안 돼요. 이런 게 이제 실험 세팅할 때 중요한 부분들이거든요. 뭐.. 실험할까? 아.. 진짜? 랩 잘 지우겠습니다. 아..
그렇습니다. 그 부분을 생각하는 게 제일 중요한 포인트예요. 아, 그렇죠. 그런 거는 실험을 사기할 때 그런 거를 잘못하면 그 실험 자체가 되게 사실 오류가 큰 거예요. 예를 들어 제가 들은 얘기인데 그럼 어느 교수님이 눈물을 내려버리는 결과가 잘 나와서 논문 마감 3회 전에 교수님, 저 테스트셋에 트레이닝 된다고 썩히고 있었는데요? 이런 걸 하면 사실 그냥 눈물을 못 내는 거예요. 감사합니다.
아... 2주 동안... 해외했습니다. 근데... 그럼 목표를 뭐로 정해보면 좋을까요? 일단은 지금... R2 값을... R2 값으로 일단 모델을 만들어보고 그... 제가 드린 데이터랑 코드들을 좀 이해하는 거를... 그러니까... EMPOWER 부분만 이해하면 될 것 같아요. EMPOWER 부분. EMPOWER에 있는... 그 함수... 파이썬 코드들을 좀... 클로드랑 같이 얘기를 하면서... 클로드든 오픈했고... 코덱스든 뭐... 해서 하고... 그 다음 사실 R2로 바꿔서 성능을 보고... 그런 거를 다 해보면 좋겠죠. 음...
없어요? 중간중간 괜찮아요? 네 왜 이렇게 죽을라 그래요? 날이 덥긴 하죠? 너무 너무 덥습니다 중간중간 보고 오길 바랍니다 네, 안 돼 뛰어 왔어? 오, 오케이 오케이 발표 준비 되면 올라와요? 또 걸리지 않나요? 바로 할 수 있어요? 아, 오늘 BBT 반대로 왔습니다 아, 그래 그럼 반대로 왔어요? 뭐해?
아 아 아 아 아
오우
오늘의 주인공은