NumPy — для хранения массивов и выполнения сложных математических вычислений; • Pandas — для хранения, обработки и анализа больших наборов данных; • Matplotlib — для построения графиков данных; • Turi Create — для хранения и обработки данных, а также обучения моделей; • Scikit-Learn — для обучения моделей машинного обучения; • Keras (TensorFlow) — для обучения нейронных сетей.
Если же мы обучаем модель с помощью нормы L2, это называется гребневой регрессией. Название «гребневая» происходит от формы функции ошибки, потому что при построении добавление члена нормы L2 к функции ошибки регрессии превращает острый угол в пологую долину. Функция ошибки:
Регуляризация настолько распространена, что сами модели имеют разные названия в зависимости от того, какая норма используется. Если мы обучаем регрессионную модель с помощью нормы L1, эта модель называется регрессией лассо. «Лассо» расшифровывается как «оператор наименьшей абсолютной усадки и отбора» (least absolute shrinkage and selection operator)
Наиболее популярный генеративный алгоритм — это генеративные состязательные сети (GAN), разработанные Яном Гудфеллоу с соавторами. Другие полезные и популярные генеративные алгоритмы: вариационные автокодеры, созданные Кингмой и Веллингом, и ограниченные машины Больцмана (RBMs), разработанные Джеффри Хинтоном.
Такие компании, как Netflix, широко задействуют матричную факторизацию для выработки рекомендаций. Представьте себе большую таблицу, где каждая строка соответствует пользователю, каждый столбец — фильму, а каждая запись в матрице — это рейтинг, который пользователь дал фильму. С помощью матричной факторизации можно извлечь определенные признаки, такие как тип фильма, актеры, появляющиеся в нем, и др., а также предсказать рейтинг, который пользователь даст ленте, на основе этих признаков.
И ответом будет — да! Два распространенных способа это проделать — разложение матрицы на множители и разложение по сингулярным значениям. Эти два алгоритма преобразуют большую матрицу данных в произведение меньших матриц.