Магистерская диссертация. 1Магистр. Разработка рекомендательной системы для выбора инвестиционных инструментов
Скачать 0.74 Mb.
|
ОГЛАВЛЕНИЕВВЕДЕНИЕ 5 1 ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 7 1.1Постановка задачи 7 1.2 Обзор существующих систем 9 2. ПРОЕКТИРОВАНИЕ РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЫ ДЛЯ ВЫБОРА ИНВЕСТИЦИОННЫХ ИНСТРУМЕНТОВ 16 2.1 Определение требований 16 2.2 Определение факторов, влияющих на выбор инвестиционной стратегии 28 2.3 Проектирование рекомендательной системы 33 3. РЕАЛИЗАЦИЯ РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЫ 38 3.1 Компоненты и структура проекта 38 3.2 Фрагменты кода реализации 43 3.3 Описание интерфейса 60 ЗАКЛЮЧЕНИЕ 64 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 66 ПРИЛОЖЕНИЕ А 73 ВВЕДЕНИЕ Самым важным условием финансового успеха инвестора является тщательный отбор проектов для инвестиций. Бизнес-ангелы подходят к выбору проектов тщательно и тщательно, поскольку априори неизвестно, какой из них имеет шанс вырасти в первоклассную инновационную компанию, а затем выйти в лидеры рынка. Из-за небольшого количества отечественных инвесторов доля инвестиционных проектов в России еще меньше. Поэтому анализ проекта - это сложная и часто длительная процедура, к которой соискатель должен быть полностью готов для инвестиций. Процедура анализа и выбора проектов может сильно варьироваться в зависимости от предпочтений и привычек определенных инвесторов. Иногда это непринужденный разговор, а иногда долгий и утомительный формализованный процесс. В некоторых случаях кандидатам требуется подробное описание проекта с финансовыми расчетами, в других инвестор сам участвует в составлении описания проекта и помогает в этом начинающим предпринимателям. Процесс выбора проекта состоит из двух последовательных этапов: поток сделок и должная осмотрительность, общее место для инвестирования, венчурного инвестирования и частного капитала. Объектом исследований в рамках данной работы является рекомендательная система для выбора инвестиционных инструментов. Предметом исследования является разработка алгоритма для последующего внедрения в данный вид ситемы. Цели работы: анализ видов рекомендательных систем; создание логической концептуальной модели БД; определение требований к разрабатываемой системе. Для достижения поставленных целей в работе необходимо решить следующие задачи: описать виды существующих систем: разработать требования к АИС; разработка логических моделей АИС с помощью нотации UML; разработка алгоритма системы; описать интерфейс системы. Четвертая и пятая задачи должны быть практически решены с помощью соответствующих программных средств (систем CASE). Работа состоит из введения, трех глав, заключения, списка используемых источников и приложения. В первой главе работы приведено описание предмета исследования, рассмотрены существующие системы. Вторая глава посвящена определению требований к системе, выявление факторов, влияющих на выбор и проектирование рекомендательной системы. Третья глава описывает реализацию рекомендательной системы, в частности компоненты и структуру проекта, алгоритм с помощью которого будет происходить реализация и описание разрабатываемого интерфейса системы. Результаты и выводы о проделанной работе кратко представлены в заключении. Результатом данной работы является разработка рекомендательной системы, применение которой значительно повышает качество и эффективность инвестиционной деятельности предпринимателей и инвесторов 1 ТЕОРЕТИЧЕСКАЯ ЧАСТЬ Постановка задачи Рекомендательные системы – это системы фильтрации информации и поддержки принятия решений, которые представляют элементы, которые, вероятно, заинтересуют пользователя в определенном контексте. Мы рассматриваем пользователей как активных субъектов, которые осуществляют взаимодействие (например, просмотр, покупку, оценку и т.д.) в системе. Элементы – это объекты, с которыми пользователь может взаимодействовать (например, продукты, фильмы, песни и т.д.). Настройка параметров, характеризующих среду (например, время, устройство, местоположение), определяется как контекст. Кроме того, учитываются фактические предпочтения (например, фильтры, правила, типы элементов) в качестве ограничений рекомендаций. Как пользователи, так и товары могут быть описаны с помощью метаданных (например, возраст, пол, инвестиционный опыт и т.д.). Рекомендательные системы используют несколько алгоритмов интеллектуального анализа данных, таких как методы, основанные на популярности, совместной фильтрации и фильтрации на основе контента, гибридные технологии, методы, основанные на знаниях или обоснование на основе конкретных случаев в зависимости от характеристик предметной области, качества доступных данных и бизнес-целей. Рекомендательные сервисы предлагают несколько уровней персонализации, начиная от определяемых вручную выборок и заканчивая сложными гибридными решениями с учетом контекста. Компании часто смешивают различные типы алгоритмов, чтобы охватить разнообразную коллекцию рекомендаций. Хотя большинство алгоритмов рекомендаций сосредоточено на улавливании предпочтений пользователей, неперсонифицированные методы также можно рассматривать как строительные блоки сложного сервиса (например, в первом алгоритме могут быть показаны персонализированные рекомендации, во втором – самые популярные инвестиционные стратегии за последнюю неделю). Рекомендательные системы появились в середине 1990-х годов, однако они получают значительное внимание со времен премии Netflix. В настоящее время рекомендательные системы применяются в очень широком спектре услуг. Вообще говоря, рекомендательные системы полезны в любых областях, где в системе существует значительный выбор, и пользователи заинтересованы лишь в небольшой части товаров или услуг. По сравнению с субъектами обычных рекомендательных систем, финансовые продукты обычно требуют долгосрочного значительного финансового обязательства, поскольку их полезность осознается не сразу, в зависимости от нескольких внешних факторов (таких как рыночная доходность, государственное регулирование, валюта и т.д.); кроме того, необходимы экспертные знания, чтобы определить, какой из них является хорошим выбором. Чтобы снизить риск такого выбора, пользователи, как правило, предъявляют к этим продуктам более строгие требования, чем к обычным продуктам электронной коммерции, поэтому применение системы рекомендаций в финансовых областях является сложной задачей. Пользователи обычно защищают свои персональные данные, что особенно верно для финансовых услуг, что создает проблемы с конфиденциальностью в рекомендательных системах и требует более сложных альтернативных методов персонализации. Поскольку проблемы конфиденциальности имеют важное значение в финансовых услугах, личные метаданные и данные об отдельных транзакциях часто отсутствуют, что вызывает проблемы с холодным запуском пользователей для рекомендательных систем. С точки зрения бизнеса, общей проблемой, с которой сталкиваются финансовые учреждениях, является отсутствие интеллектуальной системы поддержки принятия решений. Поскольку деятельность по продаже финансовых продуктов требует экспертные знания, рекомендательные системы предлагают большие преимущества для финансовых услуг, либо повышая эффективность торговых представителей, либо автоматизируя процесс принятия решений для клиентов. Поэтому наблюдается значительный спрос на эти системы поддержки принятия решений. Рассмотрим наиболее часто применяемые методы рекомендательной системы и дополнительные методы, которые косвенно используются для рекомендаций в инвестиционной сфере. 1.2 Обзор существующих систем Существует множество реализованных систем и алгоритмов поддержки принятия финансовых решений. Рассмотрим основные их типы и примеры. Совместная фильтрация. Одним из наиболее часто используемых методов в рекомендательных системах является совместная фильтрация (CF). Поскольку этот метод требует только взаимодействия, он может быть применен в различных областях. Совместная фильтрация способна извлекать скрытые поведенческие паттерны в транзакционных данных, которые не могут быть смоделированы с помощью метаданных; поэтому методы совместной фильтрации обычно обладают более высокой точностью, чем методы, основанные на метаданных. С другой стороны, их эффективность сильно зависит от разреженности данных и новизны элементов (проблема холодного запуска); кроме того, это довольно сложно объяснить результаты алгоритмов CF, что является сильным недостатком для рискованных финансовых областей. Среди решений, основанных на совместной фильтрации, в большинстве работ применяются методы ближайшего соседа на основе элементов для рекомендации страховых компаний, недвижимости и венчурного капитала. Мы также находим предварительную концепцию применения рекомендаций, основанных на сходстве, для фондового рынка. Так, в работе [1] авторы применили матричную факторизацию для байесовского персонализированного ранжирования в сфере микрофинансовых услуг. Они предлагают оптимизацию, основанную на справедливости, с стохастический градиентный спуск (SGD). Значительный вклад опубликован Чжао и др. [2], которые предлагают пять различных методов совместной фильтрации для области венчурного капитала. CF также применяется в нескольких других гибридных методах. Фильтрация на основе содержимого. Фильтрация на основе содержимого (CBF) рекомендует элементы на основе метаданных элементов в истории пользователей и других доступных элементов; поэтому для этого метода требуются только метаданные и индивидуальные взаимодействия. Алгоритмы CBF могут справиться с проблемой холодного запуска и их рекомендациями-изменения легко объяснить с помощью метаслов; однако модели сильно зависят от качества метаданных, и они обычно менее точны, чем методы совместной фильтрации. Проблема рекомендаций на основе метаданных обычно связана с многокритериальным анализом решений (MCDA). Например, из-за сложности проблемы выбора недвижимости в этой области часто применяются модели MDCA. Джиневичиус и др. [3] предлагают модель, которая обрабатывает количественные и качественные критерии для управления недвижимостью. Дейли и др. [4] представляют систему рекомендаций по жилью, который учитывает не только метаданные дома, но и возможности транспортировки в указанные пользователем места. Сан-Мигель и др. [5] предлагают решение на основе метаданных для однорангового кредитования. Однако этот метод отличается от обычной фильтрации на основе контента. Авторы представляют фреймворк, способный представлять пользовательские данные в векторных и семантических пользовательских моделях. Методы, основанные исключительно на метаданных, не являются типичными для финансовых сетей. Рекомендация, основанная на знаниях. Системы рекомендаций, основанные на знаниях (KBRS), ориентированы на обобщение знаний о предметной области на основе ее специфики, различных ограничений и онтологии элементов. Информация о пользователе обычно собирается с помощью интерфейса сбора знаний, персонализированная рекомендация рассчитывается на основе представления знаний о пользователе и доступных элементах. Преимущество методов, основанных на знаниях, заключается в том, что рекомендации основаны только на знаниях предметной области и ограничениях предпочтений пользователей; кроме того, их легко объяснить. С другой стороны, следует создавать и поддерживать саму базу знаний, которая могут быть значительные накладные расходы при эксплуатации таких интерактивных систем поддержки принятия решений, и конфликт должен быть разрешен с помощью эвристики, когда нет соответствующего элемента, основанного на фактических ограничениях. Поскольку методы, основанные на знаниях, способны обрабатывать сложные пользовательские предпочтения, типичные для финансовых областей, они могут быть потенциально эффективными решениями при условии, что интерфейс сбора знаний реализован и приобретены знания о предметной области. Фелферниг и др. [6] предлагают несколько решений для рекомендации различных финансовые продукты, использующие рассуждения, основанные на ограничениях, которые являются разновидностью методов, основанных на знаниях. KBRS также применяется для персонализации вопросов анализа бизнес-плана \ Рекомендации, основанные на конкретных примерах. Рекомендательные системы на основе прецедентов (CBRS) применяют рассуждения на основе прецедентов (CBR), которые решают проблему рекомендации на основе старых аналогичных случаев. Обращение определяется различными способами (например, описанием продукта, предпочтениями пользователя, критериями поиска и результатом обращения). CBRS опирается на первые два этапа рассуждений, основанных на конкретных примерах, которые являются: (1) извлечением, которое находит соответствующие старые обращения к текущему обращению и (2) повторным использованием, которое применяет знания из соответствующих старых случаев. Фактический случай пользователя определяется данными профиля пользователя или с помощью интерактивного пользовательского интерфейса. Для того чтобы найти похожие случаи, обычно используются сходство атрибутов, модели совместной работы или знания предметной области. С одной стороны, CBRS можно использовать для решения сложных проблем, и он предоставляет объяснимые рекомендации. На основе Мусто и др. [7], CBR обладает лучшими свойствами, чем совместная фильтрация для финансовых целей сети. С другой стороны, эти методы требуют значительного объема данных о случаях. В финансовых областях мы находим ряд систем рекомендаций, основанных на конкретных случаях. Рахман и др. [8] предлагают приложение на основе ЦБ РФ для рекомендации страховых полисов. Мусто и др. [9] представьте обоснование, основанное на конкретных примерах, для рекомендации портфолио. В своих работах авторы также предлагают метод диверсификации для взвешивания возможных решений на каждом этапе. Юань и др. [10] вводят рекомендацию по недвижимости, которая сочетает в себе рассуждения, основанные на конкретных примерах и онтология элементов. Го и др. [11] применяют метод на основе экземпляров для задачи одноранговой рекомендации и используют регрессию ядра для нахождения весов сходства экземпляров в прошлом. Гибридные методы. Комбинация различных методов поддержки принятия решений является гибридным методом. Как правило, гибридные рекомендатели извлекают выгоду из преимуществ применяемых методов, в то время как их недостатки уменьшаются. Гибридные методы могут быть более точными, чем обычные модели; однако эффективная реализация таких решений может быть очень сложной для сложных задач. Существуют гибридные решения, которые включают транзакции по кредитным картам в различных доменах, чтобы предоставлять контекстно-зависимые рекомендации, основанные на местоположении пользователя [12]. Гибридная фильтрация является эффективным решением для междоменной рекомендации. Другое гибридное приложение фокусируется на поиске наиболее прибыльных акций в нужное время на основе предпочтений инвесторов [13]. Они применяют фильтрацию на основе совместной работы и контента на уровне алгоритмов и социальных, экономических и семантических агентов на системном уровне. CF и CBF также объединен Митрой и др. [14] для рекомендации страхового продукта и для микрофинансирования. Чтобы уменьшить проблемы разреженности для рекомендации фондового фонда, Мацацинис и Манаролис [15] предлагают комбинацию совместной фильтрации и многокритериального анализа решений. Существует несколько применений интеллектуального анализа ассоциативных правил (ARM) [16] в финансовой сфере. Для персонализированной рекомендации страховых продуктов предложен веб-метод определения правил гибридной ассоциации, который также решает проблему холодного запуска. Дополнительные методы. Дополнительные методы, которые интегрированы в обычные рекомендательные методы. Мы находим, что нечеткие методы в основном применяются для фондового рынка и распределения активов. Юджун и др. [17] вводят кластеризацию на основе нечетких данных для рекомендаций по запасам. Преобразование на основе нечеткости введено Гарсией-Креспо и др. [18] для составления рекомендаций по портфолио. Можно найти также применение искусственным нейронным сетям (ANN) для систем поддержки принятия торговых решений и извлечения информации из новостей [18]. При прогнозировании цен на акции семантические методы также рассматриваются для обработки веб-текстов [19] и эмоций, выраженных в сообщениях Twitter [20]. Таким образом, методы классификации обычно применяются для фондовых рынков. Опорный вектор (SVM) используется для включения информации из финансовых новостей [21], прогнозирования доходности акций [22] и предоставления сигналов о покупке/продаже акций [23]. Выводы по первой главе В первой главе мы рассмотрели необходимость и целесообразность применения алгоритмов поддержки финансовых решений в различных областях, а также описали основные группы данных алгоритмов, как они предложены и реализованы в различных системах. Таким образом, совместная фильтрация применяется в различных областях, где сам продукт четко определен; однако она ограничена решением сложных проблем с рекомендациями. Можно найти небольшое количество приложений, использующих чистую фильтрацию на основе контента. Из-за специфики финансовых областей многокритериальный анализ решений и аргументация на основе конкретных случаев имеют важное значение- значительное преимущество перед фильтрацией на основе совместной работы и контента. Предполагая, что доступен хорошо продуманный пользовательский интерфейс, методы, основанные на знаниях, имеют большие преимущества для решения проблем персонализации. Существует несколько гибридных методов, сочетающих фильтрацию на основе совместной работы и контента. Нечеткие методы в основном применяются для решения задачи выбора портфеля; кроме того, искусственные нейронные сети и машины опорных векторов являются обычно используется в системах принятия решений на фондовом рынке. 2. ПРОЕКТИРОВАНИЕ РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЫ ДЛЯ ВЫБОРА ИНВЕСТИЦИОННЫХ ИНСТРУМЕНТОВ |