Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Klasyfikator treści, automatyczny dobór pokategorii
nimda
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 2.11.2010

Ostrzeżenie: (0%)
-----


Witam,
zabiram się do napisania skryptu, a właściwie systemu ekspertowego, do klasyfikowania wpisów na podkategorie wg ich treści. Założenia są ogólnie proste, dodajemy wpisy, wpis zawiera treść, temat oraz kategorie główną, np. Rodzina. Po dodaniu wpisu dokonywana jest analiza treści i tematu, w zależności od kategorii (wstępna klasyfikacja podana przez uzytkownika) wybierany jest zestaw podkategorii (np. dla kategorii Rodzina byłoby to mama, tata, dziadek, babcia itd.) i wśród nich odpowiednio do treści wybieranybyłby najbardziej pasujący. Zastanawiam się jak się do tego zabrać, na pewno potrzebna będzie duża baza słownikowa, mam 10 kategorii głównych, no i sam algorytm będzie rzeczą najtrudniejszą. Jeśli ktoś z Was spotkał się z takim problemem, albo ma jakis pomysł na rozwiązanie tego zagadnienia, byłbym bardzo wdzięczny za pomoc,

pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cudny
post
Post #2





Grupa: Zarejestrowani
Postów: 387
Pomógł: 66
Dołączył: 31.03.2005
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Zastanów się czy podkategorii będziesz miał nieskończenie wiele (czy to będzie drzewko) czy będziesz miał tylko kat. nadrzędną i do niej jakieś kategorie podrzędne bez złożonych struktur.
Jeśli będzie to drzewko kategorii do tego tworzone dynamicznie i nie wiadomo jaka będzie to ilość podkategorii to mówimy tu o czymś bardzo ciekawym co ostatnio robiłem w kilku projektach (IMG:style_emoticons/default/smile.gif)
Mój pomysł to:
  1. $categories = array('id' => 1, 'parent_id' => 1, 'name' => 'rodzina', 'descript' => 'jakiś opis rodzinki');
  2. $categories = array(
  3. 1 => array('id' => 1, 'parent_id' => 1, 'name' => 'rodzina', 'descript' => 'jakiś opis rodzinki', 'categories' => array()),
  4. 2 => array('id' => 2, 'parent_id' => 2, 'name' => 'zwierzeta_w_domu', 'descript' => 'jakiś opis teściów', 'categories' => array())
  5. );
  6. $categories[1]['categories'] = array(
  7. 3 => array('id' => 3, 'parent_id' => 1, 'name' => 'babcia', 'descript' => 'jakiś opis babci', 'categories' => array()),
  8. 4 => array('id' => 4, 'parent_id' => 1, 'name' => 'tata', 'descript' => 'jakiś opis taty', 'categories' => array())
  9. );
  10. $categories[2]['categories'] = array(
  11. 5 => array('id' => 6, 'parent_id' => 2, 'name' => 'tesciowa', 'descript' => 'jakiś opis teściowej', 'categories' => array()),
  12. 6 => array('id' => 5, 'parent_id' => 2, 'name' => 'tesc', 'descript' => 'jakiś opis teścia', 'categories' => array())
  13. )

i tak dalej robisz sobie złożoną strukturę kategorii i podrzędnych im podkategorii.
Najłatwiej to zrobić w BD ale jak można zauważyć aby pobrać całe drzewko rekurencyjnie każdą z podkategorii trza by zapytaniem ładować co zabija server.
Ja to włożyłem do XML i hula jak złoto (IMG:style_emoticons/default/smile.gif)
Do szukania używam xpach(); ale szukam tylko po id, wiec tobie by wypadało zrobić dla XML relację w bazie po ID i tam wkładać opisy dla podkategorii - wtedy zwykły opis like('%babcia%') i wyciąga ci wszystkie ID, a jak chcesz pobrać drzewko to nie siepiesz zapytań do bazy tylko normalnie robisz rekurencyjnie tablicę wielowymiarową z XML (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 12:58