KR102449694B1 - Method and apparatus for providing meeting matching service based on artificial intelligence - Google Patents

Method and apparatus for providing meeting matching service based on artificial intelligence Download PDF

Info

Publication number
KR102449694B1
KR102449694B1 KR1020220054793A KR20220054793A KR102449694B1 KR 102449694 B1 KR102449694 B1 KR 102449694B1 KR 1020220054793 A KR1020220054793 A KR 1020220054793A KR 20220054793 A KR20220054793 A KR 20220054793A KR 102449694 B1 KR102449694 B1 KR 102449694B1
Authority
KR
South Korea
Prior art keywords
user
preference
users
score
preferred
Prior art date
Application number
KR1020220054793A
Other languages
Korean (ko)
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 KR1020220054793A priority Critical patent/KR102449694B1/en
Priority to KR1020220122430A priority patent/KR20230155336A/en
Priority to KR1020220122433A priority patent/KR20230155337A/en
Application granted granted Critical
Publication of KR102449694B1 publication Critical patent/KR102449694B1/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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Abstract

According to various embodiments, a matching service providing server that recommends a suitable reason for a user based on AI may include: a DB management unit for registering users as members based on profile information of each user acquired from a plurality of user terminals, and storing the profile information; a preference condition-based recommendation unit for determining a user of the opposite sex to be recommended to another user based on the preference conditions of the users obtained from the user terminals; a preference type determiner configured to determine the user's preference type; an appearance evaluation score-based recommendation unit for calculating appearance evaluation scores for the users through collaborative filtering based on singular value decomposition, and determining the opposite-sex user to be recommended to the user based on the calculated appearance evaluation scores; a meeting result score-based recommendation unit in which appearance evaluation scores for the users are calculated through collaborative filtering based on singular value decomposition, and based on the calculated appearance evaluation scores, the opposite-sex user to be recommended to the user is determined.

Description

AI 기반의 만남 매칭 서비스를 제공하는 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING MEETING MATCHING SERVICE BASED ON ARTIFICIAL INTELLIGENCE}Method and apparatus for providing AI-based encounter matching service

본 발명은 AI 기반의 만남 매칭 서비스를 제공하는 방법 및 장치에 관한 것으로, 구체적으로 협업필터링 기반의 만남 매칭 서비스를 제공하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for providing an AI-based encounter matching service, and more particularly, to a method and apparatus for providing a collaborative filtering-based encounter matching service.

최근 참여, 개방 그리고 공유를 핵심으로 한 웹상의 정보 공간에 사용자가 자신의 개인적인 정보를 자유롭게 게시할 수 있도록 하는 페이스북, 싸이월드, 미투데이, 유투브, 플리커 등 소셜 네트워크 서비스가 엄청난 규모의 트래픽과 회원을 확보하고 있다.Recently, social network services such as Facebook, Cyworld, Me2day, YouTube, and Flickr, which allow users to freely post their personal information in the information space on the web based on participation, openness, and sharing as the core, have generated huge amounts of traffic and membership. is securing

이에 따라 소셜 네트워크 사용자들 간 주고받은 데이터 관계에 초점을 맞춰 자신에게 꼭 필요한 정보를 수집하는 소셜 인덱싱 분야의 연구가 활발히 진행되고 있고, 소셜 인덱싱을 통하여 새로운 부가가치 창출을 하기 위한 많은 노력이 이루어지고 있다.Accordingly, research in the field of social indexing, which collects essential information for oneself by focusing on the data relationship exchanged between users of social networks, is being actively conducted, and many efforts are being made to create new added value through social indexing. .

그 예로서는 커플 매칭이 있는데, 일반적인 커플 매칭은 개인정보를 바탕으로 키워드(Keyword) 검색을 통해 단순 매칭하는 방법과 각종 검사지(성격, 심리)를 통해 수집한 정보를 활용한 매칭과 회원의 프로필 정보와 같은 제한적인 정보와 담당 컨설턴트의 노하우에 의한 매칭이 이뤄진다. 따라서, 과도한 개인정보 수집과 불필요한 신상정보 노출의 문제점이 발견되고 있다. 또한 여러 유형의 검사지를 활용한 매칭은 개인이 가지고 있는 다양하고 방대한 정보를 담아내지 못하기 때문에 정확한 성향을 분석하는데 한계가 존재하며, 회원이 성향이나 선호도를 반영하는데 한계가 있다. 따라서 담당 컨설턴트의 능력에 따라 회원의 만족도가 달라질 수 있으며, 담당 컨설턴트는 회원들이 만족하는 매칭을 위해 많은 시간을 투여할 수밖에 없다.An example of this is couple matching. In general, couple matching is a simple matching method through keyword search based on personal information, matching using information collected through various test papers (personality, psychology), and member profile information Matching is made based on the same limited information and the know-how of the consultant in charge. Accordingly, problems of excessive personal information collection and unnecessary personal information exposure are found. Also, because matching using various types of test papers does not contain the diverse and vast information that an individual has, there is a limit in analyzing the exact tendency, and there is a limit in reflecting the tendency or preference of the member. Therefore, member satisfaction may vary depending on the consultant's ability, and the consultant in charge has no choice but to dedicate a lot of time to matching the members.

이 배경기술 부분에 기재된 사항은 발명의 배경에 대한 이해를 증진하기 위하여 작성된 것으로써, 이 기술이 속하는 분야에서 통상의 지식을 가진 자에게 이미 알려진 종래기술이 아닌 사항을 포함할 수 있다.Matters described in this background section are prepared to promote understanding of the background of the invention, and may include matters that are not already known to those of ordinary skill in the art to which this technology belongs.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 사용자 선호 조건에 기반하여 사용자에게 적합한 이성 사용자를 추천하는데 있다.An object of the present invention for solving the above problems is to recommend a user of the opposite sex suitable for a user based on a user preference condition.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 협업필터링에 기반하여 사용자에게 적합한 이성 사용자를 추천하는데 있다.Another object of the present invention for solving the above problems is to recommend a user of the opposite sex suitable for the user based on collaborative filtering.

다양한 실시 예에 따르면, AI에 기반하여 사용자에게 적합한 이성을 추천하는 매칭 서비스 제공 서버는, 다수의 사용자 단말들로부터 획득된 사용자들 각각의 프로필 정보에 기반하여 상기 사용자들을 회원으로 등록하고, 상기 프로필 정보를 저장하는 DB 관리부; 상기 사용자 단말들로부터 획득된 상기 사용자들의 선호 조건에 기반하여 상기 사용자에게 추천할 이성 사용자를 결정하는 선호 조건 기반 추천부; 상기 사용자의 선호 타입을 결정하는 선호 타입 결정부; 특이값 분해(singular value decomposition)에 기반한 협업 필터링을 통해 상기 사용자들에 대한 외모 평가 점수를 산출하고, 산출된 외모 평가 점수에 기반하여 사용자에게 추천할 상기 이성 사용자를 결정하는 외모 평가 점수 기반 추천부; 및 특이값 분해(singular value decomposition)에 기반한 협업 필터링을 통해 상기 사용자들에 대한 만남 결과 점수를 산출하고, 산출된 만남 결과 점수에 기반하여 사용자에게 추천할 상기 이성 사용자를 결정하는 만남 결과 점수 기반 추천부를 포함할 수 있다.According to various embodiments, a matching service providing server that recommends a suitable reason to a user based on AI registers the users as members based on profile information of each user obtained from a plurality of user terminals, and the profile DB management unit for storing information; a preference condition-based recommendation unit for determining a user of the opposite sex to be recommended to the user based on the user preference conditions obtained from the user terminals; a preference type determination unit for determining the preference type of the user; Appearance evaluation score-based recommendation unit that calculates appearance evaluation scores for the users through collaborative filtering based on singular value decomposition, and determines the user of the opposite sex to be recommended to the user based on the calculated appearance evaluation score ; and calculating the meeting result score for the users through collaborative filtering based on singular value decomposition, and determining the opposite sex user to recommend to the user based on the calculated meeting result score based recommendation may include wealth.

다양한 실시 예에 따르면, 상기 선호 조건 기반 추천부는, 상기 사용자의 사용자 단말로부터 획득된 상기 사용자의 선호 조건에 기반하여, 상기 DB 관리부에 저장된 이성 사용자들에 대한 제1 선호도 점수를 산출하고, 상기 DB 관리부에 저장된 상기 이성 사용자들의 선호 조건에 기반하여 상기 이성 사용자들의 상기 사용자에 대한 제2 선호도 점수를 산출하고, 상기 제1 선호도 및 상기 제2 선호도에 기반하여 상기 이성 사용자를 결정할 수 있다.According to various embodiments, the preference condition-based recommendation unit calculates a first preference score for users of the opposite sex stored in the DB management unit based on the user preference condition obtained from the user terminal of the user, and the DB It is possible to calculate a second preference score for the user of the opposite sex users based on the preference conditions of the opposite users stored in the management unit, and determine the opposite user based on the first preference and the second preference.

다양한 실시 예에 따르면, 상기 선호 타입 결정부는, 미리 학습된 가우시안 혼합 모델을 이용하여, 상기 사용자 단말들로부터 획득된 선호 조건들 각각에 대응하는 상기 사용자들을 클러스터링함으로써, 상기 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 선호 타입을 해당 클러스터에 속하는 사용자의 선호 타입으로 결정하는 선호 타입 예측 모델을 포함할 수 있다.According to various embodiments, the preference type determiner may use a pre-learned Gaussian mixture model to cluster the users corresponding to each of the preference conditions obtained from the user terminals, thereby providing a cluster corresponding to each of the users. It may include a preference type prediction model for determining (cluster) and determining a preference type assigned to the determined cluster as a preference type of a user belonging to the corresponding cluster.

다양한 실시 예에 따르면, 상기 외모 평가 점수 기반 추천부는, 상기 사용자들이 이성 사용자들의 외모에 대해 평가한 외모 평가 정보에 액세스하고, 상기 외모 평가 정보에 기반하여 외모 평가 테이블을 생성하고, 생성된 상기 외모 평가 테이블로부터 제1 특성 행렬(feature matrix)을 추출하고, 추출된 상기 제1 특성 행렬에 기반하여 협업 필터링을 수행하여 상기 사용자에게 추천할 이성 사용자를 결정할 수 있다.According to various embodiments of the present disclosure, the appearance evaluation score-based recommendation unit may access appearance evaluation information evaluated by the users on appearances of users of the opposite sex, generate an appearance evaluation table based on the appearance evaluation information, and generate the appearance A first feature matrix may be extracted from the evaluation table, and a user of the opposite sex to be recommended to the user may be determined by performing collaborative filtering based on the extracted first feature matrix.

다양한 실시 예에 따르면, 상기 만남 결과 점수 기반 추천부는, 상기 사용자들의 이성 사용자들에 대한 만남 평가 정보에 액세스하고, 상기 만남 평가 정보에 기반하여 만남 평가 테이블을 생성하고, 생성된 상기 만남 평가 테이블로부터 제2 특성 행렬(feature matrix)을 추출하고, 추출된 상기 제2 특성 행렬에 기반하여 협업 필터링을 수행하여 상기 사용자에게 추천할 이성 사용자를 결정할 수 있다.According to various embodiments, the meeting result score-based recommendation unit accesses the meeting evaluation information for users of the opposite sex of the users, generates a meeting evaluation table based on the meeting evaluation information, and from the generated meeting evaluation table A second feature matrix may be extracted, and a user of the opposite sex to be recommended to the user may be determined by performing collaborative filtering based on the extracted second feature matrix.

다양한 실시 예에 따르면, 상기 선호 타입 결정부는, 사용자별로 수집되는 학습 데이터들을 이용하여 선호하는 나이, 선호하는 키, 선호하는 얼굴상에 따른 기호, 선호하는 체형에 따른 기호, 선호하는 연 수입, 선호하는 자산, 선호하는 종교에 따른 기호, 선호하는 학력 및 선호하는 직업군에 따른 기호를 포함하는 전처리 학습 데이터를 획득하고, 획득된 전처리 학습 데이터에 포함된 지표들 중 적어도 일부를 이용하여 상기 사용자들 각각에 대응하는 타입 분류 벡터를 생성하고, 상기 타입 분류 벡터를 이용하여 상기 사용자를 다수의 클러스터들 중 하나로 분류하되, 상기 가우시안 혼합 모델의 K개의 가우시안 분포들 중에서 가우시안 분포 선택함수의 결과값이 가장 높은 가우시안 분포를 선정하고, 선정된 가우시안 분포를 상기 사용자의 선호 타입으로 결정하고, 상기 K는 1보다 큰 자연수일 수 있다.According to various embodiments of the present disclosure, the preference type determination unit may include a preferred age, a preferred height, a preferred face shape, a preferred body shape, a preferred yearly income, a preferred age using learning data collected for each user. Pre-processing learning data including assets, preferences according to preferred religions, preferences according to academic background and preferred occupational groups are acquired, and each of the users using at least some of the indicators included in the obtained pre-processing learning data Generate a type classification vector corresponding to , and classify the user into one of a plurality of clusters using the type classification vector, wherein the result value of the Gaussian distribution selection function is the highest among the K Gaussian distributions of the Gaussian mixture model. A Gaussian distribution may be selected, the selected Gaussian distribution may be determined as the user's preferred type, and K may be a natural number greater than 1.

다양한 실시 예에 따르면, 상기 선호 조건은 나이, 본인의 거주지와 상대방의 거주지간 거리, 종교, 학력, 자산, 수입, 자립 여부, 직업, 키, 체중, 음주 여부, 흡연 여부, 문신 유무를 포함하며, 상기 선호 조건 기반 추천부는, 상기 DB 관리부에 저장된 상기 이성 사용자들 중 상기 사용자에 대한 제2 선호도 점수가 미리 설정된 제1 점수 이상인 제1 이성 사용자들을 결정하고, 결정된 상기 제1 이성 사용자들 중에서, 상기 사용자의 상기 제1 이성 사용자들에 대한 제1 선호도 점수가 미리 설정된 제2 점수 이상인 이성 사용자를 결정할 수 있다.According to various embodiments, the preference conditions include age, distance between one's residence and the other's residence, religion, education, assets, income, independence, occupation, height, weight, drinking, smoking, and tattooing, , the preference condition-based recommendation unit, among the opposite users stored in the DB management unit, determines first opposite users for which a second preference score for the user is equal to or greater than a preset first score, among the determined first opposite users, It is possible to determine a opposite-sex user whose first preference score for the first opposite-sex users of the user is equal to or greater than a preset second score.

다양한 실시 예에 따르면, 상기 선호도 점수는 이하 수학식을 통해 산출되고,According to various embodiments, the preference score is calculated through the following equation,

Figure 112022047433043-pat00001
Figure 112022047433043-pat00001

상기 수학식에서, P는 선호도 점수, a는 나이에 관한 지표이며, 선호 조건에 포함된 선호 나이 범위에 포함되는 경우 5점, 상기 선호 나이 범위로부터 1살씩 멀어질때마다 1점씩 감점되며, d는 상호 간의 직선 거리를 나타낸 지표이며, 사용자의 거주지와 상대방의 거주지 간 직선 거리가 20km이내면 5점, 20km 초과 45km이내인 경우 4점, 45km 초과 80km 이내인 경우 3점, 80km 초과 120km 이내인 경우 2점, 120km 초과 200km 이내인 경우 1점, 200km 초과인 경우 0점이며, r은 종교에 관한 지표이며, 선호 조건에 포함된 상대방의 종교에 대해, 매우 선호하는 경우 5점, 선호하는 경우 4점, 보통인 경우 3점, 싫은 경우 1점, 매우 싫은 경우 0점이고, e는 학력에 대한 지표이며, 선호 조건에 포함된 상대방의 학력에 대하여 선호 학력 이상인 경우 5점, 선호 학력으로부터 한단계 떨어질 때마다 2점씩 감점되고, j는 직업에 대한 지표이며, 선호 조건에 포함된 상대방의 직업에 대하여 선호 직업인 경우 5점, 무관한 경우 3점, 비선호인 경우 0점이고, h는 키에 대한 지표이며, 선호 조건에 포함된 선호 키 범위에 포함되는 경우 5점, 상기 선호 키 범위로부터 1cm씩 멀어질수록 1점씩 감점될 수 있다. b는 부동산에 관한 지표이며, 부동산을 소유한 경우 5점 부동산을 소유하지 않은 경우 0점이고, w1은 상기 나이에 관한 가중치, w2는 상기 직선 거리에 관한 가중치, w3은 상기 종교에 관한 가중치, w4는 상기 학력에 관한 가중치, w5는 상기 직업에 관한 가중치, w6은 상기 키에 관한 가중치, w7은 상기 부동산에 관한 가중치일 수 있다.In the above formula, P is a preference score, a is an index related to age, 5 points when included in the preferred age range included in the preference condition, 1 point is deducted for every 1 year away from the preferred age range, and d is mutual This is an indicator of the straight-line distance between the user's residence and the other's residence within 20 km, 5 points, if it exceeds 20 km and within 45 km, it gets 4 points, if it exceeds 45 km and within 80 km, it gets 3 points, and if it exceeds 80 km and within 120 km, 2 points point, 1 point if it exceeds 120km and within 200km, 0 point if it exceeds 200km, r is an index about religion. , 3 points for normal, 1 point for dislike, 0 points for very dislike, e is an indicator for academic background, 5 points for the other person’s educational background included in the preference condition, 5 points for each level falling from the preferred educational background Points are deducted by 2 points, j is an indicator for the job, and for the job of the other party included in the preference condition, 5 points if it is a preferred job, 3 points if it is not relevant, 0 points if it is not preferred, h is an indicator for height, preference If it is included in the preferred key range included in the condition, 5 points may be deducted, and 1 point may be deducted as the distance increases by 1 cm from the preferred key range. b is an indicator for real estate, 5 points for owning real estate, 0 points for not owning real estate, w1 is the weight for the age, w2 is the weight for the straight-line distance, w3 is the weight for the religion, w4 may be the weight related to the educational background, w5 is the weight related to the job, w6 is the weight related to the key, and w7 is the weight related to the real estate.

다양한 실시 예에 따르면, 상기 외모 평가 점수 기반 추천부는, 상기 사용자와 동일한 선호 타입에 포함된 다른 동성 사용자들이 미리 설정된 임계 점수 이상을 준 제2 이성 사용자들의 얼굴 이미지들에 기반하여 이상형 이미지를 생성하되, 상기 제2 이성 사용자들의 얼굴 이미지들 각각의 랜드 마크를 지정하고, 상기 랜드 마크에 기반하여 상기 얼굴 이미지들 각각에 대하여 얼굴 특징점들을 획득하고, 상기 얼굴 특징점들의 평균 특징점을 가지는 상기 이상형 이미지를 생성하고, 상기 DB 관리부에 저장된 이성 사용자들 중에서 생성된 상기 이상형 이미지와 유사도가 가장 높은 얼굴 이미지에 대응하는 이성 사용자를 결정하여 상기 사용자에게 추천할 수 있다.According to various embodiments, the appearance evaluation score-based recommendation unit generates an ideal image based on face images of second opposite sex users to which other same-sex users included in the same preference type as the user have given a preset threshold score or higher. , designating a landmark of each of the facial images of the second opposite sex users, obtaining facial feature points for each of the facial images based on the landmark, and generating the ideal image having an average feature point of the facial feature points and a user of the opposite sex corresponding to a face image having the highest degree of similarity to the generated ideal image from among the users of the opposite sex stored in the DB management unit may be determined and recommended to the user.

본 문서에 개시되는 다양한 실시 예들에 따르면, 회원의 성향 및 선호도를 반영하여, 회원이 원하는 상대방을 실시간으로 매칭할 수 있다.According to various embodiments disclosed in this document, the member's desired counterpart may be matched in real time by reflecting the member's disposition and preference.

또한, 다양한 실시 예들에 따르면, 협업 필터링 추천 방법을 통해 신규 회원의 기본적인 정보만으로도 신규 회원에 알맞은 상대방을 매칭시켜줄 수 있다.Also, according to various embodiments, it is possible to match a counterpart suitable for a new member with only basic information of the new member through the collaborative filtering recommendation method.

또한, 다양한 실시 예들에 따르면, 담당 컨설턴트의 업무 투입 시간을 최소화하여, 효율적이고 편리하게 다양한 매칭 정보를 제공할 수 있다.In addition, according to various embodiments, it is possible to provide various matching information efficiently and conveniently by minimizing the work input time of the consultant in charge.

일 실시예의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of one embodiment are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 일 실시 예에 따른 시스템을 도시한 도면이다.
도 2는 매칭 서비스 제공 서버의 주요 구성 요소를 나타낸 도면이다.
도 3은 사용자들 각각의 선호 조건에 기반하여 선호도 점수를 산출하는 것과 관련된 도면이다.
도 4는 선호도 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다.
도 5는 사용자들의 정보에 기반하여 사용자의 선호 타입을 결정하는 것과 관련된 도면이다.
도 6은 외모 평가 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다.
도 7은 만남 결과 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다.
도 8은 도 1에 따른 매칭 서비스 제공 서버의 하드웨어 구성을 나타낸 도면이다.
1 is a diagram illustrating a system according to an embodiment.
2 is a diagram illustrating main components of a matching service providing server.
3 is a diagram related to calculating a preference score based on a preference condition of each user.
4 is a diagram illustrating a preference score displayed through an evaluation table.
5 is a diagram related to determining a user's preference type based on user information.
6 is a diagram illustrating an appearance evaluation score displayed through an evaluation table.
7 is a view showing that the meeting result score is displayed through the evaluation table.
8 is a diagram illustrating a hardware configuration of the matching service providing server according to FIG. 1 .

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention. In describing each figure, like reference numerals have been used for like elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, A, and B may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but it is understood that other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It is to be understood that this does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일 실시 예에 매칭 서비스 제공 시스템(10)을 도시한 도면이다. 도 1을 참조하면, 매칭 서비스 제공 시스템(10)은 매칭 서비스 제공 서버(100), 사용자 단말(200), 등을 포함할 수 있다. 이하 설명되는 동작들은 매칭 서비스 제공 서버(100)에 의하여 제어되는 플랫폼(예: 웹 페이지 및/또는 어플리케이션)을 통해 수행 내지 구현될 수 있다. 다시 말해서, 매칭 서비스 제공 서버(100)는, 사용자가 사용자 단말(200)을 이용하여 네트워크를 통해 매칭 서비스 제공 서버(100)에 접속하여 다양한 정보를 입력하고, 등록하고, 출력할 수 있는 웹 사이트를 제공할 수 있으며, 사용자 단말(200)에 설치되고 실행됨으로써 다양한 정보를 입력하고, 등록하고, 출력할 수 있는 어플리케이션을 제공할 수 있다. 1 is a diagram illustrating a matching service providing system 10 according to an embodiment. Referring to FIG. 1 , the matching service providing system 10 may include a matching service providing server 100 , a user terminal 200 , and the like. The operations described below may be performed or implemented through a platform (eg, a web page and/or an application) controlled by the matching service providing server 100 . In other words, the matching service providing server 100 is a website in which a user can input, register, and output various information by accessing the matching service providing server 100 through a network using the user terminal 200 . It is possible to provide an application capable of inputting, registering, and outputting various information by being installed and executed in the user terminal 200 .

매칭 서비스 제공 서버(100)는 사용자로부터 획득된 사용자의 선호 조건에 기반하여 사용자와 매칭될 수 있는 다른 사용자들 각각에 대한 선호도 점수를 산출하고, 산출된 선호도 점수에 기반하여 상기 다른 사용자들 중 후보 상대방을 결정할 수 있다.The matching service providing server 100 calculates a preference score for each of the other users that can be matched with the user based on the user's preference condition obtained from the user, and a candidate among the other users based on the calculated preference score. You can decide your opponent.

또한, 매칭 서비스 제공 서버(100)는 특이값 분해(SVD, singular value decomposition) 기반 행렬 분해(MF, matrix factorization)에 의한 협업 필터링을 통해 사용자에게 추천할 이성 상대방을 결정할 수 있다. 구체적으로, 매칭 서비스 제공 서버(100)는 사용자들 간의 외모 평가 점수 및 사용자들 간의 만남 결과 점수 각각에 기반하여 협업 필터링을 수행하고, 협업 필터링의 결과로써 사용자에게 추천할 이성 상대방을 결정하고, 결정된 이성 상대방을 상기 사용자에게 추천할 수 있다. In addition, the matching service providing server 100 may determine a counterpart of the opposite sex to be recommended to the user through collaborative filtering by singular value decomposition (SVD)-based matrix factorization (MF). Specifically, the matching service providing server 100 performs collaborative filtering based on each of the appearance evaluation score between users and the meeting result score between users, determines the opposite party to recommend to the user as a result of the collaborative filtering, and determines the determined A counterpart of the opposite sex may be recommended to the user.

사용자 단말(200)은 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 및 PDA(Personal Digital Assistant) 등 일 수 있다.The user terminal 200 is a communicable desktop computer, a laptop computer, a notebook, a smart phone, a tablet PC, a mobile phone, and a smart watch. (smart watch), smart glass, e-book reader, PMP (portable multimedia player), portable game console, navigation device, digital camera, DMB (digital multimedia broadcasting) player, digital voice It may be a digital audio recorder, a digital audio player, a digital video recorder, a digital video player, and a personal digital assistant (PDA).

매칭 서비스 제공 서버(100), 사용자 단말(200)은 각각 통신 네트워크(50)에 연결되어, 통신 네트워크를 통해 서로간 데이터를 송수신할 수 있다. 예를 들어, 통신 네트워크는 LAN(Local Area Network), MAN(Metropolitan Area Network), GSM(Global System for Mobile Network), EDGE(Enhanced Data GSM Environment), HSDPA(High Speed Downlink Packet Access), W-CDMA(Wideband Code Division Multiple Access), CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access), 블루투스(Bluetooth), 지그비(Zigbee), 와이-파이(Wi-Fi), VoIP(Voice over Internet Protocol), LTE Advanced, IEEE802.16m, WirelessMAN-Advanced, HSPA+, 3GPP Long Term Evolution (LTE), Mobile WiMAX(IEEE 802.16e), UMB(formerly EV-DO Rev. C), Flash-OFDM, iBurst and MBWA (IEEE 802.20) systems, HIPERMAN, Beam-Division Multiple Access (BDMA), Wi-MAX(World Interoperability for Microwave Access), 5G 등 다양한 종류의 유선 또는 무선 네트워크가 사용될 수 있다The matching service providing server 100 and the user terminal 200 are connected to the communication network 50, respectively, and may transmit/receive data to and from each other through the communication network. For example, communication networks include Local Area Network (LAN), Metropolitan Area Network (MAN), Global System for Mobile Network (GSM), Enhanced Data GSM Environment (EDGE), High Speed Downlink Packet Access (HSDPA), W-CDMA (Wideband Code Division Multiple Access), CDMA (Code Division Multiple Access), TDMA (Time Division Multiple Access), Bluetooth, Zigbee, Wi-Fi, VoIP (Voice over Internet Protocol) , LTE Advanced, IEEE802.16m, WirelessMAN-Advanced, HSPA+, 3GPP Long Term Evolution (LTE), Mobile WiMAX (IEEE 802.16e), UMB (formerly EV-DO Rev. C), Flash-OFDM, iBurst and MBWA (IEEE) 802.20) systems, HIPERMAN, Beam-Division Multiple Access (BDMA), Wi-MAX (World Interoperability for Microwave Access), 5G, etc., various types of wired or wireless networks can be used.

도 2는 매칭 서비스 제공 서버(100)의 주요 구성 요소를 나타낸 도면이다. 도 3은 사용자들 각각의 선호 조건에 기반하여 선호도 점수를 산출하는 것과 관련된 도면이다. 도 4는 선호도 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다. 도 5는 사용자들의 정보에 기반하여 사용자의 선호 타입을 결정하는 것과 관련된 도면이다. 도 6은 외모 평가 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다. 도 7은 만남 결과 점수가 평가 테이블을 통해 표시된 것을 나타낸 도면이다.2 is a diagram showing the main components of the matching service providing server 100 . 3 is a diagram related to calculating a preference score based on a preference condition of each user. 4 is a diagram illustrating a preference score displayed through an evaluation table. 5 is a diagram related to determining a user's preference type based on user information. 6 is a diagram illustrating an appearance evaluation score displayed through an evaluation table. 7 is a view showing that the meeting result score is displayed through the evaluation table.

매칭 서비스 제공 서버(100)는 DB 관리부(101), 선호 조건 기반 추천부(102), 선호 타입 결정부(103), 외모 평가 점수 기반 추천부(104), 만남 결과 점수 기반 추천부(105) 등을 포함할 수 있다.The matching service providing server 100 includes a DB management unit 101, a preference condition-based recommendation unit 102, a preference type determination unit 103, an appearance evaluation score-based recommendation unit 104, and a meeting result score-based recommendation unit 105 and the like.

DB 관리부(101)는 사용자 단말(200)로부터 사용자의 프로필 정보를 획득하고, 획득된 프로필 정보에 기반하여 상기 사용자를 회원으로 등록할 수 있다. DB 관리부(101)는 상기 사용자 외에 회원으로 등록된 다수의 사용자들에 대한 프로필 정보를 저장할 수 있다. 상기 프로필 정보는 이름, 나이, 키, 체중 등에 관한 정보를 포함할 수 있고, 얼굴 이미지를 포함할 수 있다.The DB management unit 101 may obtain the user's profile information from the user terminal 200 and register the user as a member based on the obtained profile information. The DB management unit 101 may store profile information about a plurality of users registered as members in addition to the user. The profile information may include information about a name, age, height, weight, etc., and may include a face image.

DB 관리부(101)는 다수의 사용자 단말들 각각로부터 사용자의 선호 조건(스타일), 외모 평가 정보(점수), 만남 결과 정보(점수) 등에 관한 정보들을 수집하고, 사용자 별로 저장할 수 있다.The DB manager 101 may collect information about a user's preference condition (style), appearance evaluation information (score), meeting result information (score), etc. from each of a plurality of user terminals, and store the information for each user.

선호 조건 기반 추천부(102)는 다수의 사용자 단말들로부터 획득된 사용자들의 선호 조건에 기반하여, 다른 사용자들에 대한 선호도 점수를 산출할 수 있다.The preference condition-based recommendation unit 102 may calculate preference scores for other users based on user preference conditions obtained from a plurality of user terminals.

선호 조건 기반 추천부(102)는 사용자 단말(200)로부터 획득된 사용자의 선호 조건에 기반하여, DB 관리부(101)에 저장된 이성 사용자들에 대한 제1 선호도 점수를 산출할 수 있다. 선호 조건 기반 추천부(102)는 다수의 사용자 단말들로부터 획득되어 DB 관리부(101)에 저장된 이성 사용자들의 선호 조건에 기반하여 상기 이성 사용자들의 상기 사용자에 대한 제2 선호도 점수를 산출할 수 있다.The preference condition-based recommendation unit 102 may calculate a first preference score for users of the opposite sex stored in the DB management unit 101 based on the user preference condition obtained from the user terminal 200 . The preference condition-based recommendation unit 102 may calculate a second preference score for the user of the opposite sex users based on the preference conditions of the opposite users obtained from a plurality of user terminals and stored in the DB management unit 101 .

상기 선호도 점수는 일대일 관계에서의 상대적인 점수일 수 있다. 예를 들어, 남자1과 여자1 간 선호도 점수에서 여자1이 90점을 받는 경우에도, 남자2와 여자 1간 선호도 점수에서 여자 1이 76점을 받을 수 있다.The preference score may be a relative score in a one-to-one relationship. For example, even if woman 1 receives 90 points in the preference score between man 1 and woman 1, woman 1 may receive 76 points in the preference score between man 2 and woman 1.

선호 조건은 사용자가 원하는 선호 조건을 의미하며, 나이, 거주지간 거리, 종교, 학력, 자산, 수입, 자립 여부, 직업, 키, 체중, 음주 여부, 흡연 여부, 문신 유무 등을 포함할 수 있다 할 수 있다. DB 관리부(101)는 선호 조건에 관한 정보를 사용자 단말로부터 획득하되, 사용자의 입력에 의하여 입력된 선호 조건에 관한 정보를 획득할 수 있다. 예를 들어, 사용자는 상대방이 가진 종교에 대하여 매우 선호하는 종교, 선호하는 종교, 싫어하는 종교 등을 입력하거나, 상대방의 학력에 대하여 선호 학력을 입력하거나, 상대방의 수입에 대하여 선호 수입을 입력할 수 있다.The preference condition refers to the preference condition desired by the user, and may include age, distance between residence, religion, education, assets, income, independence, occupation, height, weight, drinking status, smoking status, tattoo status, etc. can The DB management unit 101 may obtain information about the preference condition from the user terminal, but may obtain information regarding the preference condition input by the user's input. For example, a user can input a religion he or she prefers, a religion he likes, or a religion he dislikes with respect to the religion of the other party, input his/her preference for the other party's educational background, or input his/her preferred income for the other party's income. have.

선호 조건 기반 추천부(102)는 DB 관리부(101)에 저장된 사람들 중 상기 사용자에 대한 제2 선호도 점수가 미리 설정된 제1 점수 이상인 이성 사용자들을 결정할 수 있다. 선호 조건 기반 추천부(102)는 결정된 상기 이성 사용자들 중에서, 상기 사용자의 상기 이성 사용자들에 대한 제1 선호도 점수가 미리 설정된 제2 점수 이상인 이성 사용자들을 결정할 수 있다. 다시 말해서, 자신에 대해 호감도가 높은 이성들이 추려지고, 자신에 대해 호감도가 높은 이성들에 대한 자신의 호감도를 통해 매칭될 이성들이 결정될 수 있다.The preference condition-based recommendation unit 102 may determine users of the opposite sex whose second preference score for the user is equal to or greater than a preset first score among those stored in the DB management unit 101 . The preference condition-based recommendation unit 102 may determine, among the determined opposite-sex users, the opposite-sex users whose first preference score for the opposite-sex users is equal to or greater than a preset second score. In other words, the opposite sexes having a high affinity for the self may be selected, and the reasons to be matched may be determined based on the person's liking for the opposite sexes having a high affinity for the self.

상기 선호도 점수는 이하 수학식 1을 통해 산출될 수 있다.The preference score may be calculated through Equation 1 below.

Figure 112022047433043-pat00002
Figure 112022047433043-pat00002

상기 수학식 1에서, P는 선호도 점수, a는 나이에 관한 지표이며, 선호 조건에 포함된 선호 나이 범위에 포함되는 경우 5점, 상기 선호 나이 범위로부터 1살씩 멀어질때마다 1점씩 감점될 수 있다. d는 상호 간의 직선 거리를 나타낸 지표이며, 사용자의 거주지와 상대방의 거주지 간 직선 거리가 20km이내면 5점, 20km 초과 45km이내인 경우 4점, 45km 초과 80km 이내인 경우 3점, 80km 초과 120km 이내인 경우 2점, 120km 초과 200km 이내인 경우 1점, 200km 초과인 경우 0점일 수 있다. r은 종교에 관한 지표이며, 선호 조건에 포함된 상대방의 종교에 대해, 매우 선호하는 경우 5점, 선호하는 경우 4점, 보통인 경우 3점, 싫은 경우 1점, 매우 싫은 경우 0점일 수 있다. e는 학력에 대한 지표이며, 선호 조건에 포함된 상대방의 학력에 대하여 선호 학력 이상인 경우 5점, 선호 학력으로부터 한단계 떨어질 때마다 2점씩 감점될 수 있다. j는 직업에 대한 지표이며, 선호 조건에 포함된 상대방의 직업에 대하여 선호 직업인 경우 5점, 무관한 경우 3점, 비선호인 경우 0점일 수 있다. h는 키에 대한 지표이며, 선호 조건에 포함된 선호 키 범위에 포함되는 경우 5점, 상기 선호 키 범위로부터 1cm씩 멀어질수록 1점씩 감점될 수 있다. b는 부동산에 관한 지표이며, 부동산을 소유한 경우 5점 부동산을 소유하지 않은 경우 0점일 수 있다. w1은 상기 나이에 관한 가중치, w2는 상기 직선 거리에 관한 가중치, w3은 상기 종교에 관한 가중치, w4는 상기 학력에 관한 가중치, w5는 상기 직업에 관한 가중치, w6은 상기 키에 관한 가중치, w7은 상기 부동산에 관한 가중치일 수 있다. 그 외에도 추가로 음주 여부, 흡연 여부, 문신 유무에 기반하여 상기 선호도 점수가 산출될 수 있다.In Equation 1, P is a preference score, a is an index related to age, 5 points when included in the preferred age range included in the preference condition, and 1 point each time one year away from the preferred age range can be deducted. . d is an index indicating the linear distance between the user's residence and the other's residence within 20km, 5 points 2 points for , 1 point for exceeding 120 km and less than 200 km, and 0 points for exceeding 200 km. r is an indicator about religion, and for the religion of the other party included in the preference condition, it can be 5 points if you very much like it, 4 points if you like it, 3 points if it is normal, 1 point if you dislike it, and 0 if you dislike it very much. . e is an indicator of academic ability, and 5 points may be deducted for each other's educational background included in the preference condition if it is higher than or equal to the preferred academic background, and 2 points may be deducted for every step down from the preferred educational background. j is an index for a job, and for the job of the other party included in the preference condition, it may be 5 points if it is a preferred job, 3 points if it is irrelevant, and 0 points if it is not preferred. h is an indicator for height, and 5 points may be deducted when included in the preferred key range included in the preference condition, and 1 point may be deducted as the distance increases by 1 cm from the preferred key range. b is an indicator for real estate, it can be 5 points if you own real estate, 0 points if you don't own real estate. w1 is the weight for the age, w2 is the weight for the straight line distance, w3 is the weight for the religion, w4 is the weight for the education, w5 is the weight for the job, w6 is the weight for the height, w7 may be a weight for the real estate. In addition, the preference score may be calculated based on whether or not drinking, smoking, and tattooing.

선호 타입 결정부(103)는 미리 학습된 가우시안 혼합 모델을 이용하여, 다수의 사용자 단말들로부터 획득된 선호 데이터들 각각에 대응하는 사용자들을 클러스터링할 수 있다. 선호 타입 결정부(103)는 상기 사용자들을 클러스터링함으로써, 상기 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 선호 타입을 해당 클러스터에 속하는 사용자의 선호 타입으로 결정할 수 있다.The preference type determiner 103 may cluster users corresponding to each of preference data obtained from a plurality of user terminals by using a pre-trained Gaussian mixture model. The preference type determiner 103 may determine a cluster corresponding to each of the users by clustering the users, and determine the preference type assigned to the determined cluster as the preference type of the user belonging to the cluster.

선호 타입 결정부(103)는 사용자 단말들로부터 획득된 학습 데이터들을 이용하여 사용자들 각각과 대응하는 선호 타입을 결정할 수 있다. 선호 타입은 유사한 이상형을 가질 것으로 예측되는 사용자들이 분류된 타입일 수 있다. 구체적으로, 선호 타입 결정부(103)는 학습 데이터들 각각에 대응하는 사용자들을 클러스터링함으로써, 사용자들 각각과 대응하는 클러스터를 결정하고, 결정된 클러스터에 부여되는 선호 타입을 결정하는 선호 타입 예측 모델을 포함할 수 있다. 예를 들어, 선호 타입 예측 모델은 가우시안 혼합 모델(Gaussian Mixture Model, GMM)에 따른 클러스터링을 수행할 수 있다.The preference type determiner 103 may determine a preference type corresponding to each of the users by using the learning data obtained from the user terminals. The preference type may be a type in which users predicted to have a similar ideal type are classified. Specifically, the preference type determination unit 103 includes a preference type prediction model that determines a cluster corresponding to each of the users by clustering users corresponding to each of the training data, and determines a preference type assigned to the determined cluster. can do. For example, the preferred type prediction model may perform clustering according to a Gaussian mixture model (GMM).

선호 타입 예측 모델은, 가우시안 혼합 모델 (Gaussian Mixture Model, GMM) 기반으로 동작하는 클러스터링 모델을 포함할 수 있다. 선호 타입 예측 모델은 가우시안 혼합 모델(GMM)을 소프트웨어 상으로 구현한 일종의 소스코드 또는 소스코드의 동작 프로그램에 해당할 수 있다. 각 사용자마다 선호하는 나이, 선호하는 키, 선호하는 얼굴상, 선호하는 체형, 선호하는 연 수입, 선호하는 자산, 선호하는 종교, 선호하는 학력, 선호하는 직업군 등이 상이하기 때문에, 여러 개의 지표 중 하나가 동일하다고 하더라도 유사한 이상형을 가졌다고 판단할 수 없다. 따라서, 각 사용자마다 선호하는 나이, 키, 얼굴형, 체형, 연 수입, 자산, 종교, 학력 등을 고려하여 선호 타입이 결정될 필요가 있다.The preferred type prediction model may include a clustering model operating based on a Gaussian mixture model (GMM). The preferred type prediction model may correspond to a kind of source code in which a Gaussian mixture model (GMM) is implemented in software or an operation program of the source code. Because each user has different preferred age, preferred height, preferred face shape, preferred body type, preferred annual income, preferred assets, preferred religion, preferred educational background, preferred occupation group, etc. Even if one is the same, it cannot be judged that they have similar ideal types. Therefore, it is necessary to determine the preference type in consideration of age, height, face shape, body type, annual income, assets, religion, academic background, etc. preferred by each user.

본 발명의 일 실시예에서는 이처럼 사용자마다 이성에 대한 선호 타입을 결정하는 세부 지표가 상이한 점을 고려하여, 다양한 세부 지표를 기준으로 사용자의 선호 타입이 결정되고 결정된 선호 타입에 기초하여 사용자의 호감 상대방이 예측될 수 있도록, 사용자들을 클러스터링하여 다수의 클러스터들(clusters)을 구성하고, 구성된 클러스터들 각각에 대응하는 선호 타입을 결정한다. 여기서, 선호 타입은 사용자가 속한 클러스터마다 개별적으로 부여되는 일종의 식별 기호로서 1, 2, 3 등과 같이 우열 없이 결정되는 식별 번호로 표현되거나 그밖에 다양한 형태의 고유 식별 기호로 표현될 수 있다.In an embodiment of the present invention, in consideration of the fact that the detailed index for determining the preference type for each user is different as described above, the user's preference type is determined based on various detailed indexes, and the user's favorable counterpart is based on the determined preference type. To be able to predict this, users are clustered to form a plurality of clusters, and a preference type corresponding to each of the configured clusters is determined. Here, the preference type is a kind of identification symbol individually assigned to each cluster to which the user belongs, and may be expressed as an identification number determined without superiority, such as 1, 2, 3, or other various types of unique identification symbols.

선호 타입 예측 모델은 사용자별로 수집되는 학습 데이터들을 이용하여 사용자에 대응하는 타입 분류 벡터(특징 벡터)를 생성할 수 있다. 예를 들어, 선호 타입 예측 모델은 사용자별로 수집되는 학습 데이터들을 이용하여 선호하는 나이, 선호하는 키, 선호하는 얼굴상에 따른 기호, 선호하는 체형에 따른 기호, 선호하는 연 수입, 선호하는 자산, 선호하는 종교에 따른 기호, 선호하는 학력 및 선호하는 직업군에 따른 기호를 포함하는 전처리 학습 데이터를 획득할 수 있다. 선호 타입 예측 모델은 획득된 전처리 학습 데이터에 포함된 지표들 중 적어도 일부를 이용하여 사용자에 대응하는 타입 분류 벡터를 생성할 수 있다. 예를 들어, 선호 타입 예측 모델은, 선호하는 나이, 선호하는 키, 선호하는 얼굴상에 따른 기호, 선호하는 체형에 따른 기호, 선호하는 연 수입, 선호하는 자산, 선호하는 종교에 따른 기호, 선호하는 학력, 선호하는 직업군에 따른 기호 각각을 성분값으로 하는 타입 분류 벡터를 생성할 수 있다.The preference type prediction model may generate a type classification vector (feature vector) corresponding to the user by using the training data collected for each user. For example, the preference type prediction model uses the learning data collected for each user to determine the preferred age, preferred height, preferred face shape, preferred body type, preferred annual income, preferred asset, and preferred preference. Pre-processing learning data including preferences according to religion, preferred academic background, and preferred occupational groups may be obtained. The preference type prediction model may generate a type classification vector corresponding to the user by using at least some of the indices included in the obtained pre-processing learning data. For example, the preferred type prediction model is based on the preferred age, preferred height, preferred facial shape, preferred body type, preferred annual income, preferred asset, preferred religious preference, and preferred A type classification vector may be generated in which each symbol according to educational background and preferred occupational group is used as a component value.

선호하는 얼굴상에 따른 기호, 선호하는 체형에 따른 기호, 선호하는 종교에 따른 기호, 선호하는 학력에 따른 기호, 선호하는 직업군에 따른 기호는 일종의 식별 기호로서 1, 2, 3 등과 같이 우열 없이 결정되는 식별 번호로 표현되거나 그밖에 다양한 형태의 고유 식별 기호로 표현될 수 있다.The preference according to the face shape, the preference according to the body type, the preference according to the religion, the preference according to the educational background, and the preference according to the preferred occupation group are a kind of identification symbol and are determined without superiority such as 1, 2, 3, etc. It may be expressed as an identification number or other various types of unique identification symbols.

예를 들어, 선호하는 얼굴상에 따른 기호는 선호하는 얼굴상이 강아지상의 경우 1, 여우상의 경우 2, 곰상의 경우 3, 공룡상의 경우 4, 토끼상의 경우 5, 말상의 경우 6, 개구리상의 경우 7, 사슴상의 경우 8 등일 수 있다.For example, the preference according to the preferred face image is 1 for a dog, 2 for a fox, 3 for a bear, 4 for a dinosaur, 5 for a rabbit, 6 for a horse, 7 for a frog, In the case of a deer statue, it may be 8, etc.

예를 들어, 선호하는 체형에 따른 기호는 선호하는 체형이 역삼각형의 경우 1, 직사각형의 경우 2, 둥근형의 경우 3, 삼각형의 경우 4, 모래시계형의 경우 5 등일 수 있다.For example, the symbol according to the preferred body shape may be 1 for an inverted triangle, 2 for a rectangular shape, 3 for a round shape, 4 for a triangle, 5 for an hourglass shape, and the like.

예를 들어, 선호하는 종교에 따른 기호는 선호하는 종교가 무교인 경우 1, 불교인 경우 2, 개신교인 경우 3, 천주교인 경우 4 등일 수 있다.For example, the preference according to the preferred religion may be 1 when the preferred religion is non-religious, 2 when the preferred religion is Buddhism, 3 when the preferred religion is Protestantism, 4 when the preferred religion is Catholicism, and the like.

예를 들어, 선호하는 학력에 따른 기호는 선호하는 최종 학력이 대학원인 경우 1, 대학교인 경우 2, 고등학교인 경우 3, 중학교인 경우 4 등일 수 있다.For example, the preference according to the preferred educational background may be 1 in the case of graduate school, 2 in the case of university, 3 in the case of high school, 4 in the case of middle school, and so on.

예를 들어, 선호하는 직업군에 따른 기호는 선호하는 직업군이 일반사무직인 경우 1, 건설직인 경우 2, 금융직인 경우 3, 전문직인 경우 4, 운동선수인 경우 5, 예술가인 경우 6 등일 수 있다.For example, the preference according to the preferred occupation group may be 1 for general office work, 2 for construction, 3 for finance, 4 for professional, 5 for athlete, 6 for artist, etc. have.

선호 타입 예측 모델은 사용자들 각각의 적어도 하나의 타입 분류 벡터를 이용하여 사용자들 각각을 다수의 클러스터들 중 하나로 분류(classify)할 수 있다. 예를 들어, 가우시안 혼합 모델(GMM)의 경우, 미리 지정된 K(K는 1보다 큰 자연수)개의 가우시안 분포들 각각이 클러스터와 대응하며. 사용자들을 K개의 가우시안 분포들 중 하나로 분류하도록 동작할 수 있다.The preference type prediction model may classify each of the users into one of a plurality of clusters using at least one type classification vector of each of the users. For example, in the case of a Gaussian mixture model (GMM), each of K (K is a natural number greater than 1) Gaussian distributions specified in advance corresponds to a cluster. It may operate to classify users into one of K Gaussian distributions.

구체적으로, 가우시안 혼합 모델의 경우, 베이즈 정리(Bayes' theorem)를 이용하여 K개의 가우시안 분포들 중에서 하기 수학식 1에 따른 가우시안 분포 선택함수(γ)의 결과값이 가장 높은 가우시안 분포를 선정하고, 선정된 가우시안 분포를 해당 사용자에 대응하는 선호 타입으로 결정한다.Specifically, in the case of a Gaussian mixture model, the Gaussian distribution having the highest result value of the Gaussian distribution selection function (γ) according to Equation 1 is selected from among the K Gaussian distributions using Bayes' theorem, , determines the selected Gaussian distribution as a preferred type corresponding to the user.

Figure 112022047433043-pat00003
Figure 112022047433043-pat00003

수학식 2에서 (γ)는 선택함수이고, xn은 n번째 사용자에 따른 타입 분류 벡터고, znk는 타입 분류 벡터가 주어졌을 때 가우시안 혼합 모델에서 k(k는 1과 K 사이의 자연수)번째 가우시안 분포가 선택되면 1이고, 아니면 0의 값을 갖는 2진 변수이다. 또한 수학식 1에서 μ와 Σ는 가우시안 혼합 모델에 따른 파라미터로서 미리 가우시안 혼합 모델에 대한 학습 과정을 통해 확정되는 값이다. 가우시안 혼합 모델에 따른 파라미터를 결정하기 위한 학습 과정에 대해서는 Christopher Bishop의 Pattern Recognition and Machine Learning, 2008.03.18 을 참조하면 이해할 수 있으므로 구체적인 설명은 생략한다.In Equation 2, (γ) is a selection function, x n is a type classification vector according to the nth user, and z nk is k in a Gaussian mixture model when a type classification vector is given (k is a natural number between 1 and K) It is a binary variable with a value of 1 if the th Gaussian distribution is selected, otherwise 0. Also, μ and Σ in Equation 1 are parameters according to the Gaussian mixture model, and are values determined in advance through a learning process for the Gaussian mixture model. For the learning process for determining the parameters according to the Gaussian mixture model, refer to Christopher Bishop's Pattern Recognition and Machine Learning, 2008.03.18 to understand it, so a detailed description will be omitted.

외모 평가 점수 기반 추천부(104)는 특이값 분해(SVD, singular value decomposition) 기반 행렬 분해(MF, matrix factorization)에 의한 협업 필터링을 통해 외모 평가 점수를 산출하고, 산출된 외모 평가 점수에 기반하여 사용자에게 추천할 이성 사용자를 결정하고, 결정된 이성 사용자를 사용자와 매칭할 수 있다. Matrix Factorization은 협업 필터링(collaborative filtering) 중 모델 기반 필터링에 속한 대표적인 알고리즘일 수 있다.The appearance evaluation score-based recommendation unit 104 calculates an appearance evaluation score through collaborative filtering by singular value decomposition (SVD)-based matrix factorization (MF), and based on the calculated appearance evaluation score, A user of the opposite sex to be recommended to the user may be determined, and the determined user of the opposite sex may be matched with the user. Matrix factorization may be a representative algorithm belonging to model-based filtering among collaborative filtering.

외모 평가 점수 기반 추천부(104)는 DB 관리부(101)에 저장된 다른 동성 사용자들(즉, 동성 회원들)이 평가한 이성 사용자들에 대한 외모 평가 점수에 기반하여 사용자에게 추천할 이성 사용자를 결정할 수 있다. 또한, 외모 평가 점수 기반 추천부(104)는 사용자와 동일한 클러스터(즉, 선호 타입)에 포함된 다른 동성 사용자들(즉, 동성 회원들)이 평가한 이성 사용자들에 대한 외모 평가 점수에 기반하여 이성 사용자를 결정할 수 있다. 외모 평가 점수 기반 추천부(104)는 동일한 선호 타입에 속하는 다른 동성 사용자들(즉, 사용자의 이상형과 유사한 이상형을 가진 다른 동성 사용자들)이 선호하는 외모는 사용자가 선호하는 외모일 확률이 높으므로, 이성 사용자들의 외모에 대하여 평가한 외모 평가 점수를 사용자 단말(200)에 제공할 수 있다.The appearance evaluation score-based recommendation unit 104 determines a user of the opposite sex to be recommended to the user based on the appearance evaluation score for the users of the opposite sex evaluated by other same-sex users (ie, same-sex members) stored in the DB management unit 101 . can In addition, the appearance evaluation score-based recommendation unit 104 is based on the appearance evaluation scores for users of the opposite sex evaluated by other same-sex users (ie, same-sex members) included in the same cluster (ie, preference type) as the user. You can determine the opposite sex user. The appearance evaluation score-based recommendation unit 104 has a high probability that the appearance preferred by other same-sex users belonging to the same preference type (that is, other same-sex users who have an ideal type similar to the user's ideal type) is the user's preferred appearance. , it is possible to provide an appearance evaluation score evaluated for the appearance of users of the opposite sex to the user terminal 200 .

외모 평가 점수는 얼굴 점수 및 체형 점수를 포함하며, 외모 평가 점수 기반 추천부(104)는 얼굴 점수 및 체형 점수 각각에 대한 가중치를 다르게 적용하여 상기 외모 평가 점수를 산출할 수 있다. 외모 평가 점수 기반 추천부(104)는 외모 평가 점수가 미리 설정된 임계값 이상인 이성 사용자들을 결정하여 상기 사용자에게 추천할 수 있다.The appearance evaluation score includes a face score and a body shape score, and the appearance evaluation score-based recommendation unit 104 may calculate the appearance evaluation score by applying different weights to each of the face score and body shape score. The appearance evaluation score-based recommendation unit 104 may determine and recommend users of the opposite sex whose appearance evaluation score is equal to or greater than a preset threshold value.

외모 평가 점수 기반 추천부(104)는 다수의 사용자 단말로부터 상기 다수의 사용자 단말에서 수행된 이성에 대한 외모 평가 정보를 획득하고, 획득된 외모 평가 정보를 사용자 별로 저장할 수 있다. The appearance evaluation score-based recommendation unit 104 may obtain appearance evaluation information for the opposite sex performed in the plurality of user terminals from a plurality of user terminals, and store the obtained appearance evaluation information for each user.

외모 평가 점수 기반 추천부(104)는 사용자와 동일한 클러스터(즉, 선호 타입)에 포함된 다른 동성 사용자들이 미리 설정된 임계 점수 이상을 준 이성 사용자들의 얼굴 이미지들에 기반하여 이상형 이미지를 생성할 수 있다. 외모 평가 점수 기반 추천부(104)는 상기 이성 사용자들의 얼굴 이미지들 각각의 랜드 마크를 지정하고, 상기 랜드 마크에 기반하여 얼굴 이미지들 각각에 대하여 얼굴 특징점들을 획득할 수 있다. 외모 평가 점수 기반 추천부(104)는 얼굴 특징점들의 평균 특징점을 가지는 이상형 이미지를 생성할 수 있다. 상기 이성 사용자들의 얼굴 이미지들은 DB 관리부(101)에 저장된 상기 이성 사용자들의 얼굴이 포함된 이미지일 수 있다. 외모 평가 점수 기반 추천부(104)는 DB 관리부(101)에 저장된 이성 사용자들 중에서 생성된 상기 이상형 이미지와 유사한 이성 사용자들을 결정할 수 있다. The appearance evaluation score-based recommendation unit 104 may generate an ideal image based on face images of users of the opposite sex who gave a preset threshold score or higher to other same-sex users included in the same cluster (ie, preference type) as the user. . The appearance evaluation score-based recommendation unit 104 may designate a landmark for each of the facial images of the opposite sex users, and may acquire facial feature points for each of the facial images based on the landmark. The appearance evaluation score-based recommendation unit 104 may generate an ideal image having an average feature point of facial feature points. The face images of the opposite sex users may be images including the faces of the opposite sex users stored in the DB management unit 101 . The appearance evaluation score-based recommendation unit 104 may determine users of the opposite sex that are similar to the generated ideal image from among users of the opposite sex stored in the DB management unit 101 .

만남 결과 점수 기반 추천부(105)는 특이값 분해(SVD, singular value decomposition) 기반 행렬 분해(MF, matrix factorization)에 의한 협업 필터링을 통해 만남 결과 점수를 산출하고, 산출된 만남 결과 점수에 기반하여 사용자에게 추천할 이성 사용자를 결정하고, 결정된 이성 사용자를 사용자와 매칭할 수 있다 The meeting result score-based recommendation unit 105 calculates the meeting result score through collaborative filtering by singular value decomposition (SVD)-based matrix factorization (MF), and based on the calculated meeting result score, A user of the opposite sex to be recommended to the user may be determined, and the determined user of the opposite sex may be matched with the user.

만남 결과 점수 기반 추천부(105)는 사용자의 만남 결과 점수 및 DB 관리부(101)에 저장된 사용자들의 만남 결과 점수를 산출할 수 있다. 만남 결과 점수 기반 추천부(105)는 만남 결과 점수가 미리 설정된 임계값 이상인 이성 사용자들을 결정하여 상기 사용자에게 추천할 수 있다.The meeting result score-based recommendation unit 105 may calculate the meeting result score of the user and the meeting result score of the users stored in the DB management unit 101 . The meeting result score-based recommendation unit 105 may determine and recommend users of the opposite sex whose meeting result score is equal to or greater than a preset threshold value.

만남 결과 점수 기반 추천부(105)는 사용자와 이상형이 유사한 다른 동성 사용자들(즉, 동일한 선호 타입에 포함된 동성 사용자들)이 평가한 다른 이성 사용자들 각각의 만남 결과 점수를 산출할 수 있다.The meeting result score-based recommendation unit 105 may calculate a meeting result score of each of the other opposite sex users evaluated by other same-sex users having a similar ideal type to the user (ie, same-sex users included in the same preference type).

만남 결과 점수 기반 추천부(105)는 다수의 사용자 단말들로부터 획득되어 DB 관리부(101)에 저장된 만남 평가 항목에 기초하여, 상기 만남 결과 점수를 산출할 수 있다. 상기 만남 평가 항목은, 첫인상, 대화 공통사, 리액션, 매너, 만남 유지 시간, 만남 약속 시간에 대한 지각 여부, 지각한 경우 지각 시간 등을 포함할 수 있다. 상기 만남 결과 점수는 실제로 만난 것에 기반하여 산출된 만남 실제 점수와 실제로 만나지 않았지만 예측되어 산출된 만남 예측 점수로 나뉠 수 있다.The meeting result score-based recommendation unit 105 may calculate the meeting result score based on the meeting evaluation items obtained from a plurality of user terminals and stored in the DB management unit 101 . The meeting evaluation items may include first impression, common conversational history, reaction, manners, meeting maintenance time, whether or not to be late for the meeting appointment time, and, if late, tardy time. The meeting result score may be divided into an actual meeting score calculated based on the actual meeting and a predicted meeting score calculated by not actually meeting the meeting.

만남 결과 점수 기반 추천부(105)는 실제 만남을 기반으로 산출된 실제 만남 점수 및 실제 만남이 이루어지지 않아 만남 결과 점수가 없는 사용자들에 대한 만남 결과 점수를 예측할 수 있다. 다시 말해서, 만남 결과 점수 기반 추천부(105)는 실제 만남 결과 데이터가 있는 경우, 만남 실제 점수 및 만남 예측 점수를 모두 계산하고, 실제 만남 결과 데이터가 없는 경우, 만남 예측 점수를 계산할 수 있다. 만남 결과 점수 기반 추천부(105)는 만남 실제 점수와 만남 예측 점수에 기반하여 만남 실제 점수와 만남 예측 점수를 비교하고, 상기 비교에 기반하여 신뢰 점수를 산출할 수 있다.The meeting result score-based recommendation unit 105 may predict the actual meeting score calculated based on the actual meeting and the meeting result score for users who do not have the meeting result score because the actual meeting is not made. In other words, the meeting result score-based recommendation unit 105 may calculate both an actual meeting score and an encounter prediction score when there is actual meeting result data, and calculate a meeting prediction score when there is no actual meeting result data. The meeting result score-based recommendation unit 105 may compare the actual meeting score and the meeting predicted score based on the actual meeting score and the meeting predicted score, and calculate a confidence score based on the comparison.

만남 결과 점수 기반 추천부(105)는 남성 회원이 평가한 여성 회원에 대한 만남 예측 점수, 남성 회원이 평가한 여성 회원에 대한 만남 실제 점수, 여성 회원이 평가한 남성 회원에 대한 만남 예측 점수, 여성 회원이 평가한 남성 회원에 대한 만남 실제 점수를 산출할 수 있다.The meeting result score-based recommendation unit 105 includes a meeting prediction score for a female member evaluated by a male member, an actual meeting score for a female member evaluated by a male member, a meeting prediction score for a male member evaluated by a female member, and a female It is possible to calculate the actual score of the meeting for the male member evaluated by the member.

만남 결과 점수 기반 추천부(105)는 산출된 만남 결과 점수에 기초하여, 만남 평가 테이블을 생성할 수 있다. 만남 결과 점수 기반 추천부(105)는 생성된 상기 만남 평가 테이블로부터 특성 행렬(feature matrix)을 추출하고, 추출된 상기 특성 행렬에 기반하여 협업 필터링을 수행하여 상기 사용자에게 추천할 이성 사용자를 결정할 수 있다. 여기서, 만남 결과 점수 기반 추천부(105)는 불필요한 노이즈의 제거, 계산 속도의 향상을 위하여 사용자와 동일한 클러스터(즉, 선호 타입)에 속한 다른 동성 사용자들(즉, 회원들)이 평가한 이성 회원에 대한 만남 평가 정보에 기반하여 상기 평가 테이블을 생성할 수 있다.The meeting result score-based recommendation unit 105 may generate an encounter evaluation table based on the calculated meeting result score. The meeting result score-based recommendation unit 105 extracts a feature matrix from the generated encounter evaluation table, and performs collaborative filtering based on the extracted feature matrix to determine a user of the opposite sex to recommend to the user have. Here, the meeting result score-based recommendation unit 105 is a member of the opposite sex evaluated by other same-sex users (ie, members) belonging to the same cluster (ie, preference type) as the user in order to remove unnecessary noise and improve calculation speed. The evaluation table may be generated based on the meeting evaluation information for .

도 8은 도 1에 따른 매칭 서비스 제공 서버(100)의 하드웨어 구성을 나타낸 도면이다.8 is a diagram illustrating a hardware configuration of the matching service providing server 100 according to FIG. 1 .

도 8을 참조하면, 매칭 서비스 제공 서버(100)는 적어도 하나의 프로세서(110) 및 상기 적어도 하나의 프로세서(110)가 적어도 하나의 동작(operation)을 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.Referring to FIG. 8 , the matching service providing server 100 stores at least one processor 110 and instructions for instructing the at least one processor 110 to perform at least one operation. It may include a memory (memory).

상기 적어도 하나의 동작은, 전술한 매칭 서비스 제공 서버(100)의 동작이나 기능 중 적어도 일부를 포함하고 명령어들 형태로 구현되어 프로세서(110)에 의하여 수행될 수 있다.The at least one operation may include at least some of the operations or functions of the above-described matching service providing server 100 , and may be implemented in the form of instructions and performed by the processor 110 .

여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120) 및 저장 장치(160) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중 하나일 수 있고, 저장 장치(160)는, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD), 솔리드 스테이트 드라이브(SSD), 또는 각종 메모리 카드(예를 들어, micro SD 카드) 등일 수 있다.Here, the at least one processor 110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to embodiments of the present invention are performed. can Each of the memory 120 and the storage device 160 may be configured as at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory 120 may be one of a read only memory (ROM) and a random access memory (RAM), and the storage device 160 is a flash-memory. , a hard disk drive (HDD), a solid state drive (SSD), or various memory cards (eg, micro SD card).

또한, 매칭 서비스 제공 서버(100)는 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 포함할 수 있다. 또한, 매칭 서비스 제공 서버(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. 매칭 서비스 제공 서버(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다. 도 8에서는 매칭 서비스 제공 서버(100)를 예로 들어 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 복수 개의 사용자 단말들은 도 8에 따른 구성요소를 포함할 수 있다.In addition, the matching service providing server 100 may include a transceiver 130 for performing communication through a wireless network. In addition, the matching service providing server 100 may further include an input interface device 140 , an output interface device 150 , a storage device 160 , and the like. Each of the components included in the matching service providing server 100 may be connected by a bus 170 to communicate with each other. In FIG. 8 , the matching service providing server 100 has been described as an example, but the present invention is not limited thereto. For example, a plurality of user terminals may include the component according to FIG. 8 .

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the computer readable medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media may include hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as at least one software module to perform the operations of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.In addition, the above-described method or apparatus may be implemented by combining all or part of its configuration or function, or may be implemented separately.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that it can be done.

100: 매칭 서비스 제공 서버 200: 사용자 단말100: matching service providing server 200: user terminal

Claims (5)

AI에 기반하여 사용자에게 적합한 이성을 추천하는 매칭 서비스 제공 서버에 있어서,
다수의 사용자 단말들로부터 획득된 사용자들 각각의 프로필 정보에 기반하여 상기 사용자들을 회원으로 등록하고, 상기 프로필 정보를 저장하는 DB 관리부;
상기 사용자 단말들로부터 획득된 상기 사용자들의 선호 조건에 기반하여 상기 사용자에게 추천할 이성 사용자를 결정하는 선호 조건 기반 추천부;
상기 사용자의 선호 타입을 결정하는 선호 타입 결정부;
특이값 분해(singular value decomposition)에 기반한 협업 필터링을 통해 상기 사용자들에 대한 외모 평가 점수를 산출하고, 산출된 외모 평가 점수에 기반하여 사용자에게 추천할 상기 이성 사용자를 결정하는 외모 평가 점수 기반 추천부; 및
특이값 분해(singular value decomposition)에 기반한 협업 필터링을 통해 상기 사용자들에 대한 만남 결과 점수를 산출하고, 산출된 만남 결과 점수에 기반하여 사용자에게 추천할 상기 이성 사용자를 결정하는 만남 결과 점수 기반 추천부를 포함하고,
상기 선호 타입 결정부는,
미리 학습된 가우시안 혼합 모델을 이용하여, 상기 사용자 단말들로부터 획득된 선호 조건들 각각에 대응하는 상기 사용자들을 클러스터링함으로써, 상기 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 선호 타입을 해당 클러스터에 속하는 사용자의 선호 타입으로 결정하는 선호 타입 예측 모델을 포함하고,
상기 선호 타입 결정부는,
사용자별로 수집되는 학습 데이터들을 이용하여 선호하는 나이, 선호하는 키, 선호하는 얼굴상에 따른 기호, 선호하는 체형에 따른 기호, 선호하는 연 수입, 선호하는 자산, 선호하는 종교에 따른 기호, 선호하는 학력 및 선호하는 직업군에 따른 기호를 포함하는 전처리 학습 데이터를 획득하고,
획득된 전처리 학습 데이터에 포함된 지표들 중 적어도 일부를 이용하여 상기 사용자들 각각에 대응하는 타입 분류 벡터를 생성하고,
상기 타입 분류 벡터를 이용하여 상기 사용자를 다수의 클러스터들 중 하나로 분류하되, 상기 가우시안 혼합 모델의 K개의 가우시안 분포들 중에서 가우시안 분포 선택함수의 결과값이 가장 높은 가우시안 분포를 선정하고,
선정된 가우시안 분포를 상기 사용자의 선호 타입으로 결정하고, 상기 K는 1보다 큰 자연수이고,
상기 외모 평가 점수 기반 추천부는,
상기 사용자들이 이성 사용자들의 외모에 대해 평가한 외모 평가 정보에 액세스하고,
상기 외모 평가 정보에 기반하여 외모 평가 테이블을 생성하고,
생성된 상기 외모 평가 테이블로부터 제1 특성 행렬(feature matrix)을 추출하고,
추출된 상기 제1 특성 행렬에 기반하여 협업 필터링을 수행하여 상기 사용자에게 추천할 이성 사용자를 결정하되,
상기 사용자와 동일한 선호 타입에 포함된 다른 동성 사용자들이 미리 설정된 임계 점수 이상을 준 제2 이성 사용자들의 얼굴 이미지들에 기반하여 이상형 이미지를 생성하되,
상기 제2 이성 사용자들의 얼굴 이미지들 각각의 랜드 마크를 지정하고,
상기 랜드 마크에 기반하여 상기 얼굴 이미지들 각각에 대하여 얼굴 특징점들을 획득하고,
상기 얼굴 특징점들의 평균 특징점을 가지는 상기 이상형 이미지를 생성하고,
상기 DB 관리부에 저장된 이성 사용자들 중에서 생성된 상기 이상형 이미지와 유사도가 가장 높은 얼굴 이미지에 대응하는 이성 사용자를 결정하여 상기 사용자에게 추천하고,
상기 만남 결과 점수 기반 추천부는,
상기 사용자들의 이성 사용자들에 대한 만남 평가 정보에 액세스하고,
상기 만남 평가 정보에 기반하여 만남 평가 테이블을 생성하고,
생성된 상기 만남 평가 테이블로부터 제2 특성 행렬(feature matrix)을 추출하고,
추출된 상기 제2 특성 행렬에 기반하여 협업 필터링을 수행하여 상기 사용자에게 추천할 이성 사용자를 결정하는, 매칭 서비스 제공 서버.
In the matching service providing server that recommends a suitable reason to a user based on AI,
a DB management unit for registering the users as members based on profile information of each of the users obtained from a plurality of user terminals and storing the profile information;
a preference condition-based recommendation unit for determining a user of the opposite sex to be recommended to the user based on the user preference conditions obtained from the user terminals;
a preference type determination unit for determining the preference type of the user;
Appearance evaluation score-based recommendation unit that calculates appearance evaluation scores for the users through collaborative filtering based on singular value decomposition, and determines the user of the opposite sex to be recommended to the user based on the calculated appearance evaluation score ; and
A meeting result score-based recommendation unit that calculates the meeting result score for the users through collaborative filtering based on singular value decomposition, and determines the opposite sex user to recommend to the user based on the calculated meeting result score including,
The preference type determining unit,
By clustering the users corresponding to each of the preference conditions obtained from the user terminals using a pre-trained Gaussian mixture model, a cluster corresponding to each of the users is determined, and the cluster is assigned to the determined cluster. and a preferred type prediction model that determines the preferred type as the preferred type of the user belonging to the cluster,
The preference type determining unit,
Preferred age, preferred height, preferred face shape, preferred body type, preferred annual income, preferred asset, preferred religious preference, preferred educational background using the learning data collected for each user and obtaining pre-processing learning data including a preference according to a preferred occupation group,
generating a type classification vector corresponding to each of the users by using at least some of the indicators included in the obtained preprocessing learning data,
Classifying the user into one of a plurality of clusters using the type classification vector, and selecting a Gaussian distribution having the highest result value of the Gaussian distribution selection function from among the K Gaussian distributions of the Gaussian mixture model,
Determine the selected Gaussian distribution as the user's preferred type, wherein K is a natural number greater than 1,
The recommendation unit based on the appearance evaluation score,
access the appearance evaluation information that the users have evaluated for the appearance of the opposite sex users,
generating an appearance evaluation table based on the appearance evaluation information;
Extracting a first feature matrix from the generated appearance evaluation table,
Determine a user of the opposite sex to recommend to the user by performing collaborative filtering based on the extracted first characteristic matrix,
An ideal image is generated based on the face images of users of the second opposite sex who other same-sex users included in the same preference type as the user have given a preset threshold score or higher,
Designating a landmark of each of the facial images of the second opposite sex users,
obtaining facial feature points for each of the facial images based on the landmark;
generating the ideal image having an average feature point of the facial feature points,
A user of the opposite sex corresponding to a face image having the highest similarity to the generated ideal image is determined from among the users of the opposite sex stored in the DB management unit and recommended to the user,
The meeting result score-based recommendation unit,
accessing meeting rating information for users of the opposite sex of the users;
Create a meeting evaluation table based on the meeting evaluation information,
Extracting a second feature matrix from the generated encounter evaluation table,
A server for providing a matching service for determining a user of the opposite sex to be recommended to the user by performing collaborative filtering based on the extracted second characteristic matrix.
◈청구항 2은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 2 was abandoned when paying the registration fee.◈ 청구항 1에서,
상기 선호 조건 기반 추천부는,
상기 사용자의 사용자 단말로부터 획득된 상기 사용자의 선호 조건에 기반하여, 상기 DB 관리부에 저장된 이성 사용자들에 대한 제1 선호도 점수를 산출하고,
상기 DB 관리부에 저장된 상기 이성 사용자들의 선호 조건에 기반하여 상기 이성 사용자들의 상기 사용자에 대한 제2 선호도 점수를 산출하고,
상기 제1 선호도 및 상기 제2 선호도에 기반하여 상기 이성 사용자를 결정하는, 매칭 서비스 제공 서버.
In claim 1,
The preference condition-based recommendation unit,
Based on the user's preference condition obtained from the user's user terminal, calculating a first preference score for users of the opposite sex stored in the DB management unit,
Calculating a second preference score of the users of the opposite sex for the user based on the preference conditions of the users of the opposite sex stored in the DB management unit,
A server for providing a matching service that determines the opposite user based on the first preference and the second preference.
삭제delete 삭제delete 삭제delete
KR1020220054793A 2022-05-03 2022-05-03 Method and apparatus for providing meeting matching service based on artificial intelligence KR102449694B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020220054793A KR102449694B1 (en) 2022-05-03 2022-05-03 Method and apparatus for providing meeting matching service based on artificial intelligence
KR1020220122430A KR20230155336A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an ai-based encounter matching service that arranges matching based on the preference conditions of the person and the other party
KR1020220122433A KR20230155337A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an encounter matching service based on appearance evaluation information and encounter evaluation information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220054793A KR102449694B1 (en) 2022-05-03 2022-05-03 Method and apparatus for providing meeting matching service based on artificial intelligence

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR1020220122433A Division KR20230155337A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an encounter matching service based on appearance evaluation information and encounter evaluation information
KR1020220122430A Division KR20230155336A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an ai-based encounter matching service that arranges matching based on the preference conditions of the person and the other party

Publications (1)

Publication Number Publication Date
KR102449694B1 true KR102449694B1 (en) 2022-09-30

Family

ID=83451680

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220054793A KR102449694B1 (en) 2022-05-03 2022-05-03 Method and apparatus for providing meeting matching service based on artificial intelligence
KR1020220122433A KR20230155337A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an encounter matching service based on appearance evaluation information and encounter evaluation information
KR1020220122430A KR20230155336A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an ai-based encounter matching service that arranges matching based on the preference conditions of the person and the other party

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020220122433A KR20230155337A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an encounter matching service based on appearance evaluation information and encounter evaluation information
KR1020220122430A KR20230155336A (en) 2022-05-03 2022-09-27 Method and apparatus for providing an ai-based encounter matching service that arranges matching based on the preference conditions of the person and the other party

Country Status (1)

Country Link
KR (3) KR102449694B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116313116A (en) * 2023-05-12 2023-06-23 氧乐互动(天津)科技有限公司 Simulation processing system and method based on human body thermal physiological model
KR102576191B1 (en) * 2022-08-19 2023-09-07 시놀(주) Method for matching system for senior user

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160064447A (en) * 2014-11-28 2016-06-08 이종찬 A recommendation method for new users by using preference prediction based on collaborative filtering algorithm
KR20200064839A (en) * 2018-11-29 2020-06-08 정승현 Maching method for a mens who divorced by using personal preferences information and reason for divorce
KR102350616B1 (en) * 2021-04-29 2022-01-17 (주)테키 The method and apparatus for matching marry information based on artificial intelligence
KR20220053168A (en) * 2020-10-22 2022-04-29 김밀알 Apparatus for Providing Dating Partner Matching Service and Providing Method Thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160064447A (en) * 2014-11-28 2016-06-08 이종찬 A recommendation method for new users by using preference prediction based on collaborative filtering algorithm
KR20200064839A (en) * 2018-11-29 2020-06-08 정승현 Maching method for a mens who divorced by using personal preferences information and reason for divorce
KR20220053168A (en) * 2020-10-22 2022-04-29 김밀알 Apparatus for Providing Dating Partner Matching Service and Providing Method Thereof
KR102350616B1 (en) * 2021-04-29 2022-01-17 (주)테키 The method and apparatus for matching marry information based on artificial intelligence

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102576191B1 (en) * 2022-08-19 2023-09-07 시놀(주) Method for matching system for senior user
CN116313116A (en) * 2023-05-12 2023-06-23 氧乐互动(天津)科技有限公司 Simulation processing system and method based on human body thermal physiological model

Also Published As

Publication number Publication date
KR20230155337A (en) 2023-11-10
KR20230155336A (en) 2023-11-10

Similar Documents

Publication Publication Date Title
Zhang et al. Casm: A deep-learning approach for identifying collective action events with text and image data from social media
KR102449694B1 (en) Method and apparatus for providing meeting matching service based on artificial intelligence
US11704500B2 (en) Techniques to add smart device information to machine learning for increased context
CN111695033A (en) Enterprise public opinion analysis method, device, electronic equipment and medium
CN111615706A (en) Analysis of spatial sparse data based on sub-manifold sparse convolutional neural network
US9183285B1 (en) Data clustering system and methods
US20160063097A1 (en) Data Clustering System, Methods, and Techniques
CN104750798B (en) Recommendation method and device for application program
US20150248650A1 (en) Matching device, matching method, and non-transitory computer readable medium storing program
May Petry et al. MARC: a robust method for multiple-aspect trajectory classification via space, time, and semantic embeddings
CN111144723A (en) Method and system for recommending people's job matching and storage medium
CN111222305A (en) Information structuring method and device
US8719191B2 (en) Training and verification using a correlated boosted entity model
Ahmed et al. Discovering diverse, high quality design ideas from a large corpus
CN111783126B (en) Private data identification method, device, equipment and readable medium
CN107392311A (en) The method and apparatus of sequence cutting
CN115577316A (en) User personality prediction method based on multi-mode data fusion and application
CN112801425A (en) Method and device for determining information click rate, computer equipment and storage medium
Khan et al. Possible effects of emoticon and emoji on sentiment analysis web services of work organisations
CN113656699A (en) User feature vector determination method, related device and medium
Tortelli Portela et al. HiPerMovelets: high-performance movelet extraction for trajectory classification
McGlynn ‘Fat boys make you feel thinner!’: fat GBQ men’s comfort and stigma in UK bear spaces
CN115952800A (en) Named entity recognition method and device, computer equipment and readable storage medium
CN112507185B (en) User portrait determination method and device
CN110941638A (en) Application classification rule base construction method, application classification method and device

Legal Events

Date Code Title Description
GRNT Written decision to grant