Как стать автором
Поиск
Написать публикацию
Обновить
0
0
Виктор @Favicon88

Пользователь

Отправить сообщение

Нейросетевой синтез речи своими руками

Время на прочтение12 мин
Количество просмотров100K
Синтез речи на сегодняшний день применяется в самых разных областях. Это и голосовые ассистенты, и IVR-системы, и умные дома, и еще много чего. Сама по себе задача, на мой вкус, очень наглядная и понятная: написанный текст должен произноситься так, как это бы сделал человек.

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



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

Многоязычный синтез речи с клонированием

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

Хотя нейронные сети стали использоваться для синтеза речи не так давно (например), они уже успели обогнать классические подходы и с каждым годам испытывают на себе всё новые и новый задачи.


Например, пару месяцев назад появилась реализация синтеза речи с голосовым клонированием Real-Time-Voice-Cloning. Давайте попробуем разобраться из чего она состоит и реализуем свою многоязычную (русско-английскую) фонемную модель.


Строение



Наша модель будет состоять из четырёх нейронных сетей. Первая будет преобразовывать текст в фонемы (g2p), вторая — преобразовывать речь, которую мы хотим клонировать, в вектор признаков (чисел). Третья — будет на основе выходов первых двух синтезировать Mel спектрограммы. И, наконец, четвертая будет из спектрограмм получать звук.

Парсер Блокчейна в 300 строчек на Python

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

В далёком 2015 году, когда криптовалютам ещё не уделялось такое внимание широкой общественности как сейчас, мне пришла в голову мысль узнать в подробностях — что такое блокчейн, криптовалюты и Биткоин, в частности.

Попытки провести детальный анализ исходного кода проекта Bitcoin Core не увенчались особым успехом, ввиду достаточно строгих начальных условий, которые были мною поставлены перед собой, для того, чтобы сказать «да, теперь я знаю что это и как оно работает» и огромного количества строк исходного кода, которые необходимо было осмыслить, чтобы считать результат достигнутым.

Пришлось искать другие пути. Тем более, к моменту принятия данного решения блокчейн уже полностью загрузился на мой локальный компьютер. А сегодня это уже не так быстро как было тогда.

И так. Официальный клиент Bitcoin Core загрузил весь блокчейн в папку на локальной машине, это были какие-то файлы, которые, как говорилось в официальных документах, содержали всё то, что называется Bitcoin. Самым интересным для меня являлись файлы так называемой RAW Blockchain Data (blk00000.dat… blk01234.dat и т.д. из папки Bitcoin/blocks), а именно файлы базы данных блокчейн как они есть, в исходном виде.

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

Дабы проникнуть в суть, очевидным показалось разобраться в том, что в себе хранит исходная база данных, на основании которой локальная система производит всё дальнейшее необходимое действо для обеспечения функционирования блокчейна данной криптовалюты. Часть технологии, касающаяся сетевых взаимодействий не рассматривалась в данной статье. Намеренно я ограничился именно локальной частью, и именно файлами хранящими блоки.
Читать дальше →

Внедряем оплату BTC куда угодно (Python)

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

Внедряем оплату BTC куда угодно (Python)

- генерация кошелька на основе seed фразы

- проверка баланса и транзакций

- отправка BTC на другие кошельки

- создаем телеграм бота для выполнения операций с BTC

- исходники бота (github)

Читать далее

Как при помощи Rust в 150 раз ускорить код на Python

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров33K

Python — довольно простой в освоении язык, по сравнению с некоторыми другими языками код на нём пишется очень быстро. Но в жертву приносится скорость выполнения кода.


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


Обзор


Проблему решим в 6 шагов:


  1. Решим вопрос о том, почему функция медленная.
  2. Подготовим проект.
  3. Перепишем функцию в Rust.
  4. Скомпилируем код на Rust и разместим его в пакете Python.
  5. Импортируем пакет Python в проект.
  6. Выполним бенчмарк чистого Python и функции на Rust.

Пакет maturin скомпилирует Rust-код и преобразует его в готовый к работе пакет Python.


1. Решим вопрос о том, почему функция медленная


Важно понять, почему функция работает медленно. Давайте представим, что проекту требуется функция подсчёта количества простых чисел в диапазоне между двумя другими числами:

Читать дальше →

Как получить доступ к chatGPT в России

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

Всем привет! Перед началом статьи сразу скажу:

САМЫЙ ВАЖНЫЙ ДИСКЛЕЙМЕР: естественно, покупая смс на чужой номер вы полностью компрометируете безопасность своего аккаунта. Мало ли кто его потом еще купит для получения доступа. Поэтому, помните, что представленный в данной статье способ получения доступа - это только на "поиграться". Не стоит вводить туда свои реальные почты и использовать это в работе, так как полученный доступ может быть в любой момент взломан/прикрыт.

Но да ладно, приступим. Здесь без всякого объяснения того что такое ChatGPT - кому надо тот знает. В этой статье я хочу поделиться путем который вас за 30Р может к этому боту привести. Вдаваться в детали бота я не хочу, это чисто статья для ребят которые хотят без лишних запар пройти путь человека который доступ к боту уже получил :)

Как и многих вокруг, меня удивила новая технология от Open AI. Попытался зайти и зарегистрироваться через гугл, но...

Читать далее

Введение в WSGI-серверы: Часть первая

Время на прочтение5 мин
Количество просмотров153K
Данная статья является переводом статьи Кевина Голдберга «An Introduction to Python WSGI Servers: Part 1» blog.appdynamics.com/engineering/an-introduction-to-python-wsgi-servers-part-1 с небольшими дополнениями от переводчика

image

Краткая история серверов WSGI Python


WSGI-серверы появились потому, что веб-серверы в то время не умели взаимодействовать с приложениями, написанными на языке Python. WSGI (произносится как «whiz-gee» с твердым «g») был разработан Филиппом Дж. Эби (вместе с Ян Бикинг и др.) В начале 2000-х годов. Модуль Apache, известный как mod_python, разработанный Григорием Трубецким в конце 90-х годов, на тот момент обрабатывал большую часть Python-приложений. Однако mod_python не был официальной спецификацией. Он был просто создан, чтобы разработчики могли запускать код Python на сервере. К сожалению, такой подход был небезопасным и разработчики начали искать новое решение.

WSGI(Web-Server Gateway Interface) является потомком CGI(Common Gateway Interface). Когда веб начал развиваться, CGI разрастался из-за поддержки огромного количества языков и из-за отсутствия других решений. Однако, такое решение было медленным и ограниченным. WSGI был разработан как интерфейс для маршрутизации запросов от веб-серверов(Apache, Nginx и т.д.) на веб-приложения.
Читать дальше →

Остап Бендер из мира нейросетей: как ChatGPT играет в шахматы

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

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

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

Читать далее

Понимаем декораторы в Python'e, шаг за шагом. Шаг 1

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

На Хабре множество раз обсуждалась тема декораторов, однако, на мой взгляд, данная статья (выросшая из одного вопроса на stackoverflow) описывает данную тему наиболее понятно и, что немаловажно, является «пошаговым руководством» по использованию декораторов, позволяющим новичку овладеть этой техникой сразу на достойном уровне.

Итак, что же такое «декоратор»?


Впереди достаточно длинная статья, так что, если кто-то спешит — вот пример того, как работают декораторы:
def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped
 
def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped
 
@makebold
@makeitalic
def hello():
    return "hello habr"
 
print hello() ## выведет <b><i>hello habr</i></b>

Те же из вас, кто готов потратить немного времени, приглашаются прочесть длиииинный пост

Как работают Django Class-based views

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

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

Я хочу залезть под капот фреймворка и строчка за строчкой разобрать, как же работают представления на основе классов. Надеюсь, что по прочтении, Class-based views уже не будут казаться такими пугающими и я подстегну вас к дальнейшему самостоятельному изучению исходников. Возможно, вы думали о фреймворке как о некой магии, которую невозможно понять, но на самом деле это обычный код, написанный опытными разработчиками.

Читать далее

Ещё раз про семь основных методологий разработки

Время на прочтение8 мин
Количество просмотров1.1M
Разработка программного продукта знает много достойных методологий — иначе говоря, устоявшихся best practices. Выбор зависит от специфики проекта, системы бюджетирования, субъективных предпочтений и даже темперамента руководителя. В статье описаны методологии, с которыми мы регулярно сталкиваемся в Эдисоне.


Читать дальше →

Мечтают ли нейросети об электроденьгах?

Время на прочтение18 мин
Количество просмотров33K
TL;DR: Нет



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

Почему? Давайте разбираться.
Читать дальше →

Долголетие: технологии и рынок. «Будущее, которое мы заслужили», эпизод 1

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


На днях мы запустили новый подкаст «Будущее, которое мы заслужили». Первый выпуск посвятили технологиям долголетия. И для тех, кому удобнее читать, а не слушать, мы подготовили рассказ по мотивам беседы наших гостей: Максима Холина и Петра Федичева, сооснователей компании Gero, разрабатывающей лекарства для системной борьбы со старением с помощью искусственного интеллекта.
Читать дальше →

Исповедь ничтожества

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

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

P.S. Извиняюсь за кликбейтный заголовок, но, мне кажется, он лучше всего описывает содержание этой статьи.

 P.P.S. Очень много текста внутри. 

Читать далее

Как Tesla изменит мир

Время на прочтение87 мин
Количество просмотров69K
Это перевод статьи Тима Урбана, автора блога Wait But Why, оригинал находится здесь.

Это вторая из четырех частей рассказа о компаниях Илона Маска. О том, с чего все началось и какое отношение имеет Маск ко всему этому — начните с 1-ой части.

Читать дальше →

Neuralink — Будущее, которое сложно себе представить. Вы будете его частью

Время на прочтение8 мин
Количество просмотров45K
Вольный (очень краткий) пересказ статьи Тима Урбана «Neuralink and the Brain’s Magical Future»

Нейролинк – самый амбициозный и важный проект Илона Маска. Его главная цель – создание эффективного интерфейса «Мозг-Компьютер».

image

Для полного осознания значимости сего предприятия рекомендую ознакомиться с переводом статьи Тима Урбана об искусственном интеллекте – Революция Искусственного интеллекта — путь к Супер-интеллекту.

Вкратце, суть такова. Создание искусственного супер-интеллекта (то есть машины, которая переиграет человека абсолютно по всем статьям, начиная от арифметических задач и заканчивая многофакторными образными моделями), потенциально представляет угрозу для человечества. Анализ модели взаимодействия высокоразвитой цивилизации (высокоразвитого интеллекта) с менее развитой демонстрирует, что такое взаимодействие практически всегда заканчивается губительно для менее развитой. Все равно, как человек встречается с мухой: сосуществование возможно, но вероятнее всего, все закончится шлепком газеты…

По мнению большинства экспертов, создание машины, которая в итоге окажется умнее человека по всем статьям – вопрос времени. Особенно стоит отметить, что превосходство это может быть настолько подавляющим и настолько быстро будет реализовано, что мы даже будем неспособны его осознать. Именно этот аргумент является главным в арсенале ученых, инженеров и мыслителей, которые высказывают свои опасения по поводу продолжения разработок в области искусственного интеллекта (ИИ) – мы рискуем вырастить нечто, чем не сможем управлять.
Читать дальше →

Революция Искусственного интеллекта — путь к Супер-интеллекту

Время на прочтение27 мин
Количество просмотров42K
Революция Искусственного интеллекта — путь к Супер-интеллекту

Это перевод статьи, написанной Тимом Урбаном, автором блога www.waitbutwhy.com. После прочтения у меня зашевелились волосы на голове от желания с кем-то обсудить эту статью, но на русском ее прочитать негде, поэтому я без устали пересказывал всем своим друзьям. Прочитайте — это круто!


Примечание: причина, по которой на написание этого поста ушло три недели, состоит в том, что разбираясь в теме, я просто не мог поверить в то, что читал. Довольно быстро я понял, что, то, что происходит в мире Искусственного Интеллекта — это не просто важно, а ЧРЕЗВЫЧАЙНО важно для нашего будущего. Я захотел узнать об этом как можно больше, а узнав, решил написать пост, который бы смог объяснить ПОЧЕМУ это все настолько важно. Чтобы не пугать вас длинной этого текста, я разбил его на две части. Это часть 1.

Мы стоим на пороге перемен, сопоставимых с появлением человеческой жизни на Земле. Вернор Виндж
Читать дальше →

9 причин использовать dataclasses в Python

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

Начиная с версии 3.7 в Python представлены dataclasses (см. PEP 557), новый функционал, определяющий классы, содержащие и инкапсулирующие данные.

Недавно я начал использовать этот модуль в нескольких Data Science-проектах, и мне понравилось. Навскидку этому есть две причины:

Меньше шаблонного кода;

Лучшая читабельность и более простая поддержка кода.

Читать далее

Zettelkasten и Obsidian — лучшие друзья вашей памяти и креативности

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

Как новичку начать вести заметки по методу «Цеттелькастен» в «Обсидиане» и какой в этом смысл.

Читать далее

Персональный экзокортекс, Зеттелькастен и программы для его реализации

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

Один из любимых тропов научных фантастов и авторов в жанре киберпанк в частности — это мечты о том, что однажды сотрется грань между нашим мозгом и компьютерными интерфейсами. Мы сможем подключать наш мозг напрямую к компьютеру или интернету и помнить действительно всё.

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

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность