Я хочу создать этот движок, который будет классифицировать веб-сайты на основе их мета-ключевого атрибута.
Извлечение ключевого слова с сайта было легко, а также подключение к базе данных. Проблема, с которой я столкнулся, – это алгоритм, как сопоставить «ключевое слово», извлеченное из веб-сайта, с предопределенным набором строк.
Пожалуйста, помогите мне. Я использую PHP-скрипты для реализации этого.
//say I have $pattern as the meta keyword extracted from web page (ignore the syntax – please me) $pattern=<news, current affairs, breaking news, sports, entertainment, daily news, local news> // and set of predefined string to match with.. $keywords=<----something----->
Какую логику следует использовать для сопоставления $pattern
с $keywords
? ereg
функция preg_match_all()
или ' ereg
' для меня? Пожалуйста, помогите мне, ребята.
$ keyword = array ('local news', 'art', 'local', 'world', 'tech', 'entertainment', 'news', 'tech', 'top stories', 'news', ' «первая страница», «новости bbc», «неделя с первого взгляда», «неделя в картинках», «лучшие истории»); // $ keyword имеет предопределенный массив строк $ all_meta_tags = get_meta_tags ("http://abcnews.go.com/"); $ array = $ all_meta_tags ['keywords']; // хранить значения атрибута "keyword" в $ keyword_meta
Теперь мне нужно сопоставить содержимое массива $ с ключевым словом $ ….. результаты должны дать мне сопоставленные элементы массива $, которые присутствуют в $ ключевое слово
Вам нужно будет использовать что-то вроде http://en.wikipedia.org/wiki/Naive_Bayes_classifier
Я использовал эту систему для классификации заданий, скрещенных с рабочих мест, с довольно хорошим успехом. Написание кода было сукой, получайте удовольствие: D