KR101991178B1 - System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information - Google Patents

System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information Download PDF

Info

Publication number
KR101991178B1
KR101991178B1 KR1020170132912A KR20170132912A KR101991178B1 KR 101991178 B1 KR101991178 B1 KR 101991178B1 KR 1020170132912 A KR1020170132912 A KR 1020170132912A KR 20170132912 A KR20170132912 A KR 20170132912A KR 101991178 B1 KR101991178 B1 KR 101991178B1
Authority
KR
South Korea
Prior art keywords
procurement
announcements
announcement
user
users
Prior art date
Application number
KR1020170132912A
Other languages
Korean (ko)
Other versions
KR20190042117A (en
Inventor
조한진
박소아
박동준
Original Assignee
극동대학교 산학협력단
주식회사 다온씨앤씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 극동대학교 산학협력단, 주식회사 다온씨앤씨 filed Critical 극동대학교 산학협력단
Priority to KR1020170132912A priority Critical patent/KR101991178B1/en
Publication of KR20190042117A publication Critical patent/KR20190042117A/en
Application granted granted Critical
Publication of KR101991178B1 publication Critical patent/KR101991178B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • G06Q30/0619Neutral agent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0254Targeted advertisements based on statistics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Abstract

본 발명은 협업필터링을 이용한 조달공고 추천방법 및 시스템에 관한 것으로서, 좀 더 상세하게는 조달공고시스템을 이용하는 사용자들이 사업공고를 일일이 검색하지 않더라도 자신과 맞는 조달공고를 자동으로 추천해 줄 수 있는, 조달업체 및 수요기관의 특성을 분석하여 조달업체에 맞는 공고현황 추천해 줄 수 있는, 조달공고 추천방법 및 시스템에 관한 것이다. 이를 위하여 본 발명은 조달공고 열람기록을 분석하여 사용자가 열람한 조달공고가 서로 중첩되는 비율에 따라 사용자 상호간의 사용자유사도를 구하고, 특정사용자에 대하여 사용자유사도가 상위 일정비율 안에 포함되는 유사군사용자들을 구한 후, 유사군사용자들의 조달공고별 열람횟수를 구하여 유사군사용자들과 조달공고들 간의 조합행렬을 구하고, 이에 대한 행렬분해(Matrix Factorization) 기법을 통하여 조달공고들 각각에 대하여 유사군사용자들과의 연관성을 구하며, 특정사용자가 미 열람한 조달공고 중에서 상기 연관성이 높은 상위 일정개수의 조달공고를 제1추천공고로 하여 상기 특정사용자에게 제공하는 것을 특징으로 한다.The present invention relates to a procurement announcement recommendation method and system using collaborative filtering. More specifically, the present invention relates to a procurement announcement recommendation method and system that can automatically recommend procurement announcements matching with oneself, And a method and system for recommending a procurement announcement, which can recommend the status of the procurement according to the procurement company by analyzing characteristics of the procuring company and the demanding organization. To this end, the present invention analyzes the records of the procurement announcements, obtains the user similarity between the users according to the ratio of overlapping of the procurement notices browsed by the users, and finds similar users Then, we obtain the combination matrix between the similar group users and the procurement announcements by obtaining the number of browse by the procurement announcements of the similar group users, and by using the matrix factorization technique for each of the procurement announcements, And provides the predetermined number of high procurement announcements having high relevance among the procurement announcements that the specific user has not read as a first recommendation notice to the specific user.

Description

협업필터링을 이용한 조달공고 추천방법 및 시스템 {System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information}[0001] The present invention relates to a collaborative filtering method and system,

본 발명은 협업필터링을 이용한 조달공고 추천방법 및 시스템에 관한 것으로서, 좀 더 상세하게는 조달공고시스템을 이용하는 사용자들이 사업공고를 일일이 검색해보지 않더라도 자신의 기업 또는 자신이 소속된 기업과 맞는 조달공고를 자동으로 추천받을 수 있도록 한 것으로서, 협업필터링 추천방식을 이용하여 조달공고시스템을 이용하는 사용자들과 조달공고의 특성을 분석하고 그에 따라 각각의 사용자에게 알맞은 조달공고를 추천해 줄 수 있는, 협업필터링을 이용한 조달공고 추천방법 및 시스템에 관한 것이다. The present invention relates to a procurement announcement recommendation method and system using collaborative filtering. More specifically, the present invention relates to a procurement announcement recommendation method and system using collaborative filtering, and more particularly, We propose a collaborative filtering method that can analyze the characteristics of procurement announcements by using collaborative filtering recommendation system and recommend users to procurement announcements appropriate to each user. And a method and system for recommending a procurement announcement.

모든 것을 연결하는 초 연결 사회가 도래한 현재, 국가나 기업 등 각 분야 연구 개발주체들은 연결 및 접촉하는 과정에서 발생하는 모든 데이터들을 가치 있는 것으로 활용하기 위해 빅데이터 기술을 미래전략기술로 발전시키고자 노력하고 있다. 특히, 글로벌 기업들은 빅데이터를 활용하여 각종 문제를 해결하고 이슈에 대응할 뿐만 아니라 미래전략과 그에 수반되는 전략적 의사결정의 중요한 도구로 활용 중이다. 2015년 WIKIBON 자료에 따르면 전 세계 빅데이터 시장은 2026년에 846억 달러를 넘어설 것으로 보이며, 국내의 빅데이터 시장은 2015년 기준 2,623억 원이며, 빅데이터 도입을 원하는 기업은 전체기업 중 30.2%로 조사되고 있다. 현재 빅데이터의 성장 가능성과 수요에 따라 수많은 빅데이터 관련 소프트웨어가 연구·개발되고 있다.At the present time, the R & D subjects in each field such as the country and the enterprise are developing the big data technology as the future strategy technology in order to utilize all the data generated in the connection and contact process as valuable ones. Trying hard. In particular, global companies are using Big Data to solve various problems, respond to issues, and utilize them as an important tool for future strategy and strategic decision making. According to WIKIBON data in 2015, the world's big data market will exceed $ 84.6 billion in 2026, domestic big data market will be 262.3 billion won by 2015, 30.2% . Many big data-related software are being researched and developed according to the growth potential and demand of Big Data.

특히, 정보통신 분야 즉 유무선 통신 기술과 다양한 모바일 기기들이 빠르게 발전하는 기반에는 데이터의 축적분석 및 활용방법의 발전에 근간하고 있다. 데이터를 수집분석하여 미래를 예측하고 새로운 가치를 창출하는 빅데이터 기술은 이제 도입단계를 넘어 점차 확대되고 있는 추세를 보이고 있다. 기존 산업의 경쟁력 및 공공서비스의 효율성 강화, 신규서비스 제품 창출과 혁신을 위해 빅데이터 기술이 광범위하게 적용되고 있다.Especially, it is based on the development of data accumulation analysis and utilization method in the information communication field, that is, wired / wireless communication technology and various mobile devices are rapidly developing. Big data technology, which collects and analyzes data to predict the future and create new value, is gradually expanding beyond the introduction stage. Big data technology is widely applied to enhance the competitiveness of existing industries and the efficiency of public services, and to create and innovate new service products.

이렇게 빅데이터의 가치가 증가함에 따라 조달청 등 공공기관에서는 전자조달 발주시스템 등에 빅데이터 기술을 반영하여 공공시스템을 발전시키기 위한 노력을 기울이고 있으며, 그 일환으로 빅데이터를 활용하여 업무수행 시 유사성을 분석하고, 맞춤정보를 제공하는 등을 하고자 노력해 오고 있다. 그러나 현재까지 뚜렷한 성과는 거두지 못하는 실정이다. As the value of Big Data increases, Public Sectors such as Public Procurement Service (PPS) have been making efforts to develop public system by reflecting big data technology in electronic procurement order system. As part of this, Big Data is used to analyze similarity And provide customized information. However, no clear results have been achieved until now.

한편, 조달업무를 수행하는 각종 공공기관에서는 수요기관과 조달업체 등의 발주지원을 위하여 전자조달시스템을 운영 중인데. 전자조달시스템은 공공사업의 수발주 지원에 관련된 모든 업무를 체계화하여 정보화시스템을 통해 지원하는 서비스로써, 현재 활용 중인 대다수의 전자조달시스템은 공고나 업체 정보를 일일이 하나씩 검색하는 등의 불편함이 있어 점점 급증하고 있는 조달공고를 쉽게 찾아보기가 어려운 실정이다. On the other hand, various public institutions performing procurement business operate an electronic procurement system to support ordering of demand organizations and procurement companies. The e-procurement system is a service that supports all of the tasks related to the support of buyers of the public works through the information system. Most of the e-procurement systems currently in use are inconveniences such as retrieving announcements or company information one by one. It is difficult to easily find the surge in procurement announcements.

특히, 자신이 속한 기업에서 입찰하기에 적정한 조달공고를 찾아내기 위해서는 일일이 그 내용을 열람하여 검토해 봐야 하는데, 이를 위해서는 많은 시간과 노력이 필요하기 때문에 조달공고시스템의 사용자들의 불편이 호소되어 왔다. 이런 문제점을 해결하기 위하여 조달공고의 내용이나 사용자의 기업정보 등을 분석하여 적정한 조달공고를 추천해 줄 수도 있겠지만, 이를 위해서는 공고내용의 세부 분류나, 분석 등에 많은 자원이 소요되기 때문에 쉽지 않은 실정이다. In particular, in order to find a suitable procurement notice for bidding in a company to which it belongs, it is necessary to review and review the contents one by one. This requires a lot of time and effort, so that users of the procurement notification system have been complaining. In order to solve these problems, it may be possible to recommend appropriate procurement announcements by analyzing the contents of the procurement announcement or the user's company information, but this is not easy because it requires a lot of resources such as detailed classification and analysis of the announcement contents .

본 발명은 상술한 문제점을 해결하기 위하여 창안된 것으로서, 조달공고시스템을 이용하는 사용자들이 조달공고를 열람한 기록 즉, 로그정보에 대하여 빅데이터 기술을 이용하여 분석함으로써 조달공고의 내용이나 사용자정보 등을 일일이 분석하거나 분류하지 않더라도, 사용자에게 적합한 조달공고를 협업필터링(Collaborative Filtering, CF)을 통하여 추천해 주는 시스템 및 방법을 제공하는 것을 목적으로 한다. 그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a system and method for managing the procurement announcement, The present invention aims to provide a system and method for recommending a procurement notification suitable for a user through collaborative filtering (CF), even if it is not analyzed or classified. However, the objects of the present invention are not limited to those mentioned above, and other objects not mentioned can be clearly understood by those skilled in the art from the following description.

상술한 목적을 달성하기 위하여 창안된 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법은, 조달공고시스템으로부터, 조달공고를 열람하는 사용자에 대한 열람기록을 전송받아 하둡 분산파일시스템(HDFS: Hadoop distributed file system)에 저장하는 조달공고 추천시스템이, 사용자에 대하여 조달공고를 추천하는 방법에 있어서, 상기 열람기록을 분석하여 사용자 상호간의 사용자유사도를 구한 후, 특정사용자에 대하여 상기 사용자유사도가 상위 일정비율 안에 포함되는 유사군사용자들을 구하는 단계; 상기 유사군사용자들의 조달공고별 열람횟수를 구하여 상기 유사군사용자들과 조달공고들 간의 조합행렬을 구하는 단계; 상기 조합행렬에 대하여 행렬분해(Matrix Factorization) 기법을 적용하여 상기 조달공고들 각각에 대하여 상기 유사군사용자들과의 연관성 점수를 구하는 단계; 및 상기 특정사용자가 미 열람한 조달공고 중에서 상기 연관성 점수가 높은 상위 일정개수의 조달공고를 제1추천공고로 하여 상기 특정사용자에게 제공하는 단계; 를 포함하는 것을 특징으로 하는 것이 바람직하다. According to an aspect of the present invention, there is provided a method for recommending procurement announcements using collaborative filtering, the method comprising: receiving a browse record for a user viewing a procurement notification from a procurement notification system; file system in a procurement announcement recommendation system for recommending a procurement announcement to a user by analyzing the browse history to obtain a user similarity degree among users, Acquiring similarity users included in the second group; Obtaining a combination matrix between the similar group users and the procurement announcements by obtaining the number of browsing views per the procurement announcements of the similar group users; Applying a matrix factorization technique to the combination matrix to obtain a score of relevance to the similar group users for each of the procurement announcements; And providing a predetermined number of procurement announcements having a high relevance score among the procurement announcements that the specific user has not viewed as a first recommendation notice to the specific user; And a plurality of pixels.

또한, 상술한 특징들에 더하여, 상기 사용자유사도는 사용자가 열람한 조달공고가 서로 중첩되는 비율에 의하여 산출되는 것을 특징으로 하는 협업필터링을 이용한 조달공고 추천방법으로 하는 것도 가능하다.Further, in addition to the above-described features, the user similarity may be calculated based on a ratio of overlapping of the procurement notices viewed by the user to the procurement announcement recommendation method using collaborative filtering.

뿐만 아니라 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법은 상술한 특징들에 더하여, 각각의 조달공고에 대한 사용자들의 열람기록에 대하여 피어슨 상관관계(Pearson Correlation)를 적용하여 상기 각각의 조달공고 상호간에 공고유사도를 구하는 단계; 및 상기 제1추천공고에 포함된 조달공고 각각에 대하여 상기 공고유사도가 높은 상위 일정개수의 조달공고를 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하는 단계; 를 더 포함하는 것도 바람직하다. In addition, the procurement announcement recommendation method using collaborative filtering according to the present invention is characterized in that, in addition to the above-described features, Pearson Correlation is applied to users' browsing records for each procurement announcement, To obtain a similarity degree; And obtaining a predetermined number of procurement announcements having a high publicity similarity for each of the procurement announcements included in the first recommendation announcement and providing the procurement announcement to the specific user as a second recommendation announcement; As shown in Fig.

한편 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템은, 조달공고시스템으로부터 조달공고를 열람하는 각각의 사용자에 대한 열람기록을 전송받아 저장하는 하둡 분산파일시스템(HDFS: Hadoop distributed file system)과 서버로 이루어져 있으며, 상기 서버는, 상기 열람기록을 분석하여 사용자가 열람한 조달공고가 서로 중첩되는 비율에 따라 사용자 상호간의 사용자유사도를 구하고, 특정사용자에 대하여 상기 사용자유사도가 상위 일정비율 안에 포함되는 유사군사용자들을 구한 후, 상기 유사군사용자들의 조달공고별 열람횟수를 구하여 상기 유사군사용자들과 조달공고들 간의 조합행렬을 구하고, 이에 대한 행렬분해(Matrix Factorization) 기법을 통하여 상기 조달공고들 각각에 대하여 상기 유사군사용자들과의 연관성을 구하며, 상기 특정사용자가 미 열람한 조달공고 중에서 상기 연관성이 높은 상위 일정개수의 조달공고를 제1추천공고로 하여 상기 특정사용자에게 제공하는 것을 특징으로 하는 것이 바람직하다.Meanwhile, the procurement announcement recommendation system using collaborative filtering according to the present invention includes a Hadoop distributed file system (HDFS) for receiving and storing a browse record for each user who views the procurement announcement from the procurement notification system, Wherein the server analyzes the browsing history to obtain a user similarity between the users according to a ratio of overlapping of the procurement notices viewed by the user, After obtaining the users of the military users, the number of browsing of the similar user users by the procurement announcement is obtained, and the combination matrix between the users of the similar user and the procurement announcements is obtained. Then, through the matrix factorization method, The similarity group users are related to each other, One trillion months in a non-viewing notification is preferably characterized in that it provides the particular user with procurement announcement of the higher predetermined number of high relevance to the first announcement like.

또한 상술한 특징들에 더하여, 상기 서버는, 각각의 조달공고에 대한 사용자 열람기록에 대하여 피어슨 상관관계(Pearson Correlation)를 적용하여 상기 각각의 조달공고 상호간에 공고유사도를 구한 후, 상기 제1추천공고에 포함된 조달공고 각각에 대하여 상기 공고유사도가 높은 상위 일정개수의 조달공고를 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하는 특징을 더 포함하는 협업필터링을 이용한 조달공고 추천시스템으로 하는 것도 가능하다. Further, in addition to the above-described features, the server obtains a publicity similarity between the respective procurement announcements by applying Pearson Correlation to the user browse record for each procurement announcement, Further comprising the step of obtaining a predetermined number of procurement announcements having a high degree of similarity of announcement for each of the procurement announcements included in the announcement, and then providing the procurement announcement to the specific user as a second recommendation announcement, It is also possible to do.

상술한 내용에서 보는 바와 같이 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템은, 조달공소시스템을 이용하는 사용자들이 자신이 속한 기업과 맞는 사업공고를 일일이 검색하지 않고도 자신의 기업이 입찰하기에 적정한 최적의 조달공고를 자동으로 추천받은 수 있는 효과가 있다. As shown in the above description, the procurement announcement recommendation method and system using collaborative filtering according to the present invention allows a user who uses a procurement system to bidding his / her own company without searching for a business announcement that matches his / It is possible to automatically recommend an optimal procurement announcement.

도 1은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템이 적용되는 시스템개요도이다.
도 2는 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템에 포함된 추천프로그램의 개요를 도시한 개요도이다.
도 3은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 열람기록이 수집되는 개념을 도시한 개념도이다.
도 4는 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 열람기록으로 부터 사용자 상호간에 사용자유사도를 구하는 개념도이다.
도 5는 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 ALS추천 알고리즘으로 추천수치를 구하는 개념도이다.
도 6은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 ALS추천 알고리즘 추천수치를 적용한 제1추천공고 화면의 사례이다.
도 7은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 피어슨 상관관계를 적용하여 공고유사도를 구하는 개념도이다.
도 8은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 피어슨 상관관계를 적용한 제2추천공고 화면의 사례이다.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a system overview of a method and system for recommending procurement announcements using collaborative filtering according to the present invention.
FIG. 2 is a schematic diagram showing an outline of a recommended program included in the procurement announcement recommendation system using collaborative filtering according to the present invention.
FIG. 3 is a conceptual diagram illustrating a concept of collecting browsing records in a procurement announcement recommendation method and system using collaborative filtering according to the present invention.
FIG. 4 is a conceptual diagram for obtaining user similarity between users from a browsing record in a procurement announcement recommendation method and system using collaborative filtering according to the present invention.
FIG. 5 is a conceptual diagram for obtaining a recommendation value by an ALS recommendation algorithm in a procurement announcement recommendation method and system using collaborative filtering according to the present invention.
6 is an example of a first recommendation announcement screen using ALS recommendation algorithm recommendation values in the procurement announcement recommendation method and system using collaborative filtering according to the present invention.
FIG. 7 is a conceptual diagram for obtaining publicity similarity by applying Pearson correlation in a procurement announcement recommendation method and system using collaborative filtering according to the present invention.
FIG. 8 is an example of a recommendation announcement recommendation method using collaborative filtering according to the present invention and a second recommendation announcement screen using a Pearson correlation in the system.

상술한 목적과 특징이 분명해지도록 첨부된 도면을 참조하여 여러 가지 실시 예들에 대하여 보다 상세하게 설명한다. 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한 본 발명을 설명함에 있어서 본 발명과 관련한 공지기술 중 이미 그 기술 분야에 익히 알려져 있는 것으로서, 그 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG. Accordingly, those skilled in the art can easily implement the technical idea of the present invention. In describing the present invention, it is to be understood that any known technology related to the present invention has already been known in the art, and if a detailed description of the known technology is considered to unnecessarily obscure the gist of the present invention, It will be omitted.

아울러, 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며 이 경우는 해당되는 발명의 설명부분에서 상세히 그 의미를 기재하였으므로, 단순한 용어의 명칭이 아닌 용어가 가지는 의미로서 본 발명을 파악하여야 함을 밝혀두고자 한다.In addition, although the term used in the present invention is selected as a general term that is widely used at present, there are some terms selected arbitrarily by the applicant in a specific case. In this case, since the meaning is described in detail in the description of the relevant invention, It is to be understood that the present invention should be grasped as a meaning of a term that is not a name of the present invention.

이하의 설명에서 제시되는 실시 예들은 여러 가지 형태로 변경을 가할 수 있고 다양한 부가적 실시 예들을 가질 수 있는데, 여기에서는 특정한 실시 예들이 도면에 표시되고 관련된 상세한 설명이 기재되어 있다. 그러나 이는 실시 예들을 특정한 형태에 한정하려는 것이 아니며, 실시 예들의 사상 및 기술 범위에 포함되는 모든 변경이나 균등물 내지 대체물을 포함하는 것으로 이해되어야 할 것이다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용되었다.Embodiments set forth in the following description can be varied in various ways and have various additional embodiments, in which specific embodiments are shown in the drawings and the detailed description thereof is set forth in the accompanying drawings. It should be understood, however, that the embodiments are not intended to be limited to the particular forms, but are to be understood to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the embodiments. In connection with the description of the drawings, like reference numerals have been used for like elements.

다양한 실시 예들에 대한 설명에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 실시 예들을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.The terminology used in the description of the various embodiments is used only to describe a specific embodiment and is not intended to limit the embodiments. The singular expressions include plural expressions unless the context clearly dictates otherwise.

실시 예들에 대한 설명 가운데 사용될 수 있는 “포함 한다”또는“포함할 수 있다“ 등의 표현은 발명된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 다양한 실시 예들에 대한 설명에서,”포함하다“ 또는 ”가지다“ 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 할 것이다.It should be noted that the terms such as " comprising " or " may include " may be used in describing the embodiments to indicate the presence of the inventive function, operation, or element, Not limited. Also, in the description of the various embodiments, terms such as " comprise " or " have ", and the like, specify that the presence of stated features, integers, But do not preclude the presence or addition of one or more other features, numbers, steps, operating elements, components, or combinations thereof.

다양한 실시 예들에서 설명되는 사용자단말기는 무선통신이 가능한 다양한 전자장치를 포함하는데, 이러한 전자장치는, 스마트폰, 스마트워치, 태블릿PC, 이동전화기, 화상전화기, 전자북리더기, 데스크탑 PC, 랩탑 PC, 넷북컴퓨터, PDA, PMP, MP3 플레이어, 카메라(camera) 및 기타 이와 유사한 기기들 중 적어도 하나를 포함할 수 있다.The user terminal described in various embodiments includes various electronic devices capable of wireless communication, such as a smart phone, a smart watch, a tablet PC, a mobile phone, a videophone, an electronic book reader, a desktop PC, a laptop PC, A netbook computer, a PDA, a PMP, an MP3 player, a camera and other similar devices.

이하 첨부된 도면을 이용하여 본 발명을 설명한다. 먼저 본 발명은 협업 필터링 추천 방식을 사용하는 방법 및 시스템에 관한 것으로서, 개인화 기법에 따라 사용자와 가장 밀접하게 관련된 조달공고를 추천하는 기술이다. 일반적으로 추천 시스템은 다량의 컨텐츠 중에서 필터링 된 컨텐츠를 사용자에게 추천하는 시스템이다. 이러한 추천시스템이 사용하는 추천방식은 사용자와 성향이 유사한 사용자들이 공통적으로 좋아하는 컨텐츠를 추천해 주는 협업필터링 추천 방식, 사용자가 이전에 이용한 컨텐츠와 내용정보가 유사한 다른 컨텐츠를 추천해주는 내용기반 추천 방식, 인구통계학적 정보를 분석하여 규칙을 찾아 컨텐츠를 추천해주는 인구통계학적 추천방식 등을 이용할 수 있다. 이 중에서 협업 필터링 추천 방식이 가장 성공적인 추천 기법으로 알려져 있다. 예를 들어, 도서 추천을 제공하는 아마존이나 영화 추천을 제공하는 넷플릭스 등과 같은 인터넷 사이트에서 널리 활용되고 있다.BRIEF DESCRIPTION OF THE DRAWINGS Fig. The present invention relates to a method and system for using a collaborative filtering recommendation scheme, and recommends a procurement announcement most closely related to a user according to a personalization scheme. In general, the recommendation system is a system for recommending filtered content among a large amount of contents to a user. The recommendation method used by the recommendation system is a collaborative filtering recommendation method that recommends contents that users with similar tendencies are common to users, a content-based recommendation method that recommends contents that are similar to contents previously used by the user, Demographic recommendation methods that analyze demographic information, recommend rules, and recommend content. Among them, collaborative filtering recommendation method is known as the most successful recommendation method. For example, it is widely used on Internet sites such as Amazon and Netflix offering book recommendations.

협업 필터링 추천 방식은 사용자가 선호하는 패턴과 유사한 다른 사용자의 선호도를 이용하여 사용자에게 관련된 서비스를 추천하는 개인화 기법으로서, 사용자 기반 협업 필터링 추천 방식과 아이템 기반 협업 필터링 추천방식으로 구분된다. 이중에서 사용자 기반 협업 필터링 추천 방식은 사용자들 간의 유사성을 측정하여 선호도가 비슷한 다른 사용자가 평가한 상품을 기반으로 특정 사용자가 선호할만한 상품을 추천하는 방식이다.The collaborative filtering recommendation method is a personalization technique for recommending a related service to a user by using other users 'preferences similar to a user' s preferred pattern, and is classified into a user - based collaboration filtering recommendation method and an item - based collaboration filtering recommendation method. Among them, the user-based collaborative filtering recommendation method measures similarity among users and recommends a product preferred by a specific user based on a product evaluated by another user having similar preferences.

도 1은 본 발명에 의한 협업필터링을 이용한 조달공고 추천방법 및 시스템에서 사용되는 시스템의 개요도이다. 도 1에서 보는 바와 같이 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템(10)은 하둡 분산파일시스템(HDFS: Hadoop distributed file system)(200)과 서버(300)를 포함하여 구성하는 것이 바람직하다. 상기 하둡 분산파일시스템(200)은 조달공고시스템(100) 즉, 외자, 내자, 공사 등에 관한 각종 조달입찰공고가 게재되는 시스템에 연결되어, 상기 조달공고시스템(100)으로부터 로그정보를 전송받아 저장하도록 하는 것이 바람직한데. 여기서 상기 로그정보는 사용자 즉 상기 조달공고시스템(100)의 유저들이 상기 조달공고시스템(100)에 게재되는 각종 조달공고들을 열람한 기록으로서, 사용자(user)를 식별할 수 있는 정보, 열람한 조달공고를 식별할 수 있는 정보 및 열람한 시간 즉 클릭시간 등을 포함하도록 하는 것이 바람직하다. 1 is a schematic diagram of a system used in a procurement announcement recommendation method and system using collaborative filtering according to the present invention. As shown in FIG. 1, the procurement announcement recommendation system 10 using collaborative filtering according to the present invention preferably includes a Hadoop distributed file system (HDFS) 200 and a server 300 . The Hadoop distributed file system 200 is connected to a system in which various procurement bids announcements related to the procurement notification system 100, that is, the procurement notification system 100, are received, receives the log information from the procurement notification system 100 . Here, the log information is a record in which users of the procurement notification system 100 browse various procurement notices displayed in the procurement notification system 100, and may store information for identifying a user, Information that can identify the announcement, and the time to be viewed, that is, the click time, and the like.

그리고 상기 서버(300)에는 공고추천프로그램이 포함되도록 하는 것이 바람직한데, 도 2는 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템(10)에 포함된 공고추천프로그램의 개요도이다. 도 2에서 보는 바와 같이 상기 공고추천 프로그램은 상기 서버(300)내에 설치되도록 하는 것이 바람직하다. FIG. 2 is a schematic diagram of a recommendation recommendation program included in the procurement announcement recommendation system 10 using collaborative filtering according to the present invention. As shown in FIG. 2, the announcement recommendation program is preferably installed in the server 300.

또한 상기 공고추천프로그램은 높은 성능을 위해 Spark어플리케이션으로 구현하는 것이 바람직하며 더욱 바람직하게는 모든 하둡(Hadoop) 클러스터 서버에는 상기 Spark어플리케이션을 설치하도록 하는 것이 좋다. 이는 상기 Spark어플리케이션은 하둡과 유사한 클러스터 기반의 분산처리 기능을 제공하는 프레임워크이며, 처리결과를 항상 파일시스템에 유지하는 하둡과는 달리 메모리에 저장하고 관리할 수 있는 기능을 제공함으로써 머신러닝 등 반복적인 데이터 처리에 성능이 뛰어나기 때문이다. In addition, the announcement recommendation program is preferably implemented in Spark application for high performance, and more preferably, the Spark application is installed in all Hadoop cluster servers. The Spark application is a framework that provides cluster-based distributed processing similar to Hadoop. Unlike Hadoop, which always maintains processing results in a file system, Spark applications provide functions that can be stored and managed in memory, This is because the performance for data processing is excellent.

그리고 상기 공고추천프로그램은 하둡 분산파일시스템(200, HDFS)에 저장되어 있는 열람기록(클릭log정보, 유저, 아이템, 클릭시간 형식의 단순 데이터, 비정형데이터항목을 참고)을 읽어와 협업필터링(Collaborative Filtering, CF)을 통하여 추천정보를 생성하여 Redis라는 Nosql에 저장하도록 구현하는 것이 바람직하다. 여기서 협업필터링(CF)은 아이템이나 사용자의 속성을 사용하지 않고 단순히 둘 사이의 관계정보(여기서는 조달공고 클릭여부 및 횟수)만 이용하여 추천을 수행하는 알고리즘이인데, 공고추천프로그램의 협업필터링은 사용자기반과 아이템(조달공고)기반으로 나뉘어 추천정보를 생성하도록 하는 것이 바람직하다.The announcement recommendation program reads the browsing record (click log information, user, item, simple data of the click time format, unstructured data item) stored in the Hadoop distributed file system 200 (HDFS) Filtering, CF) and store it in Nosql called Redis. Collaborative filtering (CF) is an algorithm that performs recommendation using only relationship information (here, whether or not the procurement announcement is clicked and the number of times) without using an item or an attribute of a user. It is preferable to generate the recommendation information based on the base and items (procurement announcements).

사용자기반 공고추천은 사용자에게 추천하는 공고정보를 제공할 수 있게 한다. 사용자기반 추천 프로그램은 사용자 사용자 유사도를 구한다음 그 유사도 높은 사용자가 본 공고 중 보지 않은 공고를 추천하는 방식으로 Spark ML라이브러리인 ALS모듈을 활용하여 구현하도록 하는 것이 바람직하다. 그리고 아이템기반 공고추천은 이전에 보았던 공고를 기반으로 그 공고와 연관성이 있는 다른 공고정보를 제공하도록 하는 것이 바람직하다. User-based announcement recommendation allows users to provide announcement information that they recommend. It is desirable that the user-based recommendation program is implemented by utilizing the Spark ML library, ALS module, in such a way that the user similarity degree is obtained and the similar user highly recommends the unseen announcement in this announcement. And item-based announcement recommendation should be based on the announcements you have previously seen, so as to provide other announcement information that is relevant to the announcement.

한편, 도 3에는 상기 조달공고시스템(100)으로부터 열람기록이 수집되는 개념도를 보여주고 있다. 상기 조달공고시스템(100)으로부터 열람기록 즉 로그를 수집하는 경우에는 Flume(플럼)이라고 부르는 로그수집기를 사용하는 것이 바람직하다. 이는 Flume(플럼)이 신뢰성 있게 안정적으로 다른 서버의 로그들을 수집해 주기 때문이며, 가장 큰 특징은 다양한 소스에서 로그를 수집 가능하며, 하둡에 수집한 데이터를 저장할 수 있다는 것이다. 또한 에이전트 끼리 계속 연결이 가능하여 원하는 구조를 그리기도 쉽다는 장점이 있다. FIG. 3 is a conceptual diagram illustrating a browsing history collected from the procurement notification system 100. It is preferable to use a log collector called Flume when collecting browsing records or logs from the procurement notification system 100. This is because Flume reliably and reliably collects logs from different servers, and the main feature is that logs can be collected from a variety of sources and stored in Hadoop. It also has the advantage that it is easy to connect the agents and draw the desired structure.

따라서 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템에서도 Flume을 통하여 열람기록(Log)을 수집하도록 하는데, Flume기술을 통해 WAS서버에서 조달공고에 대한 클릭 log가 발생되면 하둡 HDFS에 전송/저장처리를 하도록 설정하고, 조달공고 클릭log 정보는 공고추천을 위한 raw 데이터인 유저(사용자), 아이템(조달공고) 및 클릭시간 등이 포함되어 열람기록으로 저장되게 된다. Accordingly, in the procurement announcement recommendation system using the collaboration filtering according to the present invention, the log is collected through the Flume. When the click log of the procurement announcement is generated in the WAS server through the Flume technology, the transmission / And the procurement announcement click log information is stored as the browsing record including the user (user), the item (procurement notification), the click time, and the like, which are raw data for announcement recommendation.

한편 상기 서버(300)는 상기 열람기록을 분석하여 상기 조달공고시스템(100)의 사용자 각각에 대한 상호간의 사용자유사도를 구하게 되며, 상기 사용자유사도를 이용하여 각각의 사용자에 대하여, 상위 일정비율 안에 포함되는 유사군사용자들을 구하게 된다. 여기서 상기 사용자유사도는 각각의 사용자가 각각 열람한 조달공고가 사용자들 서로 간에 중첩되는 비율에 의하여 산출되도록 하는 것이 바람직하다. On the other hand, the server 300 analyzes the browsing history and obtains the user similarity between the users of the procurement notification system 100. The server 300 uses the user similarity to include each user in an upper certain ratio And the like. Here, it is preferable that the user similarity is calculated according to the ratio of the users who have browsed the respective procurement notices to each other.

도 4에는 본 발명에서, 상기 서버(300)가 열람기록으로 부터 사용자 상호간에 사용자유사도를 구하고 상기 사용자유사도를 이용하여 각각의 사용자에 대한 유사군사용자를 구하는 개념도가 도시되어 있다. 도 4에서 보는 바와 같이 user1은 공고번호 1001, 1002 및 1003을 열람하였으며, user2는 공고번호 1002 및 1004를 열람하였으며, user3은 공고번호 1001 및 1003을, user4는 공고번호 1003 및 1005를, user5는 공고번호 1001 및 1002를 열람한 것으로 기록되어 있는 바, 특정사용자인 user1을 기준으로 다른 사용자들에 대한 사용자유사도를 분석해보면, user3 및 user5가 특정사용자인 user1이 열람한 공고와 각각 두 개씩 겹치는 반면, user2 및 user4는 각각 한 개씩 겹치고 있는 것을 알 수 있다. 따라서 특정사용자인 user1에 대하여 user3 및 user5가 사용자유사도가 상대적으로 높은 사용자들이 된다. 따라서 user3 및 user5가 특정사용자인 user1의 유사군사용자가 될 것이다. FIG. 4 is a conceptual diagram of the server 300 in which the server 300 obtains user similarities from users' browsing records and obtains similar user groups for each user using the user similarities. As shown in FIG. 4, the user 1 browsed the announcement numbers 1001, 1002, and 1003, the user 2 browsed the announcement numbers 1002 and 1004, the user 3 the announcement numbers 1001 and 1003, the user 4 the announcement numbers 1003 and 1005, The publicity numbers 1001 and 1002 are recorded as viewing. As a result of analyzing the user similarity to other users based on the specific user user1, the user3 and the user5 overlap with the notices read by the specific user user1 , user2 and user4 are overlapped one by one. Therefore, user3 and user5 are users having a relatively high degree of user similarity with respect to a specific user user1. Therefore, user3 and user5 will be similar users of user1, which is a specific user.

상기 서버(300)가 상기 사용자유사도 및 특정사용자에 대한 유사군사용자를 구한 다음에는, ALS(Alternating Least Squares) 추천 알고리즘을 적용하여 제1추천공고를 구하도록 하는 것이 바람직하다. 도 5에는 본 발명에서, ALS(Alternating Least Squares) 추천 알고리즘으로 추천수치를 구하는 개념도가 도시되어 있다.After the server 300 obtains the user similarity and the similar user for a specific user, it is preferable to apply the ALS (Alternating Least Squares) recommendation algorithm to obtain the first recommendation announcement. FIG. 5 is a conceptual diagram for obtaining a recommendation value using an ALS (Alternating Least Squares) recommendation algorithm in the present invention.

도 5에서 보는 바와 같이, 본 발명에 의한 협업필터링을 이용한 조달공고 추천시스템에서는 ALS(Alternating Least Squares) 추천 알고리즘을 적용하여, Input 과정에서는 상기 조달공고시스템(100)을 사용하는 각각의 유사군사용자들이 조달공고를 클릭한 정보를 입력받으며, Grouping 및 Count과정에서 각각의 유사군사용자들이 각각의 조달공고를 클릭한 횟수를 도출하게 된다. 즉 상기 유사군사용자들이 상기 조달공고별 열람횟수를 구한 후 상기 유사군사용자들과 조달공고들 간의 조합행렬을 구하게 된다. As shown in FIG. 5, ALS (Alternating Least Squares) recommendation algorithm is applied in the procurement announcement recommendation system using collaborative filtering according to the present invention. In the input process, The user clicks the procurement announcement, and the number of times each similar group user clicks on each procurement announcement in Grouping and Count process is derived. That is, the similar group users obtain the number of browsing by the procurement announcement, and then obtain the combination matrix between the similar group users and the procurement announcements.

그 다음에는 매트릭스 분석으로 각각의 유사군사용자와 각각의 조달공고 사이의 관계를 분석(Matrix Completion)하게 되는데, 상기 조합행렬에 대하여 행렬분해(Matrix Factorization) 기법을 적용하여 상기 조달공고들 각각에 대하여 상기 유사군사용자들 각각과의 연관성 즉 연관성 점수를 구할 수 있는데, 각각의 조달공고별로, 상기 특정사용자와 유사군사용자관계에 있는 모든 사용자들과의 연관성 점수의 합을 연관성 점수로 하는 것이 바람직하다.Next, the matrix analysis is used to analyze the relationship between each similar user and each procurement announcement. A matrix factorization technique is applied to the combination matrix, It is preferable that the sum of the scores of association with all the users in the user group in the similar group is the relevance score for each procurement announcement .

그 다음에는 상기 서버(300)로 하여금 상기 특정사업자가 아직 열람하지 않은 미 열람공고를 구하도록 하고, 상기 특정사용자가 미 열람한 조달공고 중에서 상기 연관성 점수가 높은 상위 일정개수의 조달공고를 제1추천공고로 하여 상기 특정사용자에게 제공하도록 하는 것이 바람직하다. 도 6에는 본 발명에서, ALS추천 알고리즘 추천수치를 적용한 제1추천공고 화면의 사례가 도시되어 있다. Next, the server 300 is requested to obtain a unread preview notification that has not yet been browsed by the specific business operator, and the first predetermined number of procurement notices having a high relevance score among the procured public notices It is preferable to provide the recommendation notice to the specific user. FIG. 6 shows an example of a first recommendation announcement screen to which an ALS recommendation algorithm recommendation value is applied in the present invention.

한편 본 발명의 또 다른 실시 예에는 피어슨 상관관계(Pearson Correlation)를 적용하여 조달공고 상호간 유사도를 구하고 이를 이용하여 사용자에게 적정한 조달공고를 추천하는 것을 특징으로 하는 방법도 제시되고 있는데, 이 방법은 각각의 조달공고에 대한 사용자들의 열람기록에 대하여 피어슨 상관관계(Pearson Correlation)를 적용하여 상기 각각의 조달공고 상호간에 공고유사도를 구하는 단계 및 상기 제1추천공고에 포함된 조달공고 각각에 대하여 상기 공고유사도가 높은 상위 일정개수의 조달공고를 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하는 단계로 이루어지도록 하는 것이 바람직하다. According to another embodiment of the present invention, there is also provided a method for obtaining similarity between procurement announcements by applying Pearson Correlation and recommending a proper procurement announcement to a user by using the same, The method comprising the steps of: obtaining a publicity similarity between the respective procurement announcements by applying a Pearson correlation to users' browsing records of the procurement announcements of the procurement announcements of the procurement announcements, And providing the second recommendation announcement to the specific user.

도 7은 피어슨 상관관계를 적용하여 공고유사도를 구하는 개념도이며, 도 8은 피어슨 상관관계를 적용한 제2추천공고 화면의 사례이다. 도 7에서 보는 바와 같이 상기 서버(300)가 상기 조달공고시스템(100)을 사용하는 모든 사용자들이 조달공고를 클릭한 정보를 입력받으며, Grouping 및 Count과정에서 사용자들이 각각의 조달공고를 클릭한 횟수를 도출하게 된다. 그 다음에는 매트릭스 분석으로 각각의 조달공고 상호간에 관계를 분석하고 이에 대하여 피어슨 상관관계(Pearson Correlation) 알고리즘을 적용하여 각각의 조달공고 상호간의 유사도를 구하여 공고유사도를 산출하도록 하는 것이 바람직하다. FIG. 7 is a conceptual diagram for obtaining the announcement similarity by applying the Pearson correlation, and FIG. 8 is an example of the second recommendation announcement screen to which the Pearson correlation is applied. As shown in FIG. 7, the server 300 receives the information that all the users who use the procurement notification system 100 clicked the procurement announcement, and the number of times that the users clicked the respective procurement announcements in the Grouping and Count process . Next, it is preferable to analyze the relationship between each procurement announcement by matrix analysis and apply the Pearson correlation algorithm to calculate the degree of similarity between the procurement announcements.

상기 공고유사도가 산출된 후에는 상기 서버(300)가 상기 제1추천공고에 포함된 조달공고 각각과 상기 공고유사도가 높은 상위 일정개수의 조달공고를 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하도록 하는 것이 바람직하다. 예를 들면, 상기 특정사용자인 user1이 제1추천공고로 공고 1100, 공고 1101, 공고 1103을 추천받았고, 공고유사도가 높은 상위 일정개수를 2로 한다면, 상기 특정사용자인 user1은 공고 1100과 공고 유사도가 높은 상위 2개 공고인 공고1101, 공고 1023을 제2추천공고로 제공받으며, 공고 1101에 대하여는 공고유사도가 높은 공고 1201, 공고 1023, 그리고 공고 1103에 대하여는 공고유사도가 높은 공고 1532 및 공고 5432를 제2추천공고를 제공받을 수 있게 된다. After the announcement similarity is calculated, the server 300 obtains the procurement announcements of each of the procurement announcements included in the first recommendation announcement and the predetermined fixed number of announcement similarities, It is preferable to provide it. For example, if the specific user user1 has received the recommendation of announcement 1100, announcement 1101 and announcement 1103 with the first recommendation announcement, and assumes that the higher-order schedule number with high notification similarity is 2, the user user1, The announcement 1101 and the announcement 1023, which are the highest two announcements, are provided by the second recommendation announcement, and the announcement 1201, the announcement 1023, and the announcement 1103, A second recommendation notice can be provided.

한편, 상기 서버(300)에서 수행되는 공고추천프로그램은 추천결과 즉 각각의 사용자에 대한 제1추천공고 및 제2추천공고를 Radis(ver3.2.8)에 저장하도록 하는 것이 바람직하다. 상기 Redis는 메모리 기반 Nosql & Cash 솔루션이며, 메모리 기반이므로 처리속도가 빠르고 Key-Value 저장 방식에 최적화 되어있기 때문이다.Meanwhile, it is preferable that the announcement recommendation program executed by the server 300 stores a recommendation result, that is, a first recommendation announcement and a second recommendation announcement for each user, in Radis (ver 3.2.8). The Redis is a memory-based Nosql & Cash solution, because it is memory-based and therefore optimized for fast processing speed and key-value storage.

상술한 여러 가지 예로 본 발명을 설명하였으나, 본 발명은 반드시 이러한 예들에 국한되는 것이 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형 실시될 수 있다. 따라서 본 발명에 개시된 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 예들에 의하여 본 발명의 기술사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.Although the present invention has been described with reference to the above examples, the present invention is not necessarily limited to these examples, and various modifications may be made without departing from the scope of the present invention. Therefore, the examples disclosed in the present invention are not intended to limit the scope of the present invention and are not intended to limit the scope of the present invention. The scope of protection of the present invention should be construed by the following claims, and all technical ideas within the scope of equivalents thereof should be construed as being included in the scope of the present invention.

100 조달공고시스템
200 HDFS
300 서버
100 procurement notification system
200 HDFS
300 server

Claims (5)

조달공고시스템으로부터, 조달공고를 열람하는 사용자에 대한 열람기록을 전송받아 하둡 분산파일시스템(HDFS: Hadoop distributed file system)에 저장하는 조달공고 추천시스템이, 사용자에 대하여 조달공고를 추천하는 방법에 있어서,
상기 열람기록을 분석하여 사용자 상호간의 사용자유사도를 구한 후, 특정사용자에 대하여 상기 사용자유사도가 상위 일정비율 안에 포함되는 유사군사용자들을 구하는 단계;
상기 유사군사용자들 각각에 대한 조달공고별 열람횟수를 구하여 상기 유사군사용자들 각각과 조달공고들 각각 간의 조합행렬을 구하는 단계;
상기 조합행렬에 대하여 행렬분해(Matrix Factorization) 기법을 적용하여 상기 조달공고들 각각에 대하여 상기 유사군사용자들과의 연관성 점수의 합을 구하는 단계;
상기 특정사용자가 미 열람한 조달공고 중에서 상기 연관성 점수의 합이 높은 순서대로 상위 일정개수의 조달공고를 제1추천공고로 하여 상기 특정사용자에게 제공하는 단계;
각각의 조달공고에 대한 사용자들의 열람기록에 대하여 매트릭스분석으로 조달공고 상호간의 관계를 분석한 후, 피어슨 상관관계 (Pearson Correlation)를 적용하여 상기 각각의 조달공고 상호간에 공고유사도를 구하는 단계; 및
상기 제1추천공고에 포함된 각각의 조달공고에 대하여, 상기 특정사용자가 미 열람한 조달공고 중에서 상기 공고유사도가 높은 순서대로 상위 일정개수의 조달공고를 각각 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하는 단계; 를 포함하되,
상기 사용자유사도는 사용자가 열람한 조달공고가 서로 중첩되는 비율에 의하여 산출되는 것을 특징으로 하는 협업필터링을 이용한 조달공고 추천방법
A procurement announcement recommendation system that receives a browse record of a user who views a procurement notice from a procurement notification system and stores the read record in a Hadoop distributed file system (HDFS) ,
Analyzing the browse history to obtain user similarities among users, and then obtaining similar user users whose user similarities are included in a predetermined ratio for a specific user;
Obtaining a combination matrix between each of the similar group users and each of the procurement notices by obtaining the number of browsing per procurement announcement for each of the similar group users;
Applying a matrix factorization technique to the combination matrix to obtain a sum of scores of association scores with the similar group users for each of the procurement announcements;
Providing a predetermined number of procurement announcements in the order of the highest relevance score among the procurement announcements that the specific user has browsed as the first recommendation notice to the specific user;
Analyzing a relationship between procurement announcements of each procurement announcement by a matrix analysis of users' browsing records, and applying a Pearson correlation to obtain a publicity similarity between the procurement announcements; And
Wherein the plurality of procurement announcements for each of the procurement announcements included in the first recommendation announcement are obtained in ascending order of the degree of similarity among the procured announcements not yet read by the specific user, Providing to a specific user; , ≪ / RTI &
Wherein the user similarity is calculated according to a ratio of overlapping of the procurement notices viewed by the user.
삭제delete 삭제delete 조달공고시스템으로부터 조달공고를 열람하는 각각의 사용자에 대한 열람기록을 전송받아 저장하는 하둡 분산파일시스템(HDFS: Hadoop distributed file system)과 서버로 이루어져 있으며,
상기 서버는,
- 상기 열람기록을 분석하여 사용자가 열람한 조달공고가 서로 중첩되는 비율에 따라 사용자 상호간의 사용자유사도를 구하고, 특정사용자에 대하여 상기 사용자유사도가 상위 일정비율 안에 포함되는 유사군사용자들을 구한 후, 상기 유사군사용자들 각각에 대한 조달공고별 열람횟수를 구하여 상기 유사군사용자들 각각과 조달공고들 각각 간의 조합행렬을 구하고, 이에 대한 행렬분해(Matrix Factorization) 기법을 통하여 상기 조달공고들 각각에 대하여 상기 유사군사용자들과의 연관성 점수의 합을 구하며, 상기 특정사용자가 미 열람한 조달공고 중에서 상기 연관성 점수의 합이 높은 순서대로 상위 일정개수의 조달공고를 제1추천공고로 하고,
- 각각의 조달공고에 대한 사용자 열람기록에 대하여 매트릭스분석으로 조달공고 상호간의 관계를 분석한 후, 피어슨 상관관계(Pearson Correlation)를 적용하여 상기 각각의 조달공고 상호간에 공고유사도를 구한 후, 상기 제1추천공고에 포함된 각각의 조달공고에 대하여, 상기 특정사용자가 미 열람한 조달공고 중에서 상기 공고유사도가 높은 순서대로 상위 일정개수의 조달공고를 각각 구한 후 이를 제2추천공고로 하여 상기 특정사용자에게 제공하는 특징을 더 포함하는 협업필터링을 이용한 조달공고 추천시스템
A Hadoop distributed file system (HDFS) for receiving and storing a browse record for each user who views the procurement notice from the procurement notification system, and a server,
The server comprises:
- analyzing the browsing history to obtain user similarities between users according to a ratio of overlapping of the procurement notices viewed by the users, finding similar group users whose user similarity is included in a certain percentage for a specific user, A similarity matrix is obtained for each of the similar group users and each of the procurement notices by obtaining the number of browse by each procurement announcement for each of the similar group users, and for each of the procurement announcements through the matrix factorization method, A second recommendation announcement of a certain number of procurement announcements in descending order of the sum of the relevance scores among the procurement announcements not yet visited by the specific user,
- Analyzing the relationship between the procurement announcements by matrix analysis of the user browse records for each procurement announcement and then applying the Pearson Correlation to obtain the announcement similarity between the respective procurement announcements, 1 procurement announcements are obtained from the procurement announcements that the specific user has browsed among the procurement announcements in descending order of the notification similarity, A procurement announcement recommendation system using collaborative filtering
삭제delete
KR1020170132912A 2017-10-13 2017-10-13 System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information KR101991178B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170132912A KR101991178B1 (en) 2017-10-13 2017-10-13 System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170132912A KR101991178B1 (en) 2017-10-13 2017-10-13 System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information

Publications (2)

Publication Number Publication Date
KR20190042117A KR20190042117A (en) 2019-04-24
KR101991178B1 true KR101991178B1 (en) 2019-06-20

Family

ID=66282376

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170132912A KR101991178B1 (en) 2017-10-13 2017-10-13 System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information

Country Status (1)

Country Link
KR (1) KR101991178B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083183A (en) 2020-12-11 2022-06-20 (주)엑소텍 System for supporting bidding strategy establishment using personalization based business recommendation algorithm and method thereof

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100449903B1 (en) * 2001-10-08 2004-09-22 대한민국 Electronic Bidding Method and It's Recording Medium
KR101102853B1 (en) * 2008-12-30 2012-01-05 엔에이치엔비즈니스플랫폼 주식회사 Method, system and computer-readable recording medium for providing advertisement using collaborative filtering dynamically
KR20130083058A (en) * 2011-12-28 2013-07-22 포항공과대학교 산학협력단 System and method for recommendation service
KR101660463B1 (en) * 2012-06-25 2016-10-10 에스케이플래닛 주식회사 Contents recommendation system and contents recommendation method
KR20150080090A (en) * 2013-12-30 2015-07-09 전남대학교산학협력단 System for recommending product based on Hadoop and apparatus and methode for recommending product in the system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083183A (en) 2020-12-11 2022-06-20 (주)엑소텍 System for supporting bidding strategy establishment using personalization based business recommendation algorithm and method thereof

Also Published As

Publication number Publication date
KR20190042117A (en) 2019-04-24

Similar Documents

Publication Publication Date Title
JP6356744B2 (en) Method and system for displaying cross-website information
US10062098B2 (en) Recommendation engine
US9195753B1 (en) Displaying interest information
US20190347287A1 (en) Method for screening and injection of media content based on user preferences
US8549013B1 (en) Systems and methods for determining interest in an item or category of items
US11836778B2 (en) Product and content association
CN108885624B (en) Information recommendation system and method
US20120203733A1 (en) Method and system for personal cloud engine
US20110087516A1 (en) Methods and systems for collecting and analyzing enterprise activities
US9864768B2 (en) Surfacing actions from social data
US20200301973A1 (en) Personalization Aggregate Content Item Recommendations
CN102037464A (en) Search results with most clicked next objects
US11423096B2 (en) Method and apparatus for outputting information
US20170344643A1 (en) Providing travel or promotion based recommendation associated with social graph
CN105808642B (en) Recommendation method and device
Sijtsma et al. Tweetviz: Visualizing tweets for business intelligence
JP2015184723A (en) document creation support system
KR101991178B1 (en) System and Methode Using Collaborative Filtering to Recommend Suitable Public Bid Information
US11238105B2 (en) Correlating user device attribute groups
US11475083B1 (en) Enhanced search engine techniques utilizing third-party data
KR101417894B1 (en) System and Method of participation search service for providing contents of interest
WO2007142941A2 (en) System and method for providing network source information
WO2015178778A1 (en) Method and system for providing personalized intelligent content data base and a personalized graphical user interface, gui
Yu et al. A Service-Oriented CRM For SMEs Based on the Enterprise Level Customer
Desikan et al. Web mining for business computing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant