を検索結果の関連性を見つけ、私はフィールドと対応する重みを持つユーザーのアドレス情報を含むAzureの検索インデックスを持っている:Azureの検索で
weights= @{
HouseNumber = '40'
StreetName = '36'
City = '30'
PostalCode = '29'
Province = '25'
Country = '21'
FSA = '20'
Plus4 = '16'
SuiteName = '12'
SuiteRange = '11'
StreetPost = '10'
StreetPre = '8'
StreetSuffix = '6'
}
私は照会のためのいずれかとしてsearchmodeを使用しています。どのようにして、最大得点の記録が最も関連性の高いものであるかを決定できますか?ユーザーが住所のすべてのキーワードを入力しない場合は、レコードの関連性が異なる場合があります。たとえば、文字列に '1A1'のようなキーワードが含まれていれば、それは郵便番号 'A1A 1A1'の一部であるか、または住宅番号である可能性があります。これにより、両方のレコードが返されますが、スコアが異なります。私はこれをどのように修正すべきですか?
フィールドスコープを作成するときに、フィールドが正しいフィールドにない場合に問題が発生します。これらの照会は、エンド・ユーザーによって作成され、人的エラーをコミットする可能性があります。その場合、クエリは機能しません。また、検索クエリの一部がヌルになる場合や、余分な値を持つ場合があります。例えばクエリに完全なアドレスがあるが、データベースに国が含まれる国ではない場合。さらに、クエリーがクエリーで特定のストリート名を指定していても、そのデータベースがそのフィールドを希望の結果のためのヌルとして持つ場合。 –
クエリに情報がない場合(たとえば、クエリにPostalCodeが含まれていない場合)、フィールドスコープのクエリは、そのフィールドで検索が実行されないため、無関係の結果を返しません。索引内の文書に情報がない場合(たとえば、問合せにHouseNumberが含まれ、結果にHouseNumberフィールドが空の場合など)、フィールドスコープ付き問合せでは、他のフィールド(StreetName、Province、特定のHouseNumberと一致しない場合でも、類義語やファジィ検索などの機能は、人為的ミスを軽減するのに役立ちます。 – ashmaka
しかし、間違ったフィールドマッピングを含む人間のエラーはどのように処理できますか? –