Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 23, No. 6, pp.21-29
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 30 Jun 2025
Received 17 Mar 2025 Revised 21 Apr 2025 Accepted 24 Apr 2025
DOI: https://doi.org/10.14801/jkiit.2025.23.6.21

인공지능 기반 다중 어드바이저를 적용한 지식 추천 시스템에 대한 연구

유지현* ; 안동찬** ; 배기태***
*서울미디어대학원대학교 미디어비즈니스학과 석사과정
**신안산대학교 영상콘텐츠과 교수
***서울미디어대학원대학교 미디어비즈니스학과 정교수(교신저자)
Customizing Intelligent Recommendation System with multiple advisors based on AI
JiHyeon Yu* ; DongChan An** ; KiTae Bae***

Correspondence to: KiTae Bae Dept. of Media Business, 99 Hwagok-ro 61 gil, Gangseo-gu, Korea Tel.: +82-6393-3227, Email: ktbae@smit.ac.kr

초록

인터넷을 활용하는 다양한 사용자들에 의해 생성된 평가 정보들은, 해당 문제점들을 해결하기 위한 추천을 만들기 위해서 다양한 요구조건과 데이터를 활용하여 처리를 하며, 결과에 대한 만족도를 분석하기도 한다. 하지만, 기존에는 하나의 전문가 시스템에 의존하였기 때문에 다양한 추천을 하기에는 한계가 있었다. 또한 다중의 요구조건들을 모두 수용하여 처리해야 하기 때문에, 추천의 결과 또한 다양하지 못한 문제가 있었다. 본 연구는 이러한 문제를 해결하기 위해서, 다중 어드바이저 적용, 다중 요구조건 수용 및 처리를 통한 최적의 추천시스템을 제안하였다. 시스템은 하나 혹은 다중의 어드바이저가 정의되어 있고, 미리 정의된 요구조건을 분석 후, 처리 가능한 요구조건들만을 수용하여 각자의 추천결과를 산출하고, 이렇게 산출된 최종의 추천결과들을 통합한 최적의 추천시스템을 제안하였다.

Abstract

Evaluation information generated by various users using the Internet is processed using various requirements and data to make recommendations for solving the problems, and analyzes satisfaction with the results. However, there was a limit in making various recommendations because the existing system depended on one expert system. In addition, the results of the recommendation also had various problems because the multiple requirements had to be accommodated. In order to solve this problem, this study proposes an optimal recommendation system through application of multiple advisors and acceptance and processing of multiple requirements. The system has one or multiple advisors defined and analyzes the predefined requirements. And, we only accept the processable requirements, calculate the recommendation results of each, and suggest the optimal recommendation system by integrating the final recommendation results.

Keywords:

AI, advisor, knowledge recommendation system, context awareness, collaborative filtering

Ⅰ. 서 론

인터넷에는 다양한 데이터들이 존재하며, 각 데이터들은 다양한 처리를 거쳐 지식으로 가공되기도 한다. 대부분의 사용자들은 각자의 결정을 위해서, 이러한 지식을 이용하며, 각 지식이 어떤 사용자에게는 긍정적인 결과를 가져오지만, 어떤 사용자에게는 부정적인 결과를 가져오기도 한다. 결국 부정적인 결과를 최소화하기 위해서, 사용자의 다양한 요구조건 분석이 필요하며, 각 요구조건에 따른 다양한 입력 및 입력에 따른 결과를 추측해야 한다. 다양한 결과의 추측을 위해서 특정 질문에 대한 새로운 관점으로의 접근이 필요하다. 새로운 관점이라면, 문제의 해결을 위한 다양한 전문가의 의견이 필요하다는 의미이다. 물론, 각 전문가들 또한 각각의 의견이 있으며, 각 의견에 따른 다양한 결과들을 기대할 것이다. 게다가 사용자는 다양한 결과들 중에 어느 결과에 더 만족할 것인가에 대한 흥미가 더 있을 것이다. 즉, 특정한 문제를 가지고 있는 사용자는 해당 문제를 해결하기 위한 다양한 해결방법과 그의 결과를 분석하여, 보다 만족스러운 결과를 얻기 위한 지식 및 지식을 적용한 시스템을 기대한다. 이에 본 연구에서는 특정한 문제가 주어지고, 해당 문제를 해결하는 다양한 전문가의 의견과 기존 유사한 사례를 적용하여 결과를 분석하는 기능을 갖춘 상황인지환경의 AI기반 지식추천 시스템을 제안한다. 본 시스템은 먼저, 주어진 문제의 특징 및 문제의 요구사항을 분석하고, 분석된 결과에 맞는 전문가를 선택한다. 선택된 전문가는 해당 문제에 대한 의견을 입력하고, 결과를 도출한다. 이러한 방법으로 선택된 전문가의 결과들을 수집하며, 분석하고, 분석된 결과와 사용자의 상황 등을 고려하여, 최적의 추천 시스템을 완성한다.

본 연구의 구성은 아래와 같다. II장은 관련연구를 정의하고, III장에서는 제안한 추천 시스템을 설명한다. IV장은 응용을 통한 결과를 설명하고, 마지막 V장에서는 결론을 맺는다.


Ⅱ. 관련 연구

G. J. Kim et al.[1]은 복합지식 기반 개인 맞춤형 지능화 추천시스템을 제안하였다. 본 연구는 교육현장을 포함한 다양한 공간에서 작업자의 상황이나 업무의 맥락에 따라 개인의 숙련도 혹은 학습 진도에 맞게 실시간으로 발생 가능한 문제점들을 분석 후, 자동으로 해결할 수 있는 기능의 구현을 목표로 하고 있다. 하지만, 본 연구는 다양한 전문가의 의견을 구하지는 못하고, 하나의 문제에 한 명의 전문가만 추천을 해야 하는 활용가능 전문가의 수에 대한 한계를 가지고 있다.

C. M. Ahn et al.[2] 정의한 지식 검색 시스템은, 사용자의 질문에 대해, 다른 질의응답 문서를 검색하는 시스템으로, 좋은 평가를 받은 응답일지라도, 실제 사용자가 기대하는 것과는 다른 결과를 나타낼 수 있음을 알고, 이를 극복해주는 방법을 제안했다. 즉, 주어진 문제에 대해서, 사용자가 만족할 수 있는 결과를 보여주기 위한 제안을 하였지만, 시스템에 미리 사용자의 요구사항을 등록해야 하는 문제를 가지고 있다.

B. S. Lee et al.[3]는 지식기반 시스템 분석을 이용한 지식 체계에 대한 설명을 담고 있다. 본 시스템은 다양한 지식들의 체계화 하여, 그것들을 활용할 수 있는 방법을 제안하였지만, 특정분야에 대한 지식의 체계화에 대한 한계를 담고 있다.

지식 체계화에 대한 연구로서 J. U. Kim et al.[4]은 콘텐츠 정보의 지식 구조 및 추천 시스템에 대한 연구를 수행했다. 본 연구는 스마트 기기의 애플리케이션의 고객을 대상으로 하고 있다. 먼저 고객들은 자신들의 요구사항에 의해 생성된 평가 정보를 해당 콘텐츠에 대한 고객별 선호도 정보로 활용할 수 있기 때문에, 개인 맞춤형 추천 시스템으로 구성이 가능함을 보여주고 있다.

D. W. Lee et al.[5]의 연구에서는 스마트 환경에서의 사용자 상황인지 기반 지식 필터링을 이용한 콘텐츠 추천 시스템을 제안하였다. 본 시스템은 스마트 환경을 기반으로 하고 있고, 센서, 디스플레이, 스마트기기 등 각종 스마트 기기들과 연동을 위한 정보들을 공유 및 제공한다. 하지만, 기존에 공유되는 정보들이 너무 방대하고 다양하여, 이러한 정보들을 처리하는데 한계가 있어, 본 연구를 제안하였다. 따라서, 사용자에게 맞춤형 콘텐츠를 추천 제시함으로써, 다양한 정보 중에서 유용한 정보만 사용하여, 시스템의 부하를 최소하였다. 하지만, 시스템 부하의 최소화는 이루어 졌지만, 사용자에게 제공되는 정보의 한계로 인하여 사용자의 기대값은 감소하는 한계도 있다.

결국, 기존의 지식공유시스템, 지식추천시스템은 사용자에게 유용한 정보를 제공하는 장점도 있지만, 동적인 사용자에게서 발생되는 동적인 요청 정보를 수용하는 데에는 한계가 있다.

추천 시스템에서의 협업 필터링은 많은 사용자들로 부터 수집한 개인 성향의 정보들을 바탕으로 스스로 예측이 가능한 기술을 의미한다[6]-[9]. 협업 필터링은 어떠한 특정한 인물이 한 가지 이슈에 대해서 다른 인물과 같은 의견을 갖는다면, 다른 이슈에 대해서도 비슷한 의견을 가질 확률이 높을 것이라는 사실을 바탕으로 한다[10]-[12].


Ⅲ. 맞춤형 지식 추천시스템

3.1 시스템 구성

기존의 지식추천 시스템은 다양한 의견을 수렴한 전문가 1인의 지식에 의존하였지만, 제안하는 방법은 다양한 의견을 수렴한 다중 어드바이저 추천기능을 추가하였다.

지식을 생성하기 위한 데이터를 특정한 전문가 1인에게만 입력되는 것이 아닌, 참여하는 다수의 추천인 시스템에 입력된다(그림 1). 제안하는 시스템은, P(문제), R(요구조건), A(어드바이저), R(결과), 그리고 S(제안)으로 구성되어 있다.

Fig. 1.

System configuration

  • P : Problem, (P)
  • R : Requirement, R = {R1, ..., n}
  • A : Advisor, A = {A1, ..., y}
  • R : Result, R = {R1, ..., n}
  • S : Suggestion, (S)

먼저, 문제(P)가 주어지면, P의 요구사항을 분석한다. 하지만, 기존의 방법은 요구조건을 모두 분석 후, 일괄 처리하지만, 제안하는 방법은 분석된 요구 조건 중, 각 Advisor가 처리 가능한 요구조건만 고려하도록 하였다. 즉 어느 Advisor는 한 개의 요구조건에 해당되는 부분만 처리하고, 다른 Advisor는 일부의 요구조건에 해당되는 부분만 처리할 수 있겠지만, 어떤 Advisor는 모든 요구조건을 고려하여 처리할 수도 있다.

  • P ← A1{R1,2}
  • P ← A2{R1}
  • P ← A3{R2,4,5}

위는 부분적 요구조건을 고려하는 어드바이저의 예를 설명하고 있다. P <- A1{R1,2}은 어드바이저가 요구조건 2개를 고려한 문제해결을 정의하고 있고, P <- A2(R1)는 어드바이저가 1개의 요구조건을 고려하고 있다. 마지막으로 P <- A3(R2,4,5)은 어드바이저가 3개의 요구조건을 이용해서 문제를 해결하려고 한다. 이때 어드바이저에게 요구조건을 정의하는 대상은 사용자(U) 이다. 이 요구조건에 따라서 어드바이저에 의한 처리결과가 달라질 수 있다. 따라서, 사용자는 사용자가 원하는 요구조건을 구성할 수 있다.

  • U define {R1,2,3,...,n}

3.2 협업 필터링

어드바이저에 의해 산출된 결과({R1, ..., n})는 사용자의 선호도에 따라 추천(S, Suggestion)이 결정된다. 그림 1에서 설명되었듯이[13][14], 어드바이저는 모든 요구조건을 고려한 결과를 산출하는 것이 아닌, 어드바이저가 취할 수 있는 요구조건만을 이용한 결과를 산출한다. 따라서, 많은 요구조건을 수용한 결과가 사용자에게 더 많은 만족의 결과를 제공할 수 있다. 하지만, 각 결과에 따른 각각의 S를 제공하는 것은 사용자가 그중 하나를 선택해야 하는 문제를 가지고 있다. 따라서, 각 요구조건에 의해서 산출된 결과를 종합적인 S를 산출한다. 이때 많은 요구조건을 처리하는 어드바이저에 높은 가중치(w)가 주어진다. 설정된 가중치는 협업필터링을 거쳐 개인최적화 S를 사용자에게 추천한다(그림 2).

Fig. 2.

Collaborative filtering

알고리즘 1은 협업 필터링 과정을 설명한다. 문제 선언을 하고, 문제 해결을 위한 요구조건을 정의하며, 어드바이저의 사용을 위해 공유를 한다. 어드바이저는 공유된 요구조건을 참조하며 고려 가능한 요구조건들만을 그룹으로 묶어 처리한다. 처리가 완료되면, 각 어드바이저가 산출한 결과들을 협업 필터링 처리를 통해서 최적의 개인 맞춤형 추천을 선정한다[15].

Collaborative Filtering Process


Ⅳ. 응 용

4.1 가중치 정의(w)

본 연구에 사용되는 가중치(w)의 정의는 단순히 고려되는 요구조건의 개수에 근거를 두지 않고, 해당 어드바이저가 산출한 결과에 대한 사용자의 만족도까지 고려한 종합적인 평가를 가중치에 포함 시킨다.

  • w = {[w1]*i, [w2]*i, ..., [wn]*i}
  • (단, 0 ≤ i ≤ 1)

이렇게 결정된 서로 다른 w는 각각의 요구조건에 맞게 적용된다.

4.2 요구조건 정의(r)

사용자의 상황에 맞는 요구조건을 정의한다. 또한 사용자의 문제해결의 방향에 대해서 사용자가 원하는 방향을 정의할 수 있다. 본 연구에서는 5개의 요구조건을 정의하였다.

  • r1=[a1, a2, a3]
  • r2=[b1, b2, b3]
  • r3=[c1, c2]
  • r4=[d1, d2, d3, d4]
  • r5=[e1]

위처럼, 다섯 개의 요구조건은 각각의 세부적인 요구조건으로 분류된다.

4.3 어드바이저(ad)

어드바이저는 5개의 요구조건들을 분석하여, 가능한 요구조건 set을 정의한다. 요구조건 set은 서로 중복될 수 있으며, 모든 요구조건을 고려할 필요는 없다. 즉, 19개로 정의될 세부요구조건을 모두 고려할 필요가 없음을 의미한다.

  • ad1.set = [r1(a1,a2), r3(c1,c2)]
  • ad2.set = [r1(a3), r3(c1,c2), r5(e1)]
  • ad3.set = [r1(a1), r3(c1), r4(d1,d2,d4)]
  • ad4.set = [r1(d1,d3,d4)]
  • ad5.set = [r5(e1)]
  • ad6.set = [r4(d1),r5(e1)]

위와 같이 어드바이저 set을 정의한다.

4.4 처리

어드바이저 항목에서 6개의 set이 만들어졌다. 하지만, 6개의 set을 모두 처리하면 효율성의 문제가 발생된다. 가령 ad5.set =[r5(e1)]a6.set에 포함된다. 따라서, 각 set에 정의된 항목을 분석하여, 중복처리를 피하도록 set의 중복성회피를 위한 처리를 수행한다.

표 1은 4.3절에서 정의한 어드바이저 set을 보여준다. 표에서 정의한 각 set의 정의된 내용을 보면, ad5ad6의 통합가능성을 볼 수 있다. 즉 a5에서 정의한 e1은, ad6에서 정의한 (d1,e1)에 포함시켜 처리하는 것이 가능하기 때문에, ad5ad6의 요구조건에 통합할 수 있다(표 2표 3을 참조).

Set basic definition (before integration processing)

Set before integration processing

Set after integration processing

만약, ad2의 요구조건에 d1이 포함되어 있다면, ad6(ad5)는 ad2와 통합할 수 있을 것이다. 최종적으로 표3은 통합된 결과를 설명하고 있으며, 본 시스템은 ad1, ad2, ad3, ad4, ad6의 요구조건을 이용하여 처리한다.

4.5 결과분석

표 4는 분석결과를 보여준다. 요구조건에서 b1, b2, b3 요구조건들을 고려하지 않았기 때문에, 테이블에서는 삭제하였다. 그리고, 나머지 요구조건을 이용하여 결과(선호도)를 구하였다.

Analysis results

그림 3은 항목별 선호도를 설명한다. 위에서 언급하였듯이 각 요구조건 set은 다중 요구조건들로 구성되어 있다. 예를 들면 ad1의 경우는 a1, a2, b1, c2를 포함한다. 그림 3을 보면 ad1(파란색)으로 a1, a2, c1, c2의 그래프를 볼 수 있으며, 다른 요구조건의 결과들과 비교할 수 있다. c1은 3곳의 set, 즉 ad1, ad2, ad3, 이렇게 3곳의 set에 포함되어 있는데, 이중 ad1에서 처리하는 선호도가 높은 것을 알 수 있다. d1은 ad3, ad4, ad6에 포함되어 있지만 ad4에서 처리했을 경우, 선호도가 가장 높은 것을 알 수 있다. 이러한 방식으로 분석하다 보면, (a1->ad1)(a2->ad1)(a3->ad2)(c1->ad1)(c2->ad2)(d1->ad4)(d2->ad3)(d3->ad4)(d4->ad3)(e1->ad2)처럼 항목별 선호도를 정의할 수 있다.

Fig. 3.

Preference for results (preference per item)

그림 4는 요구조건 항목별 통합선호도를 보여준다. set에 정의된 다중의 요구조건이 구성되어 있는데, 요구조건이 항목별로 통합된 결과이다. 그림을 보면 c1의 요구조건에 대한 선호도가 가장 높다. 사용자는 c1의 요구조건의 특징이 가장 높았음을 보여준다. 하지만 d2의 결과는 낮다. 그림 4의 결과로 유추하면, c1의 가중치는 높게, d2의 가중치는 낮게 형성될 것이다.

Fig. 4.

Preference for results (integrated preference per item)

그림 5도 결과의 선호도를 설명한다. 하지만, 그림 4와의 차이가 있다면, 그림 4는 요구조건 항목의 통합된 선호도를 설명한다면, 그림 5는 정의된 5개의 요구조건 set의 선호도 결과를 보여준다. ad6은 두 개의 요구조건, 즉 d1, d3를 정의하고 있으며, ad3는 5개의 요구조건을 담고 있다. 결과를 보면, 많은 요구조건을 가지고 있는 set이 높은 선호도를 보여주고 있음을 증명한다.

Fig. 5.

Preference for results (integrated preference per requirements set)

4.6 가중치 결정

시스템은 산출된 결과를 이용하여 최종 추천을 하여야 한다. 이때 입력되는 값(가중치)을 결정해야 하며, 위에서 산출한 결과를 이용하여 가중치를 결정한다. 가중치 결정은 요구조건의 항목에 따른 결과, 즉 그림 4의 결과를 근거로 한다. 따라서, c1 <- d1 <- a1 <- c2 <- d4 <- e1 <- d3 <- d2 <- a2 <- a3의 순서로 가중치를 결정한다.

4.7 협업필터링

사용자 기반의 협업필터링은 각 사용자가 얼마나 유사한 항목을 선호하는지를 기준으로 한다. 본 연구에서 얼마나 유사한지는 선호도 값이 얼마나 높은 곳에서 유사한 그룹에서 형성되는지를 근거로 결정한다. 표 4의 분석결과를 보면, 요구조건과 set에 근거하여 산출결과를 알 수 있다. 가장 높은 값은 [ad1(c1)=0.8]이며, c1 항목에서 유사한 값은 [ad2(c1)]으로 값은 0.7이다. 또한 6항에서 정의한 높은 수준의 가중치(w)가 설정되기 때문에, 다른 항목과 차별화는 더 증가된다. 이러한 방법으로 표4를 정리하면, 즉, 중복되는 요구항목들을 낮은 산출값 위주로 삭제를 반복하여 표 5를 구한다.

After applying collaborative filtering (including X)

협업필터링 적용 후, ad5는 삭제되었다. ‘X’는 삭제된 요구조건의 산출값이다. [ad1(a1)]의 산출값이 0.7로 [ad3(a1)]과 같았지만, ad3가 더 많은 요구조건을 담고 있기 때문에, ad1의 a1 산출값을 제거하였다. ‘X’가 제거된 최종의 협업필터링 적용 후, 표 6이 만들어진다.

After applying collaborative filtering (excluding X, including preference)

표 6에서 설명하듯이, 제안한 방법에 의해 처리된 선호도 우선순위는 ad4 <- ad1 <- ad3 <- ad2이다. ad4와 ad1의 선호도가 같은데, ad4을 선택한 이유는 요구조건 항목의 선호도에서 d1(0,8)의 값이 [ad4:ad1] 중에서 가장 높기 때문이다. 시스템은 사용자에게 위에서 정의한 선호도 우선순위에 맞추어 선호도를 제안한다[16]-[18]. 따라서, ad4에서 나온 결과는 연결과정을 거쳐, 즉 ad1, ad3의 과정, 즉 협업필터링의 과정을 거쳐, 최종 ad2의 과정을 처리하면, 유사한 산출물 4개를 얻을 수 있고, 사용자는 유사한 결과 4개를 참고하면, 최적의 추천정보를 얻을 수 있다.


Ⅴ. 결 론

본 연구는 다중 어드바이저를 정의한 전문가 추천 시스템을 정의하였다. 시스템은 먼저 문제를 정의한 다음, 문제를 해결하기 위한 요구조건을 정의한다. 이때 요구조건은 문제를 가지고 있는 사용자의 특징을 고려하여 정의하기 때문에, 사용자 맞춤형 전문가 추천 시스템의 특징을 가지고 있다. 문제를 추천받기 위해서는 다양한 요구조건이 있다. 하지만, 어드바이저가 이러한 요구조건을 모두 수용 후, 결과를 도출하는 것은 한계가 있기 때문에, 각각의 어드바이저들이 고려 가능한 요구조건들을 선택하여 추천결과를 산출한다. 다중의 어드바이저가 있기 때문에, 다중의 추천결과가 기대된다. 최종적으로 산출된 추천결과들을 통합한, 협업필터링을 통해서, 최적의 추천결과를 산출하였다.

하지만, 현재의 시스템은 문제해결을 위한 몇 개의 요구조건이 필요한지, 그리고, 몇 개의 어드바이저가 필요한지에 대한 정의를 하지 않았다. 향후에는 문제의 크기에 따른 요구조건의 개수, 그리고 문제의 크기 및 요구조건의 개수에 따른 최적의 어드바이저 정의를 위한 연구가 필요하다.

Acknowledgments

본 논문은 2023년도 DMC산학진흥재단의 지원을 받아 수행되었음

This paper was supported by the DMC Network Foundation(DMCNF) in 2023

References

  • G. J. Kim, B. H. Kim, and J. S. Han, "Customizing Intelligent Recommendation System based on Compound Knowledge", The Journal of the Korea Contents Association, Vol. 10, No. 8, pp. 26-31, Jul. 2010. [https://doi.org/10.5392/jkca.2010.10.8.026]
  • C. M. Ahn, B. G. Choi, S. J. Chun, J. H. Lee, and J. S. Lee, "Question Recommendation for Knowledge Search System", Journal of the Korean Association of Information Education, Vol. 14, No. 3, pp. 405-416, Jul. 2010.
  • B. S. Lee, J. D. Lee, and H. J. Jun, "A Study on the Schema of Knowledge through Analysis Knowledge-based System", Proc. of the Society of CAD/CAM Conference, pp. 604-610, Feb. 2015.
  • J. U. Kim, J. Y. Park, and M. Y. Lee, "Content Knowledge Structure based Collaborative Filtering Recommender Systems", Annual Conference of KIPS, pp. 408-411. Apr. 2016. [https://doi.org/10.3745/PKIPS.y2016m04a.408]
  • D. W. Lee, U. S. Kim and K. H. Yeom, "Content Recommendation System Using User Context-aware based Knowledge Filtering in Smart Environments", The Journal of Korean Institute of Next Generation Computing, Vol. 13, No. 2, pp. 35-48, Apr. 2017.
  • J. M. Kim, "A Multimodal Profile Ensemble Approach to Development of Recommender Systems Using Big Data", Journal of Intelligence and Information Systems, Vol. 21, No. 4, pp. 93-110, Dec. 2015. [https://doi.org/10.13088/jiis.2015.21.4.093]
  • S. J. Park, Y. M. Kim, and J. J. Ahn, "Development of Product Recommender System using Collaborative Filtering and Stacking Model", Journal of Convergence for Information Technology, Vol. 9, No. 6, pp. 83-90, Sep. 2019. [https://doi.org/10.22156/CS4SMB.2019.9.6.083]
  • E. Y. Bae and S. J. Yu, "Transitive Similarity Evaluation Model for Improving Sparsity in Collaborative Filtering", The Journal of Korean Institute of Information Technology. Korean Institute of Information Technology, Vol. 16, No. 12, pp. 109-114, Dec. 2018. [https://doi.org/10.14801/jkiit.2018.16.12.109]
  • S. J. Park, D. H. Soung, and Y. C. Byun, "A Hybrid Collaborative Filtering based on Online Shopping Patterns using XGBoost and Word2Vec", Journal of KIIT, Vol. 18, No. 9, pp. 1-8, Sep. 2020. [https://doi.org/10.14801/jkiit.2020.18.9.1]
  • Y. J. Lee, H. R. Won, J. S. Shim, and H. C. Ahn, "A Hybrid Collaborative Filtering-based Product Recommender System using Search Keyword", Journal of Intelligence and Information Systems, Vol. 26, No. 1, pp. 151-166, Mar. 2020. [https://doi.org/10.13088/jiis.2020.26.1.151]
  • K. J. Lee, J. H. Woo, and H. S. Kim, "Extensible Evaluation and Analysis System for Virtual Training using Experiential Knowledge of Expert", KIISE Transactions on Computing Practices. Korean Institute of Information Scientists and Engineers, Vol. 24, No. 3, pp. 122-128, Mar. 2018. [https://doi.org/10.5626/KTCP.2018.24.3.122]
  • S. J. Yu, "Reliability-based Similarity Evaluation Model for Collaborative Filtering", Journal of KIIT. Vol. 14, No. 12, pp. 141-146, Dec. 2016. [https://doi.org/10.14801/jkiit.2016.14.12.141]
  • D. Mark, et al., "Data recovery advisor", U.S. Patent Application, No. 10, pp. 248-483, 2019.
  • J. H. Tillis, "Suggestion-based virtual sessions engaging the mirror neuron system", U.S. Patent Application, No. 10. pp. 204-225, 2019.
  • Z. Wei, et al., "AutoPrivacy: Automatic privacy protection and tagging suggestion for mobile social photo", Computers & Security, Vol. 76, pp. 341-353, Jul. 2018. [https://doi.org/10.1016/j.cose.2017.12.002]
  • P. Marksberry, J. Church, and M. Schmidt, "The employee suggestion system: a new approach using latent semantic analysis", Human Factors and Ergonomics in Manufacturing & Service Industries, Vol. 24, No.1, pp. 29-39, Jan. 2014. [https://doi.org/10.1002/hfm.20351]
  • A. Sordoni, et al., "A hierarchical recurrent encoder-decoder for generative context-aware query suggestion", Proc. of the 24th ACM International on Conference on Information and Knowledge Management, pp. 553-562, Oct. 2015. [https://doi.org/10.1145/2806416.2806493]
  • S. W. Cho, J. K. Oh, J. W. Lee, and H. J. Son, "A Cultural Heritage Recommender System Based on a Knowledge Graph", KIISE transactions on computing practices, Vol. 31, No. 2, pp. 76-83, Feb. 2025. [https://doi.org/10.5626/ktcp.2025.31.2.76]
저자소개
유 지 현 (JiHyeon Yu)

2021년 2월 : 국가평생교육진흥원 사회복지학(학사)

2023년 3월 ~ 현재 : 서울미디어대학원대학교 미디어비즈니스학과 석사과정

관심분야 : 인공지능, 비즈니스 모델

안 동 찬 (DongChan An)

2011년 2월 : 서강대학교 컴퓨터공학과(공학박사)

2002년 3월 ~ 현재 : 신안산대학교 영상콘텐츠과 교수

관심분야 : 인공지능, 메타버스, 접근제어

배 기 태 (KiTae Bae)

2006년 2월 : 전남대학교 컴퓨터정보통신공학과(공학박사)

2009년 3월 ~ 현재 : 서울미디어대학원대학교 미디어비즈니스학과 정교수

관심분야 : 인공지능, 메타버스, 비즈니스 모델 디자인

Fig. 1.

Fig. 1.
System configuration

Fig. 2.

Fig. 2.
Collaborative filtering

Fig. 3.

Fig. 3.
Preference for results (preference per item)

Fig. 4.

Fig. 4.
Preference for results (integrated preference per item)

Fig. 5.

Fig. 5.
Preference for results (integrated preference per requirements set)

Alg. 1.

Collaborative Filtering Process

INPUT P  //problem
DEFINE requirement: R1, R2, ..., Rn;
SHARE (R1, R2, ..., Rn);

TAKE An <- R{1, ..., n};
KEEP multiple (R);

for all Users;

FOR (r=1; r < n; r++) {
      R1 <- A1;
    R2 <- A2;
       :
    Rn <- An;
}

OUTPUT (R1, R2, ..., Rn);
SATISFACTION(S);
S <- CFA(R1*w1, R2*w1, ..., Rn*wn)

Table 1.

Set basic definition (before integration processing)

Set a1 a2 a3 b1 b2 b3 c1 c2 d1 d2 d3 d4 e1
ad1 O O O O
ad2 O O O O
ad3 O O O O O
ad4 O O O
ad5 O
ad6 O O

Table 2.

Set before integration processing

Set a1 a2 a3 b1 b2 b3 c1 c2 d1 d2 d3 d4 e1
ad1 O O O O
ad2 O O O O
ad3 O O O O O
ad4 O O O
ad5 O
ad6 O O

Table 3.

Set after integration processing

Set a1 a2 a3 b1 b2 b3 c1 c2 d1 d2 d3 d4 e1
ad1 O O O O
ad2 O O O O
ad3 O O O O O
ad4 O O O
ad6
(5)
O O

Table 4.

Analysis results

Set a1 a2 a3 c1 c2 d1 d2 d3 d4 e1 Avg
ad1 0.7 0.6 0.8 0.5 0.65
ad2 0.5 0.7 0.7 0.6 0.625
ad3 0.7 0.5 0.7 0.6 0.7 0.64
ad4 0.8 0.6 0.5 0.6333
ad6 0.4 0.5 0.45
Avg 0.7 0.6 0.5 0.7 0.6 0.6 0.6 0.6 0.6 0.6

Table 5.

After applying collaborative filtering (including X)

Set a1 a2 a3 c1 c2 d1 d2 d3 d4 e1
ad1 X 0.6 0.8 X
ad2 0.5 X 0.7 0.6
ad3 0.7 X X 0.6 0.7
ad4 0.8 0.6 X

Table 6.

After applying collaborative filtering (excluding X, including preference)

Set a1 a2 a3 c1 c2 d1 d2 d3 d4 e1 Preference
ad1 0.6 0.8 0.7
ad2 0.5 0.7 0.6 0.6
ad3 0.7 0.6 0.7 0.67
ad4 0.8 0.6 0.7