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

Julia *

Высокоуровневый высокопроизводительный язык

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

Настройка LaTeX в Sublime Text

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


Ниже представлено руководство по установке текстового редактора Sublime Text, с последующим добавлением в него возможности использования системы компьютерной вёрстки LaTeX. В качестве бонуса научим его понимать язык Julia.

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

6 нежданчиков от Джулии

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


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


Во время поисков наткнулся на курс программирования для экономистов (помимо Джулии там есть и Питон). Опытные могут пробежаться по экспресс курсу или ознакомиться с книгой How to Think Like a Computer Scientist


Далее предоставлен перевод материала из блога Christopher Rackauckas 7 Julia Gotchas and How to Handle Them

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

Julia и оптимизация

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


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

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

Julia и рой частиц

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


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

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

Истории

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

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


Продолжаем знакомство с методами многомерной оптимизации.


Далее предложена реализация метода наискорейшего спуска с анализом скорости выполнения, а также имплементация метода Нелдера-Мида средствами языка Julia и C++.

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

Julia и метод покоординатного спуска

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


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


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

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

Julia. Генераторы отчётов и документации

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


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


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

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

Julia. Строки и Метапрограммирование

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


Продолжаем изучение молодого и перспективного языка общего назначения Julia. На этот раз уделим больше внимания строкам, начнем робкие шаги в мир метапрограммирования и научим интерпретатор производить символьные операции (Под катом всего две картинки, зато много синтаксического сахара)

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

Julia. Скрипты и разбор аргументов командной строки

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


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

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

Julia. Работа с таблицами

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


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


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


Безусловно, одним из важнейших этапов работы программы, выполняющей анализ данных, является их импорт и экспорт. Причем, наиболее распространенный формат представления данных — это таблица. Существуют библиотеки для Julia, которые предоставляют доступ к реляционным СУБД, используют обменные форматы типа HDF5, MATLAB, JLD. Но в данном случае нас будет интересовать только текстовый формат представления таблиц, типа CSV.

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

Julia и движение заряженной частицы в электромагнитном поле

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


Закрепляем навыки решения и визуализации дифференциальных уравнений на примере одного из самых распространенных эволюционных уравнений, вспоминаем о старом-добром Scilab и пытаемся понять, а надо ли оно нам… Под катом картинки (килобайт на семьсот)

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

Julia и уравнения в частных производных

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


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

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

Julia и фазовые портреты динамических систем

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


Продолжаем осваивать молодой и перспективный язык общего назначения Julia. Но для начала нам нужна как раз таки сугубо узкая возможность применения — для решения типичных задач физики. Это самая удобная тактика освоения инструмента: чтоб набить руку, будем решать насущные проблемы, постепенно увеличивая сложность и находя способы облегчения своей жизни. Короче, будем решать дифуры и строить графики.

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

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

Как я с Python на Julia переходил (и зачем)

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

Немного предыстории о Python


Python — замечательный язык. Несколько языков я и до него пробовал: Pascal в школе; Си, Си с классами, Си++ — в университете. Последние два (три) привили стойкое отвращение к программированию: вместо решения задачи возишься с аллокациями и деструкторами (страшные слова из прошлого), мыслишь в терминах низкоуровневых примитивов. Мое мнение — Си не подходит для решения учебных и научных задач (во всяком случае, в области математики). Уверен, что мне возразят, но я никому не пытаюсь ничего навязать, просто высказываю своё мнение.

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

Я бы так наверное всю жизнь и писал бы на Python, если бы не пришлось внезапно реализовывать статистические тесты NIST. Казалось бы, задача очень простая: есть массив длины несколько (>= 10) мегабайт, есть набор тестов, которые надо применить к данному массиву.
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии21

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

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


Продолжаем знакомство с очень молодым, но невероятно красивым и мощным языком программирования Julia. Шестилетняя бета наконец-таки закончилась, так что теперь можно не бояться изменений синтаксиса. И пока все спорят, хорошо или плохо начинать индексацию с единицы, взбудораженное сообщество активно закопошилось: выходят новые библиотеки, старые обновляются, стартуют серьёзные проекты, и в университетах этому языку активно учат студентов. Так не будем же отставать! Завариваем чай покрепче, потому что этой ночью будем кодить!

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

Julia. Знакомство

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

Ода Джулии



Очень трудно передать весь восторг, который сопутствовал запуску первых программ и исправлению первых ошибок с использованием этого языка. Прост и красив как Python, немножко похож на Fortran, удобная работа с массивами и графиками, а также возможность осуществлять лютую оптимизацию и распараллеливание даже для таких чайников, как я мои одногруппники. Можно работать на разных уровнях абстракции: от высокоуровневого программирования с динамической типизацией можно спуститься до ассемблерных команд, то есть, тут вам и питонская общедоступность и скорость выполнения фортрановских считалок. Не могу отделаться от ощущения, что Mathcad, Scilab и даже, прости Господи, C++ начинают в моем сердце уходить на второй план.

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

Кодинг и тестирование kNN в Julia

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


Новый язык в Data Science. В России Julia довольно редкий язык, хотя за рубежом его используют уже 5 лет (тоже мне, удивили). Источников на русском нет, поэтому я решила сделать показательный пример работы Julia, взятый из одной замечательной книги. Лучший способ выучить язык — начни что-то писать на нем. А чтобы это еще и привлекло внимание, используй machine learning.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии6

Видеозапись вебинара «Julia — A fresh approach to numerical computing and data science»

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


Команда FlyElephant в марте проводила вебинар с со-основателем и CEO в Julia Computing, а также со-автором языка Julia — Viral B. Shah, на тему "Julia — A fresh approach to numerical computing and data science".
Смотреть видеозапись и презентацию
Всего голосов 14: ↑11 и ↓3+8
Комментарии1

Вебинар: Julia — A fresh approach to numerical computing and data science

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


Команда FlyElephant приглашает всех на вебинар "Julia — A fresh approach to numerical computing and data science", который проведет со-основатель и CEO в Julia Computing, а также со-автор языка Julia — Viral B. Shah.

Вебинар будет проходить 20 марта в 19:00 (EET) / 9:00 am (PST). Язык — английский.

Все подробности и регистрация здесь
Всего голосов 14: ↑10 и ↓4+6
Комментарии1

Моделирование кинематики — это не сложно

Время на прочтение5 мин
Количество просмотров13K
Мне давно хочется заняться созданием роботов, но всегда не хватает свободных денег, времени или места. По этому я собрался писать их виртуальные модели!

Мощные инструменты, позволяющие это делать, либо сложно стыкуются со сторонними программами (Modelica), либо проприетарны (Wolfram Mathematica, различные САПР), и я решил делать велосипед на Julia. Потом все наработки можно будет состыковать с сервисами ROS.

Будем считать, что наши роботы двигаются достаточно медленно и их механика находится в состоянии с наименьшей энергией, при ограничениях, заданных конструкцией и сервоприводами. Таким образом нам достаточно решить задачу оптимизации в ограничениях, для чего понадобятся пакеты "JuMP" (для нелинейной оптимизации ему понадобится пакет "Ipopt", который не указан в зависимостях (вместо него можно использовать проприетарные библиотеки, но я хочу ограничится свободными) и должен быть установлен отдельно). Решать дифференциальные уравнения, как в Modelica, мы не будем, хотя для этого есть достаточно развитые пакеты, например "DASSL".

Управлять системой мы будем используя реактивное программирование (библиотеку "Reactive"). Рисовать в «блокноте» (Jupyter), для чего потребуются "IJulia", "Interact" и "Compose". Для удобства еще понадобится "MacroTools".
Для простоты рассмотрим 2D робота, сделанного из веревок и пружин
Всего голосов 15: ↑13 и ↓2+11
Комментарии3