Как научиться ходить на платформе


Как быстро научиться ходить на платформе, выбираем обувь — www.wday.ru

Интересуясь, как научиться ходить на платформе, важно знать и принимать во внимание несколько секретов.

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

2. Нужно помнить правила красивого и легкого шага: двигаться нужно с ноги, а не с корпуса тела. Длина одного шага не должна превышать длины стопы без обуви. При этом изначально нужно становиться на пятку, а затем на носок.

3. Правильная ходьба предполагает наличие шагов по одной прямой линии. На самом деле этому можно и нужно научиться.

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

5. Походка будет радовать красотой только при правильной осанке, потому нужно держать спину ровной.

Успешное проведение обучения, вне всяких сомнений, повысит самооценку.

5 лучших инструментов для адаптации пользователей к работе

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

Essential read : Хотите, чтобы это работало? Подумайте о Netflix

См. Также : Не догадывайтесь об адаптации пользователей.Посмотреть реальные примеры того, что сработало

Ресурс: Клиенты на борту и поддержка Как никогда раньше

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

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

Обычно они не требуют кодирования.

Мы покажем вам 5 инструментов, из которых , 4 автоматические, а пятый - ручной , для руководства пользователями, не имеющими технических знаний, в которых необходимо задействовать реальных людей.

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

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

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

«WalkMe используется предприятиями из самых разных отраслей и вертикалей для увеличения продаж и коэффициента конверсии, повышения UX, снижения затрат на поддержку и повышения производительности труда сотрудников.

Наше видение - совместить способности людей с возможностями технологий ».

Основные характеристики

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

Стоимость

WalkMe предлагает два тарифных плана для предприятий -

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

Подробнее: https: // www.walkme.com

2. Приложения создают персонализированные продукты, которые понравятся вашим пользователям

Appcues - это инструмент, не связанный с кодом, он позволяет вам создавать пошаговые инструкции на вашем собственном сайте.

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

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

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

Основные характеристики

Неограниченные потоки, таргетинг и персонализация аудитории, аналитика потоков, расширенный поведенческий таргетинг, A / B-тестирование, настройка, расширенные права пользователей.

Стоимость

Стоимость

Appcues зависит от количества ваших активных пользователей.Вы уже догадались… чем больше пользователей, тем больше вы платите!

У них есть начальный, стандартный и корпоративный варианты, при этом корпоративный вариант всегда установлен на «Давайте поговорим».

2500 пользователей - 199 долларов в месяц

20 000–50 000 пользователей - 779 долларов в месяц

Подробнее: https://www.appcues.com

3. Анализируйте привлекательный дизайн WhatFix и привлекайте к нему внимание

Дизайн, взаимодействие и анализ - три ключевых слова, на которых WhatFix основывает свой продукт.

Компания

WhatFix создала приложение, в котором интерактивные руководства в реальном времени и привлекательный дизайн являются центром внимания пользователей.

Они оттачивают важность анализа взаимодействия пользователей с помощью расширенной аналитики.

«Whatfix - это платформа поддержки производительности для предприятий, которая упрощает процесс адаптации, улучшает поддержку и сокращает затраты на обучение пользователей».

Основные характеристики

Easy Guide Creation, богатые возможности отображения, взаимодействие с несколькими точками касания, поддержка нескольких языков и устройств, интеграция нулевого кода, интеллектуальное нацеливание, отслеживание уровня пользователя, совместимость и кроссбраузерная поддержка, поддержка фреймов.

Стоимость

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

Подробнее: https://whatfix.com

4. Никелированные специалисты понимают необходимость скорости для эффективной адаптации.

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

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

‘Просто укажите и щелкните. Создайте свое первое руководство за 2 минуты (кодирование и изменения на вашем веб-сайте не требуются) »

Основные характеристики

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

Стоимость

Тарифный план

Nickelleds основан на том, сколько руководств вам нужно, и его можно добавить после регистрации.

Для создания и развертывания 10 различных руководств пользователя это 99 долларов в месяц.

Для 50 гидов это 249 долларов в месяц.

Подробнее: https://www.nickelled.com

5. Для адаптации даже самых сложных пользователей, не имеющих технического образования? Используйте Upscope.io

Вам знакома следующая личность?

  1. Этот человек не понимает вашего автоматического обхода шагов.
  2. Они действительно не принимают другие ваши справочные руководства или видео.
  3. Они зададут вам много вопросов и отнимут много времени.
  4. Даже после множества вопросов они не будут много использовать продукт.
  5. Они никогда не подпишутся на платный план.
  6. Однако они делают хотят ваш продукт и могут заплатить.

Что пошло не так?

Некоторым из ваших самых сложных нетехнических пользователей нужно, чтобы реальный человек показал ваш сайт ВРУЧНУЮ 1 к 1.

Вы должны сидеть рядом с ними и объяснять вещи и щелкать для них.

Вы про совместное использование экрана?

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

Они будут бороться за это. Это занимает слишком много времени.

Вам нужно что-то мгновенное и без скачиваний.

Есть такое?

Проведите их по сайту, как если бы вы сидели рядом с ними, используя совместный просмотр Upscope.

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

Никаких скачиваний ерунды!

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

Вот 30-секундный обзор

.

Полный обзор проекта машинного обучения на Python: часть первая | by Will Koehrsen

Этот график позволяет нам визуализировать, как выглядит коэффициент корреляции -0,7. По мере того, как EUI сайта уменьшается, рейтинг Energy Star Score увеличивается, и эта взаимосвязь сохраняется для всех типов зданий.

Последний исследовательский участок, который мы сделаем, известен как Участок пар. Это отличный инструмент для исследования, потому что он позволяет нам видеть отношения между несколькими парами переменных, а также распределения отдельных переменных.Здесь мы используем библиотеку визуализации seaborn и функцию PairGrid , чтобы создать график пар с диаграммами рассеяния в верхнем треугольнике, гистограммами на диагонали, а также графиками плотности ядра 2D и коэффициентами корреляции в нижнем треугольнике.

Чтобы увидеть взаимодействие между переменными, мы ищем, где строка пересекается со столбцом. Например, чтобы увидеть корреляцию Weather Norm EUI с баллом , мы смотрим в строку Weather Norm EUI и столбец score и видим коэффициент корреляции -0.67. Помимо того, что такие графики выглядят круто, они могут помочь нам решить, какие переменные включить в моделирование.

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

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

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

Для этого проекта мы предпримем следующие шаги по разработке функций:

  • Однократное кодирование категориальных переменных (район и тип использования собственности)
  • Добавление преобразования числовых переменных в натуральный логарифм

Одновременное кодирование необходимо для включения категориальных переменных в модель. Алгоритм машинного обучения не может понять тип здания «офис», поэтому мы должны записать его как 1, если здание является офисом, и как 0 в противном случае.

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

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

После этого процесса у нас есть более 11000 наблюдений (зданий) со 110 столбцами (объектами). Не все эти функции, вероятно, будут полезны для прогнозирования Energy Star Score, поэтому теперь мы обратимся к выбору функций, чтобы удалить некоторые из переменных.

Выбор функций

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

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

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

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

 # Удалить все столбцы со всеми значениями na 
features = features.dropna (axis = 1, how = 'all')
print (features.shape) (11319, 65)

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

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

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

Перед вычислением базовой линии нам необходимо разделить наши данные на обучающий и тестовый набор:

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

Мы будем использовать 70% данных для обучения и 30% для тестирования:

 # Разделить на 70% набор для обучения и 30% для тестирования 
X, X_test, y, y_test = train_test_split (features, target,
test_size = 0,3,
random_state = 42)

Теперь мы можем рассчитать исходную базовую производительность:

  Базовое предположение - это оценка 66,00 
Базовая производительность на тестовом наборе: MAE = 24.5164

Наивная оценка отклоняется примерно на 25 пунктов по тестовой выборке. Оценка находится в диапазоне от 1 до 100, так что это соответствует ошибке в 25%, что довольно низкая планка, которую нужно преодолеть!

В этой статье мы рассмотрели первые три шага задачи машинного обучения. После определения вопроса мы:

  1. Очистили и отформатировали необработанные данные
  2. Провели исследовательский анализ данных, чтобы узнать о наборе данных
  3. Разработали набор функций, которые мы будем использовать для наших моделей

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

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

Как всегда, я приветствую отзывы и конструктивную критику. С ними можно связаться в Twitter @koehrsen_will.

.

Полное пошаговое руководство по машинному обучению на Python: Часть вторая | by Will Koehrsen

Каждое значение NaN представляет собой недостающее наблюдение. Хотя существует несколько способов заполнить недостающие данные, мы будем использовать относительно простой метод - вменение медианного значения. При этом все отсутствующие значения в столбце заменяются средним значением столбца.

В следующем коде мы создаем объект Scikit-Learn Imputer со стратегией, установленной на медианное значение. Затем мы обучаем этот объект на обучающих данных (используя imputer.fit ) и используйте его для заполнения недостающих значений как в данных обучения, так и в данных тестирования (используя imputer.transform ). Это означает, что пропущенные значения в тестовых данных заполняются соответствующим медианным значением из обучающих данных .

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

 # Создайте импутируемый объект со средним значением стратегия наполнения 
imputer = Imputer (strategy = 'median') # Обучайте на обучающих функциях
imputer.fit (train_features) # Преобразование данных обучения и данных тестирования
X = imputer.transform (train_features)
X_test = imputer.transform (test_features) Отсутствующие значения в функциях обучения: 0
Отсутствующие значения в функциях тестирования: 0

Все функций теперь имеют реальные конечные значения без пропущенных примеров.

Масштабирование объекта

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

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

Хотя этот процесс легко реализовать вручную, мы можем сделать это с помощью объекта MinMaxScaler в Scikit-Learn. Код этого метода идентичен коду для вменения, за исключением того, что вместо импутера используется масштабатор! Опять же, мы обязательно тренируемся только с использованием обучающих данных, а затем преобразуем все данные.

 # Создайте объект скейлера с диапазоном от 0 до 1 
scaler = MinMaxScaler (feature_range = (0, 1)) # Подгоните к скалеру данных обучения
.fit (X) # Преобразование данных обучения и тестирования
X = scaler.transform (X)
X_test = scaler.transform (X_test)

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

Реализация моделей машинного обучения в Scikit-Learn

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

Мы можем проиллюстрировать один пример создания модели, обучения (с использованием .fit ) и тестирования (с использованием .predict ) с помощью Регрессора Gradient Boosting:

  Gradient Boosted Performance на тестовом наборе: MAE = 10.0132  

Создание, обучение и тестирование моделей - каждая строка! Для построения других моделей мы используем тот же синтаксис, только меняем название алгоритма.Результаты представлены ниже:

Чтобы представить эти цифры в перспективе, наивный базовый уровень, рассчитанный с использованием медианного значения целевого показателя, составлял 24,5. Ясно, что машинное обучение применимо к нашей проблеме, потому что оно значительно лучше базового уровня!

Регрессор с градиентным усилением (MAE = 10,013) немного превосходит случайный лес (10,014 MAE). Эти результаты не совсем справедливы, потому что мы в основном используем значения по умолчанию для гиперпараметров. Особенно в таких моделях, как машина опорных векторов, производительность сильно зависит от этих настроек.Тем не менее, из этих результатов мы выберем регрессор с градиентным усилением для оптимизации модели.

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

Во-первых, что такое гиперпараметры и чем они отличаются от параметров?

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

Управление гиперпараметрами влияет на производительность модели, изменяя баланс между недостаточным и избыточным соответствием модели. Недостаточная подгонка - это когда наша модель недостаточно сложна (у нее недостаточно степеней свободы) для изучения сопоставления от объектов к цели.Модель недостаточной подгонки имеет большое смещение, которое мы можем исправить, сделав нашу модель более сложной.

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

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

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

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

  • Случайный поиск относится к методике, которую мы будем использовать для выбора гиперпараметров.Мы определяем сетку, а затем произвольно выбираем различные комбинации, а не ищем по сетке, где мы исчерпывающе пробуем каждую комбинацию. (Удивительно, но случайный поиск работает почти так же, как поиск по сетке, с резким сокращением времени выполнения.)
  • Перекрестная проверка - это метод, который мы используем для оценки выбранной комбинации гиперпараметров. Вместо того, чтобы разделять обучающую систему на отдельные обучающие и проверочные наборы, что сокращает объем обучающих данных, которые мы можем использовать, мы используем перекрестную проверку K-Fold.Это включает в себя разделение обучающих данных на количество складок K, а затем прохождение итеративного процесса, в котором мы сначала тренируемся на K-1 складок, а затем оцениваем производительность в K-й кратности. Мы повторяем этот процесс K раз, и в конце K-кратной перекрестной проверки мы принимаем среднюю ошибку на каждой из K итераций в качестве окончательного показателя производительности.

Идея перекрестной проверки K-Fold с K = 5 показана ниже:

Перекрестная проверка K-Fold с K = 5 (Источник)

Весь процесс выполнения случайного поиска с перекрестной проверкой:

  1. Настройка сетка гиперпараметров для оценки
  2. Произвольная выборка комбинации гиперпараметров
  3. Создайте модель с выбранной комбинацией
  4. Оцените модель, используя перекрестную проверку в K-кратном порядке
  5. Решите, какие гиперпараметры работают лучше всего

Конечно, мы не делаем На самом деле не делайте это вручную, а позвольте Scikit-Learn RandomizedSearchCV выполнять всю работу!

Поскольку мы будем использовать модель градиентной регрессии, я должен дать хотя бы немного предыстории! Эта модель представляет собой ансамблевый метод, что означает, что она построена из множества слабых учеников, в данном случае индивидуальных деревьев решений.В то время как алгоритм пакетирования, такой как случайный лес, параллельно обучает слабых учеников и заставляет их голосовать, чтобы сделать прогноз, метод повышения, такой как Gradient Boosting, обучает учеников последовательно, при этом каждый ученик «концентрируется» на ошибках, сделанных предыдущими. .

Методы повышения стали популярны в последние годы и часто побеждают в соревнованиях по машинному обучению. Метод повышения градиента - это одна из конкретных реализаций, в которой используется градиентный спуск для минимизации функции затрат путем последовательного обучения учащихся на остатках от предыдущих.Реализация Gradient Boosting в Scikit-Learn обычно считается менее эффективной, чем другие библиотеки, такие как XGBoost, но она будет работать достаточно хорошо для нашего небольшого набора данных и довольно точна.

Вернуться к настройке гиперпараметров

Существует множество гиперпараметров для настройки в регрессоре с градиентным усилением, и вы можете посмотреть документацию Scikit-Learn для подробностей. Мы оптимизируем следующие гиперпараметры:

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

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

В следующем коде мы строим сетку гиперпараметров, создаем объект RandomizedSearchCV и выполняем поиск гиперпараметров с использованием 4-кратной перекрестной проверки по 25 различным комбинациям гиперпараметров:

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

 # Найдите лучшую комбинацию настроек 
random_cv.best_estimator_ GradientBoostingRegressor (loss = 'lad', max_depth = 5,
max_features = None,
min_samples_leaf = 6,
min_samples_split = 6,
n_estimators = 500)

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

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

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

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

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

.

81 из лучших мест, где можно бесплатно научиться программировать

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

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

Однако есть так много бесплатных ресурсов, классов и книг по кодированию на выбор. Как узнать, где лучше всего учиться программированию в Интернете?

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

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


Содержание

Обратите внимание: вся информация, преподаваемые темы и т. Д. Были приняты во время обновления (июль 2020 г.) и определенно могут быть изменены. Спасибо!

Начать кодирование сейчас

Прекратить ждать и начать обучение! Получите мои 10 советов, как научиться программировать.

Успех! Теперь проверьте свою электронную почту, чтобы подтвердить подписку.


Общие веб-сайты и учебные платформы бесплатного программирования

1. Codecademy

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

Какие бесплатные уроки программирования они предлагают: HTML и CSS, JavaScript, PHP, Python, Ruby, Angularjs, Командная строка и др.

2.freeCodeCamp

Эта бесплатная онлайн-школа кодирования, созданная Куинси Ларсоном, сначала обучает программированию по установленной программе (всего около 800 часов), а затем дает вам практический опыт работы над проектами для некоммерческих организаций. Он идеально подходит для учащихся, которые хотят научиться программировать онлайн, получив практический практический опыт, который принесет пользу и впечатляюще будет смотреться в резюме.

Предлагаются бесплатные сертификаты кодирования: HTML, CSS, JavaScript, визуализация данных, DevTools, тестирование QA, Node.js, React, jQuery и другие

3. Coursera

Coursera - одно из лучших мест, где можно бесплатно научиться программировать, с его профессиональными и универсальными вариантами курсов. Сайт представляет собой большую библиотеку онлайн-курсов, где занятия ведут настоящие профессора университета. Все курсы бесплатны, но у вас есть возможность оплатить «Сертификат, подтвержденный Coursera» (цены колеблются от 30 до 100 долларов США), чтобы подтвердить окончание курса. Иногда оплата сертификата также предоставляет доступ к контенту, недоступному в бесплатных версиях.Coursera также предлагает «Специализации», которые представляют собой сборники курсов по определенной теме, обычно с заключительным проектом в конце.

Какие бесплатные курсы программирования они предлагают: Многие (далеко за пределами ваших базовых тем о программировании / информатике)

4. edX

EdX - это программа высшего образования с открытым исходным кодом, управляемая Массачусетским технологическим институтом и Гарвардом, что делает ее еще одним высококлассным ресурсом, где вы можете бесплатно научиться программировать онлайн. Сайт предлагает более 600 отличных курсов в категории «информатика», обучающих различным языкам программирования.

Предлагаются бесплатные курсы программирования: Java, C #, Python и многие другие

5. Кодовые войны

Codewars предлагает увлекательный и уникальный способ научиться программировать. Программа посвящена боевым искусствам и основана на задачах, называемых «ката». Выполняйте их, чтобы заработать честь и перейти к более высоким рангам. Это интересный способ научиться программированию в Интернете, если вас мотивирует небольшая геймификация!

Задачи кодирования, которые они предлагают: CoffeeScript, JavaScript, Python, Ruby, Java, Clojure и Haskell

6.Код Conquest

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

Преподаваемые темы: HTML / CSS, JavaScript, PHP, Ruby, jQuery, Swift, Python и другие

7. GA Dash

Это бесплатная обучающая онлайн-платформа Генеральной Ассамблеи.Это целиком

.

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