Написал забавный php-скрипт. Погонял через него все тексты на «Спектаторе» на предмет языка. Всего в текстах употребляется 39110 разных словоформ. Сколько именно разных слов — определить довольно сложно. Чтобы хоть как-то приблизиться к этой цифре, я брал только первые 5 букв слова и сравнивал их. Получилось 14373 таких комбинаций. С большой натяжкой это можно назвать словарным запасом «Спектатора».
Потом я взял слова и иследовал их на предмет частоты повторения букв. В идеале надо брать какой-нибудь словарь, для полноты картины. Прогонять тексты нельзя, нужно только уникальные слова. В тексте же одни слова повторяются чаще, чем другие. Итак, получились следующие результаты:
о — 9.28%
а — 8.66%
е — 8.10%
и — 7.45%
н — 6.35%
т — 6.30%
р — 5.53%
с — 5.45%
л — 4.32%
в — 4.19%
к — 3.47%
п — 3.35%
м — 3.29%
у — 2.90%
д — 2.56%
я — 2.22%
ы — 2.11%
ь — 1.90%
з — 1.81%
б — 1.51%
г — 1.41%
й — 1.31%
ч — 1.27%
ю — 1.03%
х — 0.92%
ж — 0.78%
ш — 0.77%
ц — 0.52%
щ — 0.49%
ф — 0.40%
э — 0.17%
ъ — 0.04%
Тем, кто поедет на «Поле чудес», советую заучить эту таблицу наизусть. И называть слова в таком порядке. Так, например, казалось бы, такая «привычная» буква «б» употребляется реже, чем «редкая» буква «ы». Помнить надо также и то, что в слове не одни гласные. И что если вы угадали одну гласную, то нужно начинать идти по согласным. И кроме того, слово угадывается именно по согласным. Сравните: «**а**и*е» и «ср*вн*т*». И в том и в другом случае — это слово «сравните».
И еще одно соображение. Как вы учили английский? Помните? Э пен, э пенсил, э тэйбл. Что вижу — о том и пою. А смысл?.. Как часто вы в нормальной жизни говорите слово «карандаш»? Если задача — научить говорить как можно быстрее и эффективнее, то и учить надо соответствующе. Проводим анализ языка, выделяем самые употребимые слова. И учить начинаем именно с них. Чтобы более-менее говорить на английском языке, достаточно всего полторы тысячи слов.
Еще одно баловство: составлять слова из букв случайным образом, но учитывая частоту появления, чтобы было похоже на нормальные слова. В первой же десятке «случайных» четырехбуквенных слов выскочило «осел». В следующей полсотне — слова «мчим» и «нато». Но, увы, очень много неблагозвучных комбинаций, таких, как «блтт» или «нрро».
Поэтому — следующий шаг. Я разбил все слова на двухбуквенные сочетания и начал случайным образом (но с учетом частоты повторения) комбинировать их. Стали в больших количествах получатся слова, похожие на «нормальные». Например: «коивдиот», «воабма», «апый», «депоид», «дебяко», «орфа», «поеснавы», «озза», «ченя», «риторя», «урдеед», «утоичи», «стых», «сапоть», «гравда», «абабап», «обарто», «еелует», «лярезы», «мыни», «бромомер» и даже «тодебыст».
Куда применить... есть варианты. Например, написать генератор красивых фирменных игривых имен. Для йогуртов. Типа, «мемолисо» или «уторорерто». Или — генератор футуристических стихов «Бурлюк-php»: «опелдиий миатон, линоаз окмиая... деесопен одесон».
И есть еще один вариант. Надо попробовать...
Некоторые статистические данные об использовании русских слов:
После заметки мне пришло вот такое письмо:
Здравствуйте, Дмитрий !Проанализировав статью «Язык до Киева доведет» и ту ее часть, где Вы описываете свою программу, возникла идея.
Вами написанный скрипт кажется мне предназначенным абсолютно не для «Поля чудес» в большей мере, а для другого.
Первое самое разумное применение результатов работы Вашего скрипта — определение порядка букв при программировании кнопок для мобильных устройств. Да, да — именно в мобильниках и нужно все это.Я распределил это по волнам (см. рисунок)
Далее распределение по кнопкам:
1. Все буквы из первой волны уходят на 4 кнопки в первый ряд
2. Все буквы из второй волны тоже на остальные 4 кнопки в тот же первый ряд
3. Все буквы из третьей волны туда же на оставшиеся две кнопки
4. 4,5 и 6 волны уходят во второй ряд
5. 7,8,9 волны уходят на третий ряд, причем 9-я волна уходит вся полностью (не смотря на кажущееся большое количество букв) в третий ряд 9-й кнопки, что-бы 10 кнопку оставить под всякие там знаки препинания (точка, запятая и прочее).Я думаю все понятно и так, без детальных обьяснений. Но все же не могли бы Вы обработать Вашим скриптом (включая знаки припинания) тексты следующего содержания:
1. Л. Н. Толстой. «Анна Каренина» (лучше конечно «Войну и мир», но я не нашел на www.lib.ru) -http://www.lib.ru/LITRA/TOLSTOJ/anna_kar.txt
2. Ф. М. Достоевский. «Игрок» — www.lib.ru/LITRA/DOSTOEWSKIJ/igrok.txt
3. Леонид Филатов. «Про Федота Стрельца» — www.lib.ru/ANEKDOTY/fedot.txt
4. Вильям Шекспир. Сонеты (перевод С. Я. Маршака) www.lib.ru/SHAKESPEARE/sonets.txt
5. Б. И А.Стругацкие. Пикник на обочине. www.lib.ru/STRUGACKIE/picnic.txtА потом выложить статистику? Мне показалось? что тексты максимально отражают нашу современную речь, а ведь мы как говорим, так и пишем sms.
Заранее большое спасибо.
Итак, анализировать частоту повторения букв можно двумя способами. Способ 1. Взять текст, найти в нем уникальные (не повторяющиеся) словоформы и анализировать их. Способ хорош для построения статистики по словам русского языка, а не по текстам. Способ 2. Не искать в тексте уникальные слова, а сразу перейти к подсчету частоты повторения букв. Получаем частоту букв в русском тексте, а не в русских словах. Для создания клавиатур и прочего нужно использовать именно этот способ: на клавиатуре набираются именно тексты.
Клавиатуры должны учитывать не только частоту букв, но и самые упортебимые слова (словоформы). Не так уж и трудно догадаться, какие именно слова самые употребимые: это, во-первых, служебные части речи, ибо роль у них такая — служить всегда и везде, и местоимения, роль у которых не менее важная: заменять в речи любую вещь/человека (это, он, она). Ну и основные глаголы (быть, сказать). По результатам анализа перечисленных выше текстов я получил такие самые «популярные» слова: «и, не, в, что, он, я, на, с, она, как, но, его, это, к, а, все, ее, было, так, же, то, сказал, за, ты, о, у, ему, мне, только, по, меня, бы, да, вы, от, был, когда, из, для, еще, теперь, они, сказала, уже, него, нет, была, ей, быть, ну, ни, если, очень, ничего, вот, себя, чтобы, себе, этого, может, того, до, мы, их, ли, были, есть, чем, или, ней» и так далее.
Возвращаясь к клавиатурам — очевидно, что в клавиатуре буквосочетания «не», «что», «он», «на» идругие должны находится как можно ближе друг к другу, или если не вплотную, то каким-то наиболее оптимальным образом. Нужно провести исследования, каким именно образом пальцы движутся по клавиатуре, найти самые «удобные» позиции и поместить в них самые употребляемые буквы, не забывая, однако, про буквосочетания.
Проблема, как всегда, одна: даже если и получиться создать Уникальную Клавиатуру, куда деть миллионы людей, которые уже привыкли к qwerty/йцукен?
Насчет же мобильных устройств... Наверное, it makes sense. По крайней мере, буквы «о», «а», «е» и «и» должны точно находиться на одной клавише. Знаки препинания в порядке частоты употребления : , . - ? ! " ; : ) (
Запятая употребляется в 2 раза чаще, чем точка. А точка на стандартной русской клавиатуре расположена удобней...
Статистика по приведенным выше текстам:
По уникальным словам: о — 9.36%
|
По текстам в целом: о — 11.35% |
Joseph Heller, Catch-22, 1961.
«Существуют системы публикаций (системы управления контентом, СУКи), в которых пользователю не обязательно знать язык разметки html».
Вовремя остановился.