Как стать автором
Обновить
4
0

Пользователь

Отправить сообщение

Словарик айтишника или Что? Где? Куда? Часть 1

Время на прочтение8 мин
Количество просмотров206K
«Привет! Добро пожаловать! Спасибо, что приняла наш оффер. Пойдем знакомиться с твоей командой. У них как раз сейчас дейли. Ты вышла под конец спринта, поэтому пока работы для тебя не запланировали. Как стендап закончится, можешь почитать спеки, командные окиары и просмотреть бэклог на следующий спринт. По всем вопросам обращайся к своему пио
Это бессмыслица какая-то или деловой язык? Попробуем разобраться.
image
Читать дальше →
Всего голосов 41: ↑29 и ↓12+17
Комментарии157

Конспект по «Машинному обучению». Математическая статистика. Метод максимального правдоподобия

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


Вспомним некоторые определения математической статистики


Пусть задано вероятностное пространство $(\Omega, \Sigma, P)$.

Определение 1:

Случайной величиной $\xi = \xi(w)$, принимающей значения в множестве $S$ c $\sigma$-алгеброй подмножеств $\Phi$ называется любая $(\Sigma, \Phi)$-измеримая функция $\xi \colon \Omega \to S$, то есть $\forall A \subseteq S, A \in \Phi$ выполняется условие $\xi^{-1}(A)=\{\omega \in \Omega \space \colon \space \xi(w) \in A\} \in \Sigma$.
Читать дальше →
Всего голосов 14: ↑8 и ↓6+2
Комментарии1

Решаем уравнение простой линейной регрессии

Время на прочтение23 мин
Количество просмотров30K
В статье рассматривается несколько способов определения математического уравнения линии простой (парной) регрессии.

Все рассматриваемые здесь способы решения уравнения основаны на методе наименьших квадратов. Обозначим способы следующим образом:

  • Аналитическое решение
  • Градиентный спуск
  • Стохастический градиентный спуск

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

Весь код, приведенный в статье, написан на языке python 2.7 с использованием Jupyter Notebook. Исходный код и файл с данными выборки выложен на гитхабе

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

Для иллюстрации материала используем очень простой пример.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии25

7 бесплатных курсов для разработчиков от Microsoft

Время на прочтение5 мин
Количество просмотров82K
Привет, Хабр! Сегодня мы начинаем серию статей, в которую войдет 5 подборок бесплатных обучающих курсов от компании Microsoft. В этой статье у нас самые крутые курсы для разработчиков, которые сильнее всего нравятся программистам.

Кстати!

  • Все курсы бесплатные (вы даже сможете попробовать платные продукты бесплатно);
  • 6/7 на русском языке;
  • Начать обучение можно мгновенно;
  • По окончании вы получите бейдж об успешном прохождении обучения.

Присоединяйтесь, подробности под катом!

Новая серия статей


Следующая серия статей, начало 2020 года


Эта серия статей, 2019 год


Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии18

Понимаем теорему Байеса

Время на прочтение8 мин
Количество просмотров38K
Перевод статьи подготовлен специально для студентов базового и продвинутого курсов «Математика для Data Science».




Теорема Байеса – одна из самых известных теорем в статистике и теории вероятности. Даже если вы не работаете с расчетами количественных показателей, вероятно, вам в какой-то момент пришлось познакомиться с этой теоремой во время подготовки к экзамену.

P(A|B) = P(B|A) * P(A)/P(B)

Вот так она выглядит, но что это значит и как работает? Сегодня мы это узнаем и углубимся в теорему Байеса.
Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии11

Кластеризация: алгоритмы k-means и c-means

Время на прочтение3 мин
Количество просмотров171K
Добрый день!

Как и обещал, продолжаю серию публикаций о технологии Data Mining. Сегодня хочу рассказать о двух алгоритмах кластеризации (k-means и c-means), описать преимущества и недостатки, дать некоторые рекомендации по их использованию. Итак, поехали…

Кластеризация — это разделение множества входных векторов на группы (кластеры) по степени «схожести» друг на друга.

Кластеризация в Data Mining приобретает ценность тогда, когда она выступает одним из этапов анализа данных, построения законченного аналитического решения. Аналитику часто легче выделить группы схожих объектов, изучить их особенности и построить для каждой группы отдельную модель, чем создавать одну общую модель для всех данных. Таким приемом постоянно пользуются в маркетинге, выделяя группы клиентов, покупателей, товаров и разрабатывая для каждой из них отдельную стратегию (Википедия).

Читать дальше →
Всего голосов 9: ↑7 и ↓2+5
Комментарии9

План прокачки для получения профессии Data engineer

Время на прочтение2 мин
Количество просмотров24K
Последние восемь лет я работаю руководителем проектов (не пишу код на работе), что естественно негативно влияет на мой технологический бекэнд. Я решил сократить своё технологическое отставание и получить профессию Data engineer. Основной навык Data engineer — способность разрабатывать, строить и поддерживать хранилища данных.

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

Разделы:

  • Алгоритмы и структуры данных. Ключевой раздел. Изучишь его — всё остальное тоже получится. Важно набить руку в написании кода и использовании основных структур и алгоритмов.
  • Базы и хранилища данных, Business Intelligence. От алгоритмов переходим в хранению и обработке данных.
  • Hadoop and Big Data. Когда база не входит на винчестер, или когда данные нужно анализировать, но Excel уже не может их загрузить начинаются большие данные. На мой взгляд, переходить к этому разделу нужно только после глубокого изучения двух предыдущих.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии12

Градиентный спуск по косточкам

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

В интернете есть много статей с описанием алгоритма градиентного спуска. Здесь будет еще одна.


8 июля 1958 года The New York Times писала: «Психолог показывает эмбрион компьютера, разработанного, чтобы читать и становиться мудрее. Разработанный ВМФ… стоивший 2 миллиона долларов компьютер "704", обучился различать левое и правое после пятидесяти попыток… По утверждению ВМФ, они используют этот принцип, чтобы построить первую мыслящую машину класса "Перцептрон", которая сможет читать и писать; разработку планируется завершить через год, с общей стоимостью $100 000… Ученые предсказывают, что позже Перцептроны смогут распознавать людей и называть их по имени, мгновенно переводить устную и письменную речь с одного языка на другой. Мистер Розенблатт сказал, что в принципе возможно построить "мозги", которые смогут воспроизводить самих себя на конвейере и которые будут осознавать свое собственное существование» (цитата и перевод из книги С. Николенко, «Глубокое обучение, погружение в мир нейронный сетей»).


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

Читать дальше →
Всего голосов 39: ↑37 и ↓2+35
Комментарии17

Линейная регрессия и градиентный спуск

Время на прочтение3 мин
Количество просмотров22K
Пусть в некоторой предметной области исследуются показатели X и Y, которые имеют количественное выражение.

При этом есть все основания полагать, что показатель Y зависит от показателя X. Это положение может быть как научной гипотезой, так и основываться на элементарном здравом смысле. К примеру, возьмем продовольственные магазины.

Обозначим через:

X — торговую площадь(кв. м.)

Y — годовой товарооборот(млн. р.)

Очевидно, что чем выше торговая площадь, тем выше годовой товарооборот(предполагаем линейную зависимость).

Представим, что у нас есть данные о некоторых n магазинах(торговая площадь и годовой товарооборот) — наш датасет и k торговых площадей(X), для которых мы хотим предсказать годовой товарооборот(Y) — наша задача.

Выдвинем гипотезу, что наше значение Y зависит от X в виде: Y = a + b * X

Чтобы решить нашу задачу, мы должны подобрать коэффициенты a и b.
Читать дальше →
Всего голосов 24: ↑16 и ↓8+8
Комментарии11

Грокаем PyTorch

Время на прочтение10 мин
Количество просмотров18K
Привет, Хабр!

У нас в предзаказе появилась долгожданная книга о библиотеке PyTorch.



Поскольку весь необходимый базовый материал о PyTorch вы узнаете из этой книги, мы напоминаем о пользе процесса под названием «grokking» или «углубленное постижение» той темы, которую вы хотите усвоить. В сегодняшней публикации мы расскажем, как Кай Арулкумаран (Kai Arulkumaran) грокнул PyTorch (без картинок). Добро пожаловать под кат.
Читать дальше →
Всего голосов 14: ↑11 и ↓3+8
Комментарии16

О прелестях перехода на панель и не только

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

Как очевидно из заголовка, речь пойдет о библиотеке Panel, которая позволяет конвертировать Jupyter блокноты в безопасные веб приложения, где начинка скрыта от нетехнических пользователей, но остается свобода манипулирования внутренними параметрами, то есть не просто перестраивать данные, но и делать запросы в кернел. TL;DR Shiny for Python.
Читать дальше →
Всего голосов 24: ↑14 и ↓10+4
Комментарии9

Подготовка данных в Data Science-проекте: рецепты для молодых хозяек

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


В предыдущей статье я рассказывала про структуру Data Science-проекта по материалам методологии IBM: как он устроен, из каких этапов состоит, какие задачи решаются на каждой стадии. Теперь я бы хотела сделать обзор самой трудоемкой стадии, которая может занимать до 90% общего времени проекта: это этапы, связанные с подготовкой данных -сбор, анализ и очистка.

В оригинальном описании методологии Data Science-проект сравнивается с приготовлением блюда, а аналитик - с шеф поваром. Соответственно, этап подготовки данных сравнивается с подготовкой продуктов: после того, как на этапе анализа бизнес-задачи мы определились с рецептом блюда, которое будем готовить, необходимо найти, собрать в одном месте, очистить и нарезать ингредиенты. Соответственно, от того, насколько качественно был выполнен этот этап, будет зависеть вкус блюда (предположим, что с рецептом мы угадали, тем более рецептов в открытом доступе полно). Работа с ингредиентами, то есть подготовка данных - это всегда ювелирное, трудоемкое и ответственное дело: один испорченный или недомытый продукт - и весь труд впустую.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии10

Нескучный туториал по NumPy

Время на прочтение19 мин
Количество просмотров219K
Меня зовут Вячеслав, я хронический математик и уже несколько лет не использую циклы при работе с массивами…

Ровно с тех пор, как открыл для себя векторные операции в NumPy. Я хочу познакомить вас с функциями NumPy, которые чаще всего использую для обработки массивов данных и изображений. В конце статьи я покажу, как можно использовать инструментарий NumPy, чтобы выполнить свертку изображений без итераций (= очень быстро).

Не забываем про

import numpy as np

и поехали!
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии19

Интеграл Эйлера — Пуассона. Подробно о способах вычисления

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


В статье подробно, вплоть до самых мелочей, рассмотрены три способа взятия интеграла Эйлера-Пуассона. В одном из способов выводится вспомогательная формула редукции. Для нахождения некоторых сложных интегралов можно использовать формулы редукции, которые позволяют понизить степень подынтегрального выражения и вычислить соответствующие интегралы за конечное число шагов.
Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии8

Способы создания гистограмм с помощью Python

Время на прочтение2 мин
Количество просмотров165K
За последний год я сталкивалась с необходимостью рисования гистограмм и столбчатых диаграмм достаточно часто для того, чтобы появилось желание и возможность об этом написать. Кроме того, мне самой довольно сильно не хватало подобной информации. В этой статье приведен обзор 3 методов создания таких графиков на языке Python.

Начнем с того, чего я сама по своей неопытности не знала очень долго: столбчатые диаграммы и гистограммы — разные вещи. Основное отличие состоит в том, что гистограмма показывает частотное распределение — мы задаем набор значений оси Ox, а по Oy всегда откладывается частота. В столбчатой диаграмме (которую в англоязычной литературе уместно было бы назвать barplot) мы задаем и значения оси абсцисс, и значения оси ординат.

Для демонстрации я буду использовать избитый набор данных библиотеки scikit learn Iris. Начнем c импортов:

import pandas as pd
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
from sklearn import datasets
iris = datasets.load_iris()

Преобразуем набор данных iris в dataframe — так нам удобнее будет с ним работать в будущем.

data = pd.DataFrame(data= np.c_[iris['data'], iris['target']], columns= iris['feature_names'] + ['target'])

Из интересующих нас параметров data содержит информацию о длине чашелистиков и лепестков и ширине чашелистиков и лепестков.

Используем Matplotlib
Построение гистограммы
Cтроим обычную гистограмму, показывающую частотное распределение длин лепестков и чашелистиков:

fig, axs = plt.subplots(1, 2)
n_bins = len(data)
axs[0].hist(data['sepal length (cm)'], bins=n_bins)
axs[0].set_title('sepal length')
axs[1].hist(data['petal length (cm)'], bins=n_bins)
axs[1].set_title('petal length')

image
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии4

50 оттенков matplotlib — The Master Plots (с полным кодом на Python)

Время на прочтение39 мин
Количество просмотров363K
Те, кто работает с данными, отлично знают, что не в нейросетке счастье — а в том, как правильно обработать данные. Но чтобы их обработать, необходимо сначала проанализировать корреляции, выбрать нужные данные, выкинуть ненужные и так далее. Для подобных целей часто используется визуализация с помощью библиотеки matplotlib.



Встретимся «внутри»!
Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии15

Как оптимизировать pandas при работе с большими datasetами (очерк)

Время на прочтение3 мин
Количество просмотров9.4K
Когда памяти вагоны и/или dataset небольшой можно смело закидывать его в pandas безо всяких оптимизаций. Однако, если данные большие, остро встает вопрос, как их обрабатывать или хотя бы считать.

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

В качестве датасета будем использовать хабрастатистику с комментариями пользователей за 2019 г., которая является общедоступной благодаря одному трудолюбивому пользователю:
dataset

В качестве инфо-основы будет использоваться ранее переведенная статья с Хабра, в которой намешано много интересного.
Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии8

Dell Latitude 5491: строгий корпоративный ноутбук с мощным процессором

Время на прочтение9 мин
Количество просмотров21K
Найти компактный ноутбук с мощным процессором не так-то просто. В подавляющее большинство моделей с диагоналями экранов менее 15 дюймов устанавливаются низковольтные процессоры Intel Core U. Что делать, если нужна существенно большая производительность CPU? Для таких случаев есть Dell Latitude 5491. Строгий и достаточно компактный 14-дюймовый ноутбук корпоративного класса с шестиядерными процессорами и дискретной графикой внутри. Сегодня рассказываем о нём подробно – добро пожаловать под кат.


Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии21

Подборка @pythonetc, август 2019

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


Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.

Предыдущие подборки


Если у экземпляра класса нет атрибута с заданным именем, то он пытается обратиться к атрибуту класса с тем же именем.

>>> class A:
...     x = 2
...
>>> A.x
2
>>> A().x
2
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии9

Полезная help-ссылка для работы с данными

Время на прочтение3 мин
Количество просмотров7K
Хабр, привет. Представляю вам главную help-ссылку для работы с данными. Материал в Гугл-доке подойдет как профессионалам, так и тем, кто только учится работать с данными. Пользуйтесь и прокачивайте скиллы сами + делитесь с коллегами.

Дальнейшее описание поста — это содержание help-ссылки. Поэтому, можете сразу ознакомиться с документом. Либо начать с её содержания, которую прикрепляю ниже.

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

image
Читать дальше →
Всего голосов 48: ↑47 и ↓1+46
Комментарии1
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность