Недавно мне пришлось разбираться с Xamarin Forms и на глаза попалась такая штука как CSharpForMarkup. Она показалась очень интересной, поскольку позволяет использовать стандарный C# вместо XAML, тем самым нивелируякучу неудобств связаных с XAML. Но реализация биндингов мне показался недостаточно хорошой. Поэтому я начал её улучшать при помощи expression-ов и Roslyn анализаторов. Кому интересно что с этого получилось прошу под кат.
User
Я 20 лет наслаждаюсь разнообразием архитектур и хочу поделиться мыслями
Сначала хотел написать комментарий к статье "Я десять лет страдал от ужасных архитектур в C#...", но понял две вещи:
- Слишком много мыслей, которыми хочется поделиться.
- Для такого объёма формат комментария неудобен ни для написания, ни для прочтения.
- Давно читаю Хабр, иногда комментирую, но ни разу не писал статей.
- Я не силён в нумерованных списках.
Disclaimer: я не критикую @pnovikov или его задумку в целом. Текст качественный (чувствуется опытный редактор), часть мыслей разделяю. Архитектур много, но это нормально (да, звучит как название корейского фильма).
Однако давайте по порядку. Сначала моё мнение о том, что влияет на архитектуру, потом про спорные моменты в статье об «исправлении архитектур». Ещё расскажу о том, что у нас хорошо работает — может, пригодится кому-нибудь.
Расширьте возможности машинного обучения Azure с помощью расширения VS Code
Возможно некоторые из вас читают о Azure ML и расширении впервые — не волнуйтесь, мы здесь, чтобы рассказать об этом больше.
Azure ML — это сервис машинного обучения, который предоставляет исследователям, работающим с данными, широкий набор инструментов для создания, обучения и развертывания моделей. Расширение AML — это сопутствующий инструмент, который обеспечивает управляемый опыт, помогающий создавать ресурсы и управлять ими непосредственно из VS Code. Расширение направлено на оптимизацию задач, таких как проведение экспериментов, создание вычислительных целей и управление средами, без необходимости переключения контекста из редактора в браузер. Пользователи расширений могут работать в своих рабочих пространствах и взаимодействовать со своими основными ресурсами AML с помощью простого дерева навигации и с помощью команд по щелчку мыши.
Подробнее о начале работы со службой Azure ML можно узнать здесь. Если вы хотите поэкспериментировать с расширением, вы можете установить его здесь и прочитать документацию по началу работы здесь!
Сравнение мозга с нейронной сетью
Можно встретить много критических замечаний о том, что биологический мозг или биологические нейронные сети работают совершенно не так как ныне популярные компьютерные нейронные сети. К подобным замечаниям прибегают различные специалисты, как со стороны биологов, нейрофизиологов так и со стороны специалистов по компьютерным наукам и машинному обучению, но при этом очень мало конкретных замечаний и предложений. В этой статье мы попытаемся провести анализ этой проблемы и выявить частные различия между работой биологической и компьютерной нейронной сетью, и предложить пути улучшения компьютерных нейронных сетей которые приблизят их работу к биологическому аналогу.
.NET Core: Взаимодействие микросервисов через Web api
Введение
Практически все, кто имел дело с микросервисами в .NET Core, наверняка знают книгу Кристиана Хорсдала “Микросервисы на платформе .NET”. Здесь прекрасно описаны подходы к построению приложения на основе микросервисов, подробно рассмотрены вопросы мониторинга, журналирования, управления доступом. Единственное, чего не хватает — это инструмента автоматизации взаимодействия между микросервисами.
При обычном подходе при разработке микросервиса параллельно разрабатывается web-клиент для него. И каждый раз, когда меняется web-интерфейс микросервиса, приходится затрачивать дополнительные усилия для соответствующих изменений web-клиента. Идея генерировать пару web-api/web-клиент с использованием OpenApi тоже достаточно трудоемка, хотелось бы чего-то более прозрачного для разработчика.
Итак, при альтернативном подходе в разработке нашего приложения хотелось бы:
Структуру микросервиса описывать интерфейсом с использованием атрибутов, описывающих тип метода, маршрут и способ передачи параметров, как это делается в MVC.
Функциональность микросервиса разрабатывается исключительно в классе,
реализующим этот интерфейс. Публикация конечных точек микросервиса должна быть автоматической, не требующей сложных настроек.
Web-клиент для микросервиса должен генерироваться автоматически на основе интерфейса и предоставляться через Dependency Injection.
Должен быть механизм организации редиректов на конечные точки микросервисов из главного приложения, взаимодействующего с пользовательским интерфейсом.
Настройка нейронной сети для детекции необходимых объектов
Нейронные сети – сложные математические алгоритмы, которые помогают решать большой круг задач. Перед использованием их необходимо настроить и обучить. Обучение нейронной сети достаточно долгий по времени и затратный по вычислительным ресурсам процесс. Однако существуют инструменты, благодаря которым мы можем упростить эти проблемы. Сегодня мы рассмотрим процесс переобучения нейронной сети по детекции определенного объекта на изображении.
В качестве примера для детекции объектов будем использовать алгоритм YOLOv3. Дополнительные материалы по статье вы сможете найти на github странице. Пример установки и настройки осуществляется на ОС Windows 10.
В первую очередь нам необходимо скачать или клонировать необходимые материалы для переобучения нейронной сети под определенный тип объекта с данной github страницы. Для того чтобы не возникало проблем с доступом или разрешениями, материалы лучше разместить в директории своей учетной записи, например: C:\Users\user_name\Documents\NN\.
1. Переходим в папку yolov3-master, вызываем терминал (командную строку) и выполняем команду pip install -U -r requirements.txt. При запуске команды некоторые из пакетов не установились, т.к в репозитории pip для windows, пакетов с таким названием не существует. Чтобы установка прошла успешно, в requirements.txt мы должны закомментировать несколько пакетов («torch >= 1.5» и «pycocotools»). Затем установить pytorch с помощью следующей команды:
Использование Graylog и NLog для сбора логов от приложений на C#. Личный опыт
КДПВ
Хабр, приветствую!
Описанное ниже ни в коем случае не tutorial или best practice. Я решил всего лишь агрегировать и задокументировать свои достижения в поставленном вопросе.
Надеюсь, содержимое данной статьи позволит ищущим информацию по логированию почерпнуть что-то новое или принять какое-либо решение. И, само собой, надеюсь получить конструктивный фидбек от сообщества. Это даёт шанс делать что-то лучше.
Применение машинного обучения и Data Science в промышленности
Отмечу, что если среди читателей есть желающие помочь, и добавить в любую из подотраслей подходящий проект, пожалуйста, свяжитесь со мной. Я их добавлю в список. Итак, давайте начнём изучение списка.
Один день до DotNext 2019 Piter. Анонс бесплатной трансляции
15 мая, то есть уже завтра, состоится конференция DotNext 2019 Piter. Это два дня докладов про настоящее и будущее платформы .NET, оптимизацию производительности, детали внутреннего устройства платформы, архитектуру, решение необычных задач и так далее.
Общее количество докладов на конференции — 31. Из них вы сможете совершенно бесплатно посмотреть на YouTube доклады первого дня, проводящиеся в первом зале — 5 штук. В той же онлайн-трансляции будут онлайн-интервью между докладами. Что это за доклады — обсудим под катом.
Трансляция начнется в 9:45 утра (по московскому времени), через 15 минут начнётся открытие, а закончится всё ближе к 7 часам вечера. Открывать ссылку именно в 9:45 необязательно — ссылка будет работать весь день, поэтому можно открывать её только на наиболее важных докладах.
Ссылка на сайт трансляции — под катом. Там же есть краткое описание докладов и обсуждение пары вещей, которых на трансляции (даже если купили онлайн-билет) всё-таки не будет.
Deep Learning в вычислении оптического потока
TensorFlow для начинающих. Часть 1: общие сведения, установка библиотеки
Этот материал посвящён основам TensorFlow и рассчитан на читателей, которые ничего не знают о данной библиотеке.
«Zero Security: A» — курсы этичного хакинга для начинающих
Одним из основных направлений PENTESTIT является разработка специализированных программ начальной (Zero Security: A) и профессиональной (Корпоративные лаборатории) подготовки в области информационной безопасности. Вне зависимости от программ обучения, их ключевыми особенностями являются актуальный материал и практическая подготовка в пентест-лабораториях, составляющая 80% от общей программы курса. В данной статье мы разберем несколько примеров практических заданий «Zero Security: A».
Большинство специалистов, проходящих обучение, являются действующими сотрудниками подразделений информационной безопасности, системными администраторами или техническими специалистами, желающими повысить свой профессиональный уровень в области практической ИБ.
- УК РФ и преступления в сфере информационных технологий;
- Модели угроз, их виды, объекты исследований;
- Знакомство с Linux. Введение в Kali Linux 2.0 и обзор стандартного инструментария;
- Разведка и сбор информации;
- Сканирование сети;
- Эксплуатация web-уязвимостей, введение в Burp Suite, знакомство с OWASP Top-10;
- Безопасность сетевой инфраструктуры;
- Анализ защищенности беспроводных сетей;
- Введение в Metasploit Framework;
- Обход проактивных систем защиты;
- Введение в социальную инженерию;
- Итоговое тестирование. Окончание стажировки.
Unity — Концептуальные идеи и подсказки для новичков игродева. Мощная оптимизация 2D проекта
Быстрое вступление
Я долго думал какую тему выбрать на этот раз, и решил, что расскажу про некоторые фишки, которые помогут оптимизировать вашу игру. Особенно это будет актуально для новичков, потому что чаще всего первая игра оказывается игрой для смартфонов и планшетов. А на мобилках, сколько бы там ядер не оказывалось — 6 или 8, игры все ещё очень несбалансированные в плане потребления ресурсов. Код и его идея, которые будут приводится в этой статье являются немного более сложными для понимания чем те две строчки кода, которые я приводил в своей предыдущей публикации. Хотя, я не правильно выразился — код легко понять — но порог вхождения в это понимание будет чуть выше чем легко (для новичков конечно), придется посидеть минут 5.
Введение в идею
Как вы создаете объекты в Unity из префабов? Только Instantiate и никак иначе — другой функции там просто не существует.
Для тех кто не помнит или еще не знает, что такое Instantiate (), маленькая справка — *аргументы инстанции*. Вот вы их создаете (объекты), и создаете, иногда удаляете, потом опять создаете, и так в течении всего уровня. Это бьёт по оптимизации и существенно — почему? Потому что так написано на всех форумах Unity, а иногда проглядывается и в документации, а документацию надо слушаться. Как Instantiate бьет по про производительности?
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity