У меня есть набор взвешенных функций для машинного обучения. Я хотел бы уменьшить набор функций и просто использовать те, у которых очень большой или очень маленький вес.Как найти «оптимальную» точку отсечки (порог)
Итак, приведенный ниже образ отсортированных весов, я хотел бы использовать только те функции, которые имеют вес над верхней или нижней нижней желтой линией.
Что я ищу это своего рода обнаружения изменения наклона, так что я могу сбросить все функции, вплоть до первого/последнего коэффициента наклона увеличения/уменьшения.
Хотя я (думаю, я) знаю, как это сделать сам (с помощью первых и вторых числовых производных), меня интересуют любые установленные методы. Возможно, есть какая-то статистика или индекс, который вычисляет что-то подобное или что-нибудь, что я могу использовать у SciPy?
Edit: На данный момент я использую 1.8*positive.std()
в качестве положительного и отрицательного 1.8*negative.std()
, как порог (быстро и просто), но я не математик достаточно, чтобы определить, насколько прочной это. Я не думаю, что это так. ⍨