Destro, CopySeo,
Спасибо за хорошие слова. Будем стараться, чтобы программа и в дальнейшем оставалась полезной и удобной для вас :)
hr769,
Еще раз спасибо за предложение и пояснения по нему, записали в планы для онлайн-версии.
Спасибо за предложение. А можно уточнить, как вы видите реализацию этой функции? Как отдельную колонку, в которой ключевое слово, благодаря которому нашлась фраза (что и правда удобно при поиске по большому списку) или как выбор ключей с вхождением одного и того же двусловника?
admak, спасибо за Ваш вклад в улучшение базы, мы сейчас обновляем инструкцию, дадим ссылки на эти посты, чтобы те, кому может понадобиться фильтрация, смогли воспользоваться Вашими знаниями.
Аdmak, идея хорошая, большое спасибо за предложение. Пока мы анализировали, описывали результаты и готовили ответ, вы уже свое решение выложили :)
На 99% включения испанских, французских, португальских, голландских, немецких, польских и прочих слов - это неанглийские фразы, часть их можно отфильтровать, использовав список наиболее часто употребляемых неанглийских слов - в основном, это предлоги, артикли, местоимения, союзы, а также существительные и глаголы, имеющие отношение к деятельности в интернете, к поиску, например, но есть достаточно много названий компаний, торговых сетей, отелей, ресторанов, различных торговых марок и брендов, которые содержат в своих названиях неанглийские слова. Сделать хотя бы мало-мальски удовлетворительный список таких компаний, чтобы их оставить, а остальное убрать, для нас нереально по трудозатратам. С другой стороны, нужны такие названия или нет, решать все-таки не нам.
Вот небольшая иллюстрация проблемы.
Полностью удалив "de", мы потеряем очень даже коммерческие словосочетания, включающие de luxe, торговые марки de beers, de longhi, а также tour de france, менее известные de novo hairstyle, De Fonseca и многие другие названия.
Не всегда целесообразным выглядит и удаление высокочастотных испанских san, los, la, las, el, del - они встречаются в названиях американских городов, других населенных пунктов, например, San Diego, San Francisco, San Jose, San Andreas, Los Angeles, Los Altos, Los Olivos, Los Santos, La Mirada, La Habra, Las Vegas, Las Cruces, El Monte, El Dorado, Del Mar, Del Rey. То же касается названий гостиниц, ресторанов и т.п.
Если удалить van, то вместе с ним мы удалим Van Buren (названия округов в двух штатах США), торговую марку Van Cleef, Van Damme (актера), Van Halen (который Eddie), да и Van Helsing тоже.
Все это вполне хорошие слова, которые кому-то будут нужны.
Т.е. на автомате поудалять словосочетания с артиклями, предлогами и союзами из других языков не нам бы не хотелось - можно потерять города, торговые марки и т.д. Что делать с двухбуквенными словами, если это не что-то устойчивое, а, возможно, аббревиатуры или часть каких-то марок, серий, кодов товара, тоже не совсем понятно. Например, va - это аббревиатура штата Вирджиния, ma - Массачусетса, а la - устойчивае сокращение Los Angeles.
Решили сделать так: база для закачивания будет по прежнему полная, но у тех, кому важно сэкономить место на диске, будет возможность выполнить команду для дополнительной очистки.
Мы также обновим инструкцию - добавим пункт, как дополнительно почистить базу от артиклей, предлогов и т.д. других языков. Список, который мы даем, не исчерпывающий, это те слова, которые встречались наиболее часто (мы посчитали количество употреблений уникальных слов, сейчас обрабатываем результаты).
Таким образом будет выбор - либо вы потеряете часть базы, зато удалите большую часть того, что не нужно, либо все оставляете полностью и ничего не теряете.
Аdmak, еще раз спасибо за то, что поделились результатами своей работы :)
P.S. Обновленную инструкцию со списком ВЧ неанглийских слов и максимальную базу выложим во вторник. Чуть позже сегодня список слов, которые могут пригодиться - с оговорками выше - для фильтрации.---------- Добавлено 20.03.2016 в 19:49 ----------Мы подготовили список неанглийских слов (среди них есть слова, имеющие также значение в английском языке, но у которых большинство случаев употребления в составе других языков, например, слово "les" - это имя (сокращенное от Leslie) , а также сокращение от "lesbian" в английском и одновременно это определенный артикль для существительных женского рода и множ. числа во французском. Еще похожий пример - слово "pour" - это английское словарное слово со значением "наливать", но чаще попадаются фразы, в которых слово "pour" - это француский предлог "для". Хотя для тех, кто будет составлять ядро для кулинарного сайта английское значение "pour" критично).
Также мы оставили в списке аббревиатуры штатов США и коды стран. Если делать строгую фильтрацию, то, возможно, вы ими также готовы пожертвовать.
Список слов для фильтров можно скачать: https://yadi.sk/i/Sv1B0af9qLZyt
Все базы мы чистим от мусора, алгоритмы чистки - на основе алгоритмов чистки базы Букварикса (с поправкой на английский язык).
Т.е. если вы пользовались Буквариксом для рунета, то сможете приблизительно оценить качество чистки.
Дополнительно добавим, что мы фильтруем попадание в базу символов других алфавитов, например чтобы в английской базе не было русских/китайских и т.д. слов.
Но, например, если фраза состоит исключительно из символов, допустимых в английском языке, то мы такую фразу не фильтруем.
Поэтому в базу могут попадать и слова на других языках, например, латынь, испанский, итальянский, если там использована исключительно латиница английского алфавита - впрочем, это проблема всех баз, не только наших.
Как всегда, если заметите в базе мусор и есть идеи как его отфильтровать алгоритмически - пишите, в следующих апдейтах баз дополнительно почистим.
Очень рады вашему отзыву! :) Ваш успех - наш успех. Над онлайн-версией работаем, хотим, чтобы скорость не отличалась от десктопной.
Очень скоро - в следующий понедельник или вторник. Слов будет даже больше, чем мы заявили, скорее всего отметку в 2 млрд. мы преодолеем - благодаря Bing & Yahoo! :)
Да, 49 Гб для минимальной должно хватить с головой, но для расширенной этого мало.
Фома, Wiiseacre,
Мы не против раздачи через торрент, просто мы сомневаемся, что раздающих английскую базу будет столько, чтобы раздача была стабильной и скоростной. У нас есть опыт раздачи нашего основного проекта, мы исходим из него, но там количество раздающих набирается быстро. Тем не менее нам ничего не мешает попробовать, вот ссылка на торрент:
Минимальная база
Расширенная база
Просим скачавших остаться на раздаче, чтобы дать шанс другим :)
Раздачу через торрент не подготовили потому что сомневаемся, что сможем привлечь достаточно раздающих.
Но в качестве альтернативы добавили базы на Облако@mail.ru:
Если исходить из того что вы будете работать с минимальной базой (на 457 млн. слов), то около 33 Gb - это приблизительный размер файлов данных PostgreSQL после индексации.
Т.е. ваших 49 Гб должно было хватить.
Но, если вы, например скачали на тот же диск архив базы (минус 4,5 Гб), а потом её распаковали на том же диске (ещё минус 11,2 Гб), то вашего места может и не хватить.
Можно посоветовать сделать так - после копирования файла EnglishKeywords.txt в таблицу (т.е. после команды copy "eng_data_table" ...) удалить уже скачанный архив и сам файл EnglishKeywords.txt в распакованном виде - они уже не нужны, поскольку уже импортированны в базу PostgreSQL.