Возможности языка Julia для обработки статистических данных

Обложка

Цитировать

Полный текст

Аннотация

Язык программирования Julia является специализированным языком для научных вычислений. Язык сравнительно новый, поэтому большинство библиотек для него находится в активной стадии разработки. В статье авторы рассматривают возможности применения языка в области математической статистики. Особый акцент делается на технической составляющей, в частности подробно описывается процесс установки и настройки программного окружения. Так как пользователи языка Julia зачастую не являются профессиональными программистами, технические моменты в настройке программного окружения могут вызывать у них трудности, препятствующие быстрому освоению базовых возможностей языка. В статье описываются некоторые особенности Julia, которые отличают его от других популярных языков, используемых для научных вычислений. Также даётся обзор двух основных библиотек для математической статистики. Упор опять-таки делается на технической стороне, чтобы дать читателю представление об общих возможностях языка в области математической статистики.

Об авторах

М. Н. Геворкян

Российский университет дружбы народов

Email: gevorkyan-mn@rudn.ru
ORCID iD: 0000-0002-4834-4895

Docent, Candidate of Sciences in Physics and Mathematics, Associate Professor of Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия

А. В. Королькова

Российский университет дружбы народов

Email: korolkova-av@rudn.ru
ORCID iD: 0000-0001-7141-7610

Docent, Candidate of Sciences in Physics and Mathematics, Associate Professor of Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия

Д. С. Кулябов

Российский университет дружбы народов; Объединённый институт ядерных исследований

Автор, ответственный за переписку.
Email: kulyabov-ds@rudn.ru
ORCID iD: 0000-0002-0877-7063

Professor, Doctor of Sciences in Physics and Mathematics, Professor at the Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия; ул. Жолио-Кюри, д. 6, Дубна, Московская область, 141980, Россия

Список литературы

  1. J. Bezanson, A. Edelman, S. Karpinski, and V. B. Shah, “Julia: A fresh approach to numerical computing,” SIAM Review, vol. 59, no. 1, pp. 65-98, Jan. 2017. doi: 10.1137/141000671.
  2. B. Lauwens and A. Downey, Think Julia. O’Reilly Media, Inc., 2019.
  3. T. Kwong, Hands-on design patterns and best practices with Julia. Packt Publishing, 2020.
  4. C. T. Kelley, Solving nonlinear equations with iterative methods, Solvers and Examples in Julia. SIAM, 2022.
  5. J. Bezanson, J. Chen, B. Chung, S. Karpinski, V. B. Shah, J. Vitek, and L. Zoubritzky, “Julia: dynamism and performance reconciled by design,” Proceedings of the ACM on Programming Languages, vol. 2, no. OOPSLA, pp. 1-23, Oct. 2018. doi: 10.1145/3276490.
  6. M. N. Gevorkyan, A. V. Korolkova, D. S. Kulyabov, and K. P. Lovetskiy, “Statistically significant comparative performance testing of Julia and Fortran languages in case of Runge-Kutta methods,” in Numerical methods and applications. NMA 2018, ser. Lecture Notes in Computer Science, G. Nikolov, N. Kolkovska, and K. Georgiev, Eds., vol. 11189, Cham: Springer International Publishing, 2019, ch. 45, pp. 400-407. doi: 10.1007/978-3-030-10692-8_45.
  7. “JuliaStats, Statistics and machine learning made easy in julia.” (2023), [Online]. Available: https://juliastats.org/.
  8. Y. Nazarathy and H. Klok, Statistics with Julia, Fundamentals for Data Science, Machine Learning and Artificial Intelligence. Springer International Publishing, 2021. doi: 10.1007/978-3-030-70901-3.
  9. “Julia forums.” (2023), [Online]. Available: https://discourse.julialang.org.
  10. “StatsBase.jl.” (2023), [Online]. Available: https://github.com/JuliaStats/StatsBase.jl.
  11. “Distributions.jl.” (2023), [Online]. Available: https://github.com/JuliaStats/Distributions.jl.
  12. C. Führer, J. E. Solem, and O. Verdier, Scientific computing with Python, High-performance scientific computing with NumPy, SciPy, and pandas, 2nd. Packt Publishing Ltd., 2021.
  13. D. Toomey, Learning Jupyter. Packt Publishing Ltd., 2016.
  14. “Pluto.jl - interactive Julia programming environment.” (2023), [On-line]. Available: https://plutojl.org/.
  15. “Windows terminal, console and command-line repo.” (2023), [Online]. Available: https://github.com/microsoft/terminal.
  16. “Miniconda.” (2023), [Online]. Available: https://docs.conda.io/en/latest/miniconda.html.
  17. “Pluto.jl GitHub.” (2023), [Online]. Available: https://github.com/fonsp/Pluto.jl.
  18. “Julia GitHub.” (2023), [Online]. Available: https://github.com/JuliaLang/julia.
  19. A. V. Korolkova, M. N. Gevorkyan, and D. S. Kulyabov, “Implementation of hyperbolic complex numbers in Julia language,” vol. 30, no. 4, pp. 318-329, Dec. 2022. doi: 10.22363/2658-4670-2022-30-4-318-329.
  20. R. Muschevici, A. Potanin, E. Tempero, and J. Noble, “Multiple dispatch in practice,” in OOPSLA’08: Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications, ACM Press, Oct. 2008, pp. 563-582. doi: 10.1145/1449764.1449808.
  21. M. Besançon, T. Papamarkou, D. Anthoff, A. Arslan, S. Byrne, D. Lin, and J. Pearson, “Distributions.jl: Definition and modeling of probability distributions in the JuliaStats ecosystem,” Journal of Statistical Software, vol. 98, no. 16, pp. 1-30, 2021. doi: 10.18637/jss.v098.i16.

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

Согласие на обработку персональных данных с помощью сервиса «Яндекс.Метрика»

1. Я (далее – «Пользователь» или «Субъект персональных данных»), осуществляя использование сайта https://journals.rcsi.science/ (далее – «Сайт»), подтверждая свою полную дееспособность даю согласие на обработку персональных данных с использованием средств автоматизации Оператору - федеральному государственному бюджетному учреждению «Российский центр научной информации» (РЦНИ), далее – «Оператор», расположенному по адресу: 119991, г. Москва, Ленинский просп., д.32А, со следующими условиями.

2. Категории обрабатываемых данных: файлы «cookies» (куки-файлы). Файлы «cookie» – это небольшой текстовый файл, который веб-сервер может хранить в браузере Пользователя. Данные файлы веб-сервер загружает на устройство Пользователя при посещении им Сайта. При каждом следующем посещении Пользователем Сайта «cookie» файлы отправляются на Сайт Оператора. Данные файлы позволяют Сайту распознавать устройство Пользователя. Содержимое такого файла может как относиться, так и не относиться к персональным данным, в зависимости от того, содержит ли такой файл персональные данные или содержит обезличенные технические данные.

3. Цель обработки персональных данных: анализ пользовательской активности с помощью сервиса «Яндекс.Метрика».

4. Категории субъектов персональных данных: все Пользователи Сайта, которые дали согласие на обработку файлов «cookie».

5. Способы обработки: сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (доступ, предоставление), блокирование, удаление, уничтожение персональных данных.

6. Срок обработки и хранения: до получения от Субъекта персональных данных требования о прекращении обработки/отзыва согласия.

7. Способ отзыва: заявление об отзыве в письменном виде путём его направления на адрес электронной почты Оператора: info@rcsi.science или путем письменного обращения по юридическому адресу: 119991, г. Москва, Ленинский просп., д.32А

8. Субъект персональных данных вправе запретить своему оборудованию прием этих данных или ограничить прием этих данных. При отказе от получения таких данных или при ограничении приема данных некоторые функции Сайта могут работать некорректно. Субъект персональных данных обязуется сам настроить свое оборудование таким способом, чтобы оно обеспечивало адекватный его желаниям режим работы и уровень защиты данных файлов «cookie», Оператор не предоставляет технологических и правовых консультаций на темы подобного характера.

9. Порядок уничтожения персональных данных при достижении цели их обработки или при наступлении иных законных оснований определяется Оператором в соответствии с законодательством Российской Федерации.

10. Я согласен/согласна квалифицировать в качестве своей простой электронной подписи под настоящим Согласием и под Политикой обработки персональных данных выполнение мною следующего действия на сайте: https://journals.rcsi.science/ нажатие мною на интерфейсе с текстом: «Сайт использует сервис «Яндекс.Метрика» (который использует файлы «cookie») на элемент с текстом «Принять и продолжить».