Как научиться настраиваться на лучшее


9 мощных советов + Тест

 

Как настроить себя на позитив. Проверенные советы изменения своей жизни путём увеличения позитивного настроя и позитивного мышления. Всем привет, ребята. Эта статья посвящена позитиву. 9 мощных советов которые помогут вам настроить себя на позитив, поднимут настроение и зарядят вас энергией позитива. Советы которые работают и которыми я пользуюсь чтобы у меня всё было ещё лучше.

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

Узнайте, достаточно ли Вы позитивный человек пройдя тест из 16 вопросов

Насколько Вы позитивный человек?

Тест поможет проанализировать ваше отношение к жизни в трудный период. Позитивный взгляд на жизнь располагает людей, негативный создает сложности.Тест разработан британскими психологами. Честно для себя ответив на данные вопросы, вы получите достоверный результат.

Вроде бы всё понятно, будь позитивней и всё. Но не у всех это получается. Я дам вам 9 мощных советов как настроить себя на позитив.

1. Помните только хорошее.

Умение мыслить правильно является первым шагом к хорошему настроению и полноценной жизни. Старайтесь запоминать все хорошие поступки и положительные моменты дня, записывайте свои радостные мысли в блокнот или публикуйте их в социальных сетях.

Именно воспоминания ваших положительных моментов в жизни могут сильно поднять вам настроение. И как следствие заместят негативные воспоминания и эмоции. Ведите дневник ваших позитивных моментов в жизни, я уверен что вам есть что вспомнить. Помните о том, что оптимизм — это жизненная позиция, а не временное состояние.

2. Будьте благодарны за всё что имеете в жизни.

Прежде чем расстраиваться из-за незначительных неудач, подумайте о тех, кому сейчас в несколько раз хуже. В мире часто случаются катастрофы, боевые действия и эпидемии опасных болезней. Мысленно поблагодарите судьбу за возможность жить и работать в спокойной обстановке. Удивительно, но многие люди не замечают насколько они счастливы! Я общаюсь со многими людьми, и знаю что у многих есть проблемы в жизни. Точнее сказать у них постоянные проблемы. Не все имеют то что хотели, или хотели бы иметь. Всегда есть за что поблагодарить бога, вселенную, весь этот мир. особенно если у вас всё замечательно.

3. Надейтесь на то, что всё получится

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

4. Используйте аффирмации

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

5. Сосредоточьтесь на будущем

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

6. Думайте о своей мечте

Ещё как настроить себя на позитив? У каждого человека есть мечта. Это может быть новое место жительства, автомобиль, поездка в экзотическую страну. Как же её осуществить? В свободные минуты представляйте себя хозяином желанного автомобиля или довольным туристом в интересных местах другой страны. Так, благодаря обилию положительных эмоций можно достичь поставленной цели. Мечты сбываются. Позитив и позитивная реальность ускорят осуществление вашей мечты. Так устроена наша вселенная.

7. Слушайте позитивную музыку

По пути на работу и в транспорте старайтесь слушать приятную музыку в наушниках. Хорошая музыка поможет избавиться от негативных мыслей и настроиться на позитив. Заряжайтесь позитивной энергией от ритмичной музыки. Когда я убираюсь дома, я часто слушаю свою любимую музыку которая даёт мне море энергии.

8. Общайтесь с оптимистами.

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

9. Хвалите себя за успехи.

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

 

( 2 оценки, среднее 5 из 5 )

Как правильно настроить гитару

Что вы должны делать в первую очередь каждый раз, когда берете в руки гитару? На мгновение не поддавайтесь желанию порезаться и убедитесь, что вы настроены.

Если вы только начинаете играть на гитаре, расстроенный инструмент может быть невероятно неприятным, и каждая нота будет казаться ошибкой. Знание того, как правильно настроить гитару, гарантирует, что во время игры вы всегда будете звучать наилучшим образом.

Это руководство научит вас точно настраивать гитару, используя несколько различных методов, чтобы вы могли играть как профессионал.

Как настроить гитару

Механика настройки гитары проста. Чтобы настроить высоту струны, поверните соответствующую клавишу настройки струны на пластине гитары. (Подсказка: вот наш путеводитель по частям гитары).

При повороте клавиши настройки от себя струна натягивается и ее высота увеличивается. И наоборот, поворот настраивающего ключа на себя ослабит струну и снизит ее высоту.

Как настроить Использование Стандартная настройка гитары

Большинство гитаристов настраивают свои инструменты на «стандартную настройку».«Если вы только начинаете играть и не уверены, какую настройку использовать, вам следует пока придерживаться стандартной настройки. По мере того, как вы привыкаете к своему инструменту, не стесняйтесь экспериментировать с другими настройками, чтобы добиться разных звуков с гитарой.

Струны на гитаре пронумерованы от одного до шести, начиная с самой высокой струны.

Настройка гитарных струн Ноты

Обычно вы называете струны в порядке возрастания, начиная с шестой струны: E, A, D, G, B, E.Взгляните на следующее изображение, чтобы увидеть, на какую ноту следует настраивать каждую струну. Обратите внимание, что ваша самая высокая и самая низкая струны - это E, одна и та же нота, разделенная на две октавы.

Каждая нота соответствует высоте тона, которую ваша струна должна воспроизводить при открытой игре без удержания ладов. Когда вы настраиваете, лучше всего начать с шестой струны и постепенно спускаться вниз.

Как настроить гитару с помощью хроматического или питч-тюнера

Когда вы учитесь настраивать гитару, очень важно иметь надежный метод поиска правильной высоты звука для каждой струны.Большинство гитаристов используют электронный тюнер, приложение или другой инструмент. У каждого метода есть свои плюсы и минусы.

Для большинства новичков тюнер - самый простой способ найти правильную высоту звука для вашей гитары. Есть несколько разновидностей тюнеров. Хроматические тюнеры «слышат» ноту, которую вы играете, и отображают высоту тона, на которую в данный момент настроена струна. Вы сможете увидеть, острая ваша гитара или плоская, а также увидеть, когда вы настроили струну на правильную ноту. Вот видео, чтобы показать, как выглядит этот процесс:

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

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

Если вы уверены в своей способности слышать и различать высоту звука (или если вам нравится вызов), возможно, вам понравится камертон или тюнер, который воспроизводит высоту звука.

СМОТРИ ТАКЖЕ: 5 основных гитарных аккордов и 20 простых песен для начинающих

Как настроить гитару без тонального тюнера

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

Начните с шестой струны, зажатой на пятом ладу. Теперь вы играете ля-ля на своей струне E. Отрегулируйте пятую струну, струну A, до тех пор, пока ваша открытая струна A не будет соответствовать высоте струны E, сыгранной на пятом ладу. Во время настройки открытой струны может быть полезно напевать правильную ноту, чтобы вы могли услышать, слишком туго или слабо настроена струна.

Затем настройте свою струну D в соответствии с высотой тона вашей струны A, сыгранной на пятом ладу.Вы можете продолжить настройку каждой струны на пятый лад верхней струны, за исключением струны B. Чтобы настроить струну B, удерживайте струну G на четвертом ладу. Если каждая струна настроена на правильный интервал от следующей струны, ваша гитара будет звучать нормально сама по себе.

Как настроить гитару путем согласования высоты звука с клавиатурой

Если у вас нет под рукой гитарного тюнера, но у вас есть доступ к фортепиано, вы можете использовать фортепиано, чтобы найти правильную высоту звука для вашей гитары. Настройка пианино или клавишных - отличный способ получить правильную высоту звука для вашей гитары, и это особенно полезно, если вы будете играть вместе с пианистом или другим инструментом.

Просто настройте свою шестую струну на E на две октавы ниже средней C. Оттуда вы можете настроить свою гитару на себя или продолжить согласование каждой высоты звука с нужными нотами по мере продвижения по клавиатуре. В качестве бонуса такая настройка поможет вам развить навыки поиска нот на фортепиано!

Альтернативные настройки гитары

Что общего у Джони Митчелл и Black Sabbath? Все дело в настройке! Оба артиста часто использовали альтернативные настройки, чтобы получить уникальные звуки своих гитар.Когда вы хорошо разбираетесь в стандартной настройке гитары, экспериментировать с альтернативными настройками гитары может быть очень весело. Существуют сотни возможных альтернативных настроек гитары, но две из наиболее распространенных альтернативных настроек - Drop D и Open G.

Drop D Tuning

Настроить вашу гитару на Drop D довольно просто. Начните со стандартной настройки гитары и просто настройте свою шестую струну на полный шаг от E до D. Вы также можете настроить струну E вниз, пока она не будет соответствовать той же высоте, что и струна D, но на октаву ниже.Известные песни в настройке Drop D включают "Dear Prudence" Beatles, "Everlong" Foo Fighters и "Harvest Moon" Нила Янга.

Open G Tuning

Если вам нравится гитара Кита Ричардса, играющая в Rolling Stones, вы уже являетесь поклонником настройки Open G. В Open G струны вашей гитары настроены на ноты аккорда G, поэтому, когда вы играете в открытом стиле, вы уже играете полный аккорд. Начиная с шестой струны, настройтесь на следующие ноты: D-G-D-G-B-D. Это отличный вариант для изучения, если вы интересуетесь блюзовой слайд-гитарой!

DADFAD Tuning

Это еще один открытый строй, популярный в блюзовой музыке.Вместо настройки на аккорд G, как в случае с Open G, DADFAD настраивает вашу гитару на открытый аккорд D минор. Чтобы изменить эту настройку на аккорд ре мажор, просто настройте ноту F до F # - тогда у вас будет DADF # AD. Эта настройка великолепно звучит с открытыми струнами, поэтому это хороший вариант для тех, кто еще не знает аккордов, но все же хочет добиться мощного звука. Если вы знаете ребенка, который любит бить по открытым струнам, сначала настройте гитару на DADFAD!

Как часто мне следует настраивать гитару?

Гитары - чувствительные инструменты.Древесина в вашей гитаре расширяется и немного сжимается из-за изменений температуры и влажности. В свою очередь, это может изменить натяжение струн и заставить их расстроиться. Вы можете заметить, что ваша гитара расстроена, когда вы играете на ней, если вы склонны играть очень сильно или часто меняете высоту звука.

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

Как сделать так, чтобы моя гитара оставалась настроенной дольше?

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

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

Интонация может зависеть от износа во время игры на гитаре или от способа изготовления гитары. Посетите магазин гитар и попросите их взглянуть на интонацию вашей гитары.Они смогут помочь вам найти правильное решение ваших проблем с настройкой.

Пошаговая настройка гитары:

  • Шаг 1: Начните с настройки нижней струны E.
  • Шаг 2: Затем настройте струну A.
  • Шаг 3. Настройте струну D.
  • Шаг 4: Настройте струну G.
  • Шаг 5. Настройте струну си.
  • Шаг 6. Настройте струну High E String.
  • Шаг 7. Сыграйте аккорд, чтобы убедиться, что все струны настроены.
  • Шаг 8: Если какие-либо струны не звучат, перенастройте их.

Бесплатные онлайн-тюнеры для гитары

Есть несколько бесплатных онлайн-гитарных тюнеров, которые вы можете использовать, чтобы настроить вашу гитару. Вот несколько наших любимых:

8notes.com - Вы можете использовать этот тюнер, чтобы услышать правильную высоту звука, или активировать микрофон своего компьютера, чтобы включить определение высоты звука.

JamPlay - Этот бесплатный онлайн-гитарный тюнер от JamPlay также позволяет настраивать на слух или использовать микрофон компьютера для определения высоты звука.

TrueFire - TrueFire предлагает отличный бесплатный гитарный тюнер, который вы можете использовать на своем компьютере в дополнение к их фантастическому приложению Pro Guitar Tuner.

GuitarTricks - Этот тюнер использует настоящие гитарные тона, поэтому вы можете подобрать свой инструмент к его звукам.

Теперь, когда вы знаете, как настроить гитару, вы будете на правильном пути к достижению своих целей по игре на инструменте. Если вы серьезно настроены поднять свои навыки игры на гитаре на новый уровень, нет лучшего способа, чем частные уроки.Онлайн-уроки игры на гитаре в TakeLessons Live помогут вам улучшить свою игру, не выходя из дома.

Независимо от того, работаете ли вы с учителем онлайн или лично, первая часть урока всегда будет заключаться в настройке. После этого вы будете готовы научиться играть разные аккорды, новые образцы бренчания и некоторые из ваших любимых песен!

Меган Л. - писательница и музыкант, живущая в Сан-Диего. Она любит поддерживать независимых артистов и каждый день узнавать больше о музыке.Меган работает в TakeLessons с ноября 2011 года. Google+ Меган Л..

Как научиться играть на гитаре за 5 шагов

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

Это значит поработать над ловкостью ладоней и ковыряной руки. Я обнаружил, что лучший способ сделать это - выучить гаммы и ежедневно практиковать их.Однако, возможно, вы еще не готовы к этому, и это нормально. Другой гораздо более простой метод - это ежедневное упражнение под названием « Хроматическое упражнение ».

На самом деле это очень просто:

  • Сыграйте открытую ноту шестой струны, а затем первым (указательным) пальцем сыграйте первый лад шестой струны.
  • Затем сыграйте вторым пальцем на втором ладу той же струны.
  • Затем третий третий (безымянный) палец.
  • Наконец, вы играете четвертый лад шестой струны четвертым (мизинцем) пальцем.

Между прочим, это движение вверх по грифу одного лада за раз (или полушага) называется хроматической шкалой , отсюда это упражнение и получило свое название.

Когда вы закончите с шестой струной, перейдите к пятой струне и сделайте то же самое. Когда вы закончите с пятой, переходите к четвертой, затем к третьей, затем ко второй и, наконец, к первой струне.

Затем снова сыграйте ноты на первой струне, но в обратном порядке: четвертый лад на открытой струне.Затем вернитесь ко второй струне, обратно к третьей и полностью обратно к шестой струне, с которой вы начали, каждый раз играя ноты в обратном порядке. Когда вы закончите цикл, вы сыграете каждую ноту с первого по четвертый лад на каждой струне и обратно.

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

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

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

Это также отличное упражнение на разминку. Вы не поверите, но травмы могут случиться, когда гитаристы не разогреваются должным образом.

.

гиперпараметров Настройка случайного леса в Python | by Will Koehrsen

Я включил код Python в эту статью, где он наиболее поучителен. Полный код и данные для отслеживания можно найти на странице проекта Github.

Лучше всего думать о гиперпараметрах, как о настройках алгоритма, которые можно настроить для оптимизации производительности, точно так же, как мы можем повернуть ручки AM-радио, чтобы получить четкий сигнал (или ваши родители могли бы это сделать!). В то время как параметры модели изучаются во время обучения, такие как наклон и пересечение в линейной регрессии, специалист по анализу данных должен установить гиперпараметров перед обучением .В случае случайного леса гиперпараметры включают количество деревьев решений в лесу и количество функций, учитываемых каждым деревом при разделении узла. (Параметры случайного леса - это переменные и пороговые значения, используемые для разделения каждого узла, изученного во время обучения). Scikit-Learn реализует набор разумных гиперпараметров по умолчанию для всех моделей, но не гарантируется, что они будут оптимальными для проблемы. Лучшие гиперпараметры обычно невозможно определить заранее, а при настройке модели машинное обучение превращается из науки в разработку, основанную на пробах и ошибках.

Гиперпараметры и параметры

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

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

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

Технику перекрестной проверки (CV) лучше всего объяснить на примере с использованием наиболее распространенного метода - K-Fold CV. Когда мы подходим к проблеме машинного обучения, мы обязательно разделяем наши данные на обучающий и тестовый набор. В K-Fold CV мы дополнительно разбиваем наш обучающий набор на K подмножеств, называемых складками. Затем мы итеративно подбираем модель K раз, каждый раз обучая данные на K-1 складок и оценивая K-ю складку (называемую данными проверки). В качестве примера рассмотрим подгонку модели с K = 5.Первую итерацию мы тренируем на первых четырех складках и оцениваем на пятой. Во второй раз мы тренируемся в первом, втором, третьем и пятом раза и оцениваем в четвертом. Мы повторяем эту процедуру еще 3 раза, каждый раз оценивая по разному. В самом конце обучения мы усредняем производительность по каждой из складок, чтобы получить окончательные метрики проверки для модели.

Перекрестная проверка с 5 сгибами (источник)

Для настройки гиперпараметров мы выполняем множество итераций всего процесса K-Fold CV, каждый раз используя разные настройки модели.Затем мы сравниваем все модели, выбираем лучшую, обучаем ее на полном обучающем наборе, а затем оцениваем на тестовом наборе. Это звучит ужасно утомительно! Каждый раз, когда мы хотим оценить другой набор гиперпараметров, мы должны разделить наши обучающие данные на K раз, обучить и оценить K раз. Если у нас есть 10 наборов гиперпараметров и мы используем 5-кратное CV, это соответствует 50 циклам обучения. К счастью, как и большинство проблем в машинном обучении, кто-то решил нашу проблему, и настройка модели с помощью K-Fold CV может быть автоматически реализована в Scikit-Learn.

Обычно у нас есть лишь смутное представление о лучших гиперпараметрах, и поэтому лучший способ сузить наш поиск - это оценить широкий диапазон значений для каждого гиперпараметра. Используя метод Scikit-Learn RandomizedSearchCV, мы можем определить сетку диапазонов гиперпараметров и случайным образом выбрать из сетки, выполняя K-Fold CV с каждой комбинацией значений.

Вкратце, прежде чем мы перейдем к настройке модели, мы имеем дело с проблемой машинного обучения с контролируемой регрессией.Мы пытаемся предсказать температуру завтра в нашем городе (Сиэтл, Вашингтон), используя прошлые исторические данные о погоде. У нас есть 4,5 года тренировочных данных, 1,5 года тестовых данных, и мы используем 6 различных функций (переменных), чтобы делать наши прогнозы. (Полный код для подготовки данных см. В записной книжке).

Давайте быстро рассмотрим особенности.

Функции для прогнозирования температуры
  • temp_1 = максимальная температура (в F) за один день до
  • average = историческая средняя максимальная температура
  • ws_1 = средняя скорость ветра за один день до
  • temp_2 = максимальная температура за два дня до
  • friend = прогноз от нашего «верного» друга
  • год = календарный год

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

Чтобы посмотреть на доступные гиперпараметры, мы можем создать случайный лес и проверить значения по умолчанию.

 из sklearn.ensemble import RandomForestRegressorrf = RandomForestRegressor (random_state = 42) from pprint import pprint # Посмотрите на параметры, используемые нашим текущим лесом 
print ('Параметры, используемые в настоящее время: \ n')
pprint (rf.get_params ()) Используемые в настоящее время параметры:

{'bootstrap': True,
'criterion': 'mse',
'max_depth': None,
'max_features': 'auto',
'max_leaf_nodes': None,
'min_impurity_decrease' : 0.0,
'min_impurity_split': Нет,
'min_samples_leaf': 1,
'min_samples_split': 2,
'min_weight_fraction_leaf': 0.0,
'n_estimators': 10,
'n_jobs': 1,
'oobse_score ,
'random_state': 42,
'verbose': 0,
'warm_start': False}

Вау, это довольно обширный список! Как узнать, с чего начать? Хорошее место - документация по случайному лесу в Scikit-Learn. Это говорит нам о том, что наиболее важными параметрами являются количество деревьев в лесу (n_estimators) и количество функций, рассматриваемых для разделения на каждом листовом узле (max_features).Мы могли бы прочитать исследовательские статьи о случайном лесу и попытаться теоретизировать лучшие гиперпараметры, но более эффективно использовать наше время - просто попробовать широкий диапазон значений и посмотреть, что работает! Мы попробуем настроить следующий набор гиперпараметров:

  • n_estimators = количество деревьев в прогнозе
  • max_features = максимальное количество функций, учитываемых для разделения узла
  • max_depth = максимальное количество уровней в каждом дереве решений
  • min_samples_split = минимальное количество точек данных, помещенных в узел до разделения узла
  • min_samples_leaf = минимальное количество точек данных, разрешенных в листовом узле
  • bootstrap = метод выборки точек данных (с заменой или без нее)

Сетка случайных гиперпараметров

Чтобы использовать RandomizedSearchCV, нам сначала нужно создать сетку параметров для выборки во время подбора:

 из sklearn.model_selection import RandomizedSearchCV # Количество деревьев в случайном лесу 
n_estimators = [int (x) for x in np.linspace (start = 200, stop = 2000, num = 10)]
# Количество функций, которые следует учитывать при каждом разбиении
max_features = ['auto', 'sqrt']
# Максимальное количество уровней в дереве
max_depth = [int (x) для x в np.linspace (10, 110, num = 11)]
max_depth.append (None)
# Минимальное количество образцов, необходимых для разделения узла
min_samples_split = [2, 5, 10]
# Минимальное количество образцов, необходимых для каждого конечного узла
min_samples_leaf = [1, 2, 4]
# Метод выбора образцов для обучения каждого tree
bootstrap = [True, False] # Создать случайную сетку
random_grid = {'n_estimators': n_estimators,
'max_features': max_features,
'max_depth': max_depth,
'min_samples_split': min_samples_leaf_split ': min_samples47_split min_samples_leaf,
'bootstrap': bootstrap} pprint (random_grid) {'bootstrap': [True, False],
'max _depth ': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, None],
' max_features ': [' auto ',' sqrt '],
' min_samples_leaf ': [1, 2, 4],
'min_samples_split': [2, 5, 10],
'n_estimators': [200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000]}

На каждом итерация, алгоритм выберет разностную комбинацию признаков.Всего 2 * 12 * 2 * 3 * 3 * 10 = 4320 настроек! Однако преимущество случайного поиска заключается в том, что мы не пробуем каждую комбинацию, а выбираем случайным образом для выборки широкого диапазона значений.

Обучение случайному поиску

Теперь мы создаем случайный поиск и подгоняем его, как любую модель Scikit-Learn:

 # Используйте случайную сетку для поиска лучших гиперпараметров 
# Сначала создайте базовую модель для настройки
rf = RandomForestRegressor ( )
# Случайный поиск параметров с использованием трехкратной перекрестной проверки,
# поиск по 100 различным комбинациям и использование всех доступных ядер
rf_random = RandomizedSearchCV (Estimator = rf, param_distributions = random_grid, n_iter = 100, cv = 3, verbose = 2, random_state = 42, n_jobs = -1) # Подходит для модели случайного поиска
rf_random.fit (train_features, train_labels)

Самыми важными аргументами в RandomizedSearchCV являются n_iter, который контролирует количество различных комбинаций, которые нужно попробовать, и cv, которое является количеством сверток, используемых для перекрестной проверки (мы используем 100 и 3 соответственно). Больше итераций покроют более широкое пространство поиска, и большее количество кратных сокращений сокращает вероятность переобучения, но повышение каждого из них увеличит время выполнения. Машинное обучение - это область компромиссов, а производительность в зависимости от времени - одна из самых фундаментальных.

Мы можем просмотреть лучшие параметры, подбирая случайный поиск:

 rf_random.best_params_  {'bootstrap': True, 
'max_depth': 70,
'max_features': 'auto',
'min_samples_leaf': 4,
'min_samples_split': 10,
'n_estimators': 400}

На основе этих результатов мы сможем сузить диапазон значений для каждого гиперпараметра.

Оценить случайный поиск

Чтобы определить, дает ли случайный поиск лучшую модель, мы сравниваем базовую модель с лучшей моделью случайного поиска.

 def Assessment (model, test_features, test_labels): 
predictions = model.predict (test_features)
errors = abs (predictions - test_labels)
mape = 100 * np.mean (errors / test_labels)
precision = 100 - mape
print ('Характеристики модели')
print ('Средняя погрешность: {: 0,4f} градуса.'. формат (np.mean (errors)))
print ('Точность = {: 0,2f}%.'. format ( точность))

точность возврата

base_model = RandomForestRegressor (n_estimators = 10, random_state = 42)
base_model.fit (train_features, train_labels)
base_accuracy = оценить (base_model, test_features, test_labels) Производительность модели
Средняя ошибка: 3,9199 градусов.
Точность = 93,36%.
best_random = rf_random.best_estimator_
random_accuracy = оценить (best_random, test_features, test_labels) Производительность модели
Средняя ошибка: 3,7152 градуса.
Точность = 93,73%.
print ('Улучшение {: 0,2f}%.'. Формат (100 * (random_accuracy - base_accuracy) / base_accuracy)) Улучшение 0.40%.

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

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

 из sklearn.model_selection import GridSearchCV # Создаем сетку параметров на основе результатов случайного поиска 
param_grid = {
'bootstrap': [True ],
'max_depth': [80, 90, 100, 110],
'max_features': [2, 3],
'min_samples_leaf': [3, 4, 5],
'min_samples_split': [8, 10 , 12],
'n_estimators': [100, 200, 300, 1000]
} # Создание модели на основе
rf = RandomForestRegressor () # Создание экземпляра модели поиска по сетке
grid_search = GridSearchCV (Estimator = rf, param_grid = param_grid,
cv = 3, n_jobs = -1, verbose = 2)

Это попробует 1 * 4 * 2 * 3 * 3 * 4 = 288 комбинаций настроек.Мы можем подогнать модель, отобразить лучшие гиперпараметры и оценить производительность:

 # Подгоняем поиск по сетке к данным 
grid_search.fit (train_features, train_labels) grid_search.best_params_ {'bootstrap': True,
'max_depth': 80,
'max_features': 3,
'min_samples_leaf': 5,
'min_samples_split': 12,
'n_estimators': 100}
best_grid = grid_search.best_estimator_
grid_accuracy = Оценить (best_grid, Performance Model_abatures)
Средняя ошибка: 3.6561 градус.
Точность = 93,83%. print ('Улучшение {: 0,2f}%.'. Format (100 * (grid_accuracy - base_accuracy) / base_accuracy)) Улучшение 0,50%.

Кажется, мы почти достигли максимальной производительности, но мы можем дать еще одну попытку с сеткой, дополнительно уточненной по сравнению с нашими предыдущими результатами. Код такой же, как и раньше, только с другой сеткой, поэтому я представляю только результаты:

  Производительность модели 
Средняя ошибка: 3,6602 градуса.
Точность = 93.82%.
Улучшение 0,49%.

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

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

Сравнение всех моделей Модель

- это (очень невообразимые) названия моделей, точность - это процентная точность, ошибка - средняя. абсолютная ошибка в градусах, n_features - это количество функций в наборе данных, n_trees - количество деревьев решений в лесу, а time - время обучения и прогнозирования в секундах.

Это следующие модели:

  • среднее: исходная базовая линия, вычисленная путем прогнозирования исторической средней максимальной температуры для каждого дня в тестовом наборе
  • one_year: модель, обученная с использованием данных за один год
  • four_years_all: модель, обученная за 4,5 года данные и расширенные функции (подробности см. в первой части)
  • four_years_red: модель, обученная с использованием данных за 4,5 года и подмножества наиболее важных функций
  • best_random: лучшая модель из случайного поиска с перекрестной проверкой
  • first_grid: лучшая модель из поиска по первой сетке с перекрестной проверкой (выбрана в качестве окончательной модели)
  • second_grid: лучшая модель из поиска второй сетки

В целом, сбор дополнительных данных и выбор функций уменьшили ошибку на 17.69%, а гиперпараметр дополнительно снизил ошибку на 6,73%.

Сравнение моделей (код см. В Блокноте)

С точки зрения программиста, сбор данных занял около 6 часов, а настройка гиперпараметров - около 3 часов. Как и в случае с любым другим занятием в жизни, есть момент, когда дальнейшая оптимизация не стоит усилий, и знание того, когда остановиться, может быть столь же важным, как и способность продолжать работу (извините за философские размышления). Более того, в любой проблеме с данными существует так называемая частота ошибок Байеса, которая является абсолютным минимумом возможной ошибки в проблеме.Ошибка Байеса, также называемая воспроизводимой ошибкой, представляет собой комбинацию скрытых переменных, факторов, влияющих на проблему, которую мы не можем измерить, и внутреннего шума в любом физическом процессе. Поэтому создание идеальной модели невозможно. Тем не менее, в этом примере мы смогли значительно улучшить нашу модель с помощью настройки гиперпараметров, и мы рассмотрели множество широко применимых тем машинного обучения.

Для дальнейшего анализа процесса оптимизации гиперпараметров мы можем изменять одну настройку за раз и видеть влияние на производительность модели (по сути, проведение контролируемого эксперимента).Например, мы можем создать сетку с диапазоном количества деревьев, выполнить поиск по сетке CV, а затем построить график результатов. Построение графика ошибки обучения и тестирования и времени обучения позволит нам проверить, как изменение одного гиперпараметра влияет на модель.

Сначала посмотрим, как влияет изменение количества деревьев в лесу. (см. тетрадь для обучения и построения кода)

Количество деревьев Обучающие кривые

По мере увеличения количества деревьев наша ошибка уменьшается до точки.Нет особого преимущества в точности увеличения количества деревьев сверх 20 (в нашей окончательной модели было 100), и время обучения постоянно увеличивается.

Мы также можем исследовать кривые для количества функций для разделения узла:

Количество функций Обучающие кривые

По мере увеличения количества сохраняемых функций точность модели увеличивается, как ожидалось. Время обучения также увеличивается, хотя и незначительно.

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

Как всегда, приветствую отзывы и конструктивную критику. Со мной можно связаться по адресу [email protected]

.

Смотрите также