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

Этот проект был посвящен извлечению / сбору данных и моделированию линейной регрессии. Моя первоначальная идея заключалась в том, чтобы собрать информацию о городах (население, средний доход, средний возраст) и создать модель для прогнозирования количества полей для гольфа в каждом городе. Однако после создания парсера в течение нескольких дней я неоднократно получал блокировку IP-адресов на веб-сайте городских данных, так что эта идея провалилась. БАММЕР. В этот момент я волновался и задавался вопросом, достаточно ли у меня времени, чтобы действительно закончить проект. Имейте в виду - у нас было две недели на этот проект, и эта трагедия произошла примерно за 6 дней до срока сдачи проекта.

В этом процессе было хорошо то, что я смог очень быстро построить новый скребок. Я перешел к очистке boxofficemojo и IMDB, и мне удалось получить все необходимые мне данные о фильмах в течение дня или двух. Это было сделано с помощью beautifulsoup и selenium, двух отличных библиотек Python для парсинга.

Многие из переменных, которые я считал полезными (бюджет фильма, продолжительность в выпуске), не имели слишком большого количества значений, чтобы быть полезными. Из 10 500 строк данных, которые я собрал, около 7500 не хватало бюджета. После очистки этих столбцов и удаления пары выбросов у меня осталось около 9500 строк данных для моделирования. Моей целью было создать точную модель прогнозирования продаж билетов.

Некоторые методы, которые я включил в свое тестирование: регуляризация LASSO и Ridge, преобразования журналов, преобразования полиномов 2-й и 3-й степени, train_test_split + проверка.

Я закончил с полиномиальной линейной моделью 2-й степени против журнала моей целевой переменной. Это дало 0,81 R² по сравнению с новыми данными (что, по сути, означает, что моя модель была довольно хорошим предсказателем продаж билетов, при этом 1,00 R² было идеальным предсказанием для каждой точки), и я был вполне доволен своими результатами.

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