Алгоритми і методи надання рекомендацій та їх оптимізація
Розглянуто системи надання рекомендацій, їх застосування та роль у сучасному Інтернеті. Формалізована задача, яка має вирішуватись такими системами, та зроблено огляд методів систем сумісного фільтрування. Запропоновано удосконалення алгоритму надання рекомендацій та наведені практичні результати по...
Gespeichert in:
| Datum: | 2007 |
|---|---|
| 1. Verfasser: | |
| Format: | Artikel |
| Sprache: | Ukrainisch |
| Veröffentlicht: |
Інститут програмних систем НАН України
2007
|
| Schlagworte: | |
| Online Zugang: | https://nasplib.isofts.kiev.ua/handle/123456789/265 |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
| Zitieren: | Алгоритми і методи надання рекомендацій та їх оптимізація / М.П. Горностай // Пробл. програмув. — 2007. — N 4. — С. 69-76. — Бібліогр.: 9 назв. — укр. |
Institution
Digital Library of Periodicals of National Academy of Sciences of Ukraine| _version_ | 1859796870765740032 |
|---|---|
| author | Горностай, М.П. |
| author_facet | Горностай, М.П. |
| citation_txt | Алгоритми і методи надання рекомендацій та їх оптимізація / М.П. Горностай // Пробл. програмув. — 2007. — N 4. — С. 69-76. — Бібліогр.: 9 назв. — укр. |
| collection | DSpace DC |
| description | Розглянуто системи надання рекомендацій, їх застосування та роль у сучасному Інтернеті. Формалізована задача, яка має вирішуватись такими системами, та зроблено огляд методів систем сумісного фільтрування. Запропоновано удосконалення алгоритму надання рекомендацій та наведені практичні результати порівняння роботи алгоритмів.
|
| first_indexed | 2025-12-02T14:02:34Z |
| format | Article |
| fulltext |
Експертні та інтелектуальні інформаційні системи
© М.П. Горностай, 2007
ISSN 1727-4907. Проблеми програмування. 2007. № 4 69
УДК 004.031.43
М.П. Горностай
АЛГОРИТМИ І МЕТОДИ НАДАННЯ РЕКОМЕНДАЦІЙ ТА ЇХ
ОПТИМІЗАЦІЯ
Розглянуто системи надання рекомендацій, їх застосування та роль у сучасному Інтернеті.
Формалізована задача, яка має вирішуватись такими системами, та зроблено огляд методів систем
сумісного фільтрування. Запропоновано удосконалення алгоритму надання рекомендацій та наведені
практичні результати порівняння роботи алгоритмів.
Вступ
На сьогоднішній день в Інтернеті існує
величезний обсяг інформації, який зростає
швидкими темпами. Потреби користувачів
у споживанні конкретної інформації та їх
неможливість обробляти всю інформацію
привели до стрімкого розвитку технологій
пошуку інформації. Пошукові системи
ефективно виконують задачі пошуку та
роблять великі обсяги інформації
доступними для широкого кола корис-
тувачів. Проте дуже часто пошукові сис-
теми повертають значно більше інформа-
ції, ніж користувач може обробити.
З ростом обсягів даних, що збері-
гаються у мережі і пропонуються користу-
вачу, зростає актуальність проблеми випе-
редження запиту користувача шляхом
пропонування йому потенційно цікавої
інформації. Цю проблему розв’язують сис-
теми надання рекомендацій. Основна від-
мінність алгоритмів систем надання реко-
мендацій від алгоритмів пошуку даних
полягає у пропонуванні відповіді без яв-
ного запиту з боку користувача водночас,
як пошукові алгоритми дають відповідь на
конкретний запит користувача.
1. Розгляд систем надання рекомендацій
Згідно опублікованої в Інтернеті статті
[1], провідні компанії – розробники
пошукових систем (Yahoo!, Google)
зазначають, що майбутнє всесвітньої ме-
режі саме у системах надання рекоменда-
цій. Пошук все ще має велике значення,
але слід додавати до нього щось більш
корисне – персоналізацію, що є для цих
компаній ключовим напрямком дослі-
дження.
Надання рекомендацій базується на
перевагах користувача, що складають його
профіль. Переваги можуть задаватися са-
мим користувачем через присвоювання
рейтингів елементам (як це реалізовано на
www.yahoo.com, у системі пропонування
фільмів www.movielens.umn.edu чи на
сайтах електронної комерції, наприклад,
www.dell.com), або визначатися автомати-
чно, базуючись на поведінці користувача,
– які сторінки відвідував користувач, які
файли завантажував, скільки часу витрачав
на кожну сторінку, скільки разів сторінка
відвідувалась і т. д. (прикладами такої реа-
лізації є персональні рекомендації на
www.amazon.com, рекомендовані списки
музики для прослуховування на сайті
mystrand.com, а також агенти, що фільт-
рують новини). Це породжує два підходи
для отримання вищезазначеної інформації.
Перший підхід базується на рейтингах, які
користувачі призначають елементам, дру-
гий – на записах у системі про поведінку
користувача. У системах, які розглянуті у
даній роботі, переваги користувача визна-
чено користувачем у вигляді рейтингів для
елементів, тобто згідно першого з
вищеописаних підходів.
Мета даного дослідження – розгляд
методів і алгоритмів надання рекомендацій
та їх оптимізація. Методи розглядались у
контексті систем електронного навчання,
оскільки саме для таких систем планується
їх практичне застосування.
Дана робота містить: огляд систем
надання рекомендацій та опис обраної сис-
теми – системи сумісного фільтрування
(перший розділ); позначення, які викорис-
тані у формулах для експериментального
Експертні та інтелектуальні інформаційні системи
70
тестування методів систем сумісного філь-
трування (другий розділ); огляд та оптимі-
зацію методів систем сумісного фільтру-
вання, запропонованих у світовій науковій
літературі (третій розділ); додаткову опти-
мізацію методу, яка дозволяє покращити
результат рекомендації (четвертий розділ);
результати тестування роботи алгоритмів
на реальних даних та порівняння результа-
тів (п’ятий розділ).
Слід зазначити, що наведені в даній
роботі методи та алгоритми можуть бути
застосовані для будь-якої області, де
доцільне надання рекомендацій, – Інтер-
нет-магазинів, систем електронної комер-
ції, систем новин, сайтів, що пропонують
для завантаження фільми чи музику, та ін.
2. Аналіз систем сумісного фільт-
рування
Незалежно від способів отримання
інформації про переваги користувачів, згі-
дно [2] існує три типи систем надання ре-
комендацій, що розрізняються методами
обробки інформації. Перший тип – це сис-
теми, засновані на сукупності правил. Для
таких систем правила прийняття рішень
закладаються в них при їх розробці, а ін-
формація про користувача, що використо-
вується при виконанні правил, – це інфор-
мація про загальні характеристики корис-
тувача (демографічна інформація, сфера
діяльності, посада, набір інтересів). Дру-
гий тип – це системи, що базуються на фі-
льтруванні змісту. В таких системах кори-
стувачу рекомендуються елементи, подібні
до тих, до яких користувач виявив інтерес.
Третій тип – системи сумісного фільт-
рування.
Найпростішою реалізацією систем
першого типу є вітання користувача по
імені чи автоматичне налаштування мови
інтерфейсу залежно від регіону, де корис-
тувач проживає. Для завдання більш
складних правил, слід здійснювати аналіз
даних у системі та виявляти закономірно-
сті. Такий аналіз можна вважати підготов-
чим при побудові системи електронного
навчання. Закладені правила в таких сис-
темах не змінюються при збільшенні
кількості курсів та при діях користувачів.
Саме через зазначені обмеження системи
такого типу не розглядалися у цій роботі.
Системи другого типу пропонують у
вигляді рекомендації тільки ті елементи,
які схожі на елементи з профілю користу-
вача. Найбільшим обмеженням даного під-
ходу є те, що елемент ніколи не буде ре-
комендовано, якщо подібний елемент не
було оцінено чи відвідано. Тому для сис-
тем електронного навчання більш цікавим
і доцільним є використання систем тре-
тього типу та комбінованих систем тре-
тього і другого типів. У даній роботі ми
обмежилися системами надання рекомен-
дацій третього типу – системами сумісного
фільтрування, та розглянули методи пок-
ращення якості рекомендацій для таких
систем.
Сумісним фільтруванням (collaborative
filtering) називають надання рекомендацій
системами, що базуються на аналізі
поведінки користувача. Користувач порів-
нюється з іншими користувачами системи,
а відомі переваги користувачів використо-
вуються для прогнозування переваг нового
користувача. Залежно від типу системи
елементами, для яких визначаються пере-
ваги користувачів, можуть бути, напри-
клад, веб-сторінки, категорії і підкатегорії
новин чи найменування товарів. У систе-
мах електронного навчання елементами є
електронні курси та новини. Іншими сло-
вами, якщо два користувачі мають схожі
оцінки для певної кількості елементів, то
вважається, що вони мають схожі смаки, і
ми можемо вважати їх сусідами. Тради-
ційно для визначення сусідства використо-
вується підхід, що має назву k-Найближ-
чий-Сусід (k-Nearest-Neighbor, kNN), при
якому профіль користувача порівнюється з
профілями інших користувачів для
знаходження k користувачів, які мають
подібні смаки або інтереси (ці користувачі
в рамках даного підходу називаються най-
ближчими сусідами, де k є натуральним
числом) [3]. Такий підхід має різні реалі-
зації у залежності від того, яким чином
визначаються рейтинги та «схожість» між
користувачами чи близькість сусідства, та
як визначається, яка кількість елементів
потрібна для визначення схожості. Цей
Експертні та інтелектуальні інформаційні системи
71
метод найкраще працює, коли користувачі
оцінюють великі кількості елементів, та
для користувачів, чия поведінка не є
аномальною (тобто не відрізняється від
середньостатистичної).
Системи сумісного фільтрування
мають обмеження в застосуванні через
малу масштабованість (оскільки обчис-
лення мають відбуватись у режимі реа-
льного часу, збільшення кількості корис-
тувачів та елементів може призвести до
запізнення надання рекомендації) та змен-
шення покриття елементів протягом ро-
боти користувача внаслідок збільшення
кількості елементів у базі даних (що приз-
веде до менш надійних кореляційних
зв’язків). Для уникнення цих обмежень у
[3] запропоновані методи оптимізації об-
робки даних (такі як індексування схожих
об’єктів, зменшення розмірності, розбиття
запитів користувачів на кластери в режимі
попередньої обробки даних та накладання
обмежень на операції, що можуть викону-
ватись в реальному часі).
Бріз та інші в [4] виділяють два під-
види підходу до побудов систем сумісного
фільтрування. Перший, що базується на
пам’яті, – це алгоритми по визначенню
найближчих сусідів з різними метриками
визначення сусідства, а також алгоритми
кластеризації. Другий, що базується на
моделях, – це алгоритми побудови моде-
лей (наприклад, імовірнісних), в які можна
вкласти поведінку користувача. Однак ве-
лика кількість прихованих параметрів, по-
трібних для побудови моделей, робить дані
методи важкими для практичного застосу-
вання. Алгоритми, що базуються на
пам’яті, переважно працюють у реальному
часі, тоді як алгоритми, що базуються на
моделях – спочатку виконують підготов-
чий етап, а далі видають рекомендацію у
реальному часі. У даній роботі розглянуто
алгоритми, що працюють у реальному часі
та запропоновано модифікацію алгоритму,
що дозволяє скоротити час обчислень.
3. Позначення
Введемо наступні позначення для
формалізації математичної моделі. Нехай
U – це множина користувачів, mU = ,
},...,,{ 21 muuuU = . І – множина елементів,
},...,,{ 21 niiiI = , nI = . Позначимо )(u
aI
множину елементів, що не були оцінені
(чи відвідані) користувачем au , а aU –
множину найближчих сусідів цільового
користувача au .
Для користувача Uu ∈ профілем
вважаємо вектор )(nu довжини n, що
складається з упорядкованих пар:
〉〈= ))(,()),...,(,()),(,( 2211
)(
nunuu
n isiisiisiu ,
де Ii j ∈ , а us – функція, яка приписує еле-
ментам ваги, що відповідають ступеню
інтересу для користувача u.
Профілі мають зберігатися протягом
роботи системи для всіх користувачів. База
даних всіх профілів може бути
представлена як матриця розмірністю
m x n: nmju is
k ×=Λ )]([ , де )( ju is
k
є ступінь
інтересу користувача ku до елемента ji .
4. Методи систем сумісного філь-
трування
Системи сумісного фільтрування для
надання рекомендацій мають містити
алгоритми, що реалізують:
− підрахунок метрики для вимірю-
вання близькості сусідства (ступеня схо-
жості користувачів);
− метод для вибору множини сусідів
для прогнозування;
− метод для прогнозування рейтингу
елементів, ще не відвіданих користувачем;
− вибір певної кількості елементів з
найбільшим значенням рейтингу, які і бу-
дуть результативною рекомендацією.
Система надання рекомендацій у
вищенаведених позначеннях – це функція
}{: nullRIUСП ∪→×Λ , де R – нова мно-
жина ваг елементів, за якими можна ви-
значити множину рекомендованих елемен-
тів. Залежно від вибору алгоритму функція
СП може давати невизначений результат
(null). Загалом функцію СП можна розгля-
дати як функцію прогнозування цікавості
цільового користувача ku щодо цільового
елемента ji : )(),( jujk isiuСП
k
′=Λ .
Експертні та інтелектуальні інформаційні системи
72
У класичному варіанті методу сумі-
сного фільтрування для вимірювання сту-
пеня схожості користувачів найчастіше
використовується метрика, що підрахову-
ється як нормалізований добуток двох век-
торів, які представляють собою вектори
ступенів інтересу двох користувачів до
елементів. Інший спосіб визначення сусід-
ства згідно [5] полягає у використанні ко-
ефіцієнта кореляції Пірсона, який обрано у
даній роботі для тестування роботи
алгоритмів надання рекомендацій:
( ) ( )
( ) ( )
,
)()(
)()(
),(
1
2
1
2
1
,
)()(
∑∑
∑
==
=
−×−
−×−
=
==
n
j
uju
n
j
uju
n
j
ujuuju
ba
n
b
n
a
bbaa
bbaa
sissis
sissis
Puusim
де
aus та
bus – середні рейтинги всіх еле-
ментів користувачів au та bu відповідно.
Коли ступінь схожості цільового
користувача з усіма іншими користува-
чами визначено, для подальших підрахун-
ків з метою зменшення складності обчис-
лень береться скінченна кількість користу-
вачів з найбільшими значеннями ступеня
схожості. Оптимальна кількість користу-
вачів визначається для кожної системи
індивідуально після тестування методів
сумісного фільтрування на реальних даних
системи і варіюється у середньому від 10
до 100. У даній роботі використана реко-
мендація Херлокера та інших, які по-
казують доцільність використання 30 сусі-
дів [5].
Після визначення множини сусідів
користувача потрібен метод для підраху-
нку (прогнозування) рейтингів кожного
елемента )(u
aj Ii ∈ . Найпоширеніший підхід
згідно [6] – це використання зваженої суми
рангів. Очікуваний рейтинг )( ju is
a
′ елеме-
нта ji для користувача au підраховується
так:
( )
∑
∑
∈
∈
−×
+=′
ak
ak
kk
aa
Uu
n
k
n
a
Uu
uju
n
k
n
a
uju
uusim
sisuusim
sis
),(
)(),(
)(
)()(
)()(
,
де
aus та
kus – середні рейтинги всіх елеме-
нтів користувачів au та ku відповідно.
Для покращення якості рекомендацій у
[7] пропонується ввести коефіцієнт
значимості сусідства, що дозволить збіль-
шити ступінь сусідства між користува-
чами, які оцінили разом велику спільну
кількість елементів, та зменшити ступінь
сусідства між користувачами, що мають
мало спільних оцінок, проте у яких спільні
оцінки дуже схожі. Даний коефіцієнт ма-
тиме тим більше значення, чим більше
спільних елементів оцінили користувачі:
= 1,
50
min,
d
sg ba , де d – кількість елемен-
тів, які оцінили одночасно обидва корис-
тувачі a і b.
Іншою запропонованою в [7] опти-
мізацією методу є додавання до числа су-
сідів псевдо-активного користувача (пере-
ваги якого – це елементи )( ju iс
a
, визначені
за допомогою методу фільтрування змісту
на профілі активного користувача). Для
надання цьому псевдо-активному користу-
вачу більшої значимості, вводиться коефі-
цієнт значимості псевдо-активного корис-
тувача
×= cmcm
n
sw a
a ,
50
min , де an –
кількість елементів, яку оцінив активний
користувач, а cm – ваговий коефіцієнт
(пропонується покладати його 2 в [7]).
Даний коефіцієнт тим більший, чим
більшу кількість елементів оцінив
активний користувач.
Враховуючи коефіцієнт значимості
сусідства та додавання до числа сусідів
псевдо-активного користувача, формула
для обчислення очікуваного рейтингу
)( ju is
a
′ елемента ji для користувача au
модифікується таким чином:
(із сум доданків, що підраховуються на
множині всіх сусідів, виносяться доданки,
що відповідають доданому псевдо-
( )
∑
∑
∑
∈
∈
∈
×+
−′××
+
+
×+
−
+=′
ak
ak
kk
ak
aa
aa
Uu
n
k
n
akaa
Uu
uju
n
k
n
aka
Uu
n
k
n
akaa
ujua
uju
uusimsgsw
sisuusimsg
uusimsgsw
sicsw
sis
),(
)(),(
),(
)(
)(
)()(
,
)()(
,
)()(
,
Експертні та інтелектуальні інформаційні системи
73
активному користувачу; кожен доданок,
що відповідає сусіду, помножується на
коефіцієнт значимості сусідства, а
доданок, що відповідає псевдо-активному
користувачу – на коефіцієнт значимості
псевдо-активного користувача).
5. Удосконалення методу сумісного
фільтрування
Проаналізувавши вищезазначені алго-
ритми та запропоновану оптимізацію, в
даному розділі запропоновано додаткову
модифікацію методу, що дозволило пок-
ращити деякі показники, а саме – великий
час обчислень та велику розрідженість
матриці переваг, які не були враховані у
вищенаведеному методі.
Складність обчислень, тобто час,
необхідний для надання рекомендацій но-
вому користувачу в реальному часі, для
алгоритму визначення найближчих сусідів
складає O(m). Для невеликої системи із 20
тисяч користувачів та 100 елементів час
підрахунку рекомендації для користувача
складає близько 20 с, що є дуже значним,
оскільки за цей час користувач може
вирішити припинити перегляд сторінки чи
сайту, або перейти на іншу сторінку чи
зазначити нові рейтинги, і це призведе до
того, що сформована рекомендація буде
застарілою та невірною. Дане обмеження
можна обійти, якщо робити попередні
обчислення. Проте такий метод не буде
ефективним для систем, які мають велику
кількість користувачів та велику кількість
елементів, що постійно поповнюються.
З іншого боку, матриця переваг ко-
ристувачів Λ у переважній більшості
випадків дуже розріджена, тому визначити
користувачів, значно схожих на цільового
користувача, дуже складно. Багато науко-
вців приділяли увагу розрідженості мат-
риці переваг та способам заповнення мат-
риці. Наприклад, виконувалась заміна
нульових значень загальними рейтингами
або найбільш імовірнісними значеннями,
виділення принципових елементів [8, 9].
Прайор також показав, що використання
лише множини принципових елементів
зменшує розмірність матриці та робить
обчислення більш ефективними [9].
Пропонувалось скористатись методом
фільтрування змісту для заміни нульових
елементів ненульовими, що визначати-
муться як середнє арифметичне рейтингів
елементів, схожих із цільовим елементом
за тематикою і оцінених користувачем, чи
просто як середнє арифметичне рейтингів
елементів, схожих із цільовим елементом
за тематикою і визначених на множині всіх
профілів [7].
Оскільки у випадку системи елект-
ронного навчання, яка розглядається, інфо-
рмація про самі елементи – невідома, то
методом фільтрування змісту скористатись
неможливо. Тому запропоновано новий
метод визначення множини суттєвих кори-
стувачів, що дозволяє, з одного боку, зме-
ншити час обчислень, а з іншого – дає
можливість зменшити розрідженість мат-
риці переваг користувачів.
Матриця переваг користувачів Λ
модифікується таким чином: в ній
залишаємо тільки ті рядки, що відповіда-
ють користувачам, які оцінили принаймні
70 % елементів із множин елементів, оці-
нених цільовим користувачем. Даний від-
соток елементів отриманий експеримента-
льно: це оптимальне значення, яке дозво-
ляє суттєво скоротити розмір матриці пе-
реваг і відповідно час надання рекоменда-
ції, практично без зменшення якості реко-
мендації.
За рахунок розрідженості матриці Λ
ця модифікація дозволила отримати значне
скорочення кількості користувачів за
постійний час і відповідну вхідну множину
для обчислення ступеня кореляції. Дане
перетворення також врахувало значимість
сусідства, тому коефіцієнт basg , у формулі
обчислення рекомендації покладаємо 1.
Оскільки система надання рекомен-
дацій, що розглядалась, не містить інфор-
мацію про зміст елементів та відповідно не
дозволяє визначити схожі елементи, за-
пропонована наступна додаткова модифі-
кація алгоритму. Вектор рейтингів псевдо-
активного користувача визначено як сере-
днє арифметичне рейтингів конкретного
елемента для всіх користувачів. Така мо-
дифікація не є реалізацією методів фільт-
рування змісту і дозволила врахувати сут-
тєвість кожного елемента, а також через
дане перетворення було враховано вплив
Експертні та інтелектуальні інформаційні системи
74
користувачів, яких на першому кроці алго-
ритму було вилучено із множини користу-
вачів, з якої обиралися найближчі сусіди.
Формула для обчислення очікуваних рей-
тингів цільового користувача не змінилась.
6. Експериментальні результати
З метою перевірки ефективності
запропонованого удосконалення методу
сумісного фільтрування використовува-
лась база даних Джестер. Система Джестер
– електронна система рекомендації жартів,
створена Кеном Голдбергом та його
командою у Берклі. База даних містить
рейтинги 100 жартів, зібраних за період від
квітня 1999 до травня 2003 року.
Дослідження існуючих публічних баз
даних про поведінку користувачів у
Інтернеті показують, що зазвичай розрі-
дженість матриці переваг користувачів є
великою і складає у середньому від 70 до
99 %. Для отримання адекватних резуль-
татів тестування проводилось не лише на
розріджених матрицях. Внаслідок екс-
периментів з декількома базами даних
було виявлено, що за умови використання
вищезазначеного перетворення при ліній-
ному збільшенні розрідженості матриці,
розмірність матриці зменшується з не ме-
ншою швидкістю, що призводить до від-
повідного зменшення часу формування
рекомендацій. При цьому точність надання
рекомендацій не зменшується або її зміна
дуже незначна.
Кожен набір даних розділено на 2
частини – експериментальну (тренувальну)
та тестову. Частина тестових даних
використовувалась як вхідні дані про
цільових користувачів. На базі тренуваль-
ного набору виконувались алгоритми пер-
соналізації та обчислювались рекоменда-
ції, точність яких обраховувалась шляхом
порівняння з іншою частиною тестових
даних.
Тестування проводилось на двох
наборах даних. Перший містив 20000 за-
писів тренувального набору та 4983 запи-
сів тестового набору. Розрідженість мат-
риці була дуже низька і складала 27,5 %.
Навіть за таких умов описане перетво-
рення матриці рейтингів дозволило скоро-
тити тренувальний набір до 12977 записів
(на 35 %). Другий набір даних містив
20000 записів тренувального набору та
4938 записів тестового набору. Для цього
набору розрідженість матриці була висока
і складала 75,3 %. Описане перетворення
матриці рейтингів дозволило скоротити
тренувальний набір до 532 записів (на
97,3 %). Як вище зазначалось, для
визначення значення ступеня сусідства
використовувався коефіцієнт кореляції
Пірсона, а для формування рекомендації
обиралося 30 найближчих сусідів. Коефі-
цієнт asw покладався 0, 1 та 2 для різних
серій експериментів для того, щоб оцінити
вплив псевдо-активного користувача на
точність рекомендацій.
Для оцінювання ефективності алго-
ритму використовувались два показники:
нормалізована абсолютна похибка і
покриття.
Нормалізована абсолютна похибка
(середня абсолютна похибка між
рекомендацією та реальним результатом)
відображає статистичну точність даних і
для кожного користувача визначалась за
формулою
)(
|)()(|
minmax
1
ssr
isis
NMAE
r
j
juju
u
kk
k −
′−
=
∑
= ,
де )(⋅
kus – значення функції переваг корис-
тувача ku ; )(⋅′
kus – значення рекомендації
для цього користувача; r – кількість елеме-
нтів, для яких обчислювались рекоменда-
ції; maxs та mins – відповідно найбільше та
найменше значення переваг (для системи
Джестер складає відповідно +10 та –10).
Для визначення загальної похибки
обчислювалось середнє арифметичне нор-
малізованої абсолютної похибки за корис-
тувачами із тестового набору даних.
Покриття – відсоток елементів, цікавих
для користувача, для яких алгоритм
повертає рекомендації. Рекомендацією у
експерименті вважались тільки ті
елементи, для яких рекомендований
рейтинг був більший за 0. Результати
експерименту наведені в таблиці.
Експертні та інтелектуальні інформаційні системи
75
Під коефіцієнтом мається на увазі кое-
фіцієнт asw .
Отримані результати показали досить
високу точність, оскільки для надання
рекомендації враховувалась велика кіль-
кість зроблених оцінок цільовим користу-
вачем. Як видно із таблиці, значне скоро-
чення часу обчислень (для першого набору
– у 2 рази, для другого набору – у 50 разів)
було отримане без погіршення якості ре-
комендацій: нормалізована абсолютна по-
хибка зменшилась, а покриття рекоменда-
цій збільшилось у першому випадку і ва-
ріювалось у невеликому діапазоні у дру-
гому випадку. Слід зазначити, що
найкращий результат показав модифіко-
ваний метод із найбільшим значенням
коефіцієнта значимості псевдо-активного
користувача, що свідчить про позитивний
вплив модифікації алгоритму на точність
рекомендацій.
Висновки
Актуальність систем надання реко-
мендацій зростає разом із зростанням кіль-
кості електронної інформації. Такі системи
визнані пріоритетним напрямком розробок
провідних світових компаній. У даній
роботі розглянуто типи систем надання
рекомендацій та алгоритми і методи, що
використовуються у системах сумісного
фільтрування. Визначено, які типи систем
надання рекомендацій актуально застосо-
вувати для систем електронного навчання.
Запропоновано оптимізацію алгоритму
надання рекомендації та показано ефекти-
вність запропонованого методу шляхом
його тестування на великому масиві реа-
льних даних. Запропонований підхід мо-
жна застосовувати також до інших систем,
де доцільне надання рекомендацій.
1. Catone J. Yahoo!: The Web’s Future Is Not In
Search. – June 4 2007 // http://www.readwrite
web.com/archives/yahoo_personalization.php.
2. Mobasher B., Dai H., Luo T., Nakagawa M.
Improving the Effectiveness of Collaborative
Filtering on Anonymous Web Usage Data //
IJCAI 2001, Workshop on Intelligent
Techniques for Web Personalization (ITWP). –
Seattle. – August 2001. – P. 53–60.
3. Mobasher B., Brusilovsky, P., Kobsa A., Nejdl
W. Data mining for Web personalization. The
Adaptive Web: Methods and Strategies of Web
Personalization // Lecture Notes in Computer
Science. – Springer-Verlag, Berlin-Heidelberg
New York. – 2006. – 762 P. – P. 90–135.
Таблиця. Результати роботи алгоритмів на двох наборах даних у відсотках (з розрідженою
та нерозрідженою матрицею переваг)
Метод та набір даних NMAE Покриття
Класичний метод,
нерозріджена матриця
15,31 82,4
Модифікований метод,
нерозріджена матриця, коефіцієнт 0
15,54 86,4
Модифікований метод,
нерозріджена матриця, коефіцієнт 1
15,32 87,0
Модифікований метод,
нерозріджена матриця, коефіцієнт 2
15,17 87,14
Класичний метод,
розріджена матриця
17,39 91,1
Модифікований метод,
розріджена матриця, коефіцієнт 0
18,22 88,7
Модифікований метод,
розріджена матриця, коефіцієнт 1
17,74 88,9
Модифікований метод,
розріджена матриця, коефіцієнт 2
17,30 89,3
Експертні та інтелектуальні інформаційні системи
76
4. Breese J., Heckermen D., Kadie C. Empirical
analysis of predictive algorithms for
collaborative filtering // Fourteenth Annual
Conference on Uncertainty in Artificial
Intelligence. – July 1998. – P. 43–52.
5. Herlocker J., Konstan J., Borchers A., Riedl J.
An algorithmic framework for performing
collaborative filtering // 22nd Annual
International ACM SIGIR Conference on
Research and Development in Information
Retrieval (SIGIR). – 1999. – P. 230–237.
6. Anand S.S., Mobasher B. Intelligent
Techniques for Web Personalization // LNAI
3169. – Springer-Verlag, Berlin-Heidelberg
New York. – 2005. – P. 1–36.
7. Melville P., Mooney R., Nagarajan R. Content-
boosted collaborative filtering for improved
recommendations // 18th National Conference
on Artificial Intelligence (AAAI). – 2002. –
P. 187–192.
8. Billsus D., Pazzani M. Learning collaborative
information filters // Fifteenth International
Conference on Machine Learning. – Madison,
USA. – 1998. – P. 46–54.
9. Pryor M. The effects of singular value dec
omposition on collaborative filtering //
Dartmouth College CS Technical Report, PCS-
TR98-338. – 1998.
Отримано 09.10.2007
Про автора:
Горностай Марія Павлівна,
аспірантка факультету кібернетики
Київського національного універси-
тету імені Тараса Шевченка.
Місце роботи автора:
Київський національний університет
імені Тараса Шевченка.
Київ, просп. Академіка Глушкова 2,
корпус 6.
Тел.: +38(050) 352 5252.
e-mail: Gornostay.m@gmail.com
|
| id | nasplib_isofts_kiev_ua-123456789-265 |
| institution | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
| issn | 1727-4907 |
| language | Ukrainian |
| last_indexed | 2025-12-02T14:02:34Z |
| publishDate | 2007 |
| publisher | Інститут програмних систем НАН України |
| record_format | dspace |
| spelling | Горностай, М.П. 2008-02-19T13:02:41Z 2008-02-19T13:02:41Z 2007 Алгоритми і методи надання рекомендацій та їх оптимізація / М.П. Горностай // Пробл. програмув. — 2007. — N 4. — С. 69-76. — Бібліогр.: 9 назв. — укр. 1727-4907 https://nasplib.isofts.kiev.ua/handle/123456789/265 004.031.43 Розглянуто системи надання рекомендацій, їх застосування та роль у сучасному Інтернеті. Формалізована задача, яка має вирішуватись такими системами, та зроблено огляд методів систем сумісного фільтрування. Запропоновано удосконалення алгоритму надання рекомендацій та наведені практичні результати порівняння роботи алгоритмів. uk Інститут програмних систем НАН України Експертні та інтелектуальні інформаційні системи Алгоритми і методи надання рекомендацій та їх оптимізація Article published earlier |
| spellingShingle | Алгоритми і методи надання рекомендацій та їх оптимізація Горностай, М.П. Експертні та інтелектуальні інформаційні системи |
| title | Алгоритми і методи надання рекомендацій та їх оптимізація |
| title_full | Алгоритми і методи надання рекомендацій та їх оптимізація |
| title_fullStr | Алгоритми і методи надання рекомендацій та їх оптимізація |
| title_full_unstemmed | Алгоритми і методи надання рекомендацій та їх оптимізація |
| title_short | Алгоритми і методи надання рекомендацій та їх оптимізація |
| title_sort | алгоритми і методи надання рекомендацій та їх оптимізація |
| topic | Експертні та інтелектуальні інформаційні системи |
| topic_facet | Експертні та інтелектуальні інформаційні системи |
| url | https://nasplib.isofts.kiev.ua/handle/123456789/265 |
| work_keys_str_mv | AT gornostaimp algoritmiímetodinadannârekomendacíitaíhoptimízacíâ |