Классифицируйте слова как «хорошие» и «плохие» - PullRequest
4 голосов
/ 29 мая 2011

У меня есть список доменных имен, и вы хотите, чтобы определить, является имя домена выглядит как это порно сайт или нет.Какой лучший способ сделать это?Список порно доменов выглядит http://dumpz.org/56957/.Эти домены могут быть использованы для обучения системы, как порно домены должны выглядеть.Также у меня есть другой список - http://dumpz.org/56960/. - многие домены этого списка также порно, и я хочу, чтобы определить их по имени

Ответы [ 6 ]

5 голосов
/ 29 мая 2011

Используйте байесовский фильтр, например: SpamBayes или Divmods Reverend. Вы обучаете его со списком вы должны и могли забить, насколько вероятно, для данного домена, если это порно.

Для краткого обзора посмотрите эту статью.

5 голосов
/ 29 мая 2011

Вы не можете полагаться на доменное имя для этого, есть слишком много порно домены с приличными названиями и несколько других с порнографией, как имена, но с безопасным содержанием.

1 голос
/ 30 мая 2011

Как кто-то уже указал, вам нужна какая-то классификация, чтобы достичь того, что вы пытаетесь.Но тогда общая точность (точность и отзыв) зависит от имеющегося у вас набора данных обучения.Для этой цели вы можете использовать классификаторы, такие как SVM, дерево решений и т. Д.

Я бы посоветовал перейти к полууправляемому подходу, когда вы кластеризуете свои разные URL и проверяете несколько репрезентативных URL из каждого кластера, чтобы увидетьесли это порно или нет.Выгода вам не нужна никакая подготовка, и вы можете найти порно URL, которые, вероятно, не покрывают свои тренировочный набор данных.Общие методы кластеризации к-средства, иерархические, dbscan и т.д. Это все равно не покрывают порно сайтов, которые не имеют порнуху как URL.Для этого вам нужно захватить страницу и провести аналогичное обучение / кластеризацию контента веб-страниц.

1 голос
/ 30 мая 2011

Это может зависеть от ваших целей.Я предполагаю, что вы в основном заинтересованы в минимизации ложных негативов (случайное называние домена хорошим доменом, если это не так).Это может быть правдой, если, например, вы хотите, чтобы все порно ссылки на форуме будут рассмотрены на предмет спама перед публикацией.Если некоторые не порно ссылка получить помечена для просмотра, это нормально.

1002 * В этом случае, вы могли бы, вероятно, сделать что-то довольно просто.Если бы вы могли придумать список porn'ish слов, можно просто пометить все домены, которые содержат любое из этих слов в качестве подстроки.Это могло бы поймать некоторые безопасные домены, хотя: expertsexchange.com мог бы соответствовать «sex» или «sexchange», но «yahoo» никогда не отмечал бы положительный.Легко реализовать, легко понять, легко настроить.

Списки нецензурных слов можно найти с помощью вашей любимой поисковой системы.Вы можете использовать свой список доменов для извлечения общих длинных подстрок в доменах в виде слов.

Если вы действительно хотите получить правильные ответы, вам нужно посмотреть, что находится в этих доменах.Site-About-Kitty-Porn.com может быть домен или Смешные котята нелегальный порно.Невозможно знать, если вы не ползете.Если вы выберете фактический контент и сопоставите его с вашим списком, у вас будет немного лучше.

Вы также можете попробовать каждый домен с какой-либо сторонней службой, такой как безопасный для детей интернет-фильтр, или даже попытаться проверить, появится ли домен для результатов безопасного поиска в вашей любимой поисковой системе.Конечно, убедитесь, что вы соблюдаете условия обслуживания каждой службы и все это.

0 голосов
/ 05 июня 2012

Ознакомьтесь с этой записью в блоге на классификации веб-страниц по темам . Начните со списка плохих сайтов в качестве положительных примеров и используйте любую эвристику для поиска хороших сайтов (базовый сканер веб-страниц с некоторыми невинными поисками в Google) в качестве отрицательных примеров. В этом посте вы познакомитесь с процессом извлечения контента через страницы и коснитесь Weka, а также о том, как вы можете применить некоторых из их основных учеников.

Обратите внимание, что вы, возможно, захотите добавить в свой обучающий набор дополнительные данные, относящиеся к области вашей проблемы, а не просто использовать содержимое страницы. Например, количество изображений или размер изображений на странице может быть фактором, который вы можете рассмотреть.

0 голосов
/ 29 мая 2011

Вы имеете в виду что-то подобное?

scala> val pornList = List("porn1.com","porn2.com","porn3.com")
pornList: List[java.lang.String] = List(porn1.com, porn2.com, porn3.com)

scala> val sites = List("porn1.com","site1.com","porn3.com","site2.com","site3.com")
sites: List[java.lang.String] = List(porn1.com, site1.com, porn3.com, site2.com, site3.com)

scala> val result = sites filterNot { pornList contains _ }
result: List[java.lang.String] = List(site1.com, site2.com, site3.com)
...