Java & JVM langs (Kotlin)
477 subscribers
71 photos
4 files
104 links
Заметки с конференций, тренингов по Java, а также ссылки на полезные материалы для самообразования от Алексея Зиновьева https://t.iss.one/zaleslaw
Download Telegram
Светлана Исакова сделала довольно подробный обзор фич Kotlin 1.4. Это минорная версия языка и прошло не так много времени с момента выхода громких 1.1 и 1.2, поэтому список не поражает воображение, но если вы уже пишите на Kotlin пару лет, то многие вещи будут вам полезные в ежедневной рутинной работе.

• SAM conversions for Kotlin classes
• Explicit API mode
• Trailing comma
• Break and continue inside when expressions
• Mixing named and positional arguments
• New type inference
• Unified exception type for null checks

Мне как создателю библиотек на kotlin подошли очень Explicit API mode и Mixing named and positional arguments.

Не скажу, что я восторге от функциональных интерфейсов fun interface (да-да! и так можно теперь), но я в целом не фанат DSL-ей (мне кажется это заради них делалось).

Света плотно работает с разработчиками Kotlin, поэтому объяснения почему приехала та или иная фича - у нее из первых рук.

https://www.youtube.com/watch?v=9ihevvUCoG0&feature=emb_title
Добрый день, читатели, я почти 9 месяцев работаю в JetBrains и близок к релизу одного интересного артефакта: Kotlin Deep Learning - фреймворка в духе Keras.

Под капотом фреймворка - TensorFlow, вызывать духов можно и из Java.

Если вам интересно принять участие в тестировании ранней версии, заполните, плиз форму.

https://docs.google.com/forms/d/e/1FAIpQLSd2VKmFCAHXtN8ZSDlD_ymDsID0Qf_-FgR6SIzLbD9FakbRwg/viewform
Forwarded from Big Data Russia
А пока группа добровольцев принялась за изучение альфа-версии KotlinDL, а спешу опубликовать один из самых сложных постов в своей жизни, за которым стоят десятки часов труда - результаты вычислительного эксперимента для основных алгоритмов Apache Ignite ML

https://zaleslaw.medium.com/apache-ignite-ml-performance-experiment-4036dc0386a3

При этом ясно, что время работы алгоритма машинного обучения, а в особенности в распределенной среде, такой как Apache Ignite зависит от множества факторов и сложно получить 1-в-1 числа (тем более, что тесты достаточно синтетические).

Я бы выделил следующие факторы:
- базовый алгоритм
- гиперпараметры
- количество нод в кластере
- количество партиций в данных
- показатель точности модели, после достижения которого алгоритм останавливается

P.S. Почему я прошу нахлопать +50 - это увеличивает показы статьи внутри платформы Medium и статьи начинают жить своей жизнью.
P.P.S Мои статьи на medium всегда будут бесплатными, за paywall их не планирую убирать, Science и Research должны принадлежать народу.
P.P.P.S Таблицы в Medium вставлять - это просто ад.
На этой неделе я веду коллективное СМИ, приходите почитать.
https://twitter.com/dsunderhood

Темы, на которые буду писать:

1. Биография (матфак ОмГУ->аспирантура->начало трудовой карьеры->рынок труда в небольшом городе)
2. ML на JVM, текущее состояние
3. SparkML/Ignite ML
5. Kotlin for Data Science
6. Tensorflow, кишки
7. Разное (работа на удаленке, взгляды на жизнь)
Forwarded from Big Data Russia
Добрый день, рад сообщить, что первая альфа-версия KotlinDL (Keras на Kotlin поверх Tensorflow вышла)
https://github.com/JetBrains/KotlinDL

Ставьте звезды, они пригодятся!
Вот наша команда в JetBrains и выпустила многомерные массивы в стиле numpy. Под капотом Openblas или jvm на выбор!
Вышла Java 16 с ее records, поддержкой новых стандартов C++ 14 (вместо унылого, но понятного 98), Foreign Linker API (чтобы ходить в native шустрее чем с JNI) и прекрасный Vector API на развитие которого многие в мире ML/DL возлагают большие надежды. https://habr.com/ru/post/547364/ - тут хороший обзор новых фич. Kotlin без больших проблем всосал в себя Java 16 (я опасался все же за records). Впрочем, ни один OSS проект на Java, к которым я имею отношение не переходит на Java 16 прямо сейчас - скорее это поле для экспериментов и тестирования. Однако, выход новой версии Java на каждом проекте добавляет дровишек в топку разговоров "а не пора ли нам поднять версию с java 8 до java 11". Но обычно дискуссия затихает на том, что "пользователей на java 8 терять не хочется".
#реклама IT-индустрия изменила то, как мы учимся, работаем, знакомимся и едим. Пришла очередь автомобильной индустрии. 15 апреля в 17:00 на Arrival Live команда компании впервые публично расскажет про свой подход к автомобилестроению, мобильные микрофабрики вместо огромных заводов и софт, способный спрогнозировать неисправности и произвести ремонт до поломки.

Возможно онлайн или офлайн участие, но по предварительной регистрации.
Присоединяйся https://meetup.arrival.com/?utm_source=tg&utm_medium=post&utm_campaign=javajvm
Forwarded from Big Data Russia
Я тут записал видео о грядущем полновесном релизе библиотеки, над которой работаю - KotlinDL (https://github.com/JetBrains/KotlinDL), ну вы помните ее.
https://www.youtube.com/watch?v=jCFZc97_XQU&t=10s
Весьма горжусь новым релизом, потому, что в нем появилась возможность загружать себе и дотренировывать модели семейств ResNet, VGG и MobileNet для распознавания изображений.
Также был реализован удобный Kotlin DSL препроцессинг изображений поверх традиционной java-графики.
Появился нормальный Functional API, в целом это уже становится похожим на базовый Keras по функционалу.
Конечно, же, все это нормально работает и из Java, есть примеры и на Java.
P.S Финальный релиз выйдет в течение мая (чортовы майские), а превью уже доступно под именем 0.2-alpha-1
https://github.com/JetBrains/KotlinDL/blob/master/examples/src/main/java/LeNetClassic.java - вот пример на Java, кстати, понимаю, что на билдерах выглядело бы более прикольно, чем на конструкторах, надеюсь появится доброволец, который нам поможет сделать Java API симпатичным
Вышла статья про KotlinDL на Хабре, буду благодарен вам, если вы прочтете статью и поможете в ее продвижении (нам очень нужно, чтобы все разработчики и разработчицы, которым это может быть полезно, узнали), а без стрелочек вверх, они просто утонут.
Одна из лучших инноваций этого года, мои pet проекты на Android сразу стали приятными и шелковистыми на ощупь.

Надеюсь, подобные вещи скоро появятся для быстрого клепания desktop у каждого jvm - ного desktop-щика