Точність проти F-міра
Перш за все, коли ви використовуєте метрику, ви повинні знати, як грати в неї. Точність вимірює співвідношення правильно класифікованих примірників для всіх класів. Це означає, що якщо один клас зустрічається частіше, ніж інший, то в отриманій точності явно переважає точність домінуючого класу. У вашому випадку, якщо побудувати Модель M, яка просто передбачить "нейтральну" для кожного примірника, то отримана точність буде
a c c = n e u t r a l( n e u t r a l + p o s i t i v e + n e ga t i v e )= 0,9188
Добре, але марно.
Таким чином, додавання функцій чітко покращило силу НБ розмежувати класи, але передбачуючи "позитивні" та "негативні", пропускає класифікацію нейтралів, а отже, точність знижується (грубо кажучи). Така поведінка не залежить від NB.
Більше чи менше функцій?
Взагалі не краще використовувати більше функцій, а використовувати правильні функції. Більше можливостей краще, оскільки алгоритм вибору функцій має більше варіантів для пошуку оптимальної підмножини (я пропоную вивчити: вибір вибору перекреслених ). Що стосується NB, швидкий і надійний (але менш оптимальний) підхід полягає у використанні InformationGain (співвідношення) для сортування функцій у порядку зменшення та вибору верхнього k.
Знову ж таки, ця порада (крім InformationGain) не залежить від алгоритму класифікації.
РЕДАКЦІЯ 27.11.11
Було багато плутанини щодо зміщення та відхилення, щоб вибрати правильну кількість функцій. Тому рекомендую ознайомитись з першими сторінками цього підручника: Компромісне зміщення . Ключова суть:
- Високий ухил означає, що модель є менш оптимальною, тобто тест-похибка висока (недостатньо, як стверджує Сімона)
- Висока варіативність означає, що модель дуже чутлива до зразка, який використовується для побудови моделі . Це означає, що помилка сильно залежить від використовуваного набору тренувань, а значить, дисперсія помилки (оцінюється в різних складках перехресного перебігу) буде сильно відрізнятися. (надмірний)
Нанесені криві навчання дійсно вказують на зміщення, оскільки помилка намічена. Однак те, що ви не можете бачити, є Варіантом, оскільки довірчий інтервал помилки взагалі не побудований.
Приклад: Виконуючи 3-кратну перехресну перевірку 6 разів (так, рекомендується повторення з різним розділенням даних, Кохаві пропонує 6 повторень), ви отримуєте 18 значень. Я б зараз очікував, що ...
- При невеликій кількості функцій середня помилка (зміщення) буде нижчою, однак дисперсія помилки (18 значень) буде вище.
- при великій кількості функцій середня помилка (ухил) буде вище, але дисперсія помилки (на 18 значень) нижча.
Така поведінка помилки / упередженості - це саме те, що ми бачимо у ваших сюжетах. Ми не можемо зробити заяву про дисперсію. Те, що криві знаходяться близько один до одного, може бути свідченням того, що тестовий набір досить великий, щоб показувати ті ж характеристики, що і навчальний набір, а отже, і вимірювана помилка може бути надійною, але це (принаймні, наскільки я зрозумів це) недостатньо, щоб зробити заяву про дисперсію (про помилку!).
Додаючи все більше та більше прикладів навчання (зберігаючи фіксований розмір тестового набору), я би сподівався, що дисперсія обох підходів (мала та велика кількість можливостей) зменшиться.
О, і не забудьте обчислити інформаційну угоду для вибору особливостей, використовуючи лише дані у навчальній вибірці! Можна спокусити використати цілісні дані для вибору функцій, а потім виконати розподіл даних і застосувати перехресну перевірку, але це призведе до перевиконання. Я не знаю, що ти зробив, це лише попередження, про яке ніколи не слід забувати.