Задний план

Каждую минуту на Youtube загружается более 400 часов видеоконтента. Основанный в импровизированном офисе (гараже) в 2005 году, Youtube в настоящее время является крупнейшей в мире платформой для распространения видео, предоставляя частным лицам и компаниям возможность охватить широкую аудиторию. Например, Райан Каджи начал свой канал в возрасте четырех лет, и сейчас у него более 34 миллиардов просмотров видео с обзорами его игрушек. Канал приносит ему более 20 миллионов долларов в год. Создание вирусного видеоконтента, несомненно, становится все более прибыльным делом. В чем секрет популярных видео? Давайте разберемся!

Цель

Цель нашего проекта заключалась в том, чтобы понять факторы, которые способствуют популярности видео на Youtube в США, и получить информацию, которая помогла бы ютуберам достичь максимального потенциального охвата.

Подготовка данных

Исходный набор данных содержит сведения о ежедневных трендах видео на YouTube в США. Исходный набор данных собирался ежедневно в течение шести месяцев путем очистки списка самых популярных видео на Youtube с использованием Youtube API и публиковался Митчеллом Дж. на Kaggle. Список популярных видео определяется Youtube на основе «комбинации факторов, включая измерение взаимодействия пользователей». Для каждого популярного видео у нас есть качественные данные, такие как название и описание, а также количественные данные, включая количество просмотров, лайков и комментариев. У нас также есть дата публикации видео, а также дата, когда видео было в тренде.

Шаг 1: очистка данных

Сложность этого набора данных заключается в том, что video_id не является уникальным идентификатором (хотя может им быть video_id+last_trending). Если не позаботиться об этом, весьма вероятно, что мы можем дважды подсчитать все, поскольку одно и то же видео может встречаться в исходном наборе данных более одного раза.

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

  1. Отброшены все нулевые значения, которые составляют всего около 1,4% от общего числа;
  2. Из даты публикации извлечены важные значения времени: созданы столбцы p_year, p_month, p_day и p_weekday;
  3. Преобразование всех логических столбцов в целые числа;
  4. Создан столбец category_name: идентификатор категории в паре с именем, появления столбца для частоты трендов для одного видео, коэффициент ответов на комментарии и лайков для количества комментариев или лайков, разделенных на просмотры, столбец title_length для длины заголовка;
  5. Данные сгруппированы по видео_идентификатору и отсортированы по тренду_времени, удалены все остальные строки и сохранена только последняя строка тренда с датой (это уменьшило количество записей с 40 тыс.+ до 6 тыс.+).

Шаг 2: модель «мешок слов»

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

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

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

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

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

Исследовательский анализ данных

Как распределяются ключевые показатели эффективности, такие как появления, просмотры и лайки? Здесь мы обнаружили, что самые популярные видео оставались в списке семь раз. Как и один эпизод Шоу Эллен, Momsplaining with Kristen Bell, он оставался в списке целую неделю — думаю, людям все равно нравится смотреть, как знаменитости демонстрируют родительские навыки! Кроме того, просмотры и лайки распределяются нормально.

Ютуберы создают видеоконтент на самые разные темы. Выбор темы часто основывается на личном опыте и предполагаемом интересе публики. Согласно нашему анализу, самой популярной категорией являются «Развлечения», за ней следуют «Музыка» и видео «Как создать стиль». Видео этих трех категорий вместе составляют половину от общего количества популярных видео на Youtube.

Время решает все. Мы изучили лучшее время дня и года для публикации видео. Время публикации — это фактор, определяющий порядок появления видео в ленте зрителей. Таким образом, создатели контента должны знать лучшее время для публикации видео. По нашим результатам, ролики, опубликованные в 4 утра и 15:00, набирают наибольшее количество просмотров. Ролики, опубликованные с 5 утра до полудня, имеют наименьшую аудиторию.

Также полезно посмотреть на текстовые данные. Использование слова «облако» — хороший вариант.

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

Моделирование

Линейная регрессия

Для начала мы разработали модель линейной регрессии. Мы случайным образом разбиваем набор данных для обучения данных и проверки данных на 60–40, используя sklearn, чтобы предсказать количество просмотров, взяв его естественный журнал, поскольку количество просмотров для конкретного видео может варьироваться от сотен до сотен миллионов. . Мы выбрали следующие переменные x:

'new_category_id,''comments_disabled,''new_p_month,' 'new_p_weekday', 'new_p_hour,' 'война,' 'день', 'игра', 'первый', 'официальный', 'видео', 'сделать, "аудио", "макияж", "фильм", "шоу", "трейлер", "прямой эфир", "звезда", "новинка", "музыка", "получить", "три", "title_length". /эм>

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

Как мы видим из результатов, несмотря на то, что RMSE вне выборки неплох, квадрат OOS R не очень идеален — почему бы нам не поиграть с другими моделями?

Древо решений

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

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

XGBoost

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

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

Удивительно, но наша модель XGBoost после настройки параметров по-прежнему давала RMSE 1,62, что было хуже, чем производительность базовой модели и других моделей, которые у нас были до сих пор.

Случайный лес

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

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

Метрикой, по которой мы оцениваем модель, является среднеквадратическая абсолютная ошибка. Базовая ошибка составила 1,41 градуса, а ошибка модели – 1,28 градуса; поэтому модель случайного леса улучшила прогнозы по сравнению с наивной моделью.

Выводы и предложения

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

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

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

Ограничения

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

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

Смотреть вперед

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

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

Код

https://github.com/yybug/inside-trending-videos

Авторы







Ссылка

1. Найдите наш набор данных на https://www.kaggle.com/datasnaek/youtube-new

2. Вики МакКивер, эта восьмилетняя девочка остается самой высокооплачиваемой на YouTube, заработав 26 миллионов долларов в 2019 году, https://www.cnbc.com/2019/12/20/ryan-kaji-remains-youtubes-highest -заработок-26-миллионов-в-2019.html

3. Маниш Патхак, Использование XGBoost в Python, DataCamp, изображение можно посмотреть на https://www.datacamp.com/community/tutorials/xgboost-in-python#what/