최근의 여러 웹서비스에서는 태깅 기능을 제공함으로써 사용자가 작성하는 게시물의 주제를 표현하도록 유도하고 있다. 태그를 이용하면 글이나 사진에 대한 글쓴이의 감정과 같은 문맥적인 정보의 효과적인 추출이 가능하기 때문에, 기계적인 방식보다 글의 내용에 대해서 더 나은 의미 파악이 가능하다. 따라서 이를 추천시스템에 적용한다면 사용자의 만족도를 높일 수 있는 추천이 가능할 것이다. 본 논문에서는 게시글에 속한 태그들 간의 관계를 계산하고, 효율적인 유사도 측정알고리즘을 통해 게시글과 사용자등의 웹 자원을 추천하는 방법을 제안한다. 마지막으로, 실험을 통해 제안한 방법의 유효성을 검증하고, 사용자의 만족도를 측정하였다.
최근의 여러 웹서비스에서는 태깅 기능을 제공함으로써 사용자가 작성하는 게시물의 주제를 표현하도록 유도하고 있다. 태그를 이용하면 글이나 사진에 대한 글쓴이의 감정과 같은 문맥적인 정보의 효과적인 추출이 가능하기 때문에, 기계적인 방식보다 글의 내용에 대해서 더 나은 의미 파악이 가능하다. 따라서 이를 추천시스템에 적용한다면 사용자의 만족도를 높일 수 있는 추천이 가능할 것이다. 본 논문에서는 게시글에 속한 태그들 간의 관계를 계산하고, 효율적인 유사도 측정 알고리즘을 통해 게시글과 사용자등의 웹 자원을 추천하는 방법을 제안한다. 마지막으로, 실험을 통해 제안한 방법의 유효성을 검증하고, 사용자의 만족도를 측정하였다.
Recent web services provide tagging function to users, and let them express the topic of the contents of their articles. Moreover, we can extract context information like emotion of the writer efficiently by using tags attached to the articles or images. And we are able to better understand article ...
Recent web services provide tagging function to users, and let them express the topic of the contents of their articles. Moreover, we can extract context information like emotion of the writer efficiently by using tags attached to the articles or images. And we are able to better understand article than traditional algorithm. (eg. TF-IDF) Therefore, if we use tags in recommendation system, we can recommend high quality resources to the users. This study proposes a recommendation method that provide web resources (articles, users) through simple algorithm based on related tag set extracted from the article. Through the experiments, we show that the result was satisfactory, and we measure the satisfaction of users.
Recent web services provide tagging function to users, and let them express the topic of the contents of their articles. Moreover, we can extract context information like emotion of the writer efficiently by using tags attached to the articles or images. And we are able to better understand article than traditional algorithm. (eg. TF-IDF) Therefore, if we use tags in recommendation system, we can recommend high quality resources to the users. This study proposes a recommendation method that provide web resources (articles, users) through simple algorithm based on related tag set extracted from the article. Through the experiments, we show that the result was satisfactory, and we measure the satisfaction of users.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
실제로 위의 가정에 근거하여 언어의 분포와 의미의 상관관계에 관한 많은 연구들이 이루어졌으며, 위의 가정에 근거한 언어 모델 word2vec을 이용하면 정확도 높은 모델을 구현할 수 있다고 알려져 있다. [3] 본 연구에서는 이러한 가정에 근거하여 태그들을 분석함으로써 연관 있는 태그들을 찾아내고, 이러한 태그들 간의 관계를 활용하여 실제 웹서비스 아키필드[4]에 게시글 및 사용자를 추천하는 기능을 구현하는데 활용하고자 하였다.
따라서 위에서 그래프로 표현한 논리적인 관계를 수치화하여 사용자에 대한 점수를 매기고자 하였다. 점수는 식 2와 같이 사용자가 남긴 게시글의 공유 횟수, 좋아요 개수, 댓글 개수, 조회수를 단순 합산한 것으로 한다.
[8]에선 본 연구에서 제안한 아이템 기반에 더하여 사용자간의 관계를 추가로 고려하여 추천을 하였다. 본 실험에서는 앞서 제안한 추천 방법(유사도1)에 사용자 관계 정보를 추가고려(유사도2) 하였을 때 추천 결과가 얼마나 개선되는지 보여주고자 하였다. 그림 10에서 볼 수 있듯이, 태그 길이에 관한 임계점을 높여 갈수록 유사도가 낮아지는 경향을 보였다.
본 연구에서는 사용자의 태깅 활동을 기반으로, 태그 간의 관계를 계산하고, 이를 통해 웹 자원을 효과적으로 추천하는 방법을 제안한다. 게시글에 남겨진 태그는 해당 글을 가장 잘 표현할 수 있는 주제라고 볼 수 있기 때문에, 태그를 기반으로 추천을 한다면 글의 주제를 추출하기위한 별도의 복잡한 계산 없이도 효과적으로 글을 이해할 수 있는 장점이 있다.
이외에도 태깅을 이용하여 웹 자원의 인덱싱(Indexing)에 활용할 수 있으며, 실제로 인스타그램의 경우엔 검색을 태그 기반으로 제공하고 있다. 본 연구에서는 이를 활용한 추천 시스템에 대한 연구를 진행하였다.
기존 연구를 통해 태깅을 추천에 활용함으로써 효과적인 추천이 가능함을 확인하였다. 본 연구에서는, 사용자들의 태깅 활동을 기반으로 같은 문맥에서 자주 쓰이는 단어일수록 서로 같은 의미를 지닐 가능성이 높다는 기존의 언어의 분포에 관한 성질[2]에서 아이디어를 얻어 주어진 태그집합 간의 유사도를 통한 관계 추출을 통해 게시글 혹은 사용자와 같은 웹 자원을 추천하는 방법을 제안한다. 이를 실제 웹서비스, 건축작품 관리를 위한 소셜 플랫폼 ‘아키필드’[4]에 태그를 기반으로 한 효율적인 게시글 및 사용자 추천 기능을 구현하여 사용자들의 서비스 이용 만족도를 극대화 하고자 하였다.
이 외에도 사용자가 서비스를 이용하면서 남기는 게시글과의 여러 상호작용(댓글, 좋아요, 공유)들은 모두 데이터베이스에 기록이 된다. 우리는 사용자의 상호작용을 그래프로 표현하고, 관심이 비슷하면서 양질의 웹자원을 제공할 수 있는 사용자를 찾아내어 추천하고자 하였다. 나아가 관심사가 비슷한 사용자를 추천해줌으로써 관심사를 공유하는 커뮤니티 형성을 기대할 수 있다.
이를 실제 웹서비스, 건축작품 관리를 위한 소셜 플랫폼 ‘아키필드’[4]에 태그를 기반으로 한 효율적인 게시글 및 사용자 추천 기능을 구현하여 사용자들의 서비스 이용 만족도를 극대화 하고자 하였다.
가설 설정
우리는 태그를 기반으로 비슷한 게시글 혹은 사용자를 얻어 추천에 활용하였다. [2]에서의 언어 분포의 성질에 따라서 같은 게시글에 등장하는 태그는 비슷한 문맥적 의미를 가질 것이라는 가정 하에 태그간의 관계를 계산하여 추천에 적용하였다. 실험을 통해서 태그 관계에 기반을 둔 단순한 알고리즘으로 게시글 및 사용자를 추천이 가능함을 보였다.
는 [2]에서 “같은 문맥에서 쓰이거나 등장하는 단어는 비슷한 의미를 지니는 경향이 있다”고 밝혔다. 이에 근거하면 태그를 통해서 글의 주제를 효과적으로 알아 낼 수 있다는 사실에서 나아가 사용자가 작성한 태그들 중 자주 같이 등장하는 태그라면 비슷한 의미를 지닐 가능성이 높다고 가정할 수 있다. 실제로 위의 가정에 근거하여 언어의 분포와 의미의 상관관계에 관한 많은 연구들이 이루어졌으며, 위의 가정에 근거한 언어 모델 word2vec을 이용하면 정확도 높은 모델을 구현할 수 있다고 알려져 있다.
제안 방법
그 방법은 언어에 관한 다음의 아이디어 “같은 문맥에서 쓰이거나 등장하는 단어는 비슷한 의미를 지니는 경향이 있다”라는 생각에 기초를 두고 다음의 방법을 제안한다.
이를 위해 사용자의 태깅 활동과 사회적 관계를 이용하여 사용자간의 유사도를 측정하는 새로운 방법을 제안했다. 나아가 사용자간의 유사도를 활용하여 아이템을 추천하는 방법을 제안했다. [9]에서는 사용자들의 태깅 활동을 잠재적인 정보(사용자 개인적인 흥미, 선호도, 목적 등)의 근원으로써 정의하고, 태그를 개인화된 추천에 활용하였다.
본 연구에서는 사용자의 만족도에 관한 부분을 측정하기 위해 구글 애널리틱스(Google Analytics)[12]를 활용하여 사용자가 연속적으로 방문하는 페이지가 얼마나 증가 하였는지, 방문 페이지에서 바로 사이트를 떠난 비율은 얼마나 낮아졌는지 등을 사용자의 만족도로서 측정하였다. 앞서 제안한 기능의 적용 전/후를 각각 1달을 기준으로 측정하여 비교하였다.
본 장에선 앞서 제안한 방법과 [8]에서 제안한 태그 기반 협업 필터링(Tag based collaborative filtering) 방법을 비교하였다. [8]에선 태그를 기반으로 사용자간의 유사도를 판단하고, 비슷한 사용자들이 관심을 가졌던 게시글을 추천하였다.
관련 태그를 추출하는 데에 활용할 수 있는 전통적인 방법으로는 여러 가지가 있다. 빈발 패턴 마이닝(Frequent Pattern Mining)기법의 Apriori[10], FP-Growth[11]등의 알고리즘이 있는데, 본 연구에서는 이를 기반으로 약간 변형된 방법으로 연관 있는 태그를 추출하였다. 그 방법은 언어에 관한 다음의 아이디어 “같은 문맥에서 쓰이거나 등장하는 단어는 비슷한 의미를 지니는 경향이 있다”라는 생각에 기초를 두고 다음의 방법을 제안한다.
[9]에서는 사용자들의 태깅 활동을 잠재적인 정보(사용자 개인적인 흥미, 선호도, 목적 등)의 근원으로써 정의하고, 태그를 개인화된 추천에 활용하였다. 사용자들의 태깅활동에 근거해서 그들의 태그와 유사한 웹페이지를 추천해주는 태그 기반의 추천 시스템을 제안하였다.
본 연구에서는 사용자의 만족도에 관한 부분을 측정하기 위해 구글 애널리틱스(Google Analytics)[12]를 활용하여 사용자가 연속적으로 방문하는 페이지가 얼마나 증가 하였는지, 방문 페이지에서 바로 사이트를 떠난 비율은 얼마나 낮아졌는지 등을 사용자의 만족도로서 측정하였다. 앞서 제안한 기능의 적용 전/후를 각각 1달을 기준으로 측정하여 비교하였다. 그 결과, 사용자가 가지는 하나의 세션당 연속으로 조회하는 페이지뷰 수가 향상되었고, 사용자의 서비스 이탈률을 73% 가량 줄일 수 있었다.
우리는 태그를 기반으로 비슷한 게시글 혹은 사용자를 얻어 추천에 활용하였다. [2]에서의 언어 분포의 성질에 따라서 같은 게시글에 등장하는 태그는 비슷한 문맥적 의미를 가질 것이라는 가정 하에 태그간의 관계를 계산하여 추천에 적용하였다.
결과적으로 간단한 알고리즘으로써 시스템 정확도면이나 사용자의 만족도 측면에서 좋은 결과를 보여주었다. 웹서비스에서 활용되는 추천 알고리즘이므로 추천 결과가 얼마나 정확한지를 유사도로써 측정하였고, 사용자 만족도를 측정하기 위해 구글 애널리틱스(Google Analytics)[12]를 활용하여 사용자가 서비스에 머무르는 시간과, 연속적으로 방문하는 페이지가 얼마나 증가하였는지 등을 측정하였다. 구글 애널리틱스란, 웹로그 분석 툴로서 웹에서 발생하는 기록들을 분석해주는 기능을 제공한다.
[8]에서는 SNS의 데이터를 전통적인 추천 알고리즘과 결합하여 추천의 효율을 높이고자 하였다. 이를 위해 사용자의 태깅 활동과 사회적 관계를 이용하여 사용자간의 유사도를 측정하는 새로운 방법을 제안했다. 나아가 사용자간의 유사도를 활용하여 아이템을 추천하는 방법을 제안했다.
본 연구에서 활용한 웹서비스[4]에서는 그림 1과 같이 사용자가 현재 조회하고 있는 글('A')의 다음 글로 어떤 글('A-a', 'A-b', 'A-c')을 추천해줄 것 인지, 그리고 활발한 커뮤니티의 형성을 위해서 특정 사용자에게 비슷한 관심사를 가진 다른 사용자를 어떻게 추천해줄 것인가의 문제를 가지고 있었다. 이를 해결하기위해 본 논문에서 제안하는 추천 방법에서는 각 게시글에 달린 태그들을 하나의 태그집합으로 생각하고, 태그들 간의 관계를 분석하여 그 결과를 추천에 활용한다.
관련 게시글의 추천 방법은 그림 5와 같다. 현재 조회하는 게시글의 태그집합을 얻어오고, 각 태그마다 상위 5개씩의 관련 태그를 추출하여 이를 포함하는 관련 게시글 집합을 얻는다. 이렇게 얻은 관련 게시글 각각에 태그집합의 유사한 정도를 판단하는 식 1을 사용하여 임계점 (thres_len)을 넘어서는 게시글을 추천 후보로 지정한다.
이론/모형
앞서 제시한 게시글 추천 방법을 적용해보면 다음과 같은 결과를 얻을 수 있다. 현재 조회하는 게시글에 대한 태그집합과, 각 추천 결과에 속하는 태그집합을 이용해 다음과 같은 Similarity식을 적용하였다. (Ot:Original Tag Set, Rtk:k-th Recommended Tag Sets)
성능/효과
앞서 제안한 방법들을 실험하기 위해서, 웹서비스 아키필드의 5000개의 태그집합과 2000명의 사용자들에 대한 서비스와의 상호작용에 대한 기록을 얻어왔다. 결과적으로 간단한 알고리즘으로써 시스템 정확도면이나 사용자의 만족도 측면에서 좋은 결과를 보여주었다. 웹서비스에서 활용되는 추천 알고리즘이므로 추천 결과가 얼마나 정확한지를 유사도로써 측정하였고, 사용자 만족도를 측정하기 위해 구글 애널리틱스(Google Analytics)[12]를 활용하여 사용자가 서비스에 머무르는 시간과, 연속적으로 방문하는 페이지가 얼마나 증가하였는지 등을 측정하였다.
앞서 제안한 기능의 적용 전/후를 각각 1달을 기준으로 측정하여 비교하였다. 그 결과, 사용자가 가지는 하나의 세션당 연속으로 조회하는 페이지뷰 수가 향상되었고, 사용자의 서비스 이탈률을 73% 가량 줄일 수 있었다. 이탈률은 사용자가 세션에서 페이지와 상호작용하지 않고 사이트를 떠난 단일 페이지 세션의 비율을 의미한다.
기존 연구를 통해 태깅을 추천에 활용함으로써 효과적인 추천이 가능함을 확인하였다. 본 연구에서는, 사용자들의 태깅 활동을 기반으로 같은 문맥에서 자주 쓰이는 단어일수록 서로 같은 의미를 지닐 가능성이 높다는 기존의 언어의 분포에 관한 성질[2]에서 아이디어를 얻어 주어진 태그집합 간의 유사도를 통한 관계 추출을 통해 게시글 혹은 사용자와 같은 웹 자원을 추천하는 방법을 제안한다.
실험을 통해서 태그 관계에 기반을 둔 단순한 알고리즘으로 게시글 및 사용자를 추천이 가능함을 보였다. 비교연구에서는 추천에 있어서 태그 자체 외에 별도의 요소를 고려하지 않아도 좋은 성능을 보임을 확인하였다. 최종적으로 본 연구에서 제시한 웹 자원 추천 방법을 아키필드[4]에 적용하여 사용자의 서비스 만족도를 높이는데 기여할 수 있었다.
[2]에서의 언어 분포의 성질에 따라서 같은 게시글에 등장하는 태그는 비슷한 문맥적 의미를 가질 것이라는 가정 하에 태그간의 관계를 계산하여 추천에 적용하였다. 실험을 통해서 태그 관계에 기반을 둔 단순한 알고리즘으로 게시글 및 사용자를 추천이 가능함을 보였다. 비교연구에서는 추천에 있어서 태그 자체 외에 별도의 요소를 고려하지 않아도 좋은 성능을 보임을 확인하였다.
임계점을 높일수록 유사도가 증가할 것이라고 예상할 수 있지만, 오히려 그림 9에서 볼 수 있듯이 어느 선까지는 증가하다 이후에 감소하는 모양을 띄었다. 앞서 살펴본 태그집합의 길이에 대한 분포에서 알 수 있듯 3~5개 정도의 태그가 하나의 게시글에 달리는 빈도가 높았다. 따라서 임계점을 높여 게시글 간의 유사한 기준을 길게 할수록 오히려 유사도가 낮아지는 결과를 보인 것이다.
비교연구에서는 추천에 있어서 태그 자체 외에 별도의 요소를 고려하지 않아도 좋은 성능을 보임을 확인하였다. 최종적으로 본 연구에서 제시한 웹 자원 추천 방법을 아키필드[4]에 적용하여 사용자의 서비스 만족도를 높이는데 기여할 수 있었다.
후속연구
])를 구해 놓은 이후에, 최종 결과를 JSON형식으로 저장해 놓는다. 관련 태그 추출의 결과는 표1과 같으며, 이는 이후에 관련 게시글 및 사용자 추천에 활용될 것이다.
특정 사용자는 자신이 남긴 게시글에 대한 댓글, 공유, 좋아요 등을 통해서 다른 사용자와의 상호작용을 갖게 된다. 이러한 상호작용이 활발한 사용자일수록 양질의 웹자원을 제공함과 동시에 다른 사용자와 긍정적인 상호작용을 주고받을 수 있을 것이라고 기대될 수 있다.
질의응답
핵심어
질문
논문에서 추출한 답변
태그를 이용한 방식이 기계적인 방식보다 글의 내용에 대해 더 나은 의미 파악이 가능한 이유는 무엇 때문인가?
최근의 여러 웹서비스에서는 태깅 기능을 제공함으로써 사용자가 작성하는 게시물의 주제를 표현하도록 유도하고 있다. 태그를 이용하면 글이나 사진에 대한 글쓴이의 감정과 같은 문맥적인 정보의 효과적인 추출이 가능하기 때문에, 기계적인 방식보다 글의 내용에 대해서 더 나은 의미 파악이 가능하다. 따라서 이를 추천시스템에 적용한다면 사용자의 만족도를 높일 수 있는 추천이 가능할 것이다.
추천 시스템 중 협업 필터링이란 무엇인가?
추천 시스템에는 크게 협업 필터링, 내용 기반 접근법두 가지 접근이 있다. 협업 필터링은 사용자의 행동(평가 내역)을 분석하고 비슷한 사용자간의 선호 아이템을 추천하거나, 아이템간의 유사도를 측정하여, 특정 사용자가 선호하는 아이템과 유사한 아이템을 추천해줄 수 있는 방법이다. 내용 기반 접근법은 TF-IDF등의 방법을 이용, 아이템의 컨텐츠 자체를 분석해 추천해주는 방법이다.
관련 태그를 추출하는 전통적인 방법에는 무엇이 있는가?
관련 태그를 추출하는 데에 활용할 수 있는 전통적인 방법으로는 여러 가지가 있다. 빈발 패턴 마이닝(Frequent Pattern Mining)기법의 Apriori[10], FP-Growth[11]등의 알고리즘이 있는데, 본 연구에서는 이를 기반으로 약간 변형된 방법으로 연관 있는 태그를 추출하였다. 그 방법은 언어에 관한 다음의 아이디어 “같은 문맥에서 쓰이거나 등장하는 단어는 비슷한 의미를 지니는 경향이 있다”라는 생각에 기초를 두고 다음의 방법을 제안한다.
Zellig S. Harris, "Distributional Structure", WORD, Vol. 10:2-3, pp.146-162, 2015.
Tomas Milolov, "Distributed Representations of Words and Phrases and their Compositionality" Advanced in Neural Information Processing Systems 26, 2013.
Archifeeld, http://feeeld.com
Jo Hyeon, "A recommendation algorithm which reflects tag and time information of social network", Journal of Korean Society for Internet Information, v.14, no.2, pp.15-24, 2013
Borkur Sigurbjornsson, "Flickr Tag Recommendation based on Collective Knowledge", pp.327-336, WWW, 2008
Shilad Sen, "Tagommenders: Connecting Users to Items through Tags", pp. 671-680, WWW, 2009
Sogol Naseri, "Enhancing tag-based collaborative filtering via integrated social networking information", pp. 760-764, ASONAM '13, 2013
Frederico Durao, "A Personalized Tag-Based Recommendation in Social Web Systems", pp. 40-49, Workshop on Adaptation and Personalization for Web 2.0, UMAP'09, 2009
Rakesh Agrawal, "Fast Algorithm for Mining Association Rules"
JIAWEI HAN, "Mining Frequent Patterns without Candidate Generation: A Frequent-Pattern Tree Approach", Data Mining and Knowledge Discovery, 8, pp. 53-87, 2004
※ AI-Helper는 부적절한 답변을 할 수 있습니다.