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

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

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

Для этого проекта я использовал наборы данных из http://www2.informatik.uni-freiburg.de/~cziegler/BX/ и переименовал их, как мне было удобно.

Начнем прямо с части кодирования.

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

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

Чтобы увидеть содержимое файлов csv

ВЫХОД-

Переименование столбцов для удобства и проверка изменений.

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

Теперь мы находим неверные введенные данные и исправляем их в соответствии с правильным типом данных.

ВЫХОД исправленной части

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

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

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

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

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

Мы видим, что в файле рейтингов много оценок вне контекста и их нет, поэтому теперь мы исправляем rating.csv.

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

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

Есть много систем рекомендаций, над которыми нужно работать
1.Популярность
2.Коллаборативная фильтрация
3.Элемент CF
Мы будем работать с совместной фильтрацией
Принимая во внимание рекомендации пользователей, прочитавших более 99 книг.

КОНЕЧНЫЙ ВЫХОД: -

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

Код этого проекта доступен в моем гитхабе https://github.com/johnty05/bookSuggestorSystem