Saturday, January 28, 2012

Автоматическое распределение регистров


Когда пишешь на ассемблере, всегда возникают проблемы с использованием регистров. Регистров всего восемь, а переменных, которые надо в них разместить, значительно больше. Сравни - регистров 8, а инструкции трех-местные. У меня распределение регистров всегда было постоянным источником ошибок и путаницы. Да и код может оказаться неоптимальным. Решил проблему, написав скрипт (ruby), который, найдя выделенные фрагменты кода с абстрактными регистрами, анализирует текст и заменяет переменные на физические регистры. Например, имея текст, в котором используются 22 абстрактных регистра (пишешь, не заботясь, какой физический регистр использовать)
получаешь фрагмент с назначенными реальными регистрами. Все 22 переменные разместились в шести регистрах.
Чтобы уменьшить зависимости, добавил в скрипт опцию “перемешивания” регистров, которая означает простую рекомендацию - не вынимать из стека свободных регистров последний возвращенный в стек регистр. Однако ускорение оказалось не большим: видно, механизм “переименовывания регистров” неплохо работает.
В качестве алгоритма “распределения регистров” (register allocation) использовал простой анализ живучести переменных (liveness analysis), описанный во многих книжках по компиляторам. А.Аппель представил его в своей книге “Modern Compiler Implementation in C” так (никогда не называй сделанное "современным")
def и use являются массивами множеств с переменными, которые определяются в строке n (им присваивается значение) или используются, соответственно. Код алгоритма 10.4 буквально может быть таким
begin txt.each_with_index { |line, n| livein_[n] = Set.new(livein[n]) liveout_[n] = Set.new(liveout[n]) livein[n] = Set.new(ause[n]) tmp = Set.new(liveout[n]-adef[n]) livein[n].merge(tmp) unless tmp.empty? liveout[n] = Set.new asucc[n].each { |s| liveout[n].merge(livein[s]) unless livein[s].empty? } } end until livein==livein_ and liveout==liveout_
Интервалы живучести переменных и присвоение имен физических регистров (номеров) можно представить таким образом.
Слева - исходный код (усеченный текст) с абстрактными регистрами, в середине - интервалы жизни этих регистров по телу функции, справа - присвоенные физические регистры, точнее их номера. Горизонтальный заголовок из цифр по модулю 10 - это номера абстрактных переменных. В имени абстрактной переменной для 128-разрядных регистров используется префикс "x", для 256-разрядных - префикс "y".

Thursday, January 19, 2012

Приснилось


Приснился мне сегодня сон - В.В.Путин опубликовал коды решения на Ruby упражнений, данных в книге “Modern Compiler Implementation in C” А.Аппеля. До утра в полудреме я с бессилием сна пытался найти и понять решение для главы 9. Неужели ВВП это сам написал? Не может быть - простые слова, задушевные фразы о России, приглашение к диалогу, интерес к среднему классу и что (кто) там, за чертой бедности, открытие социальных лифтов и 25 млн рабочих мест (больше чем в 10 раз число подписей, необходимое кандидату в президенты). Фоносемантическая оценка текста: сильный, величественный, холодный, злой.
Следующая глава номер 10 - “Liveness Analysis”, между застоем и революцией.

Tuesday, January 10, 2012

Курс Обучающихся Машин


Закончил курс Machine Learning. Курс содержит видео лекции, контрольные вопросы, упражнения с программированием. Интенсивность - тема в неделю, несколько (около 10ти) видео по 8-15 минут на тему. Продолжительность - около 2-х месяцев с восемью уроками программирования. Рассмотрены следующие темы: линейная регрессия с одной и многими переменными, логистическая регрессия, нейронный сети, алгоритм обучения, Support Vector Machines (SVM), кластеринг, компонентный анализ, детектирование аномалий, рекомендующие системы. Из заявленных тем не было дерева решений и наивного Байесовского классификатора.Читает профессор, директор лаборатории Stanford Artificial Intelligence Lab Andrew Ng, отмеченный в 2008 как один из 35-ти выдающихся инноваторов  в возрасте до 35.  Программирование - на Octave, бесплатный аналог Matlab с умеренной с ним совместимостью. Курс оказался интересным с живыми примерами и программированием. Расскажу про несколько уроков, точнее про два.
1. Распознавание рукописных цифр. Материал, на котором выполнялось обучение выглядит таким образом.
Аналогичный подход применяется в распознавании текстов. В MS Paint мышкой нарисовал несколько цифр и после обучения на базе 5000 образцов, подобных тем, что на рисунке, оценил цифры нарисованные мною. Так “4” (цифра "преувеличена" :)
с помощью следующего кода с оттренированными параметрами all_theta
d4 = imread('4.bmp');
d4d = im2double(imcomplement(d4));
pred = predictOneVsAll(all_theta,reshape(d4d,1,400))
определилась (предсказана моделью - pred) как “4”
Три строки кода выполняют: чтение изображения 20х20 точек, инверсия яркости, превращение в матрицу double значений, использование параметров модели для определения цифры. Входными данными являются точки изображения, развернутые в строку (400 значений яркости). Ясно, что для того, чтобы распознавание заработало в настоящем, полезном приложении, надо потратить значительно больше усилий: найти строку символов в изображении, выделить каждый символ, привести его к размеру обучения, распознать, получить слова, проверить орфографию и семантику.
2. Другой интересный пример: используется база оценок (1..5) фильмов (1682) зрителями (943), взятая здесь, это матрица Y размером 1682x943 со значениями рейтинга от 1 до 5, где 5 - лучшая оценка, а 0 означает, что фильм i зрителем j не оценен, то есть, нет рейтинга. Картинку оценок можно представить так
Слегка “размыл” изображение, иначе яркие точки (высокий рейтинг) были едва видны. Видно, что данные упорядочены, и по фильмам и по зрителям. К исходному массиву “подсоединяется” мой рейтинг нескольких фильмов Y=[my_ratings Y]. Вот этот список.
Затем начинается тренировка/”подгонка” параметров, которыми являются веса для (фильм/зритель) и свойства (романтический, боевик, …), с помощью Octave функции fmincg, “подгоняющей” дифференцируемую много-параметрическую модель с помощью функций стоимости и частных производных.
theta=fmincg(@(t)(cofiCostFunc(t,Ynorm,R,
num_users,num_movies,num_features,lambda)),
initial_parameters,options);
В результате получаем параметры theta, по которым вычисляются модельные рейтинги фильмов от всех зрителей, включая “подсоединенного” зрителя с малым числом просмотренных фильмов - меня. 10 фильмов с максимальным модельным рейтингом  являются рекомендацией для просмотра.
Не уверен, что посмотрю. В качестве побочного результата, определил похожесть своих предпочтений с другими зрителями. Получилось, что не очень похож. Нашлось только четверо, кто оценил 5 фильмов из 14-ти так же, как я.
Думаю, какой следующий курс пройти (“взять”): NLP или Алгоритмы.
Есть и российский сайт, посвященный машинному обучению. Он содержит большое количество материала на русском. В списке прикладных программ анализа данных на сайте есть Matlab и нет Octave, видимо, по недоразумению.

Friday, December 30, 2011

Прохоров учится летать


Прочитал предвыборные тезисы Прохорова. Может быть, к следующей кампании он лучше представит все то, что умеет, понимает и собирается совершить. А в этот раз получилось бездарно. Начиная от приукрашенного сравнения “белого воротничка” с фантомасом и кончая его кандидатской геополитической простотой. Сравнительные образы против Путина - фотографии и тексты, даны на каждом слайде презентации (Прохоров - справа) кроме первого, на котором с помощью множества повторений, как заклинаний, звучит абсурдный Прохоровский возглас: “власть для человека”. По определению власти это невозможно. Природа власти - подчинять и заставлять.
Другие выдающиеся призывы:
  • опираться в политике на “русскую гуманистическую традицию”. Ну да, и на хлебосольство, тогда нашу границу немедленно перейдут.
  • "инвестиции в культуру - фундамент модернизации и экономического развития". Может и согласился бы, если речь шла о культуре возделывания земли.
  • "основной приоритет государства - защита частной собственности". А кто будет государство защищать?
  • “Сколково в Калининград”, вообще выглядит как новогодний тост, и не первый.
  • на оборону столько, сколько на здравоохранение. Также мало?
  • "50% закупок у отечественных производителей". Ха, Прохоров в Уралобуви засунутый в Запорожец.
  • "выборность участковых инспекторов". Глубока демократия. Добавить прозрачность выборов подруг.
Итог: если что-то и “почитать на праздники”, так это “О первоначальном договоре” Юма, а не программку Прохорова.

Thursday, December 22, 2011

Не стало

Мама была трудолюбива, несгибаемой воли, упряма, беспощадна и пряма, с грубоватым юмором. Боролась за жизнь до последнего вздоха. Есть и останется во мне.

Friday, December 02, 2011

Песочный ноутбук


Купил HP ноутбук с i5. На третий день вдруг обнаружил в отладчике опцию показывать ymm регистры. “Да ну, не может быть. Наверное, MS в студии свою готовность демонстрирует” - подумал я. Показалось, что слишком мало времени прошло. Но первый же результат google-поиска i5 2410M подтвердил - Sandy Bridge. Надо проверять. Следующий код
  int cpu[4];
  __cpuid(cpu,1);
  printf("CPU: %sSSE2,%sSSE3,%sSSSE3,%sSSE4,%sSSE42,"
     "%sSSE4a,%sAVX,%sAVXFMA\n",
     cpu[3]&0x04000000?"+":"-",
     cpu[2]&0x00000001?"+":"-",
     cpu[2]&0x00000200?"+":"-",
     cpu[2]&0x00080000?"+":"-",
     cpu[2]&0x00100000?"+":"-",
     cpu[2]&0x00000040?"+":"-", /// :)
     (cpu[2]&0x18000000)==0x18000000?"+":"-",
     (cpu[2]&0x18001000)==0x18001000?"+":"-");
подтвердил, имею AVX
CPU: +SSE2,+SSE3,+SSSE3,+SSE4,+SSE42,-SSE4a,+AVX,-AVXFMA
Супер! 
В действительности этой проверки недостаточно, надо проверять xgetbv, чтобы узнать, поддерживает ли OS AVX, смотри Intel документ 319433-011. Проверил доступность AVX в Ubuntu (которую установил на ноутбуке, как вторую OS) простым “cat /proc/cpuinfo”, - доступны.
Пишем что-нибудь проверить производительность, например axpy Y=Y+a*X. Для начала в 32 битном режиме. Сравниваем производительность AVX кода
@@by8:
  vmulps ymm0, ymm1, REAL4 PTR [esi+ecx*4-32]
  vaddps ymm2, ymm0, REAL4 PTR [eax+ecx*4-32]
  vmovaps REAL4 PTR [eax+ecx*4-32], ymm2
  sub ecx, 8
  jg @@by8
с кодом SSE2, который почти такой же, но двух-местный. Константу размножаем вместо pshufd новой инструкцией vbroadcastss и данные выравниваем не на 16, а на 32 байта. Ускорение есть, хоть и скромное. 
Правильность результата тоже проверена. 
Будем использовать, там, где ускорения можно ждать. Хорош ноутбук!

Tuesday, November 29, 2011

Конец раздвоению


Преодолел свое раздвоение личности. Для меня является фактом: 1. лучшая среда разработки в windows - MS студия; 2. лучший редактор - vim. Вот и мучайся, прыгая от одного к другому, переходя от одной комбинации клавиш (короткий список, длинные последовательности) к другой (длинный список, и все равно неполный). 
Сначала просто переключал приложения. Затем в студии нашел “Open with” (правая клавиша мышки, указывающей на файл) и начал переключаться легко прямо в студии. Для этого добавил “Vim” в “Tools/External tools...”, а в поле аргументов, согласно vim.wikia, вписал “--servername VimualStudio --remote-silent +"call cursor($(CurLine),$(CurCol))" $(ItemFileName)$(ItemExt)”.
Три для назад ситуация изменилась кардинально. Установил ViEmu - эмулятор Vim в редакторе студии и получил почти всю мощь Vim. Не все 100% (на все сто не смогу использовать ни при каких условиях), конечно, но сожаления нет, и улучшение очень значительное. Хотя, кое-что остается за MS, например, Ctrl-Bs для удаления слова назад, вместо Vim-ского Ctrl-W в Insert режиме. Конечно, плагинов нет, и не работают встроенные функции, например, sort. Но, повторюсь, основное работает, и не надо отрывать рук от клавиатуры и тянуться за мышкой и за мелкими клавишами стрелок. Банально - одинаковый инструмент в Windows, Linux и MacOSx. Писать в доке гугла - такая тягомотина с мышкой, что плечо заболевает прямо сейчас.
"Раздвоение не следует путать с шизофренией" - пишет Википедия
В Vim по-прежнему переключаюсь на asm файлах, так как в студии на них нет расцветки синтаксиса.
Через 3 дня обнаружил, что базовая операция в ViEmu не работает, как должна. Имею в виду типа ":%s/a/b/gc" - подтверждения на замену нет, все глобально меняется за один раз. Пишу в ViEmu "поддержку", получаю в ответ: "Boris, apologies, confirmation is not implemented (yet). It will be implemented in a future version. So it is just ignored... sorry about that.". Это сколько же нужно версий выпустить, чтобы эмулятор получился. Текущий "симулятор" имеет версию "ViEmu 2.5.14 for VS 2000". Беда с этими SW девелоперами.

Sunday, November 13, 2011

"Это злободневно, как свежая газета"


заметил А.Пушкин, прочитав тома X и XI “Истории государства Российского” Карамзина.
Посмотрел фильм “Борис Годунов” В.Мирзоева и вам советую, если вы неравнодушно читали трагедию Пушкина. Небоскребы Москвы, бронетранспортеры, иглотерапия, тренажерный зал, ноутбуки, кухня с “народом”, глядящим в телевизор  - как попытка перенести действие трагедии в нашу сегодняшнюю жизнь - озлободневить. А действия такие: борьба за трон, ловко организованное избрание, умерщвление, обман, закрытие границ, поиск поддержки за рубежом, придворный расчет, “пятно” на совести, страх без раскаяния. Рациональный (прагматичный) Борис Годунов побежден иррациональным самозванцем, “фантомом”, осуществившим фантастический “замысел отважный”. “... и вор, А молодец” - говорит про того народ. Трагедия в фильме заканчивается словами из рукописи "Да здравствует царь Димитрий Иванович!" вместо ремарки "Народ безмолвствует", которая появилась в печатном издании трагедии. Странно, что белорусы назвали свои митинги протестами “молчания”, а не “безмолвия”. 
Главным артистом, на мой взгляд, оказался Л.Парфенов, превосходно сыгравший роль внимающего пресс-секретаря.
Интересно замечание Пушкина, видимо, обдумывающего тему сочинения "О царе Борисе и о Гришке Отрепьеве": “Чем более читаю Тацита, тем более мирюсь с Тиберием”.

Sunday, November 06, 2011

"Капу проглотил"


Посмотрел бои 4-го (бокс) и 5-го (смешанные стили) ноября. В том числе главные - Лебедева, специалиста по пенсионерам, и Хасикова, сломавшего рекордсмену Гиннеса челюсть. Зрелища потрясные. Мы таких раньше раз в году не видели, а тут каждый день (2 дня) - рэп, вспышки света и тьмы, столики с бутылками, девки, прикрытые только номером раунда, вальяжные негры в шубах, слушающие гимн Советского Союза, и, наконец, безумный диагноз комментаторов - “да он капу проглотил”.
Бахтин с развернутой кистью

Самый классный и перспективный парень (боксер), на мой взгляд, - Исмаил Силлах - техничный, легкий, всепроникающий, тонко чувствующий, с поразительной реакцией.
Бахтин бьет странно, по-моему, шлепки незакрепленной кисти. Не понятно, почему колумбиец его не послал, а 8 раундов из 10-ти притворялся побитым. Лебедев молодец, конечно, но пора ему кого-нибудь помоложе встретить. Похоже, недовольство многих немилосердным добиванием Джонса сказалось, и Лебедев не спешил обрушиться на Тони, так и не добил. Бату Хасиков - удивительный боец, у которого все главное готовится и делается до боя. Необычайная концентрация, решимость, даже не победить, а выполнить то, к чему готов. Хорошо бы весь бой посмотреть, но для этого нужен равный.

Friday, November 04, 2011

Температура цветения


Слишком долго глядел!
К вишневым цветам незаметно
Я прилепился душой.
Облетели... осталась одна
Печаль неизбежной разлуки
Сайгё
Обнаружил интересный подход в получении информации, можно сказать поэтический. Известно, что вишня в Японии цветет в конце марта - апреле - в начале мая, когда температура становится +7 и выше. Дни цветения вишни для японцев являются днями особенными (в США тоже отмечают. Похоже, благодаря японцам). Время Cherry blossom festival японцы и гости Японии проводят в парках, наслаждаясь тихой красотой цветущей природы (ханами - любование цветами). Этому празднику тысячи лет. Столько же лет поэтические натуры с чашкой сакэ воспевают цветение. Многие оставили свои впечатления в дневниках вместе с датами, например,
Tokistune Hiramatsu on April 14, 1644: “In Seiryoden Palace, Kyoto, we enjoyed watching cherry blossoms and took sake provided by the emperor.”
Даты цветения, оставленные аккуратными предками, стали исходными данными для косвенного определения температуры в марте на тысячу лет в прошлое. В статье "Climate Change and Cherry Tree Blossom Festivals in Japan" Richard Primack и Hiroyoshi Higuchi приводят результаты трансляции даты цветения вишни в среднюю температуру в марте в Киото. На графиках: верхний - день (в году) полного цветения, нижний - средняя температура в марте, от года 1000 до 2000-го.


В целом, корреляция явно не видна, за исключением последних 200 лет, для которых видно, что температура возрастает и вишня цветет раньше. 
Не понятно, как вычислялась температура. Не имея числовых данных для графиков, написал автору (Primack) с просьбой выслать 2 таблички, но не получил их, хотя ответил на его вопросы: “кто” и “для чего”. Пришлось оцифровать оба графика в матлабе - на каждой различимой точке жмешь кнопку, получаешь координаты и сохраняешь их, затем шкалируешь на данный диапазон по x и y.
Оцифровали, вычисляем корреляцию, но сначала надо выравнять точки по годам. Для этого создаем последовательность дат (годы, “круглые” значения в отличие от отсканированных) и отображаем на нее (аппроксимируем) точки с днем цветения и точки температуры в марте.
% read scanned data
% the blossom dates in DOY in Kyoto
gd = csvread('graphDay.csv');
% derived T Co in March in Kyoto
gt = csvread('graphTemper.csv');
% a sequence of years to interpolate to
xapr = 1000:5:1990;
gdxapr = interp1(gd(:,1),gd(:,2),xapr');
gtxapr = interp1(gt(:,1),gt(:,2),xapr');
% is there any correlation?
corrcoef(gdxapr,gtxapr)
Получаем коэффициент корреляции (-0.3939), слабая корреляция есть. Минус отражает тот факт, что чем выше температура в марте, тем раньше день цветения в году.
Как же ученые получили нижний график ("Using a complicated equation")? Что за функция, которая транслирует день цветения в среднюю температуру месяца? Можно найти аппроксимирующий полином, но: физической зависимости он не объяснит, и не подтвердит, что отображение правильное. Лучше взять официальные данные о температуре в марте в Киото (имеем, начиная с 1881 года) как калибровочные, и аппроксимировать зависимость между правдивыми данными, то есть, метеоданными и данными о дне цветения из дневников. Затем использовать полученный полином для аппроксимации температурных значений на все тысячелетие.
% read meteo data and interpolate
gt1881 = csvread('kyototemper1881_2000.csv');
gdxapr1881 = interp1q(gd(:,1),gd(:,2),gt1881(:,1));
X = gdxapr1881(1:end-3);
% input data matrix
X = [ones(length(X),1) X X.^2];
% compute polynomial koefficients
theta = inv(X'*X)*X'*gt1881(1:end-3,2);
X = gd(:,2);
X = [ones(length(X),1) X X.^2];
% compute approxomated temperature values
y = X*theta;
Картинки не сильно отличаются. Возможно, авторы применили тот же прием, но с более осмысленной зависимостью по сравнению с параболой. Осталось не ясным.
Теперь проверим опасения глобального потепления. Главный исследователь темы доктор Аоно утверждает, что наблюдаемое им увеличение средней температуры в Киото за последние 170 лет (+3.4С) определяется глобальным потеплением (+0.6С) и урбанизацией региона (+2.8С). 
Проверяем. Действительно, средняя температура за последние 100 лет в Киото значительно возросла.
% plot meteo data and trend
plot(gt1881(:,1),gt1881(:,2),'-b.');
X = gt1881(:,1); X = [ones(length(X),1) X];
% koefficients of the trend line
theta = inv(X'*X)*X'*gt1881(:,2)
hold on;
plot(gt1881(:,1),X*theta,':r');
Интерес к поэзии вечен. Ставьте даты под своими стихами.



Tuesday, November 01, 2011

Единомышленник


Читаю в статье “Чем больше в стране нефти, тем меньше в ней демократии” в rbcdaily:
“В своем труде американский исследователь констатирует, что если в какой-то развивающейся стране открывают более или менее крупное месторождение нефти, то через 30 лет ситуация с политическими свободами становится там хуже, чем если бы залежей нефти не существовало. Конкретно же, согласно расчетам г-на Тсуи, это выглядит так: находка месторождений нефти стоимостью в 280 млрд долл. приводит к тому, что через 30 лет данное государство в общепринятых рэнкингах уровня демократии теряет 10%.”

Очень похоже на выводы, полученные мной в начале года и описанные в статье “Нефть”. “Похоже” - если согласиться, что низкий уровень коррупции является важным составным показателем демократии.
"И произошло удивительное, стоило перевести Россию из страны, добывающей и экспортирующей нефть, в категорию Petroleum=No, как коррупция в модели снизилась."

Thursday, October 27, 2011

Элитная школа без компьютера


Можно ли обучить детей дробям делением пирожного? Читаем статью в NYTimes. Сотрудники hi-tech компаний Apple, Google, HP, eBay отдают детей в школы, в которых запрещены компьютеры. Зато в классных комнатах, как в старые добрые времена, висят черные доски с фломастерами и мелками, стоят шкафы с энциклопедиями и деревянные полки с тетрадями. Задача таких классов сделать обучение осязаемым, тактильным и избежать неприятия материала. Например, один из учителей объясняет дроби разрезанием яблока и пирожного на части, чтобы всем досталось - живо, в общении, наглядно и вкусно.
В 160 Waldorf школах в стране (40 в Калифорнии) преподавание фокусируется на физический, живой активности, а обучение происходит на творческих и жизненных (практических) задачках. Сторонники такого подхода считают, что компьютеры препятствуют творческому мышлению, подвижности и общению детей. Пол Томас, бывший учитель, профессор, написавший 12 книг, говорит: “Обучение - это человеческий опыт. Компьютеры отвлекают внимание, в то время как нужны критическое мышление, грамотность, способность к количественным заключениям”.
Обучение и опыт приобретаются в общении детей с окружающим миром, любящими родителями и сверстниками. Не только компьютеры, будь они сколь угодно простыми и дружественными в обращении (отличаем от общения), препятствуют этому общению, но и ТВ. Из нескольких исследований стали известны даже количественные характеристики потерь в развитии ребенка. Например, в статье Journal of Pediatrics, Aug 2007, даны отрицательные результаты изучения эффекта от просмотров образовательного видео (подобного Baby Einstein) - 8-16 месячные дети распознают на 6-8 слов меньше (на час просмотра) по сравнению с детьми, которым видео не показывают. Родители часто надеются, что видео или ТВ развивает ребенка (или безвредно занимает его). В действительности,как показывают исследования, у таких телезрителей замедляется развитие языка. Выключи телевизор!

Tuesday, October 18, 2011

Занимательная экономика


Прочитал “Freakonomics Intl: A Rogue Economist Explores the Hidden Side of Everything” авторов Steven Levitt и Stephen Dubner, 2011, версия Kindle for PC. Заголовок поста - не перевод названия книги. 
Написали книгу экономист и журналист, используя, в основном, материалы об Америке. Бестселлером книга стала благодаря множеству примеров и неожиданным выводам. Самый значительный из них - легализация абортов в 1973 году значительно сократила число преступлений в США в 1990-е. Нежеланное дитя, повзрослев, часто становится преступником.
Каждая глава озаглавлена вопросом и содержит ответ(ы) на него. Например, “Что общего у школьных учителей и борцов Сумо?” или “Что делает родителей совершенными?”. Главы соединены размышлениями о том, как мы, люди, ведем себя в реальном мире и что нами движет. Часто из трех главных стимулов активности: экономический, социальный и моральный, в человеке срабатывает не экономический, а социальный. Показано на примере выборов.
Особенно авторов интересуют случаи, в которых результаты предпринимаемых “исправительных” действий противоречат ожидаемым. Например, в детском саду Хайфы (Израиль) решили штрафовать опаздывающих родителей (10+ мин) на $3 за каждое опоздание (при плате $380 в месяц). В результате, число опозданий не сократилось, а увеличилось вдвое. Далее расскажу о том, что показалось интересным и не оказалось длинным.
Учитель вам поможет
По результатам тестов в школах, авторы смогли определить, в каких случаях ученики получали подсказки от учителей, или учителя напрямую исправляли ответы. Делается это потому, что учителям выгодно иметь высокий средний бал. Так, в Калифорнии учитель мог получить бонус $25000 (до тех пор, пока не обнаружили, что это слишком дорого - оплачивать жуликоватых учителей). Анализ данных в Чикаго показал, что больше, чем 200 классов в год улучшали свои показатели с помощью обмана. Жульничество - это то общее, что есть между учителями и борцами. Первая глава книги так и называется - “What do schoolteachers and sumo wrestlers have in common?”. Борцы Сумо тоже жульничают, и в книге написано - как.
Агент обманывает вас
Следующая глава раскрывает, чем агенты по недвижимости похожи на ку-клукс-клан, цели которых были сформулированы и обнародованы в 1872 году: “С помощью насилия и террора добиться…”. Тут же приводятся цифры, сколько черных в США были преданы суду Линча "Lynchings of blacks", по десятилетиям
1890-99 1111
1900-09 791
1910-19 569
1920-29 281
1930-39 119
1940-49 31
1950-59 6
1960-69 3
Понадобилось почти 100 лет, чтобы отучить сечь. Рассказана история, как удалось справиться с кланом - вместе с карающими мерами, собрали (книга Статсона Кеннеди “Я был в ККК”, книга же В.Зорина "Неизвестное об известном" 2000 припозднилась) все секретные материалы и открыли их общественности. Утверждается, что скрытность (свойственная и ККК) способствовала процветанию страховых агентов. Обирание клиентов ослабло с появлением Интернета, с появлением возможности узнать больше об альтернативных предложениях. Вообще, вооруженные информацией коммерческие эксперты способны наводить на население страх, и пользоваться им, почище ККК. Дословно из книги: “Fear that your children will find you dead on the bathroom floor of a heart attack if you do not have angioplasty surgery. Fear that a cheap casket will expose your grandmother to a terrible underground fate. Fear that a $25000 car will crumple like a toy in an accident, whereas a $50000 call will wrap you loved ones in a cocoon of impregnable steel.” Авторы приводят 10 эпитетов, используемых агентами по недвижимости, продающими вам жилье. 5 из них: Fantastic, Spacious, !, Charming, Great Neighborgood, говорят за то, что агент пытается продать дороже настоящей цены.
Мы тоже врем
Другим местом легкого обмана являются службы знакомств (в Интернете). Выяснилось, что 72 процента женщин утверждает, что они выглядят “лучше среднего”, включая 24%, утверждающих, что выглядят “очень хорошо”. Мужчины врут чуть меньше. Получается, что только 30% выглядят средне, что средним, конечно, быть не может.
Наркотик
Заголовок следующий главы обманул меня, вот он: “Почему наркодилеры до сих пор живут со своими матерями?”. До прочтения главы понял его как иносказание “Почему они, торгуя наркотиками, так долго живут?”. Однако речь в главе пошла о низких доходах и трудной работе “полевых“ продавцов и их “командиров”, не позволяющих им жить в отдельных квартирах и домах. Бюджет расписан до доллара. $3.30 в час и 1-к-4 что будешь убит (шанс лесоруба погибнуть 1-к-200), - самая опасная работа в США. Интересно, что много информации о жизни “foot soldiers” было буквально добыто в “черных кварталах” студентом-социологом Чикагского университета Sudhir Venkatesh, закончившим перед этим Калифорнийский университет. Поначалу, он явился к неграм с анкетой, первый вопрос которой был “Как вы себя чувствуете будучи черным и бедным?”. Далее в анкете приводились возможные ответы, главный из которых, как скоро выяснилось, не был предусмотрен - “Fuck you”.
В разговоре о других профессиях, сравнивая и объясняя тот факт, что заработок архитектора меньше, чем у проститутки, авторы шутят: “что касается спроса, то позвольте нам сказать, что более вероятно то, что архитектор наймет проститутку, чем наоборот”.
Нежеланный ребенок
Далее - глава о преступности. Начинается с факта, что Чеушеску “dictator of Romania” запретил в 1966 году аборты. Рождаемость выросла вдвое! Становится понятно, куда авторы нас ведут в рассуждениях о спаде преступности в США 90-х. С тех пор в печати, в том числе и научной, рассмотрено множество возможных факторов спада: полицейские инновации, роль тюрем, старение населения, контроль над “вооружением” населения, сильная экономика. Все эти факторы работали, но не явились решающими. Например, уменьшение безработицы (фактор сильной экономики) на 1% снизило число ненасильственных преступлений на 1%; одна казнь соответствует (translates into) меньшему на 7 числу убийств (не знаю, вошла ли сама казнь в число убийств). Наконец, делается вывод, что причиной падения преступности в 90-х стала легализация абортов - “The crime drop was, in the language of economists, an ‘unintended benefit’ of legalized abortion.”
Спасти сову
Приводятся выводы каких-то экономистов (авторы рассматривают их результаты как “curious habbit”) по разным поводам. Например, чтобы сохранить 5000 пятнистых сов нужно лишить бизнеса деревообрабатывающие компании в округе на $46B, то есть по $9M на сову. Или, жители готовы заплатить $31, чтобы избежать разлива нефти, подобного в 1989 году. Или, вот какие компенсации за повреждения на работе предусмотрены в штате Коннектикут:  потеря первого (указательного) пальца - $36, четвертого - $17, руки - $168, носа - $35, пениса - от $35 до $104 (не знаю, почему дан диапазон). Сами авторы, тоже на грани курьеза, верят что данные детям имена имеют значение в их дальнейшей успешности. Исследуя эту тему, они дают набор наиболее “белых” (“whitest”: Molly, Amy, Claire, Emily, Katie ...) и наиболее “черных” (“blackest”: Imani, Ebony, Shanice, Aaliyah …) имен для девочек. А также приводят наиболее "успешные" имена с оговоркой, что в карьеру “правильно” названных детей вмешивается случай. Все равно, заслуживают поощрения родители, использующие любой шанс сделать жизнь ребенка успешной. Тут я бы вспомнил название вулкана, остановившего авиа-сообщение в Европе, который не могу выговорить.
Голосуй и не проиграешь
В приложении “Why vote?” написано то, что многие, в том числе и я, думают про, так сказать, “личную результативность” голосования. “Эффект от вашего голосования очень, очень мал”. Из 40000 проанализированных выборов с участием почти 1млрд голосующих только 7 были решены одним голосом. Почему же народ голосует, спрашивают они и указывают 3 возможные причины: 1. возможно, что мы не очень сообразительны и верим, что наши голоса влияют на результат; 2. может мы голосуем в том же духе, в котором покупаем лотерейный билет, покупаем право пофантазировать о выигрыше или о влиянии на ход политических событий; 3. возможно, мы голосуем под влиянием общественного мнения, внушающего, что это наш общественный долг. В старые времена голосовать было интереснее. Политические партии платили $5 и $10 за голос. Иногда платой была бутылка виски или, как в 1890 году в Хэмпшире, давали живого поросенка. И все-таки вывод, к которому приходят в конце, таков - голосуют ради общественного уважения, ради восприятия другими как соучастника.
Работа в радость
Включена статья о работе, которую мы делаем не за деньги, наоборот, часто тратя на нее. Народ вяжет, паяет, копает огороды и подстригает траву. 17% взрослых готовит для удовольствия, 41% живущих в своих домах выращивают цветы, 25% - овощи.  Помню свое недоумение, когда во время поездки в США в 90-е побывал в доме знакомого, который с гордостью показывал огурцы, выращенные рядом с аккуратно подстриженным газоном. Зелень и ковровая упругость газона, были гораздо интереснее. Вспомнил я про эту статью ради остроумного замечания авторов “мы не знаем ни единого человека, кто с момента изобретения стиральной машины стирал бы для удовольствия”.
В общем, интересная книжка, у нас таких пока не пишут. А вот, что сами авторы говорят про свою книгу: “Independent testing has shown that people who read Freakonomics have sweeter-smelling breath, better posture, and more interesting dreams. Also, women feel no pain during childbirth; male readers find that their sperm swim faster.”