우리는 시장에서 서로를 찾으려하는 구매자와 판매자가 있다고 가정합니다. 구매자는 키워드로 자신의 필요를 태그 할 수 있습니다. 판매자는 판매하는 상품에 대해 동일한 조치를 취할 수 있습니다. 나는 그들의 두 키워드 세트에 기초하여 특정 구매자에 대한 관련성 측면에서 순위 순서 판매자가 알고리즘을 찾는 데 관심이있다.키워드를 기반으로 매칭을위한 알고리즘
buyer_keywords = {"furry", "four legs", "likes catnip", "has claws"}
다음 우리는 우리가 그들의 관련성의 측면에서 순서를 평가해야 할 두 가지 잠재적 인 판매자가 : 우리가 키워드의 교차를 사용하는 경우
seller_keywords[1] = {"furry", "four legs", "arctic circle", "white"}
seller_keywords[2] = {"likes catnip", "furry",
"hates mice", "yarn-lover", "whiskers"}
을 여기
은 예입니다 , 우리는 많은 차별을받지 않습니다 : 둘 다 두 키워드에서 교차합니다. 교차 수를 집합 유니온의 크기로 나눈다면 판매자 2는 더 많은 수의 키워드로 인해 실제로 악화됩니다. 이는 키워드 세트 크기를 수정하지 않는 모든 메소드에 대해 자동 페널티를 도입하는 것처럼 보일 것입니다. 키워드를 추가하면 벌칙을 부과하고 싶지 않습니다. 문제에 좀 더 구조를 넣으려면, 우리는 우리가 할 수 이제 키워드 (각 판매자 1로 요약 할) 특성, 예를 들어, :seller_keywords[1] = {"furry":.05,
"four legs":.05,
"arctic circle":.8,
"white":.1}
seller_keywords[2] = {"likes catnip":.5,
"furry":.4,
"hates mice":.02,
"yarn-lover":.02,
"whiskers":.06}
강도의 일부 진실 측정이 있다고 가정 조회수 값을 합산합니다. 이제 판매자 1은 .1의 점수를 얻지 만 판매자 2는 .9의 점수를 얻습니다. 지금까지 너무 좋아,하지만 지금 우리는 매우 제한, 비 기술적 인 키워드 세트와 세 번째 판매자를 얻을 수 있습니다 :
seller_keywords[3] = {"furry":1}
이 아닌 자신의 유일한 키워드의 모든 히트의 상단에 투석기를 좋은.
어쨌든, 내 생각에 이것은 상당히 일반적인 문제이며 알려진 강점과 한계를 지닌 다른 알고리즘 솔루션이 있다는 것입니다. 이것은 아마도 CS101에서 다룰 내용입니다. 따라서이 질문에 대한 좋은 대답은 관련 참조에 대한 링크 일 수 있습니다.
나는 우리가 일치하는 키워드의 수로 유효 점수를 곱해야한다고 생각합니다. 예를 들어, II'nd의 경우에 우리는 단지 1 개의 일치를 가지며 점수 1을 가지므로 유효 점수 1 * 1 = 1.But in 2 개의 일치 항목이 발견되면 2 * 1 = 2 인 효과적인 점수를 얻게됩니다.이 항목이 선택됩니다.이 접근 방식에 대해 뭐라 말합니까? – Algorithmist