Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Streamlit для Data Science. Создаем интерактивные приложения в Python

Покупка
Новинка
Артикул: 856467.01.99
Доступ онлайн
1 599 ₽
В корзину
Если вы работаете с данными на Python и хотите создавать высококачественные приложения, демонстрирующие модели машинного обучения и генерирующие красивые интерактивные визуализации, то эта книга для вас. Описана настройка среды разработки и создание базового приложения с нуля, интеграция Streamlit с Hugging Face, OpenAI и Snowflake, показаны лучшие практики прототипирования проектов с помощью Streamlit. Издание предназначено для специалистов по обработке данных и энтузиастов машинного обучения, которые хотят начать создавать интерактивные приложения на Python.
Ричардс, Т. Streamlit для Data Science. Создаем интерактивные приложения в Python : практическое руководство / Т. Ричардс, А. Груздев ; пер. с англ. А. В. Груздева. – Москва : ДМК Пресс, 2024. - 356 с. – ISBN 978-5-93700-275-4. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2205064 (дата обращения: 17.04.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Тайлер Ричардс
Артем Груздев
Streamlit для Data Science
Создаем интерактивные  
приложения в Python


Streamlit for Data Science
Second Edition
Create interactive data apps in Python
Tyler Richards
BIRMINGHAM – MUMBAI


Москва, 2024
Тайлер Ричардс
Артем Груздев
Streamlit для Data Science
Создаем интерактивные приложения в Python


УДК   004.438Python:004.6
ББК   32.973.22
Р56
Р56    Ричардс Т., Груздев А.
Streamlit для Data Science. Создаем интерактивные приложения 
в Python / Пер. с англ. А. В. Груздева. – М.: ДМК Пресс, 2024. – 354 с.: ил.
         ISBN 978-5-93700-275-4
Если вы работаете с данными на Python и хотите создавать высококачественные приложения, демонстрирующие модели машинного обучения и генерирующие красивые интерактивные визуализации, то эта 
книга для вас. Описана настройка среды разработки и создание базового приложения с нуля, интеграция Streamlit с Hugging Face, OpenAI 
и Snowflake, показаны лучшие практики прототипирования проектов с 
помощью Streamlit.
Издание предназначено для специалистов по обработке данных и энтузиастов машинного обучения, которые хотят начать создавать интерактивные приложения на Python. 
Copyright © 2023 Packt Publishing. First published in the English language under the title 
‘Creative DIY Microcontroller Projects with TinyGo and WebAssembly’. 
Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения 
владельцев авторских прав.
Материал, изложенный в данной книге, многократно проверен. Но, поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать 
абсолютную точность и правильность приводимых сведений. В связи с этим издательство 
не несет ответственности за возможные ошибки, связанные с использованием книги.
ISBN 978-1-80324-822-6 (англ.)                      Copyright © 2023 Packt Publishing
ISBN 978-5-93700-275-4 (рус.)                        © Оформление, перевод на русский язык, 
	
                   издание, ДМК Пресс, 2024


Оглавление
Часть I.  
Создание простых приложений Streamlit.........................................9
Глава 1. Введение в Streamlit............................................................. 10
Почему именно Streamlit?................................................................................10
Установка Streamlit............................................................................................12
Организация приложений Streamlit................................................................12
Демонстрация построения графиков с помощью Streamlit...........................13
Создание приложения с нуля...........................................................................15
Использование пользовательского ввода в приложениях Streamlit..............21
Последние штрихи: добавляем текст в Streamlit.............................................25
Выводы...............................................................................................................28
Глава 2. Загрузка, скачивание и работа с данными........................ 29
Исследуем набор Пингвины Палмера..............................................................30
Управление потоком в Streamlit.......................................................................40
Отладка приложений Streamlit.........................................................................43
Разработка в Streamlit.............................................................................................44
Исследуем в Jupyter, а затем копируем в Streamlit...............................................44
Операции с данными в Streamlit......................................................................45
Пробуем Altair....................................................................................................47
Введение в кеширование..................................................................................48
Сохранение состояния сеанса (session state)...................................................55
Выводы...............................................................................................................59
Глава 3. Визуализация данных.......................................................... 60
Новый набор данных Деревья Сан-Франциско...............................................61
Варианты использования визуализации Streamlit.........................................62
Встроенные графические функции Streamlit..................................................63
Встроенные возможности визуализации в Streamlit......................................68
Plotly.........................................................................................................................68
Matplotlib и Seaborn................................................................................................70
Bokeh........................................................................................................................72
Altair.........................................................................................................................74
PyDeck......................................................................................................................76
Выводы...............................................................................................................83
Глава 4. Машинное обучение с помощью Streamlit........................ 84
Стандартный процесс создания модели машинного обучения.....................85
Прогнозирование видов пингвинов................................................................85
Использование предварительно обученной модели машинного  
обучения в Streamlit....................................................................................89


6    Оглавление
Обучение моделей внутри приложений..........................................................94
Понимание результатов машинного обучения...............................................98
Интеграция внешней библиотеки машинного обучения в Streamlit  
на примере библиотеки Transformers от Hugging Face...........................110
Интеграция внешней библиотеки машинного обучения в Streamlit 
на примере OpenAI....................................................................................112
Аутентификация с помощью OpenAI..................................................................112
Стоимость API OpenAI..........................................................................................112
Streamlit и OpenAI.................................................................................................113
Выводы.............................................................................................................119
Глава 5. Развертывание приложений с помощью  
Streamlit Community Cloud.............................................................. 120
Начало работы с Streamlit Community Cloud.................................................121
Краткое руководство по GitHub......................................................................121
Развертывание с помощью Streamlit Community Cloud...............................126
Отладка Streamlit Community Cloud...............................................................130
Секреты Streamlit..................................................................................................130
Выводы.............................................................................................................134
Часть II.  
Создание сложных приложений Streamlit..................................... 135
Глава 6. Улучшение интерфейса приложений Streamlit............... 136
Начало работы с набором данных Деревья Сан-Франциско........................136
Работа с колонками в Streamlit.......................................................................137
Настройка конфигурации страницы..............................................................143
Использование боковой панели Streamlit.....................................................144
Выбор цвета с помощью палитры цветов.....................................................149
Использование тем Streamlit..........................................................................150
Многостраничные приложения......................................................................153
Редактируемые датафреймы..........................................................................156
Выводы.............................................................................................................161
Глава 7. Знакомство с компонентами Streamlit............................ 162
Обмен программным кодом с помощью streamlit-embedcode....................164
Редактирование датафреймов с помощью streamlit-aggrid.........................167
Детализация графиков Plotly с помощью streamlit-plotly-events................169
Размещение анимаций в приложениях с помощью streamlit-lottie............171
Разведочный анализ с помощью streamlit-pandas-profiling........................176
Создание интерактивных карт с помощью streamlit-folium.......................181
Использование вспомогательных мини-функций с помощью  
streamlit-extras...........................................................................................184
Поиск дополнительных компонентов...........................................................186
Выводы.............................................................................................................187


Оглавление    7
Глава 8. Развертывание Streamlit-приложений  
с помощью Hugging Face................................................................. 188
Выводы.............................................................................................................197
Глава 9. Подключение к базе данных Snowflake........................... 198
Подключение к Snowflake с помощью Streamlit............................................199
Улучшение организации подключений.........................................................201
Улучшение организации запросов и интерфейса приложения...................203
Выводы.............................................................................................................204
Часть III.  
Примеры использования Streamlit................................................ 205
Глава 10. Использование Streamlit в пет-проектах  
и тестовых заданиях для соискателей........................................... 206
Использование Streamlit в качестве доказательства,  
подтверждающего наличие навыков работы с данными.......................206
Машинное обучение – приложение Пингвины Палмера...................................207
Визуализация – приложение Прекрасные деревья............................................209
Использование Streamlit в тестовых заданиях при приеме на работу........210
Задания..................................................................................................................211
Выполнение задания 1..........................................................................................212
Выполнение задания 2..........................................................................................220
Выводы.............................................................................................................223
Глава 11. Прототипирование проектов в Streamlite..................... 224
Идеи для проектов data science......................................................................225
Сбор и чистка данных.....................................................................................227
Создание MVP..................................................................................................229
Сколько книг я читаю каждый год?.....................................................................229
Сколько времени мне потребуется, чтобы закончить читать  
начатую книгу?.............................................................................................231
Каков объем книг, которые я прочитал?.............................................................235
Каков «возраст» книг, которые я прочитал?........................................................237
Какой рейтинг я ставлю книгам в сравнении с другими  
пользователями Goodreads?........................................................................241
Итеративное улучшение.................................................................................246
Улучшение внешнего вида с помощью анимации.............................................247
Организация приложения с использованием широкого формата, 
дополнительных статистик, колонок и сопроводительного текста.........250
Хостинг и продвижение..................................................................................254
Выводы.............................................................................................................255
Глава 12. Использование библиотеки прогнозирования 
временных рядов ETNA в Streamlit................................................ 256
Пишем программный код приложения.........................................................256


8    Оглавление
Работа с приложением....................................................................................279
Загрузка и визуализация данных.........................................................................279
Определение горизонта прогнозирования.........................................................282
Преобразования зависимой переменной...........................................................283
Конструирование признаков................................................................................284
Список экземпляров классов, выполняющих преобразования зависимой 
переменной и создающих признаки..........................................................285
Итоговый набор.....................................................................................................285
Обучение базовой модели....................................................................................286
Оценка качества и визуализация прогнозов базовой модели...........................286
Перекрестная проверка........................................................................................287
Оценка качества и визуализация прогнозов по итогам  
перекрестной проверки...............................................................................289
Оптимизация гиперпараметров..........................................................................290
Получение прогнозов для новых данных............................................................294
Запись прогнозов для новых данных в CSV-файл..............................................295
Работа с экзогенными переменными............................................................295
Подготавливаем наборы с экзогенными переменными....................................295
Прогнозируем, используя подготовленные наборы экзогенных  
переменных..................................................................................................300
Развертывание приложения на платформе Streamlit Community Cloud.....302
Глава 13. Интервью с опытными пользователями Streamlit....... 305
Интервью #1 – Фанило Андрианасоло (интервью 2021 года,  
для первого издания)................................................................................306
Интервью #2 – Фанило Андрианасоло (интервью 2023 года).......................312
Интервью #3 – Йоханнес Рике........................................................................317
Интервью #4 – Эдриен Трейль (интервью 2021 года, для первого  
издания).....................................................................................................324
Интервью #5 – Эдриен Трейль (интервью 2023 года)...................................328
Интервью #6 – Чарли Варнье..........................................................................332
Интервью #7 – Джерард Бентли......................................................................337
Интервью #8 – Арно Мирибель и Закари Блэквуд.........................................341
Интервью #9 – Юитиро Татибана...................................................................348
Выводы.............................................................................................................353


Часть I
Создание простых  
приложений Streamlit


Глава 1
Введение в Streamlit
Streamlit – это платформа, которая помогает создавать и разрабатывать 
веб-приложения на основе Python. Веб-приложения можно использовать 
для обмена результатами аналитики, создания сложных интерактивных 
приложений и демонстрации новых моделей машинного обучения. Кроме 
того, разработка и развертывание приложений Streamlit происходят невероятно быстро и гибко, часто уменьшая время разработки приложений с 
нескольких дней до пары часов.
В этой главе мы начнем с основ Streamlit. Мы научимся скачивать и запускать демонстрационные приложения Streamlit, редактировать демонстрационные приложения с помощью нашего собственного текстового редактора, организовывать наши приложения Streamlit и, наконец, создавать 
свои собственные. Затем изучим основы визуализации данных в Streamlit. 
Мы узнаем, как принять исходные пользовательские данные, а затем добавить последние штрихи к нашим собственным приложениям с помощью 
текста. К концу этой главы вы сможете начать создавать свои собственные 
приложения Streamlit!
В частности, мы затронем следующие темы:
•	 почему именно Streamlit?
•	 установка Streamlit;
•	 организация приложений Streamlit;
•	 демонстрация построения графиков с помощью Streamlit;
•	 создание приложения с нуля.
Почему именно Streamlit?
В течение последнего десятилетия специалисты по data science становятся 
все более ценным ресурсом для компаний и некоммерческих организаций. 
Они помогают принимать решения на основе данных, повышать эффективность процессов и внедрять модели машинного обучения для улучше

Похожие

Доступ онлайн
1 599 ₽
В корзину