Если вы хотите найти простой способ визуализации и интерпретации модели дерева решений, используйте 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
6 досадных ошибок Sklearn, которые вы можете совершать, и как их избежать
Часто Sklearn выдаёт большие красные сообщения об ошибках и предупреждения, когда вы делаете что-то не так. Эти сообщения предполагают, что в вашем коде содержатся ошибки, которые мешают магии Sklearn делать свою работу.
Но что произойдёт, если вы не получите никаких ошибок или предупреждений? Означает ли это, что вы делаете всё правильно? Не обязательно.
Научитесь избегать шести самых серьёзных ошибок, связанных с теорией машинного обучения, которые новички часто совершают в Sklearn.
Читать
@data_analysis_ml
Часто Sklearn выдаёт большие красные сообщения об ошибках и предупреждения, когда вы делаете что-то не так. Эти сообщения предполагают, что в вашем коде содержатся ошибки, которые мешают магии Sklearn делать свою работу.
Но что произойдёт, если вы не получите никаких ошибок или предупреждений? Означает ли это, что вы делаете всё правильно? Не обязательно.
Научитесь избегать шести самых серьёзных ошибок, связанных с теорией машинного обучения, которые новички часто совершают в Sklearn.
Читать
@data_analysis_ml
🔥1