Mam bazę danych, składającą się z całej gamy rekordów (około 600 000), gdzie w niektórych rekordach brakuje niektórych pól. Moim celem jest znalezienie sposobu przewidywania, jakie wartości powinny być (aby móc je wypełnić) na podstawie istniejących danych.Przewidywanie brakujących wartości danych w bazie danych
Jedną z opcji, której szukam, jest tworzenie klastrów - tj. Reprezentowanie rekordów, które są kompletne jako punkty w przestrzeni, wyszukiwanie klastrów punktów, a następnie podanie rekordu z brakującymi wartościami danych pozwala sprawdzić, czy istnieją wszelkie klastry, które mogą należeć do tego, są zgodne z istniejącymi wartościami danych. Może to jednak nie być możliwe, ponieważ niektóre pola danych mają nominalną skalę (na przykład kolor) i dlatego nie można ich uporządkować.
Inną ideą, którą miałem, było stworzenie pewnego rodzaju probabilistycznego modelu, który przewidywał dane, szkolił je na istniejących danych, a następnie używał go do ekstrapolacji.
Jakie algorytmy są dostępne, aby wykonać powyższe czynności, i czy istnieje dowolne dostępne oprogramowanie, które implementuje te algorytmy (To oprogramowanie będzie w C# przy okazji).
Ogromny problem. Bardzo zależy od wielu rzeczy, których nie możemy przewidzieć. Najprostsza instancja: czy są jakieś błędy dotyczące selekcji, w których rekordy mają brakujące pola? Skąd wiesz? Co możesz z tym zrobić? Czy są dostępne wskaźniki proxy? I tak dalej ... – dmckee
Zgadzam się z powyższym komentarzem. Mogą istnieć pewne ogólne algorytmy, których możesz użyć, ale musisz dostosować każdy z nich do swojej domeny. – job