Eu tenho um conjunto de dados com o seguinte formato.
Há um resultado binário câncer / sem câncer. Todo médico no conjunto de dados viu todos os pacientes e julgou independentemente se o paciente tem câncer ou não. Os médicos dão a seu nível de confiança em 5 que seu diagnóstico está correto e o nível de confiança é exibido entre parênteses.
Eu tentei várias maneiras de obter boas previsões deste conjunto de dados.
Funciona muito bem para mim apenas mediar entre os médicos, ignorando seus níveis de confiança. Na tabela acima, isso produziria diagnósticos corretos para o Paciente 1 e o Paciente 2, embora tenha dito incorretamente que o Paciente 3 tem câncer, uma vez que por uma maioria de 2-1 os médicos acham que o Paciente 3 tem câncer.
Eu também tentei um método no qual aleatoriamente provamos dois médicos, e se eles discordam entre si, o voto decisivo é para o médico que estiver mais confiante. Esse método é econômico, pois não precisamos consultar muitos médicos, mas também aumenta bastante a taxa de erros.
Eu tentei um método relacionado no qual selecionamos aleatoriamente dois médicos e, se eles não concordam, selecionamos aleatoriamente mais dois. Se um diagnóstico estiver à frente por pelo menos dois 'votos', então resolveremos as coisas a favor desse diagnóstico. Caso contrário, continuamos a amostrar mais médicos. Este método é bastante econômico e não comete muitos erros.
Não posso deixar de sentir que estou perdendo uma maneira mais sofisticada de fazer as coisas. Por exemplo, pergunto-me se há alguma maneira de dividir o conjunto de dados em conjuntos de treinamento e teste, e descobrir uma maneira ideal de combinar os diagnósticos e depois ver como esses pesos se comportam no conjunto de teste. Uma possibilidade é algum tipo de método que me permita médicos com baixo peso que cometeram erros no conjunto de ensaios e, talvez, diagnósticos com excesso de peso feitos com alta confiança (a confiança se correlaciona com a precisão neste conjunto de dados).
Eu tenho vários conjuntos de dados que correspondem a essa descrição geral, portanto os tamanhos das amostras variam e nem todos os conjuntos de dados estão relacionados a médicos / pacientes. No entanto, nesse conjunto de dados em particular, existem 40 médicos, cada um com 108 pacientes.
EDIT: Aqui está um link para algumas das ponderações que resultam da minha leitura da resposta da @ jeremy-miles.
Os resultados não ponderados estão na primeira coluna. Na verdade, neste conjunto de dados, o valor máximo de confiança era 4, e não 5, como eu disse anteriormente. Assim, seguindo a abordagem de jeremy-miles, a maior pontuação não ponderada que qualquer paciente poderia obter seria 7. Isso significaria que literalmente todos os médicos afirmavam com um nível de confiança de 4 que aquele paciente tinha câncer. A pontuação mais baixa não ponderada que qualquer paciente poderia obter é 0, o que significa que todo médico afirmou com um nível de confiança 4 que aquele paciente não tinha câncer.
Ponderação por correlação total de itens. Calculo todas as correlações totais de itens e, em seguida, pondero cada médico proporcionalmente ao tamanho de sua correlação.
Ponderação por coeficientes de regressão.
Uma coisa que ainda não tenho certeza é como dizer qual método está funcionando "melhor" que o outro. Anteriormente, eu estava calculando coisas como o Peirce Skill Score, que é apropriado para casos em que há uma previsão binária e um resultado binário. No entanto, agora tenho previsões que variam de 0 a 7 em vez de 0 a 1. Devo converter todas as pontuações ponderadas> 3,50 para 1 e todas as pontuações ponderadas <3,50 para 0?
fonte
No Cancer (3)
é issoCancer (2)
? Isso simplificaria um pouco o seu problema.Cancer (4)
até a previsão de nenhum câncer com a máxima confiançaNo Cancer (4)
. Não podemos dizer issoNo Cancer (3)
eCancer (2)
somos iguais, mas poderíamos dizer que há um continuum, e os pontos médios nesse continuum sãoCancer (1)
eNo Cancer (1)
.Respostas:
Primeiro, eu veria se os médicos concordavam um com o outro. Você não pode analisar 50 médicos separadamente, porque superestimará o modelo - um médico ficará ótimo, por acaso.
Você pode tentar combinar confiança e diagnóstico em uma escala de 10 pontos. Se um médico diz que o paciente não tem câncer e está muito confiante, isso é 0. Se o médico diz que ele tem câncer e está muito confiante, esse é um 9. Se o médico diz que não, e não estão confiantes, isso é um 5, etc.
Quando você está tentando prever, faz algum tipo de análise de regressão, mas, pensando na ordem causal dessas variáveis, é o contrário. Se o paciente tem câncer é a causa do diagnóstico, o resultado é o diagnóstico.
Suas linhas devem ser pacientes e suas colunas devem ser médicos. Agora você tem uma situação comum em psicometria (e foi por isso que adicionei a tag).
Em seguida, observe as relações entre as pontuações. Cada paciente tem uma pontuação média e uma pontuação de cada médico. A pontuação média está correlacionada positivamente com a pontuação de todos os médicos? Caso contrário, esse médico provavelmente não é confiável (isso é chamado de correlação item-total). Às vezes, você remove um médico da pontuação total (ou pontuação média) e verifica se esse médico se correlaciona com a média de todos os outros médicos - essa é a correlação total do item corrigido.
Você pode calcular o alfa de Cronbach (que é uma forma de correlação intra-classe) e o alfa sem cada médico. O alfa sempre deve aumentar quando você adiciona um médico; portanto, se ele aumentar quando você remove um médico, a classificação do médico é suspeita (isso não costuma dizer nada diferente da correlação total entre itens corrigidos).
Se você usa R, esse tipo de coisa está disponível no pacote psych, usando a função alpha. Se você usa Stata, o comando é alfa, no SAS é proc corr e no SPSS está em escala, confiabilidade.
Em seguida, você pode calcular uma pontuação, como a pontuação média de cada médico ou a média ponderada (ponderada pela correlação) e ver se essa pontuação é preditiva do verdadeiro diagnóstico.
Ou você pode pular esse estágio e regredir a pontuação de cada médico no diagnóstico separadamente e tratar os parâmetros de regressão como pesos.
Sinta-se à vontade para pedir esclarecimentos e, se você quiser um livro, gosto das "Escalas de medição de saúde" de Streiner e Norman.
-Editar: baseado em informações adicionais dos OPs.
Uau, isso é um alfa de Cronbach. A única vez que eu vi isso tão alto foi quando um erro foi cometido.
Agora eu faria regressão logística e observaria as curvas ROC.
A diferença entre ponderação por regressão e correlação depende de como você acredita que os médicos estão respondendo. Alguns documentos podem geralmente ser mais confiantes (sem serem mais habilidosos) e, portanto, podem usar os intervalos extremos mais. Se você deseja corrigir isso, usando correlação, em vez de regressão, faz isso. Eu provavelmente ponderaria por regressão, pois isso mantém os dados originais (e não descarta nenhuma informação).
Edit (2): Eu executei modelos de regressão logística em R para ver quão bem cada um previu a saída. tl / dr: não há nada entre eles.
Aqui está o meu código:
E a saída:
fonte
Duas sugestões prontas para uso:
fonte
P
= probabilidade de ser câncer dado pelo médico, então (em notação python):y=[1 if p >= 0.5 else 0 for p in P]
ew=[abs(p-0.5)*2 for p in P]
. Em seguida, treine o modelo:LogisticRegression().
fit
(X,y,w)
(Como está fora da minha área de especialização, a resposta de Jeremy Miles pode ser mais confiável.)
Aqui está uma ideia.
0^0=1
0^0=NaN
fonte
No Cancer (3) = Cancer (2)
No Cancer (3) = Cancer (3)
Da sua pergunta, parece que o que você deseja testar é o seu sistema de medição. No campo da engenharia de processo, isso seria uma análise do sistema de medição de atributos ou MSA.
Este link fornece algumas informações úteis sobre o tamanho da amostra necessário e os cálculos executados para realizar um estudo desse tipo. https://www.isixsigma.com/tools-templates/measurement-systems-analysis-msa-gage-rr/making-sense-attribute-gage-rr-calculations/
Com este estudo, você também precisaria do médico para diagnosticar o mesmo paciente com as mesmas informações pelo menos duas vezes.
Você pode conduzir este estudo de duas maneiras. Você pode usar a classificação de câncer simples / sem câncer para determinar a concordância entre os médicos e por cada médico. Idealmente, eles também devem poder diagnosticar com o mesmo nível de confiança. Você pode usar a escala completa de 10 pontos para testar a concordância entre e por cada médico. (Todos devem concordar que câncer (5) é a mesma classificação, que nenhum câncer (1) é a mesma classificação, etc.)
Os cálculos no site vinculado são simples de realizar em qualquer plataforma que você possa estar usando para seus testes.
fonte