Все потоки
Поиск
Написать публикацию
Обновить
403.5

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Python, корреляция и регрессия: часть 3

Время на прочтение19 мин
Количество просмотров20K

Предыдущий пост см. здесь.

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

Читать далее

Протоколы в Python: утиная типизация по-новому

Время на прочтение8 мин
Количество просмотров51K

В новых версиях Python аннотации типов получают всё большую поддержку, всё чаще и чаще используются в библиотеках, фреймворках, и проектах на Python. Помимо дополнительной документированности кода, аннотации типов позволяют таким инструментам, как mypy, статически произвести дополнительные проверки корректности программы и выявить возможные ошибки в коде. В этой статье пойдет речь об одной, как мне кажется, интересной теме, касающейся статической проверки типов в Python – протоколах, или как сказано в PEP-544, статической утиной типизации.

Читать далее

Python, корреляция и регрессия: часть 2

Время на прочтение12 мин
Количество просмотров36K

Предыдущий пост см. здесь. Этот пост посвящен регрессии.

Хотя, возможно, и полезно знать, что две переменные коррелируют, мы не можем использовать лишь одну эту информацию для предсказания веса олимпийских пловцов при наличии данных об их росте или наоборот. При установлении корреляции мы измерили силу и знак связи, но не наклон, т.е. угловой коэффициент. Для генерирования предсказания необходимо знать ожидаемый темп изменения одной переменной при заданном единичном изменении в другой.

Читать далее

Python, корреляция и регрессия: часть 1

Время на прочтение16 мин
Количество просмотров93K

В предыдущих сериях постов для начинающих из ремикса книги Генри Гарнера «Clojure для исследования данных» (Clojure for Data Science) на языке Python мы рассмотрели методы описания выборок с точки зрения сводных статистик и методов статистического вывода из них параметров популяции. Такой анализ сообщает нам нечто о популяции в целом и о выборке в частности, но он не позволяет нам делать очень точные утверждения об их отдельных элементах. Это связано с тем, что в результате сведения данных всего к двум статистикам - среднему значению и стандартному отклонению - теряется огромный объем информации.

Читать далее

Выбираем метод для поиска схожих операций

Время на прочтение4 мин
Количество просмотров1.7K

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

Для результативного решения задачи в первую очередь необходимо определиться с ее правильной постановкой.

Итак, в наличии у нас есть датасет по операциям клиентов на фондовом рынке. Сам датасет огромный и находить в нем информацию «вручную» или даже с помощью агрегации сложно и неэффективно. Исходя из этого определяем нашу первую цель – уменьшение датасета, выбрав из всех данных только самые схожие. Кроме того, нет смысла рассматривать схожие операции одного клиента, следовательно, это тоже надо предусмотреть.  Собственно, можно начинать!

Фичи, по которым мы будем сравнивать и искать схожие операции:

Читать далее

Функция property() в Python

Время на прочтение2 мин
Количество просмотров80K

Функция property() используется для определения свойств в классах.

Метод property() обеспечивает интерфейс для атрибутов экземпляра класса. Он инкапсулирует атрибуты экземпляров и предоставляет свойства, аналогично тому, как это работает в Java и C#.

Метод property() принимает на вход методы get, set и delete, и возвращает объекты класса property.

Вместо метода property() лучше использовать декоратор property (https://www.tutorialsteacher.com/python/property-decorator).

Читать далее

Линейная алгебра для Data Science и Machine Learning

Время на прочтение7 мин
Количество просмотров34K

Линейная алгебра в Data Science и Machine Learning является основополагающей. Новички, начинающие свой путь обучения в области Data Science, а также признанные практики должны развить хорошее понимание основных понятий линейной алгебры.

Специально к новому старту курса математика и Machine Learning для Data Science делимся переводом статьи Бенджамина Оби Тайо — физика, кандидата наук и преподавателя Data Science — о том, что нужно знать, чтобы лучше понимать Data Science и Machine Learning.

Читать далее

Сам себе Гутенберг. Делаем параллельные книги

Время на прочтение12 мин
Количество просмотров24K

Lingtrain parallel books


Upd. 04.12.2021 — Наш телеграм канал


Если вам нравится изучать языки (или вы их преподаете), то вы наверняка сталкивались с таким способом освоения языка как параллельное чтение. Он помогает погрузиться в контекст, увеличивает лексикон и позволяет получить удовольствие от обучения. Читать тексты в оригинале параллельно с русскоязычными, на мой взгляд, стоит, когда уже освоены азы грамматики и фонетики, так что учебники и преподавателей никто не отменял. Но когда дело все же доходит до чтения, то хочется подобрать что-то по своему вкусу, либо что-то уже знакомое или любимое, а это часто невозможно, потому что такого варианта параллельной книги никто не выпускал. А если вы учите не английский язык, а условный японский или венгерский, то трудно найти вообще хоть какой-то интересный материал с параллельным переводом.


Сегодня мы сделаем решительный шаг в сторону исправления этой ситуации.


Из чего делаем


На входе у нас будут два текстовых файла с оригинальным текстом и его переводом. Для примера возьмем книгу "Убить пересмешника" Харпер Ли на русском и английском языках.


Начало документов выглядит так (отрывки приведены в таком виде, в котором они были найдены в сети):

Выровнять пересмешника

Матрица-Перематрица

Время на прочтение10 мин
Количество просмотров9.3K

Работа нейронной сети основана на манипуляциях с матрицами. Для обучения используются разнообразные методы, многие из которых выросли из метода градиентного спуска, где необходимо умение обращаться с матрицами, вычислять градиенты (производные по матрицам). Если заглянуть “под капот” нейронной сети, можно увидеть цепочки из матриц, выглядящие зачастую устрашающе. Проще говоря, “нас всех подстерегает матрица”. Пора познакомиться поближе.

Для этого сделаем следующие шаги:

рассмотрим манипуляции с матрицами : транспонирование, умножение, градиент;

построим игрушечную нейронную сеть;

познакомимся с методом обратного распространения ошибки с использованием метода градиентного спуска.

Все шаги сопровождаются примерами кода с использованием только NumPy . Вычисления, не выходящие, впрочем, за рамки элементарной математики, приведены подробно. За индексами придется внимательно следить, но не отчаивайтесь, просто представьте, что каждый индекс - винтик, который надо закрутить, следуя простым правилам, но не пропустить. Если вдруг не разберетесь, ничего страшного - одно из двух: либо сбой в матрице, либо одно из двух.

Red pill

CatBoost и ML-конкурсы

Время на прочтение8 мин
Количество просмотров5K

Эта статья основана на данных конкурса, который компания Driven Data опубликовала для решения проблем с источниками воды в Танзании. Краткий анализ данных, подготовка данных и бэйзлайн модель с использованием CatBoost. Целевая аудитория - те, кто хотят начать свой путь в ML-соревнованиях.

Читать далее

Не начинайте учиться кодингу с Python, начните с языка C

Время на прочтение4 мин
Количество просмотров61K


Python удивителен своей способностью продвигать программирование. Он как будто является подтверждением популярной идеи «если вы знаете английский, то должны знать, как писать код». Благодаря синтаксису, напоминающему английский язык, парадигме отступов и огромному количеству библиотек другие языки по сравнению с Python начинают выглядеть бесполезными.

Python — язык программирования по умолчанию для «самой сексуальной профессии 21-го века». Да, громкие слова о данных по-прежнему сохраняют за data science репутацию «сексуальной работы», хотя современные обстоятельства уже не полностью поддерживают это утверждение. Языку Python удалось добиться того, что он позволяет решать большинство проблем data science.

Кроме того, Python также популярен в блокчейне, DevOps и кибербезопасности.

Ажиотаж вокруг Python постоянно растёт. Этот язык используется как средство кодинга в бесчисленном количестве онлайн-курсов и учебных программ.

Несмотря на всё это и вопреки всей привлекательности Python, он не подходит для начинающих в программировании. Лучшим вариантом является C.

В этой статье я расскажу о том, почему в качестве опорной точки вместо Python следует использовать C.
Читать дальше →

Многоразовый шаблон логирования на Python для всех ваших приложений в Data Science

Время на прочтение4 мин
Количество просмотров7.7K

Идеальный способ отлаживать и отслеживать приложения — хорошо определённые, информативные и удобно структурированные логи. Они являются необходимым компонентом любого — малого, среднего или крупного — проекта на любом языке программирования, не только на Python. Не используйте print() или корневой логгер по умолчанию, вместо этого настройте логирование на уровне проекта. К старту нового потока курса по Data Science, мы перевели статью, автор которой решил поделиться своим шаблоном для логирования. Не лишним будет сказать, что этот шаблон пришёлся по душе многим специалистам — от дата-сайентистов профессионалов и до разработчиков ПО разного уровня.

Читать далее

Погружаемся в статистику вместе с Python. Часть 1. Z-статистика и p-value

Время на прочтение19 мин
Количество просмотров55K

Не знаю как вам, а мне статистика далась очень не просто. Причем "далась" - это еще громко сказано. Да, оказалось что можно довольно долго ехать на методичках, кое как вникая в смысл четырехэтажных формул, а иногда даже не понимая результатов, но все равно ехать. Ехать и не получать никакого удовольствия - вроде бы все понятно, но ощущение, что ты "не совсем в теме" все никак не покидает. Какое-то время пытался читать книги по R и не то что бы совсем безрезультатно, но и не "огонь". Нашел наикрутейшую книгу "Статистика для всех" Сары Бослаф, прочитал... все равно остались какие-то нюансы смысл которых так и не понятен до конца.

В общем, как вы догадались - эта статья из серии "Пробую объяснить на пальцах, что бы самому разобраться." Так что если вы неравнодушны к статистике, то прошу под кат.

Начать погружение

Ближайшие события

С помощью Python создаём математические анимации, как на канале 3Blue1Brown

Время на прочтение6 мин
Количество просмотров38K

Вы наверняка когда-то испытывали трудности в понимании математических концепций алгоритмов машинного обучения и для лучшего понимания темы пользовались обучающим ресурсом 3Blue1Brown. 3Blue1Brown — известный математический YouTube-канал, который ведёт Грант Сандерсон. Многим нравится 3Blue1Brown за прекрасные объяснения Гранта и великолепные анимации.

21 мая стартует новый поток курса о математике для Data Science. Специально к его запуску мы делимся переводом, в котором автор решил рассказать, как делать анимации, подобные анимациям на канале 3Blue1Brown, чтобы вы могли иллюстрировать свои идеи и рассуждения о математике и не только.

Читать далее

Преобразуем проект на Python в исполняемый файл .EXE

Время на прочтение3 мин
Количество просмотров456K

С помощью Auto PY to EXE можно с лёгкостью преобразовывать файлы .py в файлы .exe. Благодаря этому ваш проект на Python будет работать как десктопное приложение и вы сможете запускать приложение на других машинах без необходимости установки Python.

В этой статье я расскажу, как преобразовать проект на Python в исполняемый файл. Решение будет работать вне зависимости от количества файлов .py в приложении. Стоит учесть, что Auto PY to EXE работает только с Python 3.5 или выше.
Читать дальше →

NLP: разбираем на пальцах практические кейсы без заморочек с ML

Время на прочтение3 мин
Количество просмотров6.4K

Сравнение текстов

Допустим у нас есть три текста: два из них про собачек и один про кошечек.  Как их сравнить между собой?

Читать далее

Если у вас нет плюсов

Время на прочтение7 мин
Количество просмотров30K

Мой друг Алексей ищет работу и ходит на собеседования. После которых интересуется, как бы я ответил на некоторые из заданных вопросов.

Отвечая на один такой вопрос, я слегка увлёкся, и материала набралось на целую статью. Впрочем, небольшую и несерьёзную - пятничного формата.

Хотите немного развлечься? Вопрос лёгкий. Надеюсь, вы попытаетесь ответить на него самостоятельно, прежде чем читать дальше. Итак:

"Сложить два целых числа (от 1 до 99) без использования оператора 'плюс'. Дайте пять разных ответов"

Как думаете, сколько там ответов?

6 хитростей Python, о которых никто не рассказывает новичкам

Время на прочтение5 мин
Количество просмотров45K
В наши дни Python — это самый популярный в мире язык программирования. Одна из причин этого кроется в том, что разработчики с удовольствием пишут на Python. Это выгодно отличает Python от других языков.

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



Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о 6 хитростях Python, о которых обычно никто ничего не рассказывает.

Код примеров можно найти в GitHub-репозитории, ссылку на который автор статьи выдаёт тем, кто подписался на рассылку проекта worldindev.ck.page.
Читать дальше →

Как построить систему распознавания лиц с помощью Elasticsearch и Python

Время на прочтение5 мин
Количество просмотров8.8K

Пытались ли вы когда-нибудь искать объекты на изображениях? Elasticsearch может помочь вам хранить, анализировать и искать объекты на изображениях или видео.

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

Читать далее

Вклад авторов