2012-02-23 44 views
5

Phương pháp tốt nhất để định vị vị trí cho dữ liệu địa lý là gì?Phương pháp tốt nhất để định vị vị trí cho dữ liệu địa lý là gì?

Có một số thuật toán ghi điểm cho tìm kiếm tên địa lý, nhưng chúng không mở nguồn và tôi không chắc chắn chúng rất phức tạp. (Tức là cho soma, ca nó trả Soma lake in Canada có thậm chí không wikipedia bài viết, thay vì rất phổ biến Soma Neirbohood in san francisco)

Ngoài ra còn một số công trình tôi đã tìm thấy trong google học giả, nhưng họ có vẻ rất nông cạn và tương tự với chẩn đoán của tôi như chấm điểm bởi một cái gì đó (log(population) + 1000*hasWikipedia(article)+ isCity100+isCapital(10)).

Miền của tôi trong các bài viết du lịch nên chức năng chấm điểm của tôi sẽ cung cấp hầu hết các địa điểm du lịch có thể xảy ra (thành phố, địa điểm ưa thích (Disneyland, colleseum, big ben)).

Bạn có biết bất kỳ bài viết quan trọng nào trong lĩnh vực này hay thuật toán được sử dụng trong sản xuất bởi Google maps, yahoo, bing hoặc thậm chí cả tên địa lý không?

+0

Đó là một câu hỏi tiền thưởng ... 'retag-ing' sẽ mang lại nhiều khách truy cập hơn. Làm ơn, tôi muốn ai đó thêm thẻ. (Tôi không có đại diện 500+). _Đề xuất những gì tôi nghĩ là các thẻ tốt để add_; [đối sánh chuỗi] [tìm kiếm] [thuật toán]. –

+0

@OlofAdler, chúng tôi có thể thêm tối đa 5 thẻ – Hector

+0

Không biết điều đó. Cảm ơn vì thông tin. –

Trả lời

3

@yura, đây không phải là những gì bạn đang tìm kiếm, nhưng tôi không nghĩ rằng bất kỳ thuật toán thông minh nào sẽ có thể định hướng rõ ràng các truy vấn như "soma ca" có liên quan đến Soma ở San Fran hay Soma Lake không Canada. Vấn đề không phải là thuật toán của bạn không đủ tinh vi; vấn đề là chỉ đơn giản là không đủ thông tin trong truy vấn "soma ca".

Tôi không biết làm thế nào để thể hiện rõ ràng, nhưng có một điều lý thuyết thông tin đang diễn ra ở đây. Nó giống như cách mà dữ liệu ngẫu nhiên không thể nén được một cách mất mát: không có đủ thông tin trong đầu vào để tính toán đầu ra mong muốn.

Thậm chí nếu một người giải thích các truy vấn của bạn theo cách thủ công, họ sẽ không nhất thiết phải hiểu rằng "soma ca" được cho là có nghĩa là Soma trong SF. Có thể bạn viết tắt 2 chữ cái như "ca" "một cách tự nhiên" đề cập đến một tiểu bang của Mỹ chứ không phải là một quốc gia nước ngoài, nhưng không có gì cơ bản "đúng" về lựa chọn đó, và nó không thể bắt nguồn bằng logic thuần túy. Đó là quy tắc tùy ý, theo tên miền cụ thể, đặc biệt theo tên miền, giống như quảng cáo đặc biệt mà bạn đã đề cập đến.

Một số "giải pháp" có thể (ngoài việc thiết kế một máy tính ngoại cảm mà có thể đọc được suy nghĩ của người sử dụng):

  1. Cung cấp cho người dùng một danh sách các trận đấu có thể cho mỗi truy vấn. Theo dõi những người họ chọn và khi người dùng khác sau đó nhập cùng một truy vấn, hãy sắp xếp kết quả theo mức độ phổ biến.
  2. HOẶC, khi bạn thu thập nhiều dữ liệu về mức độ phổ biến của kết quả truy vấn, bạn thậm chí có thể khai thác dữ liệu bằng các thuật toán học máy và lấy các phỏng đoán tốt hơn từ nó.
  3. Hoặc trước khi đưa ứng dụng vào sử dụng sản xuất, trước tiên bạn có thể biên dịch một phần truy vấn giả, cùng với kết quả mà bạn nghĩ thuật toán của mình sẽ mang lại cho mỗi truy vấn như vậy. Sau đó, sử dụng thuật toán học máy của bạn trên đó.
  4. Biên dịch một truy vấn giả và câu trả lời mong muốn, HOẶC lấy dữ liệu từ lựa chọn của người dùng thực và sử dụng dữ liệu đó để đánh giá độ chính xác của chẩn đoán xếp hạng được thiết kế theo cách thủ công và được mã hóa của bạn. Hãy phát minh ra các chẩn đoán mới cho đến khi bạn tìm thấy một cái mà đạt được độ chính xác cao trên bộ dữ liệu thử nghiệm của bạn.
Các vấn đề liên quan