Один из способов - вычислить «Средняя средняя точность: MAP».
Но я не знаю об этой функции, реализованной в darkflow.
Есть ли у вас какие-либо предложения относительно того, какое репо в даркнете или какой человек написал сценарий для этого?
https://github.com/thtrieu/darkflow/blob/master/darkflow/utils/box.py имеет базовую реализацию, необходимую для оценки или вычисления перекрытия между двумя изображениями. Вы можете изменить его в соответствии с вашими потребностями и вычислить среднюю среднюю точность как произведение вероятности класса и box_iou
Нет никого, кто делал это раньше?
Их точность никто не проверяет?
Не знаю, почему до сих пор не реализованы такие важные вещи.
Если его нет, возможно, мне придется реализовать эту функцию самостоятельно и зафиксировать ее навсегда.
Мне тоже была бы интересна эта функция.
@ off99555 , я видел, как этот парень работал над счетом F1.
Привет @ off99555 , я тоже ищу вычислить карту MAP из моих собственных тестовых данных.
Я думаю, что у @sandeeprepakula есть хороший ответ, вы можете пошагово объяснить, как рассчитать MAP из окна iou? Я очень новичок в глубоком обучении и обнаружении объектов
Спасибо за вашу помощь
@andikira Я еще этого не сделал. Я тоже не уверен.
Привет @ off99555 , вы должны увидеть это репо https://github.com/Cartucho/mAP, затем увидеть дополнительную папку, вы можете конвертировать файлы .xml и .json, это репо отлично работает с darkflow.
@andikira @thtrieu Я обучил сеть yolo2-voice на наборе PASCAL V0C 0712 trainval и протестировал на тестовом наборе PASCAL VOC 2007, и производительность mAP составляет всего около 52% (после довольно большого количества эпох (200 ~), учитывая, что я инициализировал это с предварительно натренированными весами). Это значительно ниже официальных показателей (76,8% MAP). Я хочу включить в свою статью экспериментальные результаты с моей идеей использования YOLO v2. Может ли кто-нибудь знать причину?
я видел эту проблему раньше, проверьте другую проблему @bareblackfoot
@andikira Репо mAP
прекрасно работает. Я тоже написал туда сценарий. Спасибо!
Ты можешь
@andikira Репо
mAP
прекрасно работает. Я тоже написал туда сценарий. Спасибо!
Не могли бы вы объяснить более конкретно? как это работает ? как вы получили результаты?
@srhtyldz Перейдите на сайт https://github.com/Cartucho/mAP и перейдите в раздел быстрого запуска.
Идея состоит в том, что вам нужно клонировать репо, прогнозировать изображения с помощью darkflow, а затем копировать файлы прогнозов в папку mAP. Также скопируйте файлы достоверной информации.
И вы делаете все, как предлагает файл README репозитория mAP
и вы должны увидеть mAP
в виде единственного числа.
Также вам необходимо преобразовать ваши файлы из формата darkflow в их формат. Они предоставляют скрипт для преобразования формата darkflow в свой формат здесь: https://github.com/Cartucho/mAP/tree/master/extra
Прочтите README.
Также вам необходимо преобразовать ваши файлы из формата darkflow в их формат. Они предоставляют скрипт для преобразования формата darkflow в свой формат здесь: https://github.com/Cartucho/mAP/tree/master/extra
Прочтите README.
Я узнал, что в даркнете есть свойство карты. Вы пробовали это? Есть ли между ними разница или какой из них точнее?
@srhtyldz Думаю, алгоритм такой же. За исключением того, что mAP
- это алгоритм, у которого есть некоторые параметры, которые вы можете установить. Обычно это устанавливается вручную автором алгоритма. Таким образом, единственный раз, когда вы видите, что они сообщают разные числа, это когда у них разные параметры.
Я предлагаю вам прочитать объяснение того, как работает mAP
чтобы вы могли понять его скрытый параметр.
Я пробовал их обоих. Я использовал darknet
в своей диссертации, потому что darkflow
не имеет возможности указать папку вывода. Это критически важно для моего старшего проекта, потому что я запускаю код на FloydHub
- облаке глубокого обучения, которое позволяет вам использовать только определенные папки.
Сначала я использую darkflow
с mAP
а потом я узнаю, что не могу указать выходной путь, поэтому я переключился на darknet
и использовал его внутреннее вычисление mAP
.
И что самое главное, очень помогает владелец репо darknet
(форк-версия, владельцем которой является AlexeyAB). Он отвечает на все вопросы, которые я опубликовал, из-за которых я закончил до крайнего срока. Тогда это было очень тяжело. Я ему очень благодарен, я тоже написал его имя в диссертации.
Сначала я использую
darkflow
сmAP
а потом я узнаю, что не могу указать выходной путь, поэтому я переключился наdarknet
и использовал его внутреннее вычислениеmAP
.
Какую переменную вы хотите указать?
Сначала я использую
darkflow
сmAP
а потом я узнаю, что не могу указать путь вывода, поэтому я переключился наdarknet
и использовал его внутреннее вычислениеmAP
.
Мое мнение также касается даркнета. Думаю, переключение с порогом возможно только при расчете mAP? Правильно ?
Какую переменную вы хотите указать?
@srhtyldz В darkflow
около полугода назад, когда я начал этот поток, не позволяет мне указать путь к выходной папке. Путь к выходной папке - это путь, по которому записываются изображения прогнозов.
Если я правильно помню, выходная папка установлена в папку out
внутри папки вашего набора данных.
Например, если у вас есть изображения внутри img/
, прогнозы будут внутри img/out/
.
В FloydHub
они не позволяют записывать вывод в папку набора данных. Поэтому, если папка набора данных - img/
, вы не можете создать новую папку как img/out
потому что вы столкнетесь с отказом в разрешении.
Возможно, это позволяет вам указать путь вывода сейчас, но вы должны проверить. Я не уверен.
Мое мнение также касается даркнета. Думаю, переключение с порогом возможно только при расчете mAP? Правильно ?
Если я правильно помню, mAP
имеет один параметр, который должен определить писатель. Это порог от 0 до 1, по которому вы решаете, правильно ли предсказано изображение. Обычно это 0,5. Таким образом, если соотношение площадей превышает 0,5, это означает, что изображение правильное.
И после этого вы также должны определить Average Precision
. Чтобы получить среднее значение, вам нужно выяснить, сколько существует точности. Оказывается, вы также можете определить количество точности. Обычно количество уточнений устанавливается на 11
чтобы вы могли выровнять их от 0, 0,1, 0,2, ..., 0,9, 1,0.
Хотя я не совсем понимаю, о чем говорю. Потому что большую часть я уже забыл. Вы должны выучить это, чтобы убедиться, что я прав. Но я почти уверен насчет числа 0.5
и 11
штуки. Я просто не знаю, как они называются.
PS. Я вернулся, чтобы найти свой тезисный слайд (когда я знаю, что означает карта), вот как я это описал тогда:
Какую переменную вы хотите указать?
@srhtyldz В
darkflow
около полугода назад, когда я начал этот поток, не позволяет мне указать путь к выходной папке. Путь к выходной папке - это путь, по которому записываются изображения прогнозов.
Если я правильно помню, выходная папка установлена в папкуout
внутри папки вашего набора данных.
Например, если у вас есть изображения внутриimg/
, прогнозы будут внутриimg/out/
.
ВFloydHub
они не позволяют записывать вывод в папку набора данных. Поэтому, если папка набора данных -img/
, вы не можете создать новую папку какimg/out
потому что вы столкнетесь с отказом в разрешении.Возможно, это позволяет вам указать путь вывода сейчас, но вы должны проверить. Я не уверен.
Мое мнение также касается даркнета. Думаю, переключение с порогом возможно только при расчете mAP? Правильно ?
Если я правильно помню,
mAP
имеет один параметр, который должен определить писатель. Это порог от 0 до 1, по которому вы решаете, правильно ли предсказано изображение. Обычно это 0,5. Таким образом, если соотношение площадей превышает 0,5, это означает, что изображение правильное.
И после этого вы также должны определитьAverage Precision
. Чтобы получить среднее значение, вам нужно выяснить, сколько существует точности. Оказывается, вы также можете определить количество точности. Обычно количество уточнений устанавливается на11
чтобы вы могли выровнять их от 0, 0,1, 0,2, ..., 0,9, 1,0.Хотя я не совсем понимаю, о чем говорю. Потому что большую часть я уже забыл. Вы должны выучить это, чтобы убедиться, что я прав. Но я почти уверен насчет числа
0.5
и11
штуки. Я просто не знаю, как они называются.PS. Я вернулся, чтобы найти свой тезисный слайд (когда я знаю, что означает карта), вот как я это описал тогда:
Большое спасибо . Я исследую карту и IoU. Я получил результат, но не смог его интерпретировать. Могу я задать еще один вопрос? вы использовали функцию «отзыва»? функция карты и отзыва имеют одинаковую функциональность или нет? У тебя есть какие-либо идеи_?
@srhtyldz mAP
вычисляется исходя из точности как функции отзыва. Так что точность и отзыв уже включены. mAP
- популярная и общепринятая метрика оценки для задач обнаружения объектов. Таким образом, вам не нужно выполнять отзыв или точность индивидуально. Просто вычислите mAP
и если оно высокое, значит, ваша модель работает хорошо.
@srhtyldz
mAP
вычисляется исходя из точности как функции отзыва. Так что точность и отзыв уже включены.mAP
- популярная и общепринятая метрика оценки для задач обнаружения объектов. Таким образом, вам не нужно выполнять отзыв или точность индивидуально. Просто вычислитеmAP
и если оно высокое, значит, ваша модель работает хорошо.
Получил 90,4% с карты, думаю, работает хорошо.
@srhtyldz Это очень много, если у вас много классов. (Популярные модели в большом наборе данных составляют около 50-60%). Но даже если у вас всего два класса, это все равно хорошо.
Не забудьте проверить предсказанные изображения с помощью человеческих глаз, чтобы убедиться, что mAP
разумно.
@srhtyldz Это очень много, если у вас много классов. (Популярные модели в большом наборе данных составляют около 50-60%). Но даже если у вас всего два класса, это все равно хорошо.
Не забудьте проверить предсказанные изображения с помощью человеческих глаз, чтобы убедиться, чтоmAP
разумно.
У меня только один класс, также я сохранил все изображения с ограничивающей рамкой.
Вы нарисовали карту MAP? В репозитории Alex есть карта MAP, и пока вы тренируете свою модель, вы должны поставить '-map', чтобы получить диаграмму. Я не сказал это слово. Даже вы это поставили, как вы могли получить диаграмму MAP? вы попробуйте? также пробовали ли вы «действительную» функцию? ты знаешь различия?
Я знаю, что задавал много вопросов, но ваши ответы так важны для моей диссертации :).
Из darknet
я просто оцениваю mAP
используя только его терминал, и делаю снимок консоли.
Я не знаю, какая функция действует.
Для диаграммы mAP это возможно, если вы используете darkflow и используете репо mAP
выше. Есть скрипт, который генерирует анимацию и графики.
Я думаю, что репозиторий MAP также может работать с даркнетом.
Из
darknet
я просто оцениваюmAP
используя только его терминал, и делаю снимок консоли.
Я не знаю, какая функция действует.
Для диаграммы mAP это возможно, если вы используете darkflow и используете репоmAP
выше. Есть скрипт, который генерирует анимацию и графики.
Я думаю, что репозиторий MAP также может работать с даркнетом.
Проблема в том, что я не знаю, как будет запускаться анимация. Я пытался сделать это во время тренировки, но мне не удалось получить анимацию для карты. @alexeyAB, возможно, поможет в этом.
Я получил карту результатов моих тестов. Из 56 изображений я получил 48 правильных для моего тестирования. У меня четыре класса. Как сделать из этого матрицу путаницы. Кто-нибудь может мне помочь .
@srhtyldz Я использовал / darknet Detector map cfg / aerial.data cfg / test_tiny.cfg backup \ my_yolov3_tiny_final.weights функцию, но я не смог получить никаких оценок или графиков в конце обучения. Как вы получили оценку MAP в даркнете
@mustafabuyuk Передайте аргумент -map в ./darknet (darknet.exe). Он появится на графике примерно через 1000 итераций. Я не уверен, нужно ли это, но у меня также есть проверочный набор изображений.
Может у кого-нибудь есть идея? YOLOv5 вычисляет MAP по набору данных проверки во время обучения. Несмотря на то, какую команду мы можем вычислить по сравнению с невидимым набором тестовых данных (MAP и MAP по классам)
@ off99555 Тема закрыта. Вы получили ответ?
У меня есть набор файлов изображений и аннотаций Yolo (в формате txt) для проверки.
Как использовать аргумент -map для проверки изображений, чтобы получить оценку MAP? Можно ли вывести из этого матрицу путаницы?
@sandeeprepakula Прочтите мой ответ, прежде чем закрывать вопрос. Вот как можно рассчитать карту.
Но я бы посоветовал больше не использовать это репо. Я не работал с обнаружением объектов уже несколько месяцев, поэтому не уверен, какое репо является лучшим, но, судя по последнему коммиту этого репо, это было в феврале 2020 года. Как вы думаете, репо, которое не обновлялось на год стоит использовать? Если вы в чем-то застряли, никто вам не поможет. При выборе репо следует учитывать также и часть сообщества.
@ off99555 Спасибо за предложение
Самый полезный комментарий
Нет никого, кто делал это раньше?
Их точность никто не проверяет?
Не знаю, почему до сих пор не реализованы такие важные вещи.
Если его нет, возможно, мне придется реализовать эту функцию самостоятельно и зафиксировать ее навсегда.