Если вы хотите найти простой способ визуализации и интерпретации модели дерева решений, используйте dtreeviz.
На изображении выше показан результат работы dtreeviz при применении инструмента к DecisionTreeClassifier.
▪Github
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 Полезные бесплатные курсы от Google.
▪Ускоренный курс Google машинное обучение — база машинного обучения, включает видеолекции от исследователей из Google.
▪Основы Python для анализа данных — программирование на Python.
▪Введение в Data Science и аналитику — курс по Data Science и Data Science Life Cycle.
@data_analysis_ml
▪Ускоренный курс Google машинное обучение — база машинного обучения, включает видеолекции от исследователей из Google.
▪Основы Python для анализа данных — программирование на Python.
▪Введение в Data Science и аналитику — курс по Data Science и Data Science Life Cycle.
@data_analysis_ml
📌 Предлагаем вам подборку бесплатных курсов по аналитике и визуализации данных
▪Digital-аналитика — This is Data
▪Визуализация данных - Онлайн-школа ILYN
▪Microsoft Power BI — Microsoft Learn
▪Power Bi для интернет-маркетинга — NeedForData
▪Основы работы с DataLens — Яндекс Практикум
▪Google Data Studio (2022) — Яков Осипенков
▪Google Data Studio (2022) — Школа аналитики "Байкал"
@data_analysis_ml
▪Digital-аналитика — This is Data
▪Визуализация данных - Онлайн-школа ILYN
▪Microsoft Power BI — Microsoft Learn
▪Power Bi для интернет-маркетинга — NeedForData
▪Основы работы с DataLens — Яндекс Практикум
▪Google Data Studio (2022) — Яков Осипенков
▪Google Data Studio (2022) — Школа аналитики "Байкал"
@data_analysis_ml
❤4
💡 Начало работы с pytest
Если вы хотите протестировать свою функцию на разных примерах, используйте декоратор pytest.mark.parametrize из библиотеки pytest.
В приведенном выше коде ожидается, что первое предложение будет содержать слово "duck", а второе предложение не будет содержать этого слова. При запуске pytest прошло 2 теста.
▪Github
▪Python Testing с pytest
@data_analysis_ml
Если вы хотите протестировать свою функцию на разных примерах, используйте декоратор pytest.mark.parametrize из библиотеки pytest.
В приведенном выше коде ожидается, что первое предложение будет содержать слово "duck", а второе предложение не будет содержать этого слова. При запуске pytest прошло 2 теста.
import pytest
def text_contain_word(word: str, text: str):
'''Find whether the text contains a particular word'''
return word in text
test = [
('There is a duck in this text',True),
('There is nothing here', False)
]
@pytest.mark.parametrize('sample, expected', test)
def test_text_contain_word(sample, expected):
word = 'duck'
assert text_contain_word(word, sample) == expected▪Github
▪Python Testing с pytest
@data_analysis_ml
🗺 Список полезных Python-библиотек для работы с геоданными:
1. Gmaps - библиотека для работы с Google maps, кот позволяет визуализировать и взаимодействовать с геоданными.
2. Leafmap - Python пакет для создания интерактивных карт для геопространственного анализа. Эта библиотека доступна в среде Jupyter, Google Colab, Jupyter Notebook и JupyterLab, и позволяет анализировать и визуализировать геоданные без особого труда.
3. Folium - это Python-библиотека для бычтрой визуализации геоданных, которая предоставляет интерфейс Python для работы с leaflet.js, одной из самых популярных библиотек JavaScript, используемых для создания интерактивных карт. Библиотека позволяет работать с файлами GeoJSON и TopoJSON, создавать фоновые картограммы с различными цветовыми схемами, персонализировать всплывающие подсказки и интерактивные карты-врезки.
4. Geopandas - это библиотека, которая предназначена для работы с геоданными в Python. Она предоставляет объект геодатафрейм, который по своей сущности аналогичен датафрейму Pandas, но который содержит информацию о геометрии, являющейся определением пространственного объекта.
5. Ipyleaflet - это интерактивная и многофункциональная библиотека виджетов, которая предоставляет возможность визуализировать карты.
1. Gmaps - библиотека для работы с Google maps, кот позволяет визуализировать и взаимодействовать с геоданными.
2. Leafmap - Python пакет для создания интерактивных карт для геопространственного анализа. Эта библиотека доступна в среде Jupyter, Google Colab, Jupyter Notebook и JupyterLab, и позволяет анализировать и визуализировать геоданные без особого труда.
3. Folium - это Python-библиотека для бычтрой визуализации геоданных, которая предоставляет интерфейс Python для работы с leaflet.js, одной из самых популярных библиотек JavaScript, используемых для создания интерактивных карт. Библиотека позволяет работать с файлами GeoJSON и TopoJSON, создавать фоновые картограммы с различными цветовыми схемами, персонализировать всплывающие подсказки и интерактивные карты-врезки.
4. Geopandas - это библиотека, которая предназначена для работы с геоданными в Python. Она предоставляет объект геодатафрейм, который по своей сущности аналогичен датафрейму Pandas, но который содержит информацию о геометрии, являющейся определением пространственного объекта.
5. Ipyleaflet - это интерактивная и многофункциональная библиотека виджетов, которая предоставляет возможность визуализировать карты.
Аналитики данных, инженеры и учёные одинаково знакомы с SQL. Язык запросов по-прежнему широко используется для работы с реляционными базами данных любого типа.
Однако, в настоящее время, всё больше и больше, особенно для аналитиков данных, растут технические требования, и ожидается, что люди, по крайней мере, знают основы языка программирования. При работе с данными Python и Pandas являются обычным дополнением к списку требований в описании вакансий.
Хотя Pandas может быть новым для людей, знакомых с SQL, концепции выбора, фильтрации и агрегирования данных в SQL легко переносятся в Pandas. Давайте рассмотрим в этой статье некоторые распространённые SQL-запросы и способы их написания и оптимизации в Pandas.
▪ Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 5 примеров использования Redis с кодом на Python
1. Caching
Redis можно использовать для кэширования часто используемых данных, снижая нагрузку на ваше основное хранилище данных. Вот пример того, как реализовать кэширование с помощью Redis в Python
2. Pub/Sub (Publish/Subscribe):
Redis поддерживает паттерн pub/sub, позволяя вам создавать системы обмена сообщениями. Вот пример:
3. Rate Limiting:
Redis можно использовать для реализации ограничения скорости, чтобы контролировать количество запросов или операций за период времени. Пример:
4. Session Storage:
Redis можно использовать для хранения данных сеанса в веб-приложениях. Пример:
5. Leaderboard:
Redis можно использовать для создания таблиц лидеров или рейтингов на основе набранных баллов. Пример:
Это лишь несколько примеров того, как Redis можно использовать в Python. Redis предоставляет множество других мощных функций и структур данных, которые можно использовать в различных приложениях.
▪Github
@data_analysis_ml
1. Caching
Redis можно использовать для кэширования часто используемых данных, снижая нагрузку на ваше основное хранилище данных. Вот пример того, как реализовать кэширование с помощью Redis в Python
import redis
# Connect to Redis
r = redis.Redis(host='localhost', port=6379, db=0)
def get_data_from_cache(key):
# Check if data exists in the cache
if r.exists(key):
# Retrieve data from the cache
data = r.get(key)
return data.decode('utf-8') # Convert bytes to string
else:
# Fetch data from the primary data source
data = fetch_data_from_source()
# Store data in the cache with a timeout of 1 hour
r.setex(key, 3600, data)
return data2. Pub/Sub (Publish/Subscribe):
Redis поддерживает паттерн pub/sub, позволяя вам создавать системы обмена сообщениями. Вот пример:
import redis
import time
# Connect to Redis
r = redis.Redis(host='localhost', port=6379, db=0)
def publish_message(channel, message):
# Publish a message to the specified channel
r.publish(channel, message)
def subscribe_channel(channel):
# Subscribe to a channel and process incoming messages
pubsub = r.pubsub()
pubsub.subscribe(channel)
for message in pubsub.listen():
print(message['data'].decode('utf-8')) # Process the received message3. Rate Limiting:
Redis можно использовать для реализации ограничения скорости, чтобы контролировать количество запросов или операций за период времени. Пример:
import redis
# Connect to Redis
r = redis.Redis(host='localhost', port=6379, db=0)
def check_rate_limit(ip_address):
# Increment the request count for the IP address
request_count = r.incr(ip_address)
# If the count exceeds the limit (e.g., 100 requests per minute), deny the request
if request_count > 100:
return False
return True4. Session Storage:
Redis можно использовать для хранения данных сеанса в веб-приложениях. Пример:
import redis
import uuid
# Connect to Redis
r = redis.Redis(host='localhost', port=6379, db=0)
def create_session(user_id):
# Generate a unique session ID
session_id = str(uuid.uuid4())
# Store the session data in Redis with a timeout of 30 minutes
r.setex(session_id, 1800, user_id)
return session_id
def get_user_id_from_session(session_id):
# Retrieve the user ID from the session data in Redis
user_id = r.get(session_id)
if user_id is not None:
return user_id.decode('utf-8') # Convert bytes to string
else:
return None5. Leaderboard:
Redis можно использовать для создания таблиц лидеров или рейтингов на основе набранных баллов. Пример:
import redis
# Connect to Redis
r = redis.Redis(host='localhost', port=6379, db=0)
def update_score(player_id, score):
# Update the score of a player
r.zadd('leaderboard', {player_id: score})
def get_leaderboard():
# Get the top 10 players from the leaderboard
leaderboard = r.zrevrange('leaderboard', 0, 9, withscores=True)
for player, score in leaderboard:
print(f"Player: {player.decode('utf-8')}, Score: {score}")Это лишь несколько примеров того, как Redis можно использовать в Python. Redis предоставляет множество других мощных функций и структур данных, которые можно использовать в различных приложениях.
▪Github
@data_analysis_ml
Прощайте, циклы в Python: знакомство с возможностями векторизации
В этой статье я хочу поделиться с вами захватывающей техникой, которая произвела революцию в моём подходе к анализу и визуализации данных в Python.
Она называется векторизацией и позволяет вам попрощаться с циклами и использовать более эффективный и элегантный способ программирования.
▪ Читать
@data_analysis_ml
В этой статье я хочу поделиться с вами захватывающей техникой, которая произвела революцию в моём подходе к анализу и визуализации данных в Python.
Она называется векторизацией и позволяет вам попрощаться с циклами и использовать более эффективный и элегантный способ программирования.
▪ Читать
@data_analysis_ml
❤3
8 инструментов распознавания речи:
1. DeepSpeech на базе Baidu DeepSpeech, позволяющий расшифровать аудиофайлы с использованием предварительно обученных моделей или обучить пользовательский набор данных.
2. wav2letter - open-course набор инструментов от Facebook AI Research, объединенный с библиотекой Flashlight.
3. OpenSeq2Seq- исследовательский проект от NVIDIA по проблемам преобразования последовательностей в последовательности.
4. TensorFlowASR – это бесплатный набор инструментов с открытым исходным кодом от Tensorflow, который включает в себя обученные модели на основе рекуррентных нейронных сетей с CTC.
5. SpeechRecognition - проект, предоставляющий доступ к нескольким моделям автоматического распознавания речи, включая оболочки для речевых API от Google, Microsoft Azure и IBM.
6. Yandex SpeechKit от Яндекса - программный продукт, который полностью разработан и настроен.
7. SmartSpeech от СберDevices - проект предоставляет возможность использовать несколько моделей для автоматического распознавания речи, включая оболочки для речевых API от Google, Microsoft Azure и IBM.
8. Сервис Google Документы позволяет переводить устную речь в записанный текст. Это встроенная функция с поддержкой разных языков. Для активации голосового ввода перейдите в раздел «Инструменты» и кликните на «Голосовой ввод»
@data_analysis_ml
1. DeepSpeech на базе Baidu DeepSpeech, позволяющий расшифровать аудиофайлы с использованием предварительно обученных моделей или обучить пользовательский набор данных.
2. wav2letter - open-course набор инструментов от Facebook AI Research, объединенный с библиотекой Flashlight.
3. OpenSeq2Seq- исследовательский проект от NVIDIA по проблемам преобразования последовательностей в последовательности.
4. TensorFlowASR – это бесплатный набор инструментов с открытым исходным кодом от Tensorflow, который включает в себя обученные модели на основе рекуррентных нейронных сетей с CTC.
5. SpeechRecognition - проект, предоставляющий доступ к нескольким моделям автоматического распознавания речи, включая оболочки для речевых API от Google, Microsoft Azure и IBM.
6. Yandex SpeechKit от Яндекса - программный продукт, который полностью разработан и настроен.
7. SmartSpeech от СберDevices - проект предоставляет возможность использовать несколько моделей для автоматического распознавания речи, включая оболочки для речевых API от Google, Microsoft Azure и IBM.
8. Сервис Google Документы позволяет переводить устную речь в записанный текст. Это встроенная функция с поддержкой разных языков. Для активации голосового ввода перейдите в раздел «Инструменты» и кликните на «Голосовой ввод»
@data_analysis_ml
💬 Полезные NLP инструменты: Библиотека fastText
fastText - это библиотека для анализа и классификации текста.
Вот как загрузить и использовать предварительно обученные модели:
В следующем примеры мы будем использовать метод ближайших соседей:
Вот как использовать эту модель для определения языка из введенного текста:
▪Github
@data_analysis_ml
fastText - это библиотека для анализа и классификации текста.
Вот как загрузить и использовать предварительно обученные модели:
import fasttext
from huggingface_hub import hf_hub_download
model_path = hf_hub_download(repo_id="facebook/fasttext-en-vectors", filename="model.bin")
model = fasttext.load_model(model_path)
model.words
['the', 'of', 'and', 'to', 'in', 'a', 'that', 'is', ...]
len(model.words)
145940
model['bread']
array([ 4.89417791e-01, 1.60882145e-01, -2.25947708e-01, -2.94273376e-01,
-1.04577184e-01, 1.17962055e-01, 1.34821936e-01, -2.41778508e-01, ...])В следующем примеры мы будем использовать метод ближайших соседей:
import fasttext
from huggingface_hub import hf_hub_download
model_path = hf_hub_download(repo_id="facebook/fasttext-en-nearest-neighbors", filename="model.bin")
model = fasttext.load_model(model_path)
model.get_nearest_neighbors("bread", k=5)
[(0.5641006231307983, 'butter'),
(0.48875734210014343, 'loaf'),
(0.4491206705570221, 'eat'),
(0.42444291710853577, 'food'),
(0.4229326844215393, 'cheese')]Вот как использовать эту модель для определения языка из введенного текста:
import fasttext
from huggingface_hub import hf_hub_download
model_path = hf_hub_download(repo_id="facebook/fasttext-language-identification", filename="model.bin")
model = fasttext.load_model(model_path)
model.predict("Hello, world!")
(('__label__eng_Latn',), array([0.81148803]))
model.predict("Hello, world!", k=5)
(('__label__eng_Latn', '__label__vie_Latn', '__label__nld_Latn', '__label__pol_Latn', '__label__deu_Latn'),
array([0.61224753, 0.21323682, 0.09696738, 0.01359863, 0.01319415]))▪Github
@data_analysis_ml