Читать книгу «Эконометрические оценки. Учебное пособие» онлайн полностью📖 — Валентина Юльевича Арькова — MyBook.
image

Демонстрация Jupyter LAb

Запускаем Jupyter Lab. Создаём новый блокнот. Notebook – это страница с любым количеством строк. Появляется пустое окно. Есть разные варианты ячеек. Нас будет интересовать два вида. В кодовой ячейке Code пишем команды. В текстовой ячейке Markdown пишем текст. В нашем случае это будут просто заголовки. Markdown – это язык разметки текста, который позволяет украшать текст и вставлять формулы в формате LaTeX.

Вставляем символ «решётки» # и вводим название нашего первого упражнения. Напомним, что выражение «Hello, World» вообще-то переводится как «Всем привет». Перевод «Привет, мир» – это слишком дословно.

Нажимаем комбинацию клавиш [Shift+Enter]. Ячейка выполняется. Теперь у нас просто текст. Для редактирования можно дважды щёлкнуть по ячейке и внести исправления.

Обратим внимание, что первая ячейка имеет тип Markdown. Следующая ячейка автоматически получает тип кодовой Code.

Наша простая программа напечатает приветствие. Мы вводим команду print. Обратите внимание, что команда пишется маленькими буквами. Python различает заглавные и строчные буквы (большие и маленькие). Открываем круглую скобочку – автоматически появляется закрывающая скобка. Нажимаем кавычки – появляется закрывающая кавычка. Пишем сообщение. Нажимаем комбинацию клавиш [Ctrl+Enter]. В этом случае выполняется текущая ячейка, а новая ячейка не создаётся.

Система работает в режиме диалога. Можно загружать файлы и обрабатывать данные. Можно строить разнообразные графики.

Демонстрация Google Colab

Посмотрим в действии облачный сервис – очень простой и очень бесплатный. Называется он Google Colab – «ко-лаборатория», то есть совместная работа. Адрес в интернете:

https://colab.research.google.com

Единственное ограничение: нужно зайти со своей учётной записью Google. Для этого нужно зарегистрироваться на сайте Google. Подойдёт и учётная запись почты Gmail.

Интерфейс пользователя очень похож на предыдущий вариант, см. рис.

Рис. Интерфейс Google Colaboratory


Ко-лаборатория – это облачный сервис. Можно сказать, что это облачный блокнот Юпитер. Сам блокнот хранится на облачном диске Google Drive. Сюда можно закачивать файлы или скачивать их оттуда.

В верхней части окна отображается название файла. Расширение *.ipynb говорит о том, что в нём сохраняются не только команды, но и результаты выполнения, в том числе, графики. Такой файл можно посмотреть, не запуская его на выполнение, и увидеть, какие результаты были в прошлый раз. Можно также скачать только саму программу – файл с расширением *.py.

Интерфейс очень похож – тот же самый блокнот Юпитер. Точно также создаём ячейки с текстом или кодом, можем нажимать [Shift+Enter] и [Ctrl+Enter].

Мы запускаем этот самый инструмент под названием Колаб. Создаем новый блокнот и запускаем нашу «игрушечную» программу, которая говорит: «Всем привет!»

Мы можем при желании переименовать блокнот. Двойным щелчком начинаем редактирование названия. В начале работы, при первом запуске первой ячейки происходит соединение с виртуальной машиной, выделяются ресурсы на сайте Google. Для добавления текстовой ячейки нажимаем кнопку [+Text]. Значок «плюс» означает «добавить ячейку в блокнот». Для организации заголовка ставим символ «решетки» #. Одиночный знак решетки означает, что это главный заголовок – первого, верхнего уровня. Для удаления ячейки щёлкаем по ней и справа над ячейкой нажимаем кнопку с иконкой мусорного ведра.

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

Когда мы открываем скобки, автоматически появляются закрывающие. Сразу появляется краткое описание вводимой функции.

Обычно принято считать, что облачный сервис работает медленнее, чем программа на локальном компьютере. Однако, компания Google предоставляет свои дополнительные вычислительные возможности – причем бесплатно – для общего знакомства с продуктом. Есть специальные настройки для использования графических и тензорных аппаратных ускорителей. С другой стороны, если на вашей машине имеется мощная графическая плата с поддержкой технологии CUDA, тогда можно ускорить работу локальной версии Python. Это может быть полезно, если проводить сложные расчеты.

3. Вероятность

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


Рис. Вероятность и бросание монеты


Мы работаем с большим количеством исходных данных, реальных данных. В них всегда есть случайность, а случайность измеряется с помощью ВЕРОЯТНОСТИ.

Разберём классический пример – бросание монетки, см. рис. Мы бросаем монетку. Она может упасть с одной стороной или другой стороной. Это два ИСХОДА (результата) нашего опыта. Другие варианты пока не учитываем (например, монетка закатилась под стол и её не нашли). Стороны монеты обычно называют «орел» и «решка» («решётка»).

Если шансы абсолютно равны, то говорят, что вероятность – одна вторая.

Вероятность – это число от нуля до единицы.

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

Если шансы одинаковы, то единица делится на количество этих вариантов. В нашем случае единичка делится на два варианта. Каждый вариант получает вероятность 0,5. Это традиционное объяснение из теории вероятностей.

Теория объясняет общие законы природы. Там, где есть случайность, можно говорить о вероятности события.

Вероятность обозначается латинской буквой p. Это первая буква английского слова probability. Происходит от латинского слова proba – «пробовать, проверять». Получается, что один раз попробовал что-то сделать – получилось, в другой раз попробовал – не получилось. Когда мы что-то пробуем, появляется случайность, неопределённость, непредсказуемость. И вероятность – это частота события, насколько часто происходит то, что нас интересует.

Русское слово «вероятность» имеет отношению к слову «верить». И это вторая сторона вероятности: насколько мы доверяем какому-то сообщению, утверждению, прогнозу.


Рис. Вероятность: теория и оценка


Теория – это всегда красиво и всегда «точно». Теория вероятности говорит нам: если шансы равны, то вероятность будет ровно 0,5 для орла и ровно 0,5 для решки. Это абсолютно «точное» значение – никаких сомнений. Но с одной оговоркой: если шансы равны, см. рис.

Статистика – это фактические данные. Когда мы переходим к обработке данных, то никогда не видим идеальные числа и идеальные условия. Мы каждый раз видим реальные наборы данных. Например, тысячу раз бросили монетку. Посчитали, сколько раз выпал орёл. Представим, что из десяти тысяч раз почти в половине случаев монетка упала орлом вверх. Делим на общее число бросаний и получаем число, которое будет приближаться вот к теоретическому значению.

Это число называется ОЦЕНКА. Оценки часто обозначают символом «крышечка» или «крышка». Настоящая вероятность и оценка по реальным данным приблизительно соответствуют друг другу, но только ПРИБЛИЗИТЕЛЬНО. Оценку мы можем посчитать: берём реальные данные и считаем. Такие опыты были в истории. В книгах можно найти упоминание о том, как ещё до появления компьютеров математики решили проверить свои теории. Они 10 тысяч раз бросали монетку. Можете представить, какая это работа. Бросать монетку и каждый раз записывать результат на бумаге, а потом вычислить оценку вероятности.


Рис. Эксперименты и оценки


Вот в чём разница между теорией и обработкой данных. Теория говорит нам, как всё должно быть в принципе, при идеальных условиях. На практике мы берём реальные данные и обсчитываем то, что получили. Если у нас были разумные предположение, то результаты будут соответствовать теории.

Когда мы говорим о реальных данных, опыт с монеткой можно провести «физически» – действительно бросать монетку много раз. Есть и другой вариант – использовать программный генератор случайных чисел. В этом случае мы имеем дело с тем, что называется ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ. Это целая технология, но мы с вами затронем эту область только для того, чтобы увидеть, как это происходит. Мы будем моделировать идеальные, красивые данные, на которых можно тренироваться. Потом, на лабораторных работах можно будет взять реальные, настоящие данные. Они уже не такие «красивые». Они могут быть «корявыми», «неправильными», какими угодно. Но они чем-то будут напоминать нашу теорию и наши результаты.

В любом случае, мы можем взять реальные данные или результаты моделирования. То, что мы по ним посчитаем, каждый раз будет называться ОЦЕНКА. Оценка – это очень приблизительное значение, которое может соответствовать настоящему, теоретическому.

Есть разные способы моделирования, генерирования, создания случайных чисел. Пока в качестве инструмента для работы мы обсуждаем табличный редактор – Excel или его аналоги. Первый вариант – генератор случайных чисел в настройке «Анализ данных», см. рис.


Рис. Моделирование с помощью надстройки


Мы просто генерируем столбец чисел и определяем вероятность того, что выпадет орёл. В нашем случае получилось значение 0,522. Мы как бы «бросали монетку» заданное количество раз. Генератор случайных чисел создаёт число от нуля до единицы. Эти числа имеют равномерное распределение, то есть у нас одинаковые шансы (вероятность) появления любого числа от нуля до единицы. Далее мы берём полученное число и используем функцию округления. Как вы знаете, обычно округляют по стандартному правилу. Если число меньше 0,5 – округляем в меньшую сторону и пишем 0. Если число больше 0,5 – округляем в большую сторону и пишем 1. Таким образом, мы половина чисел округляется до нуля, а другая половина чисел округляется до единицы. Если ровно 0,5 – то в большую сторону.

Напомним, что есть как минимум шесть методов округления компьютера. Это обсуждается в курсе «Средства вычислительной техники». Можете жтот материал ещё раз посмотреть. В нашем примере мы используем для округления функцию ROUND / ОКРУГЛ.