Как стать автором
Обновить
17
0
Олег @OlegUV

Аналитик

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

Введение в визуализацию данных при анализе с помощью Pandas

Время на прочтение6 мин
Количество просмотров53K
Доброго времени суток, уважаемые читатели.
Как обещалось в предыдущей статье, сегодня я продолжу рассказ о модуле pandas и анализе данных на языке Python. В данной статье хотелось бы затронуть тему быстрой визуализации данных результатов анализа. В этом нам помогут библиотека для визуализации данных matplotlib и среда разработки Spyder.
Читать дальше →
Всего голосов 20: ↑20 и ↓0+20
Комментарии2

Kaggle и Titanic — еще одно решение задачи с помощью Python

Время на прочтение23 мин
Количество просмотров79K
Хочу поделиться опытом работы с задачей известного конкурса по машинному обучению от Kaggle. Этот конкурс позиционируется как конкурс для начинающих, а у меня как раз не было почти никакого практического опыта в этой области. Я немного знал теорию, но с реальными данными дела почти не имел и с питоном плотно не работал. В итоге, потратив пару предновогодних вечеров, набрал 0.80383 (первая четверть рейтинга).



Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии6

Парсинг формул в 50 строк на Python

Время на прочтение4 мин
Количество просмотров43K
Вдохновение — задача с собеседования Яндекса и статья «Парсинг формул в 40 строк».

Моей целью было посмотреть, как будет выглядеть «pythonic» решение этой задачи. Хотелось, чтобы решение было простым, код читаемым и разделённым. В итоге ещё получился и пример применения цепочки генераторов (generators pipeline).
Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии9

Проверка теории шести рукопожатий

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


Хочу рассказать о своем эксперименте по проверке «Теории шести рукопожатий». На написание этого материала меня вдохновила статья «Анализ дружеских связей VK с помощью Python» (чтобы избежать повторений, в дальнейшем я буду ссылаться на нее). Так как в целом задача мной была поставлена по-другому, да и использованные методы тоже отличаются, то я решил что это может быть интересно.
Читать дальше →
Всего голосов 40: ↑30 и ↓10+20
Комментарии20

PyOOCalc — Библиотека для генерации отчетов, счетов Libre/Open Office Calc на Python

Время на прочтение3 мин
Количество просмотров20K
Порой возникают задачи, когда необходимо формировать отчеты и прочие документы. В моей практике данная задача возникала не раз.

Проекты, в которых возникала данная задача:

  • складской учет
  • учет объектов недвижимости
  • документооборот

Первый мой опыт был с MS Office, но позже возникла необходимость в разработке кросс-платформенных решений, посему выбор пал на OpenOffice. Т.к. в большинстве случаев нужно было формировать таблицы, то был выбран OpenOffice Calc.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии2

Нейросеть на Python, часть 2: градиентный спуск

Время на прочтение16 мин
Количество просмотров60K
Часть 1

Давай сразу код!


import numpy as np
X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ])
y = np.array([[0,1,1,0]]).T
alpha,hidden_dim = (0.5,4)
synapse_0 = 2*np.random.random((3,hidden_dim)) - 1
synapse_1 = 2*np.random.random((hidden_dim,1)) - 1
for j in xrange(60000):
    layer_1 = 1/(1+np.exp(-(np.dot(X,synapse_0))))
    layer_2 = 1/(1+np.exp(-(np.dot(layer_1,synapse_1))))
    layer_2_delta = (layer_2 - y)*(layer_2*(1-layer_2))
    layer_1_delta = layer_2_delta.dot(synapse_1.T) * (layer_1 * (1-layer_1))
    synapse_1 -= (alpha * layer_1.T.dot(layer_2_delta))
    synapse_0 -= (alpha * X.T.dot(layer_1_delta))

Часть 1: Оптимизация


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

Суть происходящего в том, что обратное распространение не вносит в работу сети оптимизацию. Оно перемещает неверную информацию с конца сети на все веса внутри, чтобы другой алгоритм уже смог оптимизировать эти веса так, чтобы они соответствовали нашим данным. Но в принципе, у нас в изобилии присутствуют и другие методы нелинейной оптимизации, которые мы можем использовать с обратным распространением:
Читать дальше →
Всего голосов 33: ↑28 и ↓5+23
Комментарии5

Используем TSQL для игры в «Балду»

Время на прочтение12 мин
Количество просмотров9.5K
Недавно я вспомнил об замечательной интеллектуальной игре «Балда», с которой я познакомился еще в школьные годы.

На днях я задался вопросом – насколько сложно будет реализовать алгоритм этой игры для компьютерного соперника?

Так как мне больше всего нравится работать с реляционными данными и моим любимым языком является SQL, то я решил совместить приятное с полезным и попробовать написать этот алгоритм используя только TSQL. Это моя первая попытка написать ИИ используя только возможности SQL.

Архив с файлами можно скачать по следующей ссылке – скрипты.
Все слова в словаре в верхнем регистре, а также в нем буквы «Е» и «Ё» считаются за одну (как «Е»).

В результате была создана следующая схема:

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

COUNT(*)

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


У меня есть подборка простеньких вопросов, которые я люблю задавать при собеседовании. Например, как посчитать общее число записей к таблице? Вроде бы ничего сложного, но если копнуть глубже, то можно много интересных нюансов рассказать собеседнику.

Давайте начнем с простого… Эти запросы отличаются чем-то друг от друга с точки зрения конечного результата?

SELECT COUNT(*) FROM Sales.SalesOrderDetail
SELECT COUNT_BIG(*) FROM Sales.SalesOrderDetail
Подробнее
Всего голосов 84: ↑57 и ↓27+30
Комментарии74

PythonDigest — выпуск номер 100 и другие замечательные новости

Время на прочтение8 мин
Количество просмотров12K
Python жив! С такого громкого заявления хочется начать статью.

На этой неделе вышел 100-тый Python Digest. По такому случаю мы решили подвести итоги работы над дайджестом и рассказать о тенденциях, выявленных в процессе сбора новостей по языку, которому собственно и посвящен дайджест.



В конце 2014 года мы подводили итоги за год. В этот раз мы рассмотрим тенденции за неполные 11 месяцев 2015-года.

Но перед тем как перейдем к тенденциям — расскажем что сделали за (почти) год.

Интересующихся подробностями милости просим под кат.
Подробности
Всего голосов 22: ↑20 и ↓2+18
Комментарии4

Нейросеть в 11 строчек на Python

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

О чём статья


Лично я лучше всего обучаюсь при помощи небольшого работающего кода, с которым могу поиграться. В этом пособии мы научимся алгоритму обратного распространения ошибок на примере небольшой нейронной сети, реализованной на Python.

Дайте код!


X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ])
y = np.array([[0,1,1,0]]).T
syn0 = 2*np.random.random((3,4)) - 1
syn1 = 2*np.random.random((4,1)) - 1
for j in xrange(60000):
    l1 = 1/(1+np.exp(-(np.dot(X,syn0))))
    l2 = 1/(1+np.exp(-(np.dot(l1,syn1))))
    l2_delta = (y - l2)*(l2*(1-l2))
    l1_delta = l2_delta.dot(syn1.T) * (l1 * (1-l1))
    syn1 += l1.T.dot(l2_delta)
    syn0 += X.T.dot(l1_delta)


Слишком сжато? Давайте разобьём его на более простые части.
Читать дальше →
Всего голосов 47: ↑44 и ↓3+41
Комментарии17

Некоторые репозитории в помощь изучающим и преподающим Python и машинное обучение

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


Привет сообществу!

Я Юрий Кашницкий, раньше делал здесь обзор некоторых MOOC по компьютерным наукам и искал «выбросы» среди моделей Playboy.

Сейчас я преподаю Python и машинное обучение на факультете компьютерных наук НИУ ВШЭ и в онлайн-курсе сообщества по анализу данных MLClass, а также машинное обучение и анализ больших данных в школе данных одного из российских телеком-операторов.

Почему бы воскресным вечером не поделиться с сообществом материалами по Python и обзором репозиториев по машинному обучению… В первой части будет описание репозитория GitHub с тетрадками IPython по программированию на языке Python. Во второй — пример материала курса «Машинное обучение с помощью Python». В третьей части покажу один из трюков, применяемый участниками соревнований Kaggle, конкретно, Станиславом Семеновым (4 место в текущем мировом рейтинге Kaggle). Наконец, сделаю обзор попавшихся мне классных репозиториев GitHub по программированию, анализу данных и машинному обучению на Python.

Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии11

50 лучших инструментов для разработки CSS и JavaScript

Время на прочтение3 мин
Количество просмотров74K
Веб-разработчику постоянно необходимо быть в курсе появления новых библиотек и инструментов. Я нашёл и выбрал несколько лучших инструментов для разработки как CSS, так и JavaScript. Это не просто копипаста – это выборка, основанная как на рекомендациях, так и на личном опыте использования.

Разработка фронтэнда – штука хитрая. И хотя она не слишком сложная для освоения, некоторые тонкости освоить также не помешает. В сети ежедневно появляются отличные ресурсы. Они могут дать толчок развитию ваших навыков и помочь вам лучше выполнить вашу задачу.

Лучшие инструменты для CSS и JavaScript


1) Fileicone

Сборник 100%-CSS файловых иконок. Может пригодиться для дизайна страниц.

image

2) Marx

Элегантное обнуление CSS безо всякого JavaScript.

image
Читать дальше →
Всего голосов 54: ↑36 и ↓18+18
Комментарии17

22 правила повествования от Pixar

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

Эти правила впервые появились в твитах автора сценариев из Pixar, Эммы Коатс [Emma Coats]. Кстати, правило №9,– если вы застряли, сделайте список того, что не может произойти,- подойдёт для писателей, работающих в любых жанрах.
Читать дальше →
Всего голосов 46: ↑30 и ↓16+14
Комментарии8

Машинное обучение, предсказание будущего и анализ причин успеха в электронной коммерции

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


Мы продолжаем публиковать материалы с летней конференции Bitrix Summer Fest. На этот раз хотим поделиться выступлением Александра Сербула, посвящённым текущим трендам в сфере машинного обучения, доступным методикам, а также практическим способам использования математики для увеличения конверсии и удержания клиентов.

Материал ни в коем случае не претендует быть формальным и научно строгим. Воспринимайте его как лёгкое, весёлое, полезное и ознакомительное «чтиво».
Читать дальше →
Всего голосов 33: ↑27 и ↓6+21
Комментарии9

Задача о конфетах

Время на прочтение3 мин
Количество просмотров23K
На днях столкнулся с интересной задачкой, которая показалась мне достойной аудитории данного ресурса. Условие ее следующее:

«Найти максимально допустимое отклонение массы конфеты при ее производстве, чтобы нетто коробки, состоящей из 12 штук их, не выходило за пределы 310±7 грамм в 90% случаев. Закон распределения считать нормальным.»

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

Я предложил читателям решить задачу самостоятельно и должен сказать, что они справились с этим лучше меня. В своем же решении я я сделал не верное допущение.
Решение
Всего голосов 31: ↑17 и ↓14+3
Комментарии128

Как легко понять логистическую регрессию

Время на прочтение5 мин
Количество просмотров212K
Логистическая регрессия является одним из статистических методов классификации с использованием линейного дискриминанта Фишера. Также она входит в топ часто используемых алгоритмов в науке о данных. В этой статье суть логистической регрессии описана так, что она станет понятна даже людям не очень близким к статистике.

image
Читать дальше →
Всего голосов 25: ↑19 и ↓6+13
Комментарии2

Применяем корреляцию в ритейле

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

В Datawiz.io, собрав несколько мат-гиков, мы решили попытаться изменить сложившуюся ситуацию. Интересно же использовать свои знания на чем-то реальном, измеримом, и даже, возможно, приносящем пользу обществу. Остановились мы на ритейл индустрии. Ритейл предлагает множество данных для обработки, просто водопад цифр: продажи, чеки, ценообразование, покупатели, программы лояльности,… Есть с чем порезвится.
image

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

Как написать пост с формулами: markdown + LaTeX

Время на прочтение3 мин
Количество просмотров24K
Привет! На Хабре периодически появляются статьи, где авторы хотят вставить математические формулы: inline_formula, inline_formula или даже


У некоторых это получается, у некоторых — с трудом. parpalak сделал web-сервис для вставки svg формул, и это очень круто. Я хочу дополнить его небольшим скриптом, с которым вставка многих формул сведется к одной команде.

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

R и Python — достойные соперники?

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


Всем доброй пятницы, дорогие читатели!

В истории компьютерной редакции издательства «Питер» найдется немного столь успешных книг, как "Программируем на Python" Майкла Доусона и не больше таких противоречивых тем, как изумительный язык R, прочно закрепившийся в числе бестселлерных тем «Амазона». В настоящее время мы договариваемся с правообладателями о новой замечательной книге по Python, но в то же время хотели проверить общественное мнение о R — целесообразно ли издавать новые книги об этом элитарном языке для гуру большой статистики, либо Python легко его одолеет, не то что Аполлона?

Добро пожаловать под кат!
Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии15

Поиск ассоциативных правил в результатах опросов

Время на прочтение4 мин
Количество просмотров11K
Поиск ассоциативных правил хорошо известный метод анализа данных. На Хабре уже была публикация с историей вопроса об этом методе и общими определениями. В этой статье пойдет речь об адаптации алгоритма поиска ассоциативных правил в данных полученных опросами респондентов. Результаты работы алгоритма продемонстрированы на данных европейского социального исследования (ESS).


Foto: Owen Humphreys/AP

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

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность