All streams
Search
Write a publication
Pull to refresh
4
0
Дмитрий @pdima

User

Send message

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

Каждый раз оцениваю время своей жизни в деньгах при обсуждении зарплаты/рейта.
Похоже либо пропущена нелинейность либо промежуточный слой лишний:
model.add(Dense(hidden_dims))
model.add(Dense(1))


без нелинейности после первого уровня оба уровня заменяются одним Dense(1)

Часто такие расчеты идут на дни/недели, особенно когда данные терабайтные.

медленное но тривиальное решение — добавить bool/enum direction_ в контейнер/итераторы;
смотрю на них и на ум приходит еще несколько вариантов, из-за которых я вношу правки в функцию.
С TDD как раз подходящее время чтобы написать тест на новые случаи, проверить что он не проходит и написать реализацию.
Обычно делают, если меняется один файл и пересобирается тест, с Makefile 1 минута на make, + 3 с на сборку, с nunja — 1 секунда на ninja + 3 с на сборку.
С таким подходом лучше с scratch начинать, там нетривиальные концепции представленные в понятном виде для 7-ми летнего ребенка. Но неужели то что для печати необходимо вызвать функцию становится неопределимым препятствием для студентов?
scratch
image

Не уверен что плюсики стоят настолько высоко в шкале ценностей автора

Выгоднее брать того кто работу сделает и с командой уживется, независимо от пола/возраста/роста/etc. Команду и так непросто собрать, нет смысла уменьшать множество кандидатов.
интересно, не слышал чтобы в джоулях измеряли. Но почему бы и нет, вреда даже меньше чем от других метрик.

в Австралии доступ к медицине например, разница с гражданством только нет права голосовать и служить в армии.

Сильно от задачи зависит, часто в CPU упирается для подготовки и изменения данных. Но в целом да, как раз для ML Xeonы (как и Threadripper) подходят — больше pci-e линий/слотов, больше памяти, ядер.
Я надеялся увидеть как юнит тестом race condition поймать, либо подобное.
В нейросетях задача стоит даже не найти глобальный минимум (там сетка уже давно переобучилась) а найти решение которое будет работать на новых данных. Обычно результаты лучше когда сеть большая но достаточно регуляризованная, плюс обучение с маленьким батчом/большим LR чтобы внести достаточно шума и найти широкий минимум вместо узкого/глубокого. Оптимизаторы второго порядка тут либо плохо/не работают либо больше шанс получить результат хуже на тестовом датасете.

Но независимо от применимости к обучению сеток, спасибо за пост, интересно почитать.
С керасом удобнее взять готовые keras.callbacks.ModelCheckpoint и TensorBoard (и часто LearningRateScheduler). Возможно стоит уменьшить Adam lr, часто значения около 10e-4… 10e-5 работают лучше. Ну и как следующий уровень — попробовать подходы с GAN, но там сложнее все обучить.

интересно, а почему С++ версия не на шаблонах
Сам не пробовал но чуть инфы:
www.seeedstudio.com/Sipeed-Maixduino-Kit-for-RISC-V-AI-IoT-p-4047.html
github.com/kendryte

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

Information

Rating
Does not participate
Location
Queensland, Австралия
Date of birth
Registered
Activity