2012-03-29 2 views
2

나는 이미지 압축 알고리즘을 사용하여 훈련을 한 다음 몇 가지 테스트 이미지를 제공 할 수 있습니다. 이 코드에는 문제가있는 것으로 보입니다. 이것을 테스트하기 위해 필자는 테스트 한 것과 동일한 테스트 이미지 (예 : test set == train set)를 제공하려고했습니다. 이제 내가 가지고있는 일반적인 질문은 다음과 같습니다.알고리즘의 훈련 단계에 대한 온 전성 검사

교육을받은 데이터와 정확히 동일한 알고리즘으로 알고리즘을 테스트하면 어떻게됩니까?

내 의심은 내가 알고리즘을 훈련 적이없는 것처럼 내가 같은 결과를 얻을해야한다는 것입니다 (즉, 단지 전혀 교육을받지 않은 상태에서 원래의 데이터로 테스트를했다)

는이 상황에 대해 어떻게 생각하십니까 ? 일반적인 테스트 유형 (온 전성 체크와 같은)은 알고리즘 트레이닝 단계가 합리적으로 이루어 지도록하는 것이 좋습니다.


답장을 보내 주셔서 감사합니다. 이 알고리즘은 문맥 트리 가중치를 사용합니다.이 값은 회색 점 이미지의 특정 지점에서 0 또는 1의 확률로 계산됩니다.이 특정 시점 이전의 상황을 사용하여 확률 (0/1)을 추정합니다. 압축 비율 (비트/바이트)은 결과의 장점. 먼저, 단일 이미지 (x)에 ctw를 실행하고 압축률을 0.75로 설정 한 다음 예제 6 이미지를 사용하여 트레이닝하고 동일한 이미지 (x)를 사용하여 테스트를 마쳤습니다. 그러나 훈련 후 압축 비율은 0.80 비트/바이트입니다. 이미지는 2048 * 2048 그레이 스케일입니다. 이러한 결과를 얻은 후에 교차 검증을 통해 ctw의 정확성을 테스트하려고 시도했으며 이전에 설명했던 이상한 결과를 얻었습니다.

이 정보가 도움이 되었기를 바랍니다.

고맙습니다.

답변

1

이것은 전적으로 알고리즘과 문제에 달려 있습니다. 일부 (예 : 가장 가까운 이웃 접근법을 사용한 분류)는 완벽한 응답을 얻습니다. 대부분은 교육 데이터와 동일한 배포에서 가져온 다른 테스트 데이터보다 성능이 뛰어나지 만 완벽하지는 않습니다. 나는 훈련을하지 않은 것처럼 어디에 있을지도 모릅니다. 그러나 훈련없이 테스트하는 대부분의 알고리즘은 정의 된 작업이 아니거나 완전히 임의의 결과입니다.

훈련 데이터를 테스트하면 코드가 제대로 작동하는지 확인하는 것이 좋습니다. 정상적으로 작동해야하기 때문입니다. 그러나 테스트 할 때 사용하는 작은 교육 세트/테스트 세트를 가지고 테스트 세트에서 합리적인 일을하는지 확인하는 것이 좋습니다. 분류 또는 회귀를 사용하면 실제 성능 평가를 수행하기 위해 일반적으로 교차 유효성 검사의 변형 (교육 집합 테스트를 피하기 위해)을 수행 할 수 있으며 코드 테스트를 위해 빠르게 실행되는 일부 작은 데이터 세트에서이를 수행 할 수 있습니다.

내가 다루는 설정이 무엇인지는 아직 알지 못합니다. 좀 더 설명해 주시겠습니까? 즉 알고리즘이 이미지 압축을 수행하기 위해 학습 집합을 어떻게 사용합니까?

2

귀하의 의혹이 잘못되었습니다. ML 알고리즘은 알고리즘이 작업에 완전히 부적합하거나 심하게 고안되고 수렴하지 않는 경우를 제외하고는 일반적으로 훈련에 사용 된 세트에서 매우 좋은 결과를 (경우에 따라 완벽하게) 제공해야합니다.

압축 알고리즘을 가르치는 방법을 잘 모르기 때문에 말할 수 없습니다. 결과의 "장점"을 측정하기 위해 원본 파일과 출력 파일의 비율을 사용하고 있습니까?이것을 기반으로 알고리즘을 어떻게 조정하고 있습니까? 조정이 수렴을 일으키는 지 어떻게 확인하고 있습니까? 무작위 효과 만있는 것이 아닙니다.

정신 건강 검사가 진행되는 한, 알고리즘이 훈련에 사용 된 세트에서 더 나은 결과를 제공하지 않으면 알고리즘이 작동하지 않습니다. 그 반대는 사실이 아닙니다. 훈련 세트 테스트가 잘 작동한다고해서 알고리즘이 잘 작동하는 것은 아닙니다.

관련 문제