رئيس مجلس الأدارة د. وليد بدوي
رئيس التحرير التنفيذى محمد يحيى
مساعد رئيس التحرير سامح المنسي
آخر الأخبار
|  ضبط المتهمين بأداء حركات استعراضية بدراجات نارية بالقاهرة         |  Mostbet UZ: Sizning Fitratni Oshirish Uchun Kalitli Sayt         |  اختتام فعاليات مؤتمر صناع القرار “القطاع الاستثماري و المالي ” في نسخته الرابعة         |  الليلة دوب تريند رقم واحد علي مستوي العالم         |  الجوازات تقدم تسهيلات لكبار السن وذوي الاحتياجات الخاصة         |  بالصور.. تكريم نجوم الفن في حفل المعرض التشكيلي العربي وتوقيع كتاب أنسنة الرؤية         |  الدكتور محمد الزهار يهنئ الرئيس السيسي وعمال مصر بمناسبة عيد العمال         |  نجمة ذا فويس بتول بني تطرح أغنية جديدة بعنوان “انت محبوبي”         |  نجلة الملحن وليد سعد تغنى كافر أغنية “نخبي ليه” لـ وائل جسار .. فيديو         |  شاهد بعد سنوات من الكفاح.. «مصطفى» يحقق حلمه ويشارك في بطولة فيلم قصير         |  Mostbet Casino saytida tez tikish         |  الكاتبة والاعلامية روضى الشريف تحصل علي درجة الماجستير بامتياز         |  السفراء الأفارقة في زيارة خاصة لجناح الشركة الدولية لصهر المعادن على هامش معرض watrex 2024         |  Казино Up X играть онлайн бесплатно, официальный сайт, скачать клиент | Up-X         |  Get-X Гет Икс онлайн-казино ️ Официальный сайт Гет Х – Get X        

Применительно ккатегориальным переменным мы можем рассматривать вопросительный знак какдополнительный знак в этой категории. Тут мы получаем данные и запускаем перекрёстную проверку на наших трёх моделях – эталонной, которой является логистическая регрессия, единичном дереве и случайном лесе. Вновь-таки, файлы данных должны быть в папке large_files, а сама эта папка – быть рядом с папкой кода. Если вы не хотите писать код самостоятельно, то соответствующий файл в репозитарии называется rf_classification.py.

  • Главное отличие тут в том, что теперь мы импортируемклассификаторы, а не регрессоры.
  • Следующимидёт создание экземпляра преобразователя данных и само преобразование данных.Данные разделяются так, чтобы 70% составлял учебный набор, а 30% – проверочный.Обратите внимание, что мы берём логарифм от целевых переменных (представляющихсобой средние цены на недвижимость).
  • Мы ужерассмотрели, как написать код для дерева решений в первом курсе по машинномуобучению с учителем, предпосылке к настоящему курсу, а вам надо лишьвидоизменить его, воспользовавшись бэггингом.
  • Обратите внимание, что по умолчаниюдля классификации стоит значение квадратного корня из D, а вот для регрессиизначение по умолчанию просто равно D, что не соответствует рекомендации выбирать значение D/3.

Крометого, мы выводим ошибку проверочного набора для всех трёх моделей. Следующимидёт создание экземпляра преобразователя данных и само преобразование данных.Данные разделяются так, чтобы 70% составлял учебный набор, а 30% – проверочный.Обратите внимание, что мы берём логарифм от целевых переменных (представляющихсобой средние цены на недвижимость). Это общеупотребимая операция длямасштабирования числовых столбцов с большим разбросом значений, но необходимовнимательно следить за корректностью соотношения со значением.

Методслучайного леса как раз и пытается уменьшить эту корреляцию или, другимисловами, построить набор декоррелированных друг с другом деревьев. Мывидим, что эталонная модель оказалась худшей – 92,7%, единичное дерево чутьлучше – 93%, а случайных лес оказывается победителем с почти 94%. Я использовал100 деревьев, но вы можете попробовать 10, 20, 200 или даже 500.

Метод случайного леса. Классификация

Мы знаем, чтос помощью деревьев легко добиться малого смещения, поскольку чем больше узловдерева, тем более оно переобучено. Поскольку каждое дерево имеет одно и то же ожидаемое значение, то иожидаемое значение ансамбля деревьев будет тем же, если только не изменитсясмещение. Позже мы рассмотрим бустинг – другой способ объединения деревьев,имеющих высокое смещение. Есливы посмотрите на данные, то увидите, что они состоят из 22 столбцов,представляющих из себя атрибуты гриба, такие как размер, форма, цвет и всёостальное, описывающее его вид. Обратите внимание, что в описании указываетсяоб отсутствующих значениях, помеченных знаком вопроса.

Узел дерева классификации и регрессии

Большим преимуществом метода случайного леса является то, что у него мало настраиваемых величин. Исследования показали, что можно позволить всем деревьям иметь произвольную глубину, не получая при этом большого увеличения ошибок. Метод случайного леса хорошо и быстро работает, что делает его идеальным решением для многих ситуаций.

Метод случайного леса

Во-первых, вы уже знакомы с эффектом сглаживания, который привносится ансамблем на прогнозы деревьев решений, поскольку такие графики мы уже ранее создавали. Аналогично тому, как мыможем случайным образом выбирать, на каких примерах проводить обучение, мыможем случайным образом выбирать и каким признакам обучаться. Один из способовполучить разные деревья – сделать выборку из разных строк, мы это уже делали.Но есть и другой способ – сделать выборку из разных признаков, что эквивалентнообучению дерева только определённому подмножеству признаков. Инаконец мы проводим перекрёстную проверку всех наших моделей – выступающейэталоном линейной регрессии, единичного дерева решений и случайного леса.

Узел дерева классификации и регрессии

Аналогом классификатора для линейной регрессиивыступает регрессия логистическая, поскольку они оба являются линейнымимоделями. Заметьте, как много этих опций имеют отношение к дереву, а нелесу. Мыувидим, как это сделать, чуть позже, а пока рассмотрим смещение.

Метод случайного леса. Регрессия

Ввидутого, что мы воспользуемся классом RandomForest библиотеки Ski-kit Learn, стоит взглянуть на ряд возможностей, который он предоставляет.Многие из них будут вам знакомы, поскольку мы говорили о них либо в этом курсе,либо в предыдущем. Преждевсего обнаруживается, что по умолчанию стоит 10 деревьев как для классификации,так и для регрессии. Если взглянуть на критерий разделения, то видно, что классификаториспользует критерий Джинни, тогда как регрессор – среднеквадратическую ошибку.Критерий Джинни аналогичен энтропии, так что большой разницы тут не будет. Напомню,что суть бэггинга заключалась в усреднении результатов моделей с большой дисперсиейи малым смещением. Деревья подходят для этого идеально, поскольку они могутбыть сколь угодно глубокими и охватывать сложные взаимодействия. Таким образом,в большинстве случаев они достигают 100% точности на учебном наборе данных или,другими словами, имеют нулевое смещение.

Узел дерева классификации и регрессии

Имеется в виду,что если цена дома равна 10 тысячам долларов, а вы ошиблись на 5 тысяч – этоочень грубая ошибка. Но если дом стоит миллион долларов, а вы ошиблись на те же5 тысяч, то тут нет ничего страшного. Далееопределяется наш класс DataTransformer дляпреобразования данных с функциями fit, transform fit_transform.

Мыпросто пройдёмся по коду, а не будем его писать с нуля, поскольку это было бы чересчурутомительно.

Метод случайного леса. Регрессия

Для двоичнойклассификации можно просто округлить среднее значение, а для регрессии можновывести его. Поскольку об этом уже упоминалось, мы не будем здесьостанавливаться на данном вопросе. Главная сложность, когда речь идёт о методеслучайного леса, – это функция train. https://deveducation.com/ Обычномы выбираем размерность подмножества d, намного меньшую D, предполагая, что X – матрица размерности NxD. Изобретатели метода случайного лесасоветуют устанавливать d, равным целой части квадратного корня из D, если речь идёт оклассификации, вплоть до 1.

Что же касается регрессии, то они советуютустанавливать d равным целой части от D/3, вплоть до 5. Лучшимвыходом, как всегда, является подобрать ту размерность, которая лучше всегоподходит к вашим конкретным данным, воспользовавшись методами вроде перекрёстнойпроверки. Это из старой версии кода и на самом деле она не нужна для нашего набора данных, но может оказаться полезной при преобразовании данных из датафрейма Pandas, в котором есть нулевые значения. Я пользовался ею, когда тестировал различные наборы данных для данного курса. Главное отличие тут в том, что теперь мы импортируемклассификаторы, а не регрессоры.

Метод случайного леса

Впрочем,для вас будет чудесным упражнением для тренировки навыков, если попробуетесделать это самостоятельно. Мы ужерассмотрели, как написать код для дерева решений в первом курсе по машинномуобучению с учителем, предпосылке к настоящему курсу, а вам надо лишьвидоизменить его, воспользовавшись бэггингом. Испробуем регрессию методом случайного леса на реальных данных. Кроме того, в данной лекции мы не будем использовать двухмерные графики, на что есть две причины.

В тоже время это приводит к тому, чтоони же имеют большую дисперсию. Однако согласно предыдущему уравнению дисперсиидля ансамбля, мы можем добиться меньшей общей дисперсии, отыскав деревья, некоррелирующие друг с другом. Он очень похожна DataTransformer из предыдущей лекции с тем лишьисключением, что теперь нам нужно преобразовать столбцы категорий. В идеалеследовало вообще создать единый класс, который бы обрабатывал столбцы обоихтипов, но из лени я этого не сделал.

Именно поэтому когда мне встречаются люди, интересующиеся глубоким обучением, но представляющие его как некое готовое решение, которое просто можно запустить и работать, я, как правило, рекомендую использовать метод случайного леса. Нейронные дерево классификации что это же сети могут давать очень разные результаты в зависимости от заданных гиперпараметров и, к тому же, существует их множество вариаций. Так что метод случайного леса – отличный выбор, если вы ищете решение в стиле «запусти и работай».

Метод случайного леса. Классификация

По сути мы используем функцию StandardScaler библиотеки Sci-Kit Learnдля числовых столбцов и функцию LabelEncoder для столбцовкатегориальных. LabelEncoder пронумеруетметки от 0 до K – 1, что позже позволит нам использовать их вкачестве индексов. Аргументmax_feature сообщает случайному лесу, сколькопризнаков выбирать при каждом разделении. Обратите внимание, что по умолчаниюдля классификации стоит значение квадратного корня из D, а вот для регрессиизначение по умолчанию просто равно D, что не соответствует рекомендации выбирать значение D/3. Напомним,что мы уже говорили о том, как делать прогноз для ансамблей.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *