Как стать автором
Поиск
Написать публикацию
Обновить
6.65

R *

Язык для статистической обработки данных

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

Прием докладов на конференцию по искусственному интеллекту и большим данным AI&BigData Lab

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


4 июня в Одессе, наша команда FlyElephant совместно с GeeksLab будет проводить третью ежегодную техническую конференцию по искусственному интеллекту и большим данным — AI&BigData Lab.

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

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

Отчет с прошлого года — здесь.

Маршрут перемещения потока данных: загрузка в реляционную БД

Время на прочтение3 мин
Количество просмотров6K
Использование языка программирования R вместе со свободной реляционной системой управления базами данных PostgresSQL может значительно ускорить и упростить процесс загрузки данных в БД.



Структурирование файлов


Перед началом загрузки данных в PostgreSQL, следует рассортировать файлы по типу в разные директории. R делает операции достаточно простыми на уровне ОС:

#### 1. Setting directory to FTP folder where files incoming from Adobe
## Has ~2000 files in it from 2 years of data
setwd("~/Downloads/datafeed/")

#### 2. Sort files into three separate folders
## Manifests - plain text files
if(!dir.exists("manifest")){
  dir.create("manifest")
  lapply(list.files(pattern = "*.txt"), function(x) file.rename(x, paste("manifest", x, sep = "/")) 
}

## Server calls tsv.gz
if(!dir.exists("servercalls")){
  dir.create("servercalls")
  lapply(list.files(pattern = "*.tsv.gz"), function(x) file.rename(x, paste("servercalls", x, sep = "/"))) 
}

## Lookup files .tar.gz
if(!dir.exists("lookup")){
  dir.create("lookup")
  lapply(list.files(pattern = "*.tar.gz"), function(x) file.rename(x, paste("lookup", x, sep = "/"))) 
}


Читать дальше →

Видео-туториалы запуска вычислительных задач на Python, R, С++, Octave и Blender во FlyElephant

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

В качестве вычислительного ресурса сейчас используется облако Azure, а пользователи могут запускать вычислительные задачи, написанные с помощью С++ (с поддержкой OpenMP), R, Python, Octave, Scilab, Java, Julia, OpenFOAM, GROMACS, Blender на серверах с количеством ядер от 1 до 32 и оперативной памятью до 448 ГБ.

Сегодня мы хотим поделиться видео-туториалсами запуска задач во FlyElephant. Под катом вы найдете видео, как запускать вычислительные задачи, написанные с помощью С++, R, Python, Octave и рендерить изображения с помощью Blender, а также промо-код для получения бесплатных дополнительных часов работы ваших задач.
Читать дальше →

Школа Данных «Билайн»: весна, знания, новый курс

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


Привет, Хабр.

Итак, третий курс Школы Данных «Билайн» подходит к завершению и мы набираем четвёртый.

У нас 18 занятий, 36 часов, все основные темы машинного обучения и анализа данных, куча практики, куча домашек, два Kaggle соревнования, презентации и воркшопы от партнеров, возможность устройства в Билайн в команду BigData для лучших студентов, сокурсники из различных областей бизнеса, где применяется машинное обучение и много чего ещё.
Читать дальше →

Генерация и визуализация многомерных данных с R

Время на прочтение4 мин
Количество просмотров14K
Возможность генерировать данные с заданной корреляцией очень важна для моделирования. В R ожидаемо обширный набор инструментов — пакетов и функций для генерации и визуализации данных из многомерных распределений. Базовая функция для генерации многомерных нормально распределенных данных — mvrnorm() из пакета MASS, части R, хотя пакет mvtnorm также предлагает функции для симуляции и многомерного нормального, и t-распределения.
Читать дальше →

Настройка LaTeX-шаблонов для Jupyter notebook

Время на прочтение4 мин
Количество просмотров31K
Есть отличный инструмент для обучения/отчётов/написания умных книг про код — Jupyter Notebook. Если отчёт или книга, например, пишутся на кириллице, а нужно быстро сделать из этого PDF с красивыми формулами и тире правильной длины, то сразу обнаруживается проблема: в стандартном шаблоне, который Jupyter использует для конвертации блокнотов в PDF через LaTeX, нет подключения нужных пакетов с нужными параметрами, поэтому LaTeX просто не компилируется и PDF не получить.
Что делать?

Стратегии по ускорению кода на R, часть 2

Время на прочтение4 мин
Количество просмотров4.4K
Цикл for в R может быть очень медленным, если он применяется в чистом виде, без оптимизации, особенно когда приходится иметь дело с большими наборами данных. Есть ряд способов сделать ваш код быстрее, и вы, вероятно, будете удивлены, узнав насколько.

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

Давайте попробуем ускорить код с циклом for и условным оператором (if-else) для создания колонки, которая добавляется к набору данных (data frame, df). Код ниже создает этот начальный набор данных.
# Создание набора данных
col1 <- runif (12^5, 0, 2)
col2 <- rnorm (12^5, 0, 2)
col3 <- rpois (12^5, 3)
col4 <- rchisq (12^5, 2)
df <- data.frame (col1, col2, col3, col4)

В первой части: векторизация, только истинные условия, ifelse.
В этой части: which, apply, побайтовая компиляция, Rcpp, data.table, результаты.
Читать дальше →

Стратегии по ускорению кода на R, часть 1

Время на прочтение3 мин
Количество просмотров7.3K
Цикл for в R может быть очень медленным, если он применяется в чистом виде, без оптимизации, особенно когда приходится иметь дело с большими наборами данных. Есть ряд способов сделать ваш код быстрее, и вы, вероятно, будете удивлены, узнав насколько.

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

Давайте попробуем ускорить код с циклом for и условным оператором (if-else) для создания колонки, которая добавляется к набору данных (data frame, df). Код ниже создает этот начальный набор данных.
# Создание набора данных
col1 <- runif (12^5, 0, 2)
col2 <- rnorm (12^5, 0, 2)
col3 <- rpois (12^5, 3)
col4 <- rchisq (12^5, 2)
df <- data.frame (col1, col2, col3, col4)

В этой части: векторизация, только истинные условия, ifelse.
В следующей части: which, apply, побайтовая компиляция, Rcpp, data.table.
Читать дальше →

Школа Данных «Билайн», для менеджеров

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


Привет, Хабр!

Итак, мы запустили третий курс Школы Данных «Билайн». Подробный отчет о занятиях от одного из участников можно почитать здесь.

Отчеты о работе Школы мы также будем выкладывать на официальной странице Школы в Facebook. Там же будем отвечать на вопросы, которые также можно направлять на dataschool@beeline.digital.

Набираем 4-ый курс, который стартует с 4 апреля. Запись, как всегда, на странице Школы.

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

Мы сейчас не будем говорить о том, что на заре больших данных считалось, что основные инсайты и применения аналитики идут скорее от данных. Это безусловно есть, но в нашей практике это происходит в соотношении 80 к 20, где 80 процентов всех задач для аналитика или даже больше рождается от бизнеса.

Однако, как же бизнес генерит эти задачи, если он, бизнес, не разбирается в аналитике данных? Да, очень просто. В нашей компании мы потратили какое-то время на объяснение бизнесу возможностей аналитики данных и теперь разные подразделения заваливают нас заказами придумывая все новые применения этим инструментам.
Читать дальше →

AI, BigData & HPC Digest #4

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

Хабр, привет!

Команда FlyElephant подготовила для Вас новый дайджест, включающий в себя подборку ссылок на интересные материалы по направлениям: искусственный интеллект, большие данные и высокопроизводительные вычисления.
Читать дальше →

Как уменьшить количество измерений и извлечь из этого пользу

Время на прочтение10 мин
Количество просмотров54K
Сначала я хотел честно и подробно написать о методах снижения размерности данных — PCA, ICA, NMF, вывалить кучу формул и сказать, какую же важную роль играет SVD во всем этом зоопарке. Потом понял, что получится текст, похожий на вырезки из опусов от Mathgen, поэтому количество формул свел к минимуму, но самое любимое — код и картинки — оставил в полном объеме.
Читать дальше →

Как безопасно хранить и использовать в R секретные данные

Время на прочтение5 мин
Количество просмотров7.1K
Периодически возникает вопрос, как можно безопасно хранить логин и пароль в R, не задавая эти данные в явном виде в вашем скрипте. Мне кажется, есть несколько возможных решений. Можно хранить ваши параметры:
  1. Непосредственно в скрипте.
  2. В файле внутри папки с проектом, который вы не показываете.
  3. В файле .Rprofile.
  4. В файле .Renviron.
  5. В json файле.
  6. В безопасном хранилище, к которому вы обращаетесь из R.
  7. Используя пакет digest.
  8. Используя пакет sodium.
  9. Используя пакет secure.

Давайте рассмотрим основную идею, преимущества (или недостатки) каждого из подходов.
[От переводчика: упорядочено по мере возрастания полезности.]
Читать дальше →

Школа Данных «Билайн», каникулы закончились

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


Привет, Хабр!

Надеемся, что в Новогодние праздники многие из Вас отлично отдохнули. Но, каникулы закончились. Пора вернуться к машинному обучению и анализу данных. С 25 января мы запускаем третий набор Школы Данных «Билайн».

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

Кстати, если вы уже активно занимаетесь анализом и обработкой текстов и хотите попробовать себя, рекомендуем поиграться с задачей The Allen AI Science Challenge на Kaggle=) и заодно поучаствовать в DeepHack, хакатоне по анализу текстов и построению ответных систем.

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

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

Revolution R переименован в Microsoft R и доступен бесплатно для разработчиков и студентов

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

За девять месяцев, с тех пор как Microsoft приобрела Revolution Analytics, компанией было выпущено много обновлений для Revolution R Open и Revolution R Enterprise, не говоря уже об интеграции R с SQL Server, PowerBI, Azure и Cortana Analytics.
Читать дальше →

Новые инструменты (Octave и Scilab) во FlyElephant и анонс вебинаров

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


Команда FlyElephant поздравляет всех с наступившим Новым Годом. Мы начинаем этот год с расширения списка инструментов, вебинаров и формирования сообщества вокруг проекта.

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

Для пользователей платформы FlyElephant стали доступны Octave и Scilab, таким образом полный список поддерживаемых языков и инструментов следующий: GCC (с поддержкой OpenMP), R, Python (v2 & v3), Octave и Scilab. Для участников программы бета-тестирования стал доступен следующий инструментарий: Java (v7 & v8), Julia, OpenFOAM, GROMACS и Blender. Если Вы еще не являетесь пользователем платформы FlyElephant, то зарегистрироваться можно здесь. В честь Нового Года Вы можете пополнить свой счет на $300 введя в Личном кабинете специальный промо-код: 195708679772.
Читать дальше →

Использование apply, sapply, lapply в R

Время на прочтение5 мин
Количество просмотров47K
Это вводная статья об использовании apply, sapply и lapply, она лучше всего подходит для людей, которые недавно работают с R или незнакомы с этими функциями. Я приведу несколько примеров использования функций семейства apply, поскольку они часто применяются при работе в R.

Я сравнивал эти три метода на наборе данных. Была сгенерирована выборка, и они к ней применялись. Хотелось посмотреть, чем отличаются результаты их применения.

Также использовался тестовый стенд, который возвращал матрицу. В ней было три колонки и около 30 строк. Выглядело примерно так:

method1  method2    method3 
[1,] 0.05517714 0.014054038 0.017260447
[2,] 0.08367678 0.003570883 0.004289079
[3,] 0.05274706 0.028629661 0.071323030
[4,] 0.06769936 0.048446559 0.057432519
[5,] 0.06875188 0.019782518 0.080564474 
[6,] 0.04913779 0.100062929 0.102208706

Такие данные можно симулировать с помощью rnorm, чтобы создать три набора. Первый — со средним, равным 0, второй — со средним 2, третий — со средним 5, и 30 строк.

m <- matrix(data=cbind(rnorm(30, 0), rnorm(30, 2), rnorm(30, 5)), nrow=30, ncol=3)
Читать дальше →

AI, BigData & HPC Digest #3

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


Привет, Хабр!

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

14-го января мы проведем вебинар на тему "Введение в машинное обучение", на котором поговорим об истории и основных понятиях машинного обучения. Рассмотрим популярные задачи/алгоритмы машинного обучения, а также запустим их примеры при помощи платформы FlyElephant и узнаем как возможно использовать данную платформу для решения задач искусственного интеллекта. Зарегистрироваться на вебинар можно здесь.
Читать дальше →

Фестиваль Данных в музее Москвы, как это было

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


Привет Хабр,

Итак, мы провели Фестиваль Данных на выставке новых технологий SMIT в Музее Москвы, о котором писали здесь.

Это первое мероприятие из серии, в которой мы собираем экспертов из разных областей бизнеса, науки и государственного управления и рассказываем про аналитику данных.

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

Отпуск. Где? Когда? R

Время на прочтение4 мин
Количество просмотров13K
imageВ то время как за окном температура на пути к очередным рекордам, интересно посмотреть, а какие вообще бывали температуры в произвольный интервал времени, за любые года за последние несколько десятилетий в 30 000 точках по всему миру. А может не прогадать с днями отпуска, и взять их в те дни, когда есть какое-то «статистическое преимущество» в выбранном местоположении по теплой погоде, а может быть по холодной, оценив его визуально на любой из трех типов диаграмм. Ну или можно просто повращать глобус, визуально оценить разнообразие температур и «как прекрасен этот мир».
Описание далее

Фестиваль данных в музее Москвы, или как Big Data помогает жить и работать

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


Привет Хабр,

Если вам давно было интересно, как Big Data применяется в разных областях бизнеса, науки и государственного управления и это хотелось услышать от самих людей, которые этим занимаются, то добро пожаловать на Фестиваль Данных, который будет проходить 19 декабря на Выставке Высоких Технологий SMIT в Музее Москвы.

В течение нескольких часов работы Фестиваля ведущие эксперты отрасли из Yandex, Школы Данных «Билайн», Data-Centric Alliance, Авито, ГУП «НИ и ПИ Генплана Москвы, НИУ ВШЭ расскажут гостям выставки о перспективах использования анализа данных в ближайшие несколько лет.
Читать дальше →

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