Эта статья возникла из личного публичного аккаунта:TechFlow, оригинальность это не просто, прошу внимания
Сегодня17-я статья о реальных вопросах машинного обученияВ этой статье поговорим об оценке моделей машинного обучения.
В предыдущих статьях мы представили несколько моделей, в том числеНаивный Байес, KNN, KMeans, EM и линейная и логистическая регрессия. Сегодня мы поговорим с вами о том, как оценивать эти модели.
среднеквадратическая ошибка
Концепция очень проста, она такая же, как функция потерь в регрессионных моделях. Это можно понимать как отклонение между нашим прогнозируемым значением и реальным значением.Мы используем y для представления реального значения выборки и y_ для представления прогнозируемого значения модели, тогда среднеквадратическая ошибка может быть записана как:
Здесь m - количество выборок, которое является константой. Мы также можем игнорировать его. Если мы игнорируем его, это сумма квадратов разностей. Кажется, что специального термина нет. И если не считать среднего,Может быть, эта сумма будет большой, поэтому обычно мы вычисляем среднее значение.
МСЭ здесьmean square errorАббревиатура , то есть средняя дисперсия. Все мы знаем, что дисперсия представляет собой степень флуктуации расстояния выборки от среднего в статистике, Чем больше дисперсия, тем более нестабилен показатель и тем больше флуктуация. В случае регрессионных моделей мы измеряем не степень дисперсии от среднего, а степень дисперсии от фактического значения. Значения этих двух очень похожи и не должны быть трудными для понимания.
Чем меньше среднеквадратическая ошибка, тем ближе модель к истинному значению, поэтому ее можно использовать не только в качестве функции потерь при обучении модели, но и в качестве эталона для ручного анализа эффекта модели.
Показателем, обычно используемым в регрессионных моделях, является среднеквадратическая ошибка, тогда как классификационная модель намного сложнее и включает несколько показателей, рассмотрим их по порядку.
ТП, ТН, ФП и ФН
Эти четыре значения кажутся глупыми и непонятными, но как только мы понимаем их английский язык, их на самом деле очень легко понять.Т значит правда, то есть верно, тоF естественно означает ложь, что неверно.P означает положительный, можно понимать как положительное,N отрицательный, отрицательно.Инь и Ян здесь не имеют логического смысла., представляет только категорию, мы также можем понимать его как 01 или A и B, потому что нет логического фактора, поэтому имя такое же.
Таким образом, эти четыре являются перестановкой и комбинацией истинного и ложного, инь и ян.правильный прогноз. Например, ТП — это истинный ян, что означает, что тест положительный, и он на самом деле положительный. Точно так же TN — это истинный инь, тест отрицательный и на самом деле отрицательный. F означаетошибка предсказания, FP является ложноположительным, то есть тест положительный, но на самом деле он отрицательный, что указывает на то, что тест неверен. Точно так же FN ложноотрицательный, тест отрицательный, но на самом деле он положительный.
Мы можем понять это, подставив в эти значения больничный тест.TP и TN означают, что реагент обнаружения мощный и обнаружение точное.Обнаружение - инь и инь, а ян - ян. FP и FN указывают на то, что реагенты для детекции не годятся, а детекция неправильная, либо болезнь выявляется как болезнь, либо болезнь явно не выявляется. Очевидно, что в контексте медицинского тестирования ложноположительные результаты допустимы, а ложноотрицательные — нет. Поскольку ложноположительные результаты можно проверить еще раз, чтобы определить, являются ли они инь или ян, если ложноотрицательные результаты пройдут проверку, это окажет плохое влияние на пациента, поэтому в целом медицинские реагенты для тестирования будут более чувствительными, чем стандартные, поэтому как избежать, насколько это возможно.Отпустите рыбу, которая проскользнет через сеть.
отзывать
Английский скорость отзываrecall, я думаю, что это слово переведено очень хорошо. Значение китайского языка в основном такое же, как и значение английского языка. В некоторых учебниках это переводится как скорость припоминания. Я чувствую, что значение немного хуже. Лучше называть скорость отзыва более надежная.
Предположим сценарий, например, А — командир взвода с 10 солдатами, и есть задача, для выполнения которой требуется, чтобы А призвал всех членов. А отдал приказ и вызвал 8. Тогда показатель отзыва составляет 80%. То же самое относится и к сценариям машинного обучения.В сценариях с двумя классами при нормальных обстоятельствахМодель рассматривает в основном положительные примеры. Это можно понимать как погоню за золотом в песке.Отрицательный пример - песок, который вообще малоценен, а золото - положительный пример, то, что нам нужно. Таким образом, скорость припоминания — это доля положительных примеров, которую мы точно предсказываем, ко всем положительным примерам.
Подставляем в расчет вышеуказанные TP, TN, FP и FN, можем получить:
TP — это положительный пример, который мы точно предсказали, то есть та часть, которую мы вспомнили, так сколько же положительных примеров? ответПоложительные примеры припоминания плюс положительные примеры без припоминания, положительный пример без отзыва указывает на то, что предсказание неверно, а предсказание является отрицательным примером. Но это не отрицательные примеры, поэтому это ложноотрицательные образцы, которые, естественно, являются FN. Здесь есть небольшое отклонение, ключевой момент в том, что припоминание предназначено для положительных примеров и не заботится об отрицательных примерах. Это похоже на то, как когда вы идете на сковороду в поисках золота, вас, очевидно, не волнует ситуация с песком, вас заботит только то, поймано ли золото, одно значение.
точность и аккуратность
Возможно, вы видели эти два значения во многих книгах по машинному обучению, и вы можете вспомнить разницу между ними, когда читали, но забыть ее после прочтения и даже можете впасть в состояние замешательства. Это не редкость, я испытал это на себе и даже ошибся во время интервью.
Большая часть причины этого — проблема перевода, перевод этих двух значений слишком близок. мы начинаем сТрудно сказать разницу между точностью и точностью на китайском языке., на наш взгляд, эти два слова эквивалентны, но в английском языке эти два слова различаются. Итак, чтобы понять их, нам нужно посмотреть на английское объяснение, а не просто запомнить концепцию.
В английском языке уровень точности — это точность, и объяснение в словаре таково: точность определяется как доля истинных положительных результатов против всех положительных результатов (как истинных положительных, так и ложных срабатываний).Среди всех предсказанных положительных образцов правильная пропорция.
Показатель точности на английском языке — это точность, а английская интерпретация: точность — это доля истинных результатов (как истинно положительных, так и истинно отрицательных) в популяции.Вероятность того, что предсказание окажется точным, так как результат предсказания точен, очевидно, что он содержит как положительные, так и отрицательные примеры.
Из английского описания мы можем ясно увидеть разницу между этими двумя понятиями, оба из которых являются правильно предсказанными частями, ноУровень точности указан только для положительных примеров, а уровень точности - для всех образцов., включая как положительные, так и отрицательные примеры. Я лично думаю, что эти два переводятся какТочность скрининга и точность сужденияЭто легче понять, если только точность и скорость точности могут быть в порядке, плюс упомянутая выше скорость отзыва, это может действительно сбить с толку.
Давайте возьмем пример, чтобы сделать эти три индикатора понятными.
Предполагая, что во время гражданской войны его захватили агенты Гоминьдана, он был заперт в деревне из 100 человек, по два человека А и Б для обнаружения шпионов. При этом А отобрали 18 человек, 12 из которых агенты, ацетат затем отобрал 10 человек, в том числе восемь агентов. Предположим, мы знаем, что в общей сложности 20 шпионов, а затем попросить двух мужчин вспомнить, точная и точная скорость это число?
Давайте сначала посмотрим на А, мы начали с простого отзыва, так как спецов 20, броня находит 12 из них, то коэффициент отзыва 12/20 = 0,6. Точность — это правильный показатель проверки, всего у нас 18 человек, из них 12 правильных, поэтому точность 12/18 = 2/3. Точность - это общая правильность, судит, что спецов 12, а обычных людей 80, точность (12+82-8)/100, что 86%.
Давайте снова посмотрим на B. Его полнота 8/20 = 0,4, точность 8/10 = 0,8 и точность (8 + 90 - 12)/100 = 86%.
Из приведенного выше примера мы можем получить формулы для точности и точности.
Коэффициент точности - это вероятность правильного скрининга, которая представляет собой количество правильных скринингов, деленное на количество проверенных образцов.Правильное количество скринингов, естественно, TP, а общее количество скринингов не только правильных, но и неправильных, и неправильное экранирование также является FP, поэтому:
Точность — это общая доля правильных ответов, то есть отношение всех правильных ответов ко всем размерам выборки:
Компромисс между отзывом и точностью
Мы продолжаем изучать пример только сейчас, из результатов А и Б мы найдем, что два из них имеютТочность очень высока, оба 86%. Но вы обнаружите, что это значение бессмысленно, потому что, если я не поймаю ни одного агента, уровень точности все равно может составлять 80%. так какСлишком много отрицательных выборок, что увеличивает общую точность, не объясняет проблему. Если доля отрицательных образцов будет еще больше, точность будет дополнительно улучшена.
Например, в медицинской отрасли бесполезно смотреть на точность выявления некоторых заболеваний, потому что сама заболеваемость невелика, и большое количество из них — отрицательные пробы. Если вы ничего не можете обнаружить, вы все равно можете получить высокую точность. Поняв это, вы также уменьшите количество читерства, такого какМногие лжецы с поддельными лекарствами или поддельным оборудованием используют точность, чтобы сказать что-тообманывать потребителей.
В сценариях, где отрицательные примеры не важны, мы обычно не обращаемся к показателю точности., потому что на него повлияют отрицательные примеры. Итак, к какому из двух значений отзыва и точности мы должны обратиться?
Вернемся к месту проблемы: есть два человека, А и Б. Отзыв у А выше, и 12 агентов из 20 найдены. И показатель точности B выше, 8 из 10 найденных людей являются секретными агентами, и процент попаданий очень высок. Так кто сильнее из двоих?
Подставьте в сцену вопрос, вы обнаружите, что стандартного ответа на этот вопрос нет,Ответ полностью зависит от их боссов. Если начальник эгоист, уделяет больше внимания работе и скорее убьет ошибки, чем отпустит их, то он, очевидно, почувствует, что А лучше, потому что он поймал больше шпионов. Если начальник доброжелательный человек, сострадательный и сострадательный, то Б ему явно понравится больше, а если он будет совершать меньше ошибок, то причинит меньше вреда простым людям. Так что это не технический вопрос, а философский вопрос.
Какой из них лучше, полностью зависит от угла зрения на проблему и места действия проблемы, если мы изменим место действия, оно будет другим. Если это сценарий скрининга заболеваний, я, вероятно, хотел бы, чтобы отзыв был выше, чтобыВспомните как можно больше положительных примеров. Что касается неточных результатов теста, мы можем протестировать несколько раз, чтобы повысить достоверность, но если некоторые образцы будут пропущены, это повлечет за собой риск пропуска диагностики пациентов. Если это сценарий управления рисками, после обнаружения мошенничества часто налагаются суровые наказания.Конечно, мы уделяем больше внимания показателю точности, потому что, как только ошибка будет обнаружена, она нанесет огромный ущерб пользователю, и приложение может быть удалены и никогда не приходят снова, так что лучше отпустить, чем убить не того.
Есть ли индикатор, который можетСочетание отзыва и точностиШерстяная ткань? Еще там это значение называетсяF1-score.
Его определение:
Если вы знакомы с математикой, вы обнаружите, что оценка f1 по существу зависит от полноты и точности.смешанное среднее, мы можем использовать его, чтобы сбалансировать полноту и точность, что нам удобно для компромиссов. Мы также можем прямо сейчас рассчитать f1-оценку A и B. После расчета f1-оценка A равна 0,631, а f1-оценка B равна 0,533, поэтому в целом A лучше.
компромисс между отзывом и точностью
Давайте продолжим пример только что. Если вы сделали много моделей, вы обнаружите, что в области машинного обучения полнота и точность являются двумя непримиримыми значениями. Модель с высокой степенью точности, как правило, имеет низкую полноту и высокую точность. отзыв. Показатель точности низкий, и нам трудно улучшить точность и отзыв вместе. Почему это так?
В качестве примера я использую модель логистической регрессии, давайте посмотрим на следующую картинку:
На рисунке l1, l2 и l3 можно рассматривать как три разные модели.Очевидно, мы можем видеть, что l1 имеет самую высокую точность, но самую низкую полноту, а l3 имеет самую низкую точность, но самую высокую полноту.
Это вызвано двумя причинами, первая из которых состоит в том, что нашаВ образце ошибка, особенно данные на критическом ребре будут проникать друг в друга из-за наличия ошибок. Вторая причина заключается в том, что модельОграниченная посадка, например, в этом примере мы используем линейную модель, и мы можем разделить выборки только в линейной плоскости. Если полнота будет расширена, это неизбежно приведет к смешиванию большего количества неправильных образцов. Если точность улучшится, полнота неизбежно уменьшится.
Очевидно,это сделка, английский - это компромисс, мы не можем иметь оба, мы должны сделать выбор между ними. Конечно, если мы заменим ее моделью с более мощной подгоночной способностью, такой как gbdt или нейронная сеть, она добьется лучших результатов, но это не без затрат, и чем сложнее требуется обучение модели, тем большее количество образцы. Если выборок недостаточно, чем сложнее модель, тем труднее сходиться.
Это классическая сцена для тестирования инженеров-алгоритмов, мыНеобходимо сделать соответствующий выбор в соответствии с нашим сценарием. Расширить отзыв или повысить точность. Взяв в качестве примера модель логистической регрессии, мы используем 0,5-битный порог, чтобы судить, является ли это положительным или отрицательным примером.Теоретически, если мы увеличим этот порог, мы можем повысить точность модели, но в то же время , скорость отзыва также уменьшится. И наоборот, если мы снизим этот порог, мы получим больше положительных примеров, что также означает, что более отрицательные примеры будут ошибочно приняты за положительные, и точность снизится.
Суммировать
Представленные сегодня концепции — это не просто машинное обучениефундамент в фундаменте,даже большечастый интервьюер, как квалифицированный инженер-алгоритм, это нужно понимать.
Если вы чувствуете себя сбитым с толку, можете вспомнить пример с поимкой шпиона, он очень яркий и эффектный, и определенно поможет вам углубить память.
На сегодняшней статье все. Если вы чувствуете, что что-то приобрели, пожалуйста, нажмитеПодпишитесь или сделайте ретвитЧто ж, твое маленькое усилие много значит для меня.