В настоящее время я работаю над convolutional neural network
для обнаружения патологических изменений на x-ray images
. Это простая binary classification
задача. В начале проекта мы собрали около 6000 x-rays
и попросили 3 разных врачей (экспертов в области) label
. Каждое из них получило около 2000 случайно выбранных изображений (и эти 3 набора были разделены - одно изображение было помечено только одним врачом).
После того, как labelling
было закончено, я хотел проверить, сколько случаев было у каждого врача помечены having
и non-having
изменениями, и вот что я получил:
# A tibble: 3 x 3
doctor no_changes (%) changes (%)
<int> <dbl> <dbl>
1 1 15.9 84.1
2 2 54.1 45.9
3 3 17.8 82.2
С моей точки зрения, если каждый из врачей получил случайно выбранный набор данных x-rays
,% случаи с изменениями и без них должны быть практически одинаковыми для каждого из них, если предположить, что они «думают одинаково», что здесь не так.
Мы разговаривали с одним из врачей, и он сказал нам, что вполне возможно, что один врач может сказать, что есть изменения в x-ray
, а другой может сказать что-то другое, потому что обычно они не смотрят на изменения в двоичном виде - так, например, amount/size
изменений могут быть решены в маркировке, и каждый из докторов может иметь разные cutoff
в уме.
Зная, что я начал думать о removing/centering
labels bias
. Вот что я придумала:
- Поскольку я знаю доктора 1 (скажем, он лучший эксперт), я решила «переместить» ярлыки доктора 2 и 3 в направлении доктора 1.
- Я собрал 300 новых изображений и попросил всех 3 из них
label
их (так что на этот раз 3 разных врача были labelled
). Чем я проверил распределение этикеток между докторами 1 и 2/3. Например, для доктора 1 и 2 я получил что-то вроде:
doctor2 no_changes changes all
doctor1 no_changes 15 3 18
changes 154 177 331
all 169 180
Из этого я вижу, что у доктора 2 было 169
случаев, когда у него lebeled
не было изменений, и доктор 1 согласился с ним только в 15
случаях. Зная, что я изменил метки (вероятности) для доктора 2 в случае без изменений с [1, 0] на [15/169, 1-15/169]. Точно так же у доктора 2 было 180
случаев изменений в x-rays
, и доктор 1 согласился с ним в 177
случаях, поэтому я изменил метки (вероятности) для доктора 2 в случае изменений с [0, 1] на [1 - 177/180, 177/180].
Сделайте то же самое для доктора 3
Сделав так, что я переобучил нейронную сеть с потерей cross-entropy
.
Мой вопрос, правильное ли мое решение или я должен сделать что-то по-другому? Есть ли другие варианты решения этой проблемы?