알고리즘 : 값이 확실하지 않은 경우 이진 검색


11

각 단계의 테스트에서 잘못된 결과가 나올 때 이진 검색을 수행하는 알고리즘이 필요합니다.

배경 : 학생들을 12 가지 난이도 수준 중 가장 적절한 곳에 배치해야합니다. 현재의 접근 방식은 무차별 적이며 난이도 증가, 세 가지 잘못 후 중단 floor((score - 1) / 5) + 1, 최소 1의 수준으로 학생을 배치하는 60 가지의 4 가지 객관식 질문을 합니다.

고객이 실제로 프로그램을 사용하기 전에 최대 60 개의 질문으로 테스트를받을 때 고객이 종료되는 것이 우려되므로 테스트에서 묻는 질문 수를 최소화하고 싶습니다. 또한 고객이 배치 테스트를 건너 뛰고 (길게 보이기 때문에) 너무 쉬워 프로그램을 포기하는 것이 우려됩니다.

평균 배치는 실제로 레벨 2에 있으므로 학생의 50 + % 이상이 <11 점을받습니다 (즉, <14 개의 질문에 답). 일화 적으로, 이것은 심심하고 질문을 진지하게 받아들이지 않기 때문일 수 있습니다 (어린 아이들).

제안 된 해결 방법 : 난이도 6/7의 질문으로 시작하여 질문이 옳은지 아닌지에 따라 진행하는 12 개의 항목에 대한 이진 검색으로 테스트를 구현하십시오. 이론적으로 이것은 3-4 질문에서 그들에게 적절한 난이도를 찾을 수 있습니다.

문제 : 기존의 시험에서 세 가지 오답 후에 끝나고 60 개의 질문을 사용하여 12 가지 레벨 중에서 선택하는 것으로 추측 할 수 있듯이, 학생들은 정답 (시간의 25 %를 수행해야 함)을 우연히 말리거나 실수로 우연히 허용하려고합니다. 오답 (뚱뚱한 손가락, 오해 질문 등). 첫 번째 질문에 정답을 쓰면 다른 모든 질문에 잘못이 있어도 난이도의 상위 절반에 도달 할 수 있기 때문에 이진 검색에서는 훨씬 더 중요합니다.

개별 테스트가 정확하다는 것을 보장 할 수없는 이진 검색 알고리즘이 있습니까?

순진하게 각 단계에서 3 ~ 5 개의 질문을 시도 할 수 있으며, 초기 질문은 이후 질문보다 최종 결과에 더 큰 영향을 미치므로 이러한 추가 질문은 이후 단계가 아닌 초기 단계에만 추가 할 수 있습니다. 그것보다 더 있습니까?


왜 사전 테스트를해야합니까? 실제 테스트에 대한 질문을 스스로 조정하십시오
Scott Stensland

@ScottStensland, 재미있는 생각. 그러나 실제 프로그램은 8 개의 15 개의 HTML5 캔버스 '활동'또는 각각의 매우 가변적 인 디자인으로 구성된 각 레슨과 함께 10 개의 '레슨'으로 구성된 12 개의 '맵'입니다. 학생들은지도를 진행하며 각 수업과지도 후에 보상과 상을받습니다. 모든 게임 후에 레벨을 지속적으로 조정한다면 꽤 혼란 스러울 것입니다. 기존의 모든 게임에 피드백을 구축하고 각 게임에 대한 피드백 규칙도 알아 내야합니다.

@ 키릴, 질문을 다른 섹션으로 이동 / 크로스 포스트하는 쉬운 방법이 있습니까?

@jim 질문을하도록 요청하기 위해 중재자의주의를 끌도록 플래그를 지정하거나 여기에서이 질문을 삭제하고 새로운 질문을 만들 수도 있습니다. 교차 게시 (다른 사이트에서 동일한 질문을 동시에 수행)는 일반적으로 권장되지 않습니다. 나는 저에게 명확한 대답을 훨씬 빨리 얻을 수있는 비교적 간단한 통계 / 기계 학습 질문처럼 보이기 때문에 그 제안을했습니다.
Kirill

답변:


2

문제를 일련의 베이지안 확률로 취급하십시오. 처음에는 아이가 각 레벨 바로 아래에있을 가능성이 1/13이고, 완전성을 위해 아이가 최상위에있을 때의 1/13 기회가 있다고 가정하십시오. 그런 다음 : 1) 배열의 중간 수준, 즉 확률이 50 %에 가장 근접한 수준을 찾으십시오. 2) 그 수준에서 질문하십시오. 3) 25 % 오류율을 가정하고 Bayes 'Rule을 사용하여 각 셀의 확률을 업데이트하십시오. 하나의 셀이 충분히 높은 확률에 도달하면 가장 가능성이 높은 레벨을 종료하고 반환하거나 레벨에 대한 질문이 없을 때 추측합니다.

이 알고리즘의보다 엄격한 처리가 여기에 있습니다 . 구현하기 전에 읽어 보는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.