Начав изучать библиотеку Weka я обнаружила, что в Интернете очень мало информации о ней на русском языке – как с ней работать и как ее использовать. Эта статья будет вводной для знакомства с библиотекой.
Все потоки
- Новые
- Лучшие
- Все
- ≥0
- ≥10
- ≥25
- ≥50
- ≥100
Новости
Энтузиаст воссоздал олдскульный кассетный интерфейс
Полвека назад аудиокассеты были широко распространены, пока их не заменили более современные накопители. Один инженер решил вспомнить прошлое и собрал интерфейс, позволяющий передавать данные с кассеты на компьютер — правда, на современных компонентах. Рассказываем, каким образом он это сделал.
Пепелац из ховерборда. Делаем трайк для инвалида
Судари и сударыни, это моя первая публикация здесь, поэтому позвольте для начала представиться: Зебра, Пыльная Зебра. Скажете — ну вот, еще один псих — не мог получше ник выдумать. Так уж получилось, тот ник, который я использую в других местах, здесь оказался занят, а регистрироваться как-то было надо. Из школьных лет память вдруг вынесла название одного рассказика — ну да ладно, пусть оно и будет.
FOSS News №98 — дайджест материалов о свободном и открытом ПО за 15—21 ноября 2021 года
Всем привет!
Продолжаем дайджесты новостей и других материалов о свободном и открытом ПО и немного о железе. Всё самое главное про пингвинов и не только, в России и мире.
Главные темы нового выпуска:
- GitHub опубликовал ежегодный статистический отчёт за 2021 год.
- Опубликована 58-я редакция рейтинга самых высокопроизводительных суперкомпьютеров.
- В браузер Brave встроили криптокошелёк.
- Выпуск последнего в истории классического CentOS 8.5.
- «Базальт СПО» — победитель ежегодного рейтинга РУССОФТа в номинации «Растущая продуктовая компания».
И многое другое…
Измерение положения ротора СКВТ с помощью микроконтроллера K1986BE92QI
Здравствуйте, уважаемые читатели! Сегодня я расскажу вам об интересном эксперименте - измерении угла положения синус-косинусного вращающегося трансформатора с помощью микроконтроллера K1986BE92QI фирмы Миландр без применения каких-либо специализированных микросхем-контроллеров СКВТ!
Недавно мне на глаза попалось техническое описание советского комплектного электропривода "Размер-2М". Конструктивно это был самый настоящий сервопривод! В качестве датчиков обратной связи на двигателях шпинделя и подач были установлены синус-косинусные вращающиеся трансформаторы (СКВТ), или по-другому, резольверы. С помощью СКВТ помимо фактической скорости вращения определялся фактический угол поворота ротора и эмулировались сигналы инкрементальных энкодеров - двухфазные импульсы для передачи информации о перемещения в УЧПУ станка. Разрешающая способность была равна 10000 дискрет на один оборот ротора. При шаге винта в 10мм это означало что одна дискрета равна одному микрону - и всё это уже было в начале 1980-х! А у меня как нельзя кстати завалялся трофейный советский СКВТ ФВ67-12-008 от "Размера", доставшийся мне на опыты. И мне стало интересно, а как же в "Размере" определялось положение ротора СКВТ? Оказывается, конструкторы "Размера" применили довольно простой фазовый метод. Недолго думая, я решил воспроизвести "Размеровский" измеритель положения СКВТ в лабораторных условиях. Изначально вся затея с СКВТ была чистым экспериментом, который неожиданно дал хорошие результаты и вылился в небольшое исследование по повышению производительности программного кода для микроконтроллеров с ядром ARM Cortex-M3.
Дайджест интересных материалов для мобильного разработчика #420 (15 — 21 ноября)
Почему в наше время нельзя незаметно испытать ядерное оружие?
Артиллерию называли «последним доводом королей». Последним доводом современных правителей можно назвать ядерное оружие. Оно было применено в боевых целях всего лишь дважды – но этого с лихвой хватило всему миру для осознания его разрушительной мощи.
Неудивительно, что заполучить его в свои арсеналы многие страны и правительства захотели едва ли не сразу после того, как осел ядерный пепел Хиросимы. В те времена, впрочем, технологии делали первые шаги, и только сильнейшие в техническом, научном и экономическом отношении страны могли себе позволить ядерные разработки. Однако время шло, и чем дальше, тем более простым оказывался доступ к стартовому пакету «собери ядерную бомбу».
Как хранить данные в png, не привлекая внимания санитаров
Всё началось с мема, который вы видите выше.
Сначала я посмеялся. А потом задумался: может ли быть так, что скриншот базы равноценен её снэпшоту?
Для этого у нас должно быть такое графическое представление базы, которое 1 к 1 отображает данные и структуру. Если сделать скриншот такого представления, из него можно восстановить базу.
Или... графическое представление и должно быть базой!
Kaggle titanic dataset. Анализ данных с помощью SQL запросов
Не смотря на то, что Python был бы предпочтительным инструментом для исследовательского анализа, я хотел посмотреть, смогу ли я провести весь исследовательский анализ с помощью SQL-запросов. Моя цель - показать, насколько сильно может помочь SQL для рабочего процесса.
Хотя SQL имеет ограничения с визуализацией данных, всё равно, можно получить больше выгоды, быстро написав запросы и выведя результаты.
Собираем статическую библиотеку через CMake под Android
Являясь не Android разработчиком, но имея хорошие базовые знания в Java, мне выпала небольшая research задача под Android платформу, для решения которой нужно было интегрировать стороннюю с/c++ библиотеку в Android Studio проект. В данном статье будет:
- пошаговое описание как собрать c/c++ проект, который корректно настроен под CMake систему сборки
- интеграция полученной библиотеки в Android проект через Android Studio
Введение
Поиск по ключевым словам в русскоязычном сегменте интернета на удивление дал мало результатов на данную тему. Но нашлась единственная довольно подробная статья на хабре https://habr.com/ru/company/e-Legion/blog/487046/, с которой вы заметите как сходства, так и различия. Для сравнения подходов решил так же для примера использовать проект с открытым исходным кодом https://opus-codec.org, что и в указанной статье. Система на которой будут выполняться все эксперименты MacOS Big Sur имея на борту cmake версии 3.19.3.
Сразу хочу отметить, что не являюсь экспертом по CMake и Android. Все действия, описанные в статье, вы делаете на свой страх и риск и автор не несет никакой ответственности за ваше потраченное время.
Дифференциальная приватность для моделей PyTorch с библиотекой Opacus
Эта статья носит прикладное значение и не объясняет все подробности дифференциальной приватности. Цель статьи - познакомить читателя с библиотекой Opacus и показать, как изменять классификатор без потерь в эффективности обучения.
Анонимизация не всегда эффективна
Приватность - сложная вещь.
Как показала практика Netflix в соревновании Netflix Prize простой анонимизации набора данных недостаточно.
Мы разберем, как использовать библиотеку, на примере обучения модели классификации PyTorch набору MNIST с использованием DP-SGD.
Подключение и Настройка ElasticSearch + MySql + Yii2
Если вдруг поиск на вашем проекте начал тормозить, то самое время присмотреться к поисковым движкам.
Сегодня я расскажу как установить и настроить поисковой движок ElasticSearch на сервере под управлением Ubuntu и сделать авто импорт данных из MySql, а также мы настроим взаимодействие Yii с движком ES.
Как зарегистрировать пользователя и не сломать себе голову
С чего начинается работа с приложением, ботом или сайтом?
Ответ прост — с регистрации пользователя в вашей системе.
В этой статье я расскажу, с какими неочевидными проблемами мы столкнулись при разработке регистрации в ботах, сайтах и приложениях. Простая на первый взгляд операция может принести существенные проблемы, если не учитывать некоторые нюансы.
Электрогитара для путешествий
Некоторое время назад посетила меня мысль «хочу научиться играть на гитаре». Думал-думал и купил электрогитару. Примерно полгода я делал к ней подходы, но в итоге дело не пошло и гитара была продана.
Одной из причин «не пошло» стало то, что в тот момент жизни я активно перемещался и дома бывал недостаточно часто (либо время было позднее), чтобы постоянно тренироваться. Однако мысль о гитаре меня не отпускала. Прошло несколько лет, я поменял работу, появилась более-менее своя площадь и мысли снова начала крепнуть. Я снова купил электрогитару и начал заново учиться на ней играть. Но снова упёрся в то, что дома вечерами есть другие дела, а на даче время вроде и есть, да вот перспектива возить туда и обратно гитару на себе не радовала (машины нет).
Были мысли найти гриф, натянуть на нём струны. Это позволит тренировать аккорды, может даже разучивать мелодии… нет. Как минимум нужно контролировать, что не задеваю пальцами соседние струны, да и сам прижим. Значит нужен функционирующий инструмент. Но размеры… размеры надо уменьшать. И желательно не тратить на это много денег
Управление своей образовательной и карьерной траекторией
Статья о предпосылках и методах построения персональной образовательной и карьерной траектории. О практических результатах попытки системного решения данной задачи в условиях, с одной стороны, сверхизобилия информации об образовании и методов обработки данных, и, с другой стороны, огромного числа учащихся, не ответивших для себя на два фундаментальных вопроса: что я хочу и как этого достичь?
Мы должны сказать спасибо KDE за современный веб
Мне всегда нравилась История. История дает понять мотивацию и причины произошедших событий, она срывает покровы, обличая случайные успехи и спланированные крахи. Сегодня я попытаюсь проследить одну ветвь эволюции браузерных движков и показать — насколько велика связь в мире открытых технологий.
Современный стек данных: прошлое, настоящее и будущее
Недавно с такой темой я выступил на конференции Future Data*, организованной Sisu, и поскольку мыслю я в прозе, а не картинками в PowerPoint, мне пришлось написать пост, прежде чем собрать все слайды вместе. (*Речь о первой ежегодной конференции, которая состоялась осенью 2020 года — прим. переводчика) Немного времени мне потребовалось на то, чтобы всё это отшлифовать и опубликовать, и, надеюсь, для вас материал окажется ценным. Если хотите услышать выступление полностью, вы можете сделать это здесь.
На пороге бессмертия
С того времени, как человек получил возможность называться разумным, его постоянно донимал вопрос: как избежать смерти? Не то чтобы люди жаждали бессмертия, они просто не хотели умирать. Однако ни молитвы, ни махинации знахарей-алхимиков не помогали. Победа над смертью казалась всё более недостижимой, и к началу 21-го века даже самые отчаянные фантазёры мечтали разве что об увеличении продолжительности жизни.
И вот, когда надежда, казалось бы, окончательно увяла, тема вечной жизни вновь обрела актуальность. Взрывное развитие биофизики и робототехники обозначило пути достижения бессмертия совершенно отчётливо.
Распутывание микросервисов или балансировка сложности в распределенных системах
Эта статья является переводом материала «Untangling Microservices, or Balancing Complexity in Distributed Systems».
Расцвет микросервисов закончился. Uber преобразовывает тысячи микросервисов в более управляемое решение [1]; Келси Хайтауэр предсказывает, что будущее за монолитами [2]; и даже Сэм Ньюман заявляет, что микросервисы никогда не должны быть выбором по умолчанию, а скорее крайним средством [3].
Что происходит? Почему так много проектов стало невозможно поддерживать, несмотря на обещание микросервисов простоты и гибкости? Или все-таки монолиты лучше?
В этом посте я хочу ответить на эти вопросы. Вы узнаете об общих проблемах проектирования, которые превращают микросервисы в распределенные большие комки грязи (distributed big balls of mud), и, конечно же, о том, как их избежать.
Алгоритм. Очередь с приоритетом
В этой статье я покажу очередь с приоритетом с использованием linked list. Алгоритм простой и позволяет получить приоритетные сообщения раньше, чем остальные сообщения.
Я сначала поискал в интернете реализацию такого алгоритма. Первое, что я нашел, это решение на c++ с обычными массивами. То есть создается шаблонный класс и в нем создается два массива, один для чисел, другой для приоритетности. Мне показалось, что решение не очень хорошее, потому что при добавлении нового числа, создается новый массив и из старого копируются данные в новый массив. Чем больше очередь, тем больше копирования каждый раз. Ещё проблема при использовании массива - это что нельзя использовать в другом потоке очередь, пока ты не выполнишь полностью функцию вставки данных в очередь, так как смениться указатель на массив и так далее.
Алгоритм - очередь с приоритетом достаточно простой, мы создаем структуру, я опять буду показывать пример кода на C, и входящие данные будут числа. итак.