Spark in me - Internet, data science, math, deep learning, philo

snakers4 @ telegram, 1166 members, 1154 posts since 2016

All this - lost like tears in rain.

Internet, data science, math, deep learning, philosophy.
No bullshit.

На чай
- goo.gl/zveIOr
- Договор ТКС 5011673505

Сайт spark-in.me
Файл goo.gl/5VGU5A
Чат goo.gl/IS6Kzz

Posts by tag «data_science»:

snakers4 (Alexander), December 08, 16:35

Прикол с работы. Потратил какое-то время на проверку архитектур из статей (уже продисконтировав на 90% весь мусор). В итоге оказалось, что простой энкодер + transfer learning лучше, чем то что предлагают ученые. Можно, конечно, сделать скидку на разницу в скорости работы в несколько раз - но иметь 100 или 300 FPS - разницы особо нет.

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

Sad but true.

#data_science

snakers4 (Alexander), December 08, 10:25

Про разницу между cosine similarity и евклидовым расстоянием. Суть - евклидово расстояние зависит от длины вектора, а cosine similarity - нет.

cmry.github.io/notes/euclidean-v-cosine

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

#data_science

SDM - Euclidean vs. Cosine Distance

This post was written as a reply to a question asked in theSocial Data Mining course.


snakers4 (Alexander), December 08, 07:50

Просто несколько графиков отсюда - goo.gl/efmUYg

- Papers по годам - goo.gl/KnZyFb

- Звезды на гите - goo.gl/pQNPR8 (почему TF такое ужасное АПИ имеет - вероятно т.к. много пошло на маркетинг)

- Конференции - goo.gl/NGAedK

- Точность Imagenet - goo.gl/EmvBfo

- Самые крутые достижения AI за последние годы - goo.gl/NNg95U

#data_science

snakers4 (Alexander), December 08, 07:31

Интересное в мире ML / Deep Learning

Как обычно пропускаю через себя много мусора, чтобы найти что-то ценное =)

"Книги"

- Еще одна "книга" - записки ML специалиста - goo.gl/Wmes7p

Python

- Если хотите быстро понять в чем разница между hdf5 и bcolz вам сюда - goo.gl/wfcCri

Reading and writing data to a bcolz.carray is typically a lot faster than HDF5- Есть еще pytables - но я читал, что он более монструозный. Вообще такие штуки нужны если у вас есть массивы на сотни миллионов - миллиарды строк и вы хотите быстро оттуда читать

- Прослойка, чтобы работать с датафреймами на GPU - goo.gl/r8KPGd - если вы в курсе зачем и как - поделитесь опытом в чате ( GPU Dataframe of GPU Open Analytics Initialive (GOAI) )

Deep learning

- Сетки работают т.к. в мире физики доминируют относительно простые функции - goo.gl/JmTA2Y

- Adversarial example для вашего мозга - попробуйте понять что это - goo.gl/PGdX5m

- Фреймворки - новый способ доминирования на рынке ML - goo.gl/ZtMJVF (почему интерфейсы TF такое говно тогда? =) )

- PR кривые в тензорборд - может кому надо - goo.gl/5gM6a1

- Новая статья на Хабре про интуиции нейросетей - goo.gl/fwxcrC

- Безумие - но из попиксельных карт теперь можно создавать улицы в 2К разрешении

-- goo.gl/hoCA4C

-- www.youtube.com/watch?v=3AIpPlzM_qs

-- генератор goo.gl/myMXTQ

-- дискриминатор goo.gl/oki5rq

- Нашумевший StarGan - goo.gl/Gsvuoe

Machine learning / data science

- Внезапно гугл применил свой алгоритм для Го для шахмат - goo.gl/jwTtwb

- Новая статья на Distill - goo.gl/uLXJMr - про artificial intelligence augmentation (AIA): the use of AI systems to help develop new methods for intelligence augmentation - внезапно они тоже нарисовали списрального кота - goo.gl/4KJemD

- Фейсбук и алгоритмы предсказания суицидов - goo.gl/tsZvfH

- Статья от авторов LightGBM - goo.gl/NQFxai

Датасеты

- Мозилла открывает модель и очень много данных по распознаванию голоса

-- данные - voice.mozilla.org/data

-- модель - github.com/mozilla/DeepSpeech

Железо

- Nvidia Titan V - пускайте слюни за US$3k - www.youtube.com/watch?time_continue=43&v=NPrfiOldKf8

#digest

#data_science

#deep_learning

snakers4 (Alexander), December 07, 07:15

Нашел просто великолепный конвертер моделей из pytroch в keras, который по идее должен снизить длину пути в продакшен + сборник других конвертеров:

- github.com/ysh329/deep-learning-model-convertor

- github.com/nerox8664/pytorch2keras

Мне очень понравилось как умно автор решил вопрос конвертации из Pytorch - он идет по графу вычислений и создает модель на keras нативным образом, что по сути дает большую свободу маневра.

#deep_learning

#data_science

ysh329/deep-learning-model-convertor

deep-learning-model-convertor - The convertor/conversion of deep learning models for different deep learning frameworks/softwares.


snakers4 (Alexander), December 05, 05:59

Про капсульные сети на русском

- habrahabr.ru/company/recognitor/blog/343726/

Выше было видео более интуитивное, но если вы не знаете английский, то это тоже в копилку.

#data_science

#deep_learning

Капсульные сети от Хинтона

27 октября 2017 года появилась статья доктора Джофри Хинтона с соавторами из Google Brain. Хинтон — более чем известный ученый в области машинного обучения.


snakers4 (Alexander), December 04, 11:16

Попробовал это на реальной модели

- github.com/pkdn/pytorch-smoothgrad

Под капотом все оказалось просто.

Эта штука реально работает.

#data_science

#deep_learning

pkdn/pytorch-smoothgrad

pytorch-smoothgrad - SmoothGrad implementation in PyTorch


snakers4 (Alexander), December 04, 08:41

Народ периодически спрашивает чем я занимаюсь. Я особо не горю желанием рассказывать детали (ну и как-то неправильно ИРЛ палиться), но отдельные моменты просто заслуживают того, чтобы ими поделиться.

Собрал список самых тупых своих и не только ошибок за последнее время с которыми сталкивался:

- spark-in.me/post/best-errors-ever

Как говорится - умные учатся на ошибках других, но свой набор граблей все равно неизбежно будет собран =)

#data_science

#deep_learning

What nobody will tell you about what they do

Article about the most stupid errors possible and how to ideally avoid them Статьи автора - http://spark-in.me/author/snakers41 Блог - http://spark-in.me


snakers4 (Alexander), December 01, 11:54

На новой работе увидел, что люди тренируют свои модели на 2 питоне (ЩИТО?), на tensorflow (WTF???) и грузят данные в 1 поток (2017 год на дворе!).

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

- goo.gl/ne9RH4

Все простое - очень просто, главное просто знать где искать)

#data_science

#deep_learning

#python

image processing

Leveraging your hardware and software for NNs Efficiently, better with pytorch* =) * for research and competitions


snakers4 (Alexander), November 30, 08:18

Офигенная статья про Soft Proposal Networks for Weakly Supervised Object Localization

- yzhou.work/SPN/

- код на Pytorch github.com/yeezhu/SPN.pytorch

- в выходные проверю работает ли оно

Зачем это надо?

- допустим у вас разметка на уровне видео или картинки, а вы хотите узнать где именно объект

- это же применимо и для анализа работы вашей сетки наряду с такими вещами как deconv, guided gradient descent или smooth grad

#deep_learning

#data_science

snakers4 (Alexander), November 28, 13:58

Интересное в мире ML

- Еще одно, поверхностное, объяснения КапсНета - goo.gl/hYvZZV

- Датасет с 11к рук + метаданные - goo.gl/YVfPvi

- ONNX (типа единый формат для моделей) это уже часть Pytorch - pytorch.org/docs/master/onnx.html

- Nature запускает свой ML журнал - goo.gl/arzNg3

- Apple делает что-то с беспилотными авто - goo.gl/nMqzJ1

- Гугл снижает цены на топовые GPU прошлого поколения - goo.gl/4oM5wd

- Очень красивая но бесполезная практика с методами уменьшения размерности - goo.gl/UDgmUT

- Еще один алгоритм в копилку алгоритмов снижения размерности

-- PCA

-- T-SNE

-- UMAP - goo.gl/jFSBFZ

-- HDBscan - github.com/scikit-learn-contrib/hdbscan

- Fchollet про буллшит и general AI - goo.gl/zai717

" The intelligence of an octopus is specialized in the problem of being an octopus. The intelligence of a human is specialized in the problem of being human."

- Advisory Body про AI в UK - goo.gl/yZNBfD

- Офигенный пост про анализ комментов про отмену net neutrality - goo.gl/3ZahMM (!)

- Еще раз наткнулся на либу для NLP spacy - кто пробовал, норм? - spacy.io

#data_science

#digest

Capsule Networks (CapsNets) – Tutorial

CapsNets are a hot new architecture for neural networks, invented by Geoffrey Hinton, one of the godfathers of deep learning. NIPS 2017 Paper: * Dynamic Rout...


snakers4 (Alexander), November 27, 06:17

Заметка.

Если вы хотите дать полноценное окружение на своей машине третьей стороне (другу, коллеге, девушке, участнику вашей команды), которые либо не обладают супер админскими навыками или просто не должны иметь root доступ или доступ туда, куда не надо, то есть очень простой способ это сделать:

- Поднимаете докер, ставите sshd сразу в докерфайле

- В докере должен быть ваш любимый софт + jupyter notebook со всеми свистелками

- Прокидываете папки и диски, ставите ограничения на RAM, видеокарты и CPU при docker run (или nvidia docker run)

- В докерфайл также прописываете установку glances

- После запуска контейнера делаете exec внутрь него и запускаете sshd

- Естественно надо не забыть пробросить порты в докере и своей сетевой инфраструктуре и включить пароль или ssh ключ на этапе создания образа по докерфайлу

- Итог - вы даете URL + ключ от jupyter notebook коллеге + ssh доступ внутрь контейнера. При этом внутри него он царь и бог и видит нагрузку и свои процессы (glances + nvidia-smi), но не может вообще ничего плохого сделать с системой, т.к. включаете контейнер и монтируете папки вы

И не надо возиться с виртуальными машинами, и видеокарты пробрасываются отлично!

#data_science

#linux

snakers4 (Alexander), November 26, 05:37

Еще раз ссылка, как кажется на банальную статью про нейросети - почему они не тренируются, когда должны. За последние 2 недели я собрал почти все эти костыли. Особенно радует, когда теряешь 3-4 дня суток расчетов.

- theorangeduck.com/page/neural-network-not-working

#data_science

#deep_learning

My Neural Network isn't working! What should I do?

Orange Duck's Website


snakers4 (Alexander), November 24, 07:36

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

- Архитектура - goo.gl/uBrBA4 goo.gl/HzGqQp

- Статья - goo.gl/mWdhsS

- Основные идеи:

-- Некоторые сети улучшают точность за счет длины (резнет) и skip connections

-- Некоторые за счет ширины - inception

-- Некоторые за счет связей - densenet

- Практика и почему не используется на соревнованиях

-- Новая и хуже изучена чем VGG и Resnet

-- Жрет больше памяти чем резнет на таком же числе параметров и сравнимой точности

-- Тяжело и хз как правиольно тренировать

- Коллеги говорят, что сама архитектура пока сырая

#data_science

#deep_learning

snakers4 (Alexander), November 23, 09:03

В работе с картинками полезно почитать про способы экстраполяции картинок

- graphicdesign.stackexchange.com/questions/26385/difference-between-none-linear-cubic-and-sinclanczos3-interpolation-in-image

#data_science

Difference between None, Linear, Cubic and Sinc(Lanczos3) interpolation in image scaling?

While scaling images in GIMP in the Quality section I was prompted to choose one of the following interpolations: None Linear Cubic Sinc(Lanczos3) What is the difference between these and which o...


snakers4 (Alexander), November 21, 11:45

Великолепная серия статей про то, как пользоваться pandas

- tomaugspurger.github.io/modern-1-intro

#data_science

datas-frame – Modern Pandas (Part 1)

Posts and writings by Tom Augspurger


snakers4 (Alexander), November 21, 10:21

Интересное в мире ML

- Import AI - goo.gl/97JzTx

- Еще раз великолепная статья про визуализации нейросетей от Гугла - обязательно прочитайте - distill.pub/2017/feature-visualization/

- Канадские ученые - открытое письмо к правительство запретить использование AI в оружии - goo.gl/dixya1

- Еще один потенциальный вендор карт для нейросетей - goo.gl/dJ4CMJ

- Еще есть такая флешка (200 GFLOPs) - goo.gl/Usi1Qp

- Apple про свой детектор лиц на айфонах - goo.gl/1krh5H

- В tf пытаются встроить подобие PyTorch - goo.gl/eCYzU3

- Как правильно обращатсья с бейслайнами - goo.gl/ChgA1c

- Просто оставлю эту ссылку на форум тут - goo.gl/ZemhhL - огромный сборник best practice-ов для PyTorch

#digest

#data_science

Feature Visualization

How neural networks build up their understanding of images.


snakers4 (Alexander), November 18, 15:39

Интересное в мире ML

- Открылся конкурсе по распознаванию голоса - goo.gl/ojBHv7 - судя по всему там будет замес (прошло несколько дней, а там уже ажиотаж), но сам конкурс очень интересный

- Датасет с этого конкурса - goo.gl/CnDyGU

- Про инжиниринг фич - goo.gl/YvdBcZ

- Нейросетки для музыки - goo.gl/2baKrB

- LSTM для систем рекоммендаций - goo.gl/xPLDKn

- Прикольно про жанры музыки - похоже на то, как мы сами это делали - goo.gl/3QnfXG

- Бенчи сеток на TF по скорости работы. Кто инженер - налетай - github.com/taehoonlee/tensornets

- Как люди писали сетки 10 лет назад - goo.gl/4Biyom

- Плагин Chrome для archiv - fermatslibrary.com/librarian - по мне Менделей лучше

- Топовое решение с конкурса Carvana - github.com/asanakoy/kaggle_carvana_segmentation. Из важного:

-- Pytorch

-- Кастомные генераторы у всех участников

-- Сахар для работы с Tensorboard

-- Консольные скрипты с параметрами для запуска моделей

-- Копипаста - Юнет и подобные модели

#digest

#data_science

TensorFlow Speech Recognition Challenge

Can you build an algorithm that understands simple speech commands?


snakers4 (Alexander), November 18, 13:12

Про юпитер тетрадки и их киллер фичи для сомневающихся

- www.youtube.com/watch?v=FwUcJFSAfQw

На практике, все что относится к фронтенд компонентам (виджеты, iframe) как правило не всегда стабильно и предсказуемо.

Из того, что надо начать юзать еще - сниппеты и split cells.

Недавно пробовал сравнивать с Zeppelin - вторые вообще ни в какое сравнение не идут)

#data_science

10 things you really should know about jupyter notebooks - Jakub Czakon
Description Jupyter notebooks are great. They are interactive, customizable and beautiful. Unfortunately only a small fraction of data scientists takes the f...

snakers4 (Alexander), November 17, 11:44

Библиотека, которая позволяет использовать почти все визуализации tensorboard с pytorch

- github.com/lanpa/tensorboard-pytorch

Особенно интересен пример для отладки графа вычислений

- goo.gl/oLWhfP

#data_science

#pytorch

lanpa/tensorboard-pytorch

tensorboard-pytorch - tensorboard for pytorch


snakers4 (Alexander), November 16, 05:32

Из интересного в новых плагинах в jupyter (все откладываем работу через IDE?)

- там появился variable inspector - незаменимая штука когда у вас много шагов и переменных

- там появились десктопные уведомления - не решение, но помогает, если вы пьете чай и ждете свой небольшой скрипт

#data_science

snakers4 (Alexander), November 16, 05:15

Каггл увеличит размеры своих датасетов в 20 раз. Вроде как мало, но 500 мб - уж совсем мало.

- goo.gl/nSdksa

Для обучения - скорее всего самое оно. Может народ станет выкладывать туда датасеты, а не на academic torrents (где нет сидов) или AWS, который в СНГ медленно качается.

Например на AWS с каггла качается со скоростью 20-30 мбайт/c, что неплохо, но машины с нормальной скоростью IO и одновременно карточками там стоят очень дорого.

#data_science

snakers4 (Alexander), November 11, 16:34

В keras, чтобы использовать встроенную многопоточность в методе fit, надо по идее писать thread-safe генераторы, что иногда немного раздражает.

К счастью, авторы keras сделали специальный класс (очень похожий на класс dataset в pytorch) для решения этой проблемы:

- keras.io/utils/#sequence

#data_science

#deep_learning

snakers4 (Alexander), November 11, 11:27

Подписчик канал прислал бенчмарки разных библиотек для работы с видео.

TLDR

- они все используют ffmpeg по умолчанию, так что все это реплицируется через него, только не так удобно

- по скорости - все более менее одинаково

- imageio - имеет по сути 1 метод и лучше всего подходит для последовательного чтения кадров

- moviepy - имеет тонну возможностей, и если вы хотите читать, скажем, 2 кадра в секунду, а не 25 - то она может работает быстрее

HTML

- resources.spark-in.me/video_loading_benchmark.html

IPYNB

- resources.spark-in.me/video_loading_benchmark.ipynb

#data_science

#video

snakers4 (Alexander), November 10, 06:44

Интересное в мире ML:

- Import AI - goo.gl/RwZRzQ

- Гугл продолжает развивать свой auto-ml. Безумие конечно, но они уже сделали это на Imagenet

-- goo.gl/Ng9d8f

-- goo.gl/oZX9td

- Еще раз отчет - the state of data science 2017 от Kaggle - goo.gl/oKjVtx

- Огромные инвестиции в распознавание лиц от России и Китая - goo.gl/qL5SWQ

- Это безумие, но фейсбук научился переводить с одного языка на другой вообще без размеченных текстов сразу на 2 языках - goo.gl/NgLcJE

- Ian GoodFellow про фейковые новости - goo.gl/ihBhgm

- Еще раз про капсульные сетки - hackernoon.com/what-is-a-capsnet-or-capsule-network-2bfbe48769cc

#data_science

#deep_learning

#digest

Import AI: #67: Inspecting AI with RNNVis; Facebook invents counter-intuitive language translation method; and what fractals have to do with neural architecture search

All hail the AI inspectors: New ‘RNNVis’ software makes it easier to interpret the inner workings of recurrent nets. …Figuring out why a particular neural network is classifying s…


snakers4 (Alexander), November 09, 06:45

Ну и визуализации того, что видит inception

- distill.pub/2017/feature-visualization/appendix/

#data_science

snakers4 (Alexander), November 09, 06:01

Отличная статья про визуализацию слоев нейросетей

- distill.pub/2017/feature-visualization/

Я пробовал использовать готовые библиотеки для таких целей - никакие из них реально не работали из коробки (как правило требовалось использовать legacy софт, устаревшие библиотеки или пройти 10 шагов компиляции). Единственное что более-менее нормально заводилось - saliency maps на картинках в keras-viz.

Из интересного в статье:

- Основные подходы к визуализации - feature visualization and attribution (saliency maps) goo.gl/p3hQVX

- Как правило визуализация делается через генерацию картинок, которые максимально активируют какой-то кусочек нейросети - goo.gl/26pGej goo.gl/HKqgHr

- На практике зачастую получается шум вместо красивых картинок - goo.gl/WRiHcT

- По идее только такая визуализация реально ответит вам на что реально реагирует нейросеть - на танки или на время суток - goo.gl/D1bXRJ

- Забавные эффекты можно получать смешивая максимизацию разных нейронов - goo.gl/CH3JAC

- В статьях по визуализации самое значительное внимание уделяется регуляризации, т.к. если просто взяться за визуализацию - то получится шум (как у меня было с курами) - goo.gl/YcnxVJ

Все это очень интересно, наглядно и не очень исследовано.

#data_science

#deep_learning

Feature Visualization

How neural networks build up their understanding of images.


snakers4 (Alexander), November 06, 13:33

Нашел еще одну онлайн книгу про машинное обучение.

Кто-то сделал опен-сорсную книгу в виде заметок на полях, видимо написанных в процессе своего обучения

- leonardoaraujosantos.gitbooks.io/artificial-

inteligence/content/feature_scaling.html

#data_science

#book

Log in to Your Account · GitBook

GitBook is where you create, write and organize documentation and books with your team.


snakers4 (Alexander), November 06, 05:56

Несколько раз завел пайплайны с ImgAugs - они не такие уж и медленные. Вероятно в прошлый раз беда была с легаси кодом ипмелементации.

На pytorch вообще неплохо получается, когда мы "дешевые" аугментации делаем многопоточно и грузим в очередь, прежде чем запихивать на видеокарту. Особенно если высокая скорость чтения и многоядерный процессор - чтение из видео последовательно не является боттл-неком.

Вообще получается неплохое сочетание для работы с видео:

- moviepy + jupiter notebooks для EDA с видео

- opencv для работы с bbox-ами и детекцией движения

- image.io для генерации входных данных для нейросети без распаковки видео (работает только для простой логики типа склеить кадры - если нужно что-то более монструозное, особенно со снижением размерности, то лучше делать предобработку с сохранением на диск)

- imgaugs + пара расширений классов и свои наработки для генераторов

#deep_learning

#video

#data_science

snakers4 (Alexander), November 05, 04:03

Интересное в мире ML:

- Опрос - the state of ML от Каггла - www.kaggle.com/surveys/2017 . 2 графика наглядно иллюстрируют почему у нас зачастую ищут разрабов с налетом работы с данными, а не наоборот (понятно что у нас никто не отвечает на опросы, умножьте цифру в голове на 2)

-- goo.gl/8MU62f

-- goo.gl/8M3eAs

- Люди начинают делать аггрегаторы пре-тренированных моделей - этот pretrained.ml - судя по всему не работает. Качаем из доки своего любимого фреймворка пока...

- Якобы прорыв в архитектуре сетей - goo.gl/UvtrBj - arxiv.org/pdf/1710.09829.pdf - goo.gl/x6dhQJ - но пока только на MNIST

- Nvidia тренирует GAN прогрессивно на растущем разрешении и это якобы быстрее - arxiv.org/pdf/1710.10196.pdf

- Многобукв про то, что через годик появится много чипов для ML с 10x производительностью при таком же потреблении энергии - goo.gl/U7JTNF

- Uber открывает свой фреймворк для байесовых моделей - goo.gl/jWxFSj

- Популярная статья про adversarial аттаки на сети - goo.gl/2qMPHT и по сути самый важный код умещается на половину страницы

#digest

#data_science

#deep_learning

The State of ML and Data Science 2017

A big picture view of the state of data science and machine learning that shares who is working with data, what’s happening at the cutting edge of machine learning across industries, and how new data scientists can best break into the field.