Стт на русском: CNN (США) – последние публикации на русском и обзоры событий
Главная – BBC News Русская служба
Главное
LIVE Live, Война в Украине: новый большой обмен пленными, Россия ночью нанесла масштабный ракетный удар
Последние новости, комментарии и видео о войне России против Украины.
Читайте также
“Хуже всего, когда в болоте заклинит автомат”. Рассказ украинского бойца с передовой в Бахмуте
Похоже на НЛО: как военные используют воздушные шары
Воздушные шары стали трендом в мировых новостях, и интерес аудитории к ним вероятно, возникает отчасти из-за того, что в XXI веке кажется странным, что военные разных стран могут заниматься таким необычным занятием, как запуск воздушных шаров. Что им, спутников и беспилотников не хватает?
Власти Никарагуа лишили гражданства 94 известных критиков президента Ортеги
Суд в Никарагуа лишил гражданства 94 критиков президента Даниэля Ортеги.
Судья, оглашая решение, назвал диссидентов “предателями отечества”. Среди лишенных гражданства – писатель и революционер Серхио Рамирес, поэтесса и писательница Джоконда Белли и католический епископ Сильвио Баез.
Видео, В Москве полиция задержала гея из Чечни, Продолжительность 1,58
Идриса Арсамикова задержали в аэропорту чеченские полицейские. Куда его увезли неизвестно.
“Набор случайных людей”: что говорят адвокаты и близкие арестованных за взрыв Крымского моста
По обвинению во взрыве Крымского моста российские силовики арестовали восемь человек. Адвокаты и родственники арестованных подчеркивают, что люди сами приезжали на опросы, за свой счет жили в гостинице по просьбе спецслужб и в целом максимально старались помогать следствию, настаивая на своей невиновности.
Би-би-си рассказывает, что сейчас известно об этом процессе.
“Мама, главное – я живой и здоровый”. В лагере российских военнопленных в Украине
Команда Би-би-си побывала там, куда журналистов пускают очень редко – в месте, где содержат российских военнопленных.
Турция по-прежнему готова принять в НАТО Финляндию, но не Швецию
На совместной пресс-конференции после встречи с генсеком НАТО Йенсом Столтенбергом министр иностранных дел Турции Мевлют Чавушоглу заявил, что Швеция все еще не сделала достаточно для борьбы с курдским терроризмом, и Анкара не готова поддержать ее заявку на вступление в альянс.
Последняя тайна Долины Царей: 100 лет назад был найден саркофаг Тутанхамона
16 февраля 1923 года английский археолог Говард Картер вошел в погребальную камеру, хранящую саркофаг и мумию фараона Тутанхамона.
Его находка стала одним из величайших археологических открытий XX века.
Письмо с британского курорта пришло в Лондон через 100 с лишним лет
Конверт с почтовым штемпелем города Бат и маркой в 1 пенс с изображением короля Георга V и штампом 1916 года прибыл в Лондон в 2021 году.
В России ловят “диверсантов” на железных дорогах. Какие известны случаи и в чем обвиняют задержанных
Под Луганском обнаружены новые захоронения: возможно, это могилы бойцов ЧВК “Вагнер”
Землетрясение в Турции и Сирии: чудеса спасения и угроза массовых инфекций
Журналистку из Сибири приговорили к шести годам колонии за пост о разбомбленном театре в Мариуполе
Завод в Мариуполе и магазины OBI.

Повоевав в Украине, приближенные Рамзана Кадырова стали получать в захваченных городах активы. Чеченский бизнесмен Валид Корчагин стал совладельцем компании “ММК Ильича”, которая может заняться восстановлением меткомбината в Мариуполе. Би-би-си выяснила, что Корчагин связан с семьей сенатора Сулеймана Геремеева.
Девятый “Рамштайн”: решения по самолетам для Украины нет, на повестке – ПВО, снаряды и танки
Очередная встреча министров обороны стран-партнеров Украины не принесла ожидавшихся в Киеве новостей о поставках самолетов, однако участники встречи подтвердили готовность помогать боеприпасами – больше и быстрее, чем раньше.
На землетрясении в Турции наживаются мошенники – они собирают деньги якобы на помощь пострадавшим
Журналисты Би-би-си выявили несколько мошеннических схем сбора денег якобы на помощь пострадавшим от землетрясения, а также привели несколько рекомендации, как обезопасить себя от обмана.
“Ни палаток, ни помощи”: почему сирийцы считают, что после землетрясения их бросили на произвол судьбы
Подавляющая часть международных усилий по помощи жертвам землетрясения сосредоточена в Турции, тогда как в соседней Сирии – острая нехватка всего: от спасательной техники до медикаментов. Репортаж корреспондента Би-би-си Квентина Соммервилля.
В Турции из-под завалов спасли 10-дневного младенца, общая картина бедствия чудовищна
Из Турции и Сирии продолжают поступать сообщения о чудесных спасениях, однако в целом надежд найти живых под завалами в зимнюю погоду все меньше. Тем временем набирает ход международная кампания по сбору помощи пострадавшим странам.
Что делать при землетрясении и как к нему можно подготовиться?
Землетрясение в Турции и Сирии магнитудой 7,8 унесло более 7 тыс.
жизней и застало жителей врасплох. И хотя эксперты признают, что с точностью предсказать это стихийное бедствие невозможно, есть способы хотя бы отчасти снизить риски и обезопасить себя.
Почему современные дома в Турции рухнули во время землетрясения, как карточные домики?
В Турции растет недовольство по поводу несоблюдения правил строительства, что повлекло за собой обрушение зданий во время недавнего землетрясения. Би-би-си проверила информацию о недавно построенных зданиях, рухнувших во время катастрофы.
Год войны. Почему западные санкции не остановили Путина
Почему санкции не разорили Россию? Пострадал ли сам Запад? Помогут ли санкции освободить Украину от агрессора? Восемь вопросов о том, кто выигрывает в санкционной войне.
Кадры разгромленной российской колонны – что произошло под Угледаром?
Разгром российской колонны под Угледаром, в результате которого, по подсчетам различных источников, были уничтожены более 30 боевых машин, оставил много вопросов, ответы на которые попыталась найти Русская служба Би-би-си
1000 человек за четыре месяца: что известно о смертях российских мобилизованных
На основе открытых источников Би-би-си удалось установить имена 1037 мобилизованных россиян, погибших на войне в Украине. По меньшей мере 400 из них погибли, начиная с января. Мы попытались разобраться, в чем причина таких потерь.
Битва за Бахмут. Россия медленно занимает территорию вокруг города
Репортаж корреспондента Би-би-си Орлы Герин из Бахмута, где украинские военные пытаются сдержать атаки российской армии.
Данные спутников подтверждают осушение Каховского водохранилища россиянами. Это чревато тяжелыми последствиями
Россия, похоже, осушает крупное водохранилище в украинской Каховке, чем ставит под угрозу поставки питьевой воды, сельскохозяйственное производство и безопасность крупнейшей в Европе Запорожской атомной станции.
Дроны-гранатометчики – дешевая и опасная новинка войны в Украине
Каждая крупная война привносит кустарные новинки. Российско-украинская подарила богу войны дешевое и опасное средство – гранату, подвешенную на квадрокоптер. Какие коррективы в ход военных действий вносит эта наработка и чего от нее ждать в ближайшей перспективе?
“Он всю жизнь сидел”.
Что известно о наемнике ЧВК “Вагнер” из нового видео с “казнью кувалдой”
В телеграм-канале, связанном с ЧВК “Вагнер”, появилось второе за последние месяцы видео “казни” бывшего заключенного, завербованного на войну в Украине и попавшего в плен. Однако на следующем видео “казненный” мужчина, крымчанин Дмитрий Якущенко, выглядит живым и невредимым. Би-би-си рассказывает, что известно об этих видео и о человеке, который там показан.
Подпишитесь на нашу рассылку “Контекст”!
Мы запустили почтовую рассылку. Теперь вы сможете читать нас не только в соцсетях и на сайте (заблокированном в России и доступном только через VPN), но и в своей электронной почте. “Контекст” поможет вам разобраться в происходящем.
“Как можно ехать по Московскому проспекту на фронт против русских?” Мэр Харькова о Пушкине, войне и украинском языке
Война изменила Харьков не только внешне – ущерб от этих изменений измеряется в миллиардах долларов убытков и в половине поврежденного жилищного фонда города с более чем миллионным населением.
Харьков меняется и внутренне: с его карты исчезают Московский проспект и памятник Пушкину, а на украинский язык переходит все больше жителей города, в том числе и мэр Игорь Терехов.
Началось ли большое российское наступление в Украине?
В последние дни появляется все больше сообщений о начале ожидавшегося российского наступления. Боевые действия активизировались на нескольких направлениях, но какое из них может стать основным, пока неизвестно.
Шифр пленной королевы: как удалось расшифровать неизвестные письма Марии Стюарт
Ученым добровольцам удалось доказать, что зашифрованные письма, хранившиеся во французском архиве, были написаны Марией Стюарт.
“Ощущение пустоты и беспросветности”.
Почему уволили директора Третьяковки Зельфиру Трегулову
Зельфира Трегулова покидает должность гендиректора Государственной Третьяковской галереи. Министерство культуры России не продлило с ней контракт. Какие изменения произошли с одним из главных музеев России за время работы Зельфиры Трегуловой, рассказывает Русская служба Би-би-си.
События
Видео, Как город, в котором мэр боролся с коррупцией, выдержал землетрясение, Продолжительность 2,30
Эрзин в провинции Хатай находится относительно близко к эпицентру первого землетрясения, но пострадавших там не сообщалось, а зданиям был нанесен минимальный ущерб.
Суд оправдал Сильвио Берлускони по делу о подкупе свидетелей
Итальянская прокуратура требовала приговорить Берлускони к шести годам лишения свободы за подкуп 22 свидетелей в предыдущих процессах, но суд вынес оправдательный вердикт.
Human Rights Watch: Британия должна выплатить компенсацию коренному населению островов Чагос
Правозащитная организация Human Rights Watch (HRW) заявила, что США и Великобритания виновны в насильственном перемещении коренного населения с островов Чагос в Индийском океане.
Никола Стерджен объявила о своей отставке с поста первого министра Шотландии
Лидер Шотландской национальной партии объявила о своей отставке на спешно созванной пресс-конференции в Эдинбурге.
Землетрясение в Турции и Сирии: число погибших превысило 40 тысяч человек
По оценкам турецких властей, по числу жертв это землетрясение стало самым разрушительным в современной истории страны.
По оценкам, оно обойдется турецкой казне более чем в 80 млрд долларов. Тем временем президент Сирии Башар Асад согласился открыть еще два пропускных пункта для доставки в страну гуманитарной помощи.
Не рак, а ботулотоксин: от чего умер Пабло Неруда
Международная группа судебно-медицинских экспертов пришла к выводу, что чилийский поэт, нобелевский лауреат Пабло Неруда был отравлен.
Инстаграм: как “запрещенная соцсеть с картинками” влияет на нас
За последние десять лет число пользователей Instagram по всему миру достигло миллиарда, и он стал движущей силой перемен в нашем образе жизни, трендах и культуре.
Полезные ссылки
Мы в соцсетях
CNN – последние новости – Lenta.

Психолог описал способы приучить мозг лучше засыпать
Забота о себе
Турция закроет Босфор и Дарданеллы для военных кораблей России и Украины
Мир
Порошенко вышел в эфир американского телеканала с автоматом в руках
Бывший СССР
В НАСА прокомментировали санкции США против российской космической программы
Наука и техника
На Украине не осталось американских дипломатов
Бывший СССР
НАТО пообещала продолжить поддержку Украины
Мир
В Киеве прозвучали взрывы
Бывший СССР
Глава НАТО подтвердил готовность продолжить наращивать присутствие на Востоке
Мир
Европа начала обсуждать отключение России от SWIFT
Экономика
США и их союзники собрались ввести против России «полномасштабные» санкции
Мир
Украина обвинила Россию во «вторжении»
Бывший СССР
Взрывы в Харькове попали на видео
Бывший СССР
Байден созвал Совет национальной безопасности из-за ситуации на Украине
Мир
Зеленский призвал ввести бесполетную зону над Украиной
Бывший СССР
Байден заявил о нежелании Европы отключать Россию от SWIFT
Мир
Британия допустила отключение России от SWIFT
Мир
Мэр Борисполя объяснил взрывы в районе аэропорта
Бывший СССР
США приготовили санкции для оператора «Северного потока-2»
Мир
ФБР предупредило бизнесменов об атаках российских хакеров на фоне санкций
Мир
Спецназ США покинул Украину
Мир
В США заявили о подготовке России к «военным действиям» на Украине
Мир
Белый дом назвал последние события на Украине российским «вторжением»
Мир
Власти Финляндии не увидели причин для вступления в НАТО
Мир
США обвинили Россию в продвижении войск к границам Украины
Мир
Путин и Байден согласились встретиться в Европе
Мир
Сопровождавшие главу МВД Украины западные журналисты попали под обстрел
Мир
В США объяснили новость о «приказе» российской армии «вторгнуться» на Украину
Бывший СССР
В США выразили обеспокоенность продлением совместных учений России и Белоруссии
Мир
США отказались выполнить просьбу Зеленского об антироссийских санкциях
Мир
Глава МВД Украины попал под обстрел в Донбассе
Бывший СССР
Назад
Загрузка
Дальше
Загрузка
Russian Open Преобразование речи в текст — Azure Open Datasets
Редактировать
Твиттер LinkedIn Фейсбук Электронная почта
- Статья
- 9 минут на чтение
Коллекция образцов речи, полученных из различных аудиоисточников. Набор данных содержит короткие аудиоклипы на русском языке.
Примечание
Microsoft предоставляет открытые наборы данных Azure на условиях «как есть». Microsoft не дает никаких явных или подразумеваемых гарантий или условий в отношении использования вами наборов данных. В той мере, в какой это разрешено вашим местным законодательством, Microsoft отказывается от любой ответственности за любой ущерб или убытки, в том числе прямые, косвенные, специальные, непрямые, случайные или штрафные санкции, возникшие в результате использования вами наборов данных.
Этот набор данных предоставляется на исходных условиях, на которых корпорация Майкрософт получила исходные данные. Набор данных может включать данные, полученные от Microsoft.
Этот набор данных преобразования речи в текст (STT) включает:
- ~16 миллионов высказываний
- ~20 000 часов
- 2,3 ТБ (несжатый в формате .
wav в int16), 356G в опусе
- Все файлы преобразованы в opus, кроме проверочных наборов данных
Основной целью набора данных является обучение моделей преобразования речи в текст.
Состав набора данных
Размер набора данных указан для файлов .wav.
НАБОР ДАННЫХ | ВЫСКАЗЫВАНИЯ | ЧАСОВ | ГБ | СЕК/СИМВОЛ | КОММЕНТАРИЙ | АННОТАЦИЯ | КАЧЕСТВО/ШУМ |
---|---|---|---|---|---|---|---|
радио_v4 (*) | 7 603 192 | 10 430 | 1 195 | 5с / 68 | Радио | Выровнять | 95% / хрустящая корочка |
публичная_речь (*) | 1 700 060 | 2 709 | 301 | 6с / 79 | Публичное выступление | Выровнять | 95% / хрустящая корочка |
аудиокнига_2 | 1 149 404 | 1 511 | 162 | 5с / 56 | Книги | Выровнять | 95% / хрустящая корочка |
радио_2 | 651 645 | 1 439 | 154 | 8 с / 110 | Радио | Выровнять | 95% / хрустящая корочка |
public_youtube1120 | 1 410,979 | 1 104 | 237 | 3с / 34 | Ютуб | Субтитры | 95% / ~четкий |
public_youtube700 | 759 483 | 701 | 75 | 3с / 43 | Ютуб | Субтитры | 95% / ~четкий |
tts_russian_addresses | 1 741 838 | 754 | 81 | 2с / 20 | Адреса | TTS 4 голоса | 100% / хрустящая корочка |
asr_public_phone_calls_2 | 603 797 | 601 | 66 | 4с / 37 | Телефонные звонки | АСР | 70% / шумный |
public_youtube1120_hq | 369 245 | 291 | 31 | 3с / 37 | Штаб-квартира YouTube | Субтитры | 95% / ~четкий |
asr_public_phone_calls_1 | 233 868 | 211 | 23 | 3с / 29 | Телефонные звонки | АСР | 70% / шумный |
radio_v4_add (*) | 92 679 | 157 | 18 | 6с / 80 | Радио | Выровнять | 95% / хрустящая корочка |
asr_public_stories_2 | 78 186 | 78 | 9 | 4с / 43 | Книги | АСР | 80% / хрустящая корочка |
asr_public_stories_1 | 46 142 | 38 | 4 | 3с / 30 | Книги | АСР | 80% / хрустящая корочка |
public_series_1 | 20 243 | 17 | 2 | 3с / 38 | Ютуб | Субтитры | 95% / ~четкий |
asr_calls_2_val | 12 950 | 7,7 | 2 | 2с / 34 | Телефонные звонки | Ручная аннотация | 99% / хрустящая корочка |
public_lection_1 | 6 803 | 6 | 1 | 3с / 47 | Лекции | Субтитры | 95% / хрустящая корочка |
buriya_audiobooks_2_val | 7 850 | 4,9 | 1 | 2с / 31 | Книги | Ручная аннотация | 99% / хрустящая корочка |
public_youtube700_val | 7 311 | 4,5 | 1 | 2с / 35 | Ютуб | Ручная аннотация | 99% / хрустящая корочка |
(*) С файлами txt предоставляется только образец данных.
Методология аннотации
Набор данных составлен с использованием открытых источников. Длинные последовательности разбиваются на звуковые фрагменты с использованием обнаружения и выравнивания голосовой активности. Некоторые типы аудио аннотируются автоматически и проверяются статистически с помощью эвристики.
Объемы данных и частота обновления
Общий размер набора данных составляет 350 ГБ. Общий размер набора данных с общедоступными метками составляет 130 ГБ.
Сам набор данных вряд ли будет обновлен для обратной совместимости. Следуйте исходному репозиторию для тестов и исключайте файлы.
В будущем могут быть добавлены новые домены и языки.
Нормализация звука
Все файлы нормализованы для упрощения и ускорения дополнений во время выполнения. Обработка следующая:
- При необходимости конвертируется в моно;
- При необходимости преобразуется в частоту дискретизации 16 кГц;
- Хранится как 16-битное целое;
- Преобразован в OPUS;
Методология БД на диске
Каждый аудиофайл (wav, бинарный) хешируется. Хэш используется для создания иерархии папок для более оптимальной работы fs.
target_format = 'wav' wavb = wav.tobytes() f_hash = hashlib.sha1(wavb).hexdigest() store_path = Путь (корневая_папка, f_хэш[0], f_хэш[1:3], f_hash[3:15] + '.' + целевой_формат)
Загрузки
Набор данных предоставляется в двух формах:
- Архивы доступны через хранилище BLOB-объектов Azure и/или по прямым ссылкам;
- Исходные файлы доступны в хранилище BLOB-объектов Azure; Все хранится в «https://azureopendatastorage.blob.core.windows.net/openstt/» .
Структура папок:
└── ru_open_stt_opus <= папки в архиве │ │ │ ├── архивы │ │ ├── asr_calls_2_val.tar.gz <= архивы tar.gz с файлами opus и wav │ │ │ ... <= перечисление см. в таблице ниже │ │ └── tts_russian_addresses_rhvoice_4voices.tar.gz │ │ │ └── проявляется │ ├── asr_calls_2_val.csv <= файлы csv с wav_path, text_path, длительностью (см.блокноты) │ │ ... │ └── tts_russian_addresses_rhvoice_4voices.csv │ └── ru_open_stt_opus_unpacked <= отдельная папка для каждого загружаемого домена ├── public_youtube1120 │ ├── 0 <= подробнее см. "Методология работы с БД на диске" │ ├── 1 │ │ ├── 00 │ │ │ ... │ │ └── фф │ │ ├── *.opus <= фактические файлы │ │ └── *.txt │ │ ... │ └── ф │ ├── public_youtube1120_hq ├── public_youtube700_val ├── asr_calls_2_val ├── радио_2 ├── private_buriy_audiobooks_2 ├── asr_public_phone_calls_2 ├── asr_public_stories_2 ├── asr_public_stories_1 ├── public_lection_1 ├── asr_public_phone_calls_1 ├── public_series_1 └── public_youtube700
НАБОР ДАННЫХ | ГБ, WAV | ГБ, АРХИВ | АРХИВ | ИСТОЧНИК | МАНИФЕСТ |
---|---|---|---|---|---|
Поезд | |||||
Образец радио и публичного выступления | - | 11,4 | опус+текст | - | манифест |
аудиокнига_2 | 162 | 25,8 | опус+текст | Интернет + выравнивание | манифест |
радио_2 | 154 | 24,6 | опус+текст | Радио | манифест |
public_youtube1120 | 237 | 19,0 | опус+текст | видео на YouTube | манифест |
asr_public_phone_calls_2 | 66 | 9,4 | опус+текст | Интернет + ASR | манифест |
31 | 4,9 | опус+текст | видео на YouTube | манифест | |
asr_public_stories_2 | 9 | 1,4 | опус+текст | Интернет + выравнивание | манифест |
tts_russian_addresses_rhvoice_4voices | 80,9 | 12,9 | опус+текст | ТТС | манифест |
public_youtube700 | 75,0 | 12,2 | опус+текст | видео на YouTube | манифест |
asr_public_phone_calls_1 | 22,7 | 3,2 | опус+текст | Интернет + ASR | манифест |
asr_public_stories_1 | 4.![]() | 0,7 | опус+текст | Публичные истории | манифест |
public_series_1 | 1,9 | 0,3 | опус+текст | Публичная серия | манифест |
public_lection_1 | 0,7 | 0,1 | опус+текст | Интернет + инструкция | манифест |
Вал | |||||
asr_calls_2_val | 2 | 0,8 | wav+txt | Интернет | манифест |
buriya_audiobooks_2_val | 1 | 0,5 | wav+txt | Книги + руководство | манифест |
public_youtube700_val | 2 | 0,13 | wav+txt | Видео YouTube + инструкция | манифест |
Инструкции по загрузке
Прямая загрузка
Инструкции по прямой загрузке набора данных см.
За помощью или вопросами о данных обращайтесь к автору (авторам) данных по адресу [email protected]
Эта лицензия позволяет пользователям распространять, ремикшировать, адаптировать и использовать материал на любом носителе или в любом формате только для некоммерческих целей, и только до тех пор, пока авторство дается создателю. Он включает в себя следующие элементы:
- BY — Автор должен быть указан
- NC – Разрешено только некоммерческое использование произведения
CC-BY-NC и коммерческое использование доступно после согласования с авторами набора данных.
Доступ к данным
Блокноты Azure
- лазурное хранилище
Подсказка
Загрузите блокнот вместо .
Вспомогательные функции/зависимости
Сборка libsndfile
Эффективный способ чтения файлов opus в Python, который не требует значительных накладных расходов, — это использовать pysoundfile (оболочку Python CFFI для libsoundfile).
Поддержка Opus была реализована в восходящем потоке, но не выпущена должным образом. Поэтому мы выбрали кастомную сборку + исправление обезьяны.
Как правило, вам нужно запустить это в вашей оболочке с доступом sudo:
apt-получить обновление apt-get install cmake autoconf autogen automake build-essential libasound2-dev \ libflac-dev libogg-dev libtool libvorbis-dev libopus-dev pkg-config -y компакт-диск /USR/локальные/библиотека git-клон https://github.com/erikd/libsndfile.git cd libsndfile git сброс --hard 49b7d61 mkdir -p build && cd build cmake .. -DBUILD_SHARED_LIBS=ON сделать && сделать установить cmake --сборка .
Вспомогательные функции/зависимости
Установите следующие библиотеки:
панды пустышка острый тквдм звуковой файл либроса
Манифесты представляют собой CSV-файлы со следующими столбцами:
- Путь к аудио
- Путь к текстовому файлу
- Продолжительность
Они оказались самым простым форматом доступа к данным.
Для удобства использования все манифесты уже перепрошиты. Все пути в них относительные, нужно указать корневую папку.
# утилиты манифеста импорт ОС импортировать numpy как np импортировать панд как pd из tqdm импортировать tqdm из urllib.request импортировать urlopen def reroot_manifest (manifest_df, исходный_путь, целевой_путь): если исходный_путь != '': manifest_df.wav_path = manifest_df.wav_path.apply(лямбда x: x.replace(исходный_путь, целевой_путь)) manifest_df.text_path = manifest_df.text_path.apply(лямбда x: x.replace(исходный_путь, целевой_путь)) еще: manifest_df.wav_path = manifest_df.wav_path.apply(лямбда x: os.path.join(target_path, x)) manifest_df.text_path = manifest_df.text_path.apply(лямбда x: os.path.join(target_path, x)) вернуть manifest_df защита save_manifest (manifest_df, путь, домен=ложь): если домен: список утверждений (manifest_df.columns) == ['wav_path', 'text_path', 'длительность', 'домен'] еще: утвердить список (manifest_df.columns) == ['wav_path', 'text_path', 'длительность'] manifest_df.reset_index(drop=True).sort_values(by='duration', по возрастанию=Истина).to_csv(путь, сент = ',', заголовок = Ложь, индекс=ложь) вернуть Истина def read_manifest (путь_манифеста, домен=ложь): если домен: вернуть pd.read_csv (manifest_path, имена = ['wav_path', 'текст_путь', 'продолжительность', 'домен']) еще: вернуть pd.read_csv (manifest_path, имена = ['wav_path', 'текст_путь', 'продолжительность']) def check_files (manifest_df, домен=ложь): orig_len = длина (manifest_df) если домен: утвердить список (manifest_df.
columns) == ['wav_path', 'text_path', 'длительность'] еще: список утверждений (manifest_df.columns) == ['wav_path', 'text_path', 'длительность', 'домен'] wav_paths = список (manifest_df.wav_path.values) text_path = список (manifest_df.text_path.values) пропущенный_wavs = [] опущен_txts = [] для wav_path, text_path в zip(wav_paths, text_path): если нет os.path.exists(wav_path): print('Отбрасывание {}'.format(wav_path)) пропущенный_wavs.append(wav_path) если нет os.path.exists(text_path): print('Отбрасывание {}'.format(text_path)) пропущенный_txts.append (текст_путь) manifest_df = manifest_df[~manifest_df.wav_path.isin(опущенные_wavs)] manifest_df = manifest_df[~manifest_df.text_path.isin(опущены_txts)] final_len = len(manifest_df) если final_len != orig_len: print('Удалено {} строк'.format(orig_len-final_len)) вернуть manifest_df def plain_merge_manifests (manifest_paths, МИН_ДЛИТЕЛЬНОСТЬ=0,1, MAX_DURATION=100): manifest_df = pd.
concat([read_manifest(_) для _ в manifest_paths]) manifest_df = check_files (manifest_df) manifest_df_fit = manifest_df[(manifest_df.duration>=MIN_DURATION) & (manifest_df.duration<=MAX_DURATION)] manifest_df_non_fit = manifest_df[(manifest_df.duration
MAX_DURATION)] print(f'Хорошие часы: {manifest_df_fit.duration.sum() / 3600:.2f}') print(f'Плохие часы: {manifest_df_non_fit.duration.sum() / 3600:.2f}') вернуть manifest_df_fit def save_txt_file (wav_path, текст): txt_path = wav_path.replace('.wav','.txt') с открытым (txt_path, "w") в качестве текстового_файла: печать (текст, файл = текстовый_файл) вернуть txt_path защита read_txt_file (text_path): # с открытым (text_path, 'r') в качестве файла: ответ = urlopen (текст_путь) файл = ответ.readlines() для i в диапазоне (len (файл)): файл[i] = файл[i]. decode('utf8') файл возврата def create_manifest_from_df (df, домен = ложь): если домен: столбцы = ['wav_path', 'text_path', 'длительность', 'домен'] еще: столбцы = ['wav_path', 'text_path', 'продолжительность'] манифест = дф [столбцы] возвратный манифест защита create_txt_files (manifest_df): утвердить «текст» в manifest_df.columns утверждать «wav_path» в manifest_df.columns wav_paths, тексты = список (manifest_df['wav_path'].значения), list(manifest_df['текст'].значения) # не использовать многопроцессорность для простоты txt_paths = [save_txt_file(*_) for _ in tqdm(zip(wav_paths, texts), total=len(wav_paths))] manifest_df['text_path'] = txt_paths вернуть manifest_df def replace_encoded (текст): текст = текст.нижний() если '2' в тексте: текст = список (текст) _текст = [] для i, char в перечислении (текст): если символ=='2': пытаться: _text.extend([_text[-1]]) кроме: печать(''.
присоединиться(текст)) еще: _text.extend([символ]) текст = ''.присоединиться(_текст) возвращаемый текст
# чтение опус файлов импорт ОС импортировать звуковой файл как sf # Fx для функций чтения/записи звуковых файлов def fx_seek(я, кадры, откуда=os.SEEK_SET): self._check_if_closed() position = sf._snd.sf_seek(self._file, кадры, откуда) обратная позиция def fx_get_format_from_filename (файл, режим): формат = '' файл = getattr(файл, 'имя', файл) пытаться: формат = os.path.splitext(файл)[-1][1:] формат = формат.decode('utf-8', 'заменить') кроме исключения: проходить если формат == 'опус': вернуть «ОГГ» если format.upper() не в sf._formats и 'r' не в режиме: поднять TypeError("Формат не указан и невозможно получить формат из " "расширение файла: {0!r}".формат(файл)) формат возврата #sf._snd = sf._ffi.dlopen('/usr/local/lib/libsndfile/build/libsndfile.so.1.0.29') sf._subtypes['OPUS'] = 0x0064 sf.SoundFile.seek = fx_seek sf._get_format_from_filename = fx_get_format_from_filename def read(файл, **kwargs): вернуть sf.read(файл, **kwargs) def write(файл, данные, частота дискретизации, **kwargs): вернуть sf.write(файл, данные, частота дискретизации, **kwargs)
# отображать утилиты импорт GC из IPython.display импортировать HTML, аудио, display_html pd.set_option('display.max_colwidth', 3000) #Prepend_path настроен на чтение напрямую из Azure. Чтобы прочитать с локального сервера, замените строку ниже на путь к загруженным файлам набора данных. prepend_path = 'https://azureopendatastorage.blob.core.windows.net/openstt/ru_open_stt_opus_unpacked/' def audio_player (аудио_путь): return ''.format(audio_path) определение display_manifest (manifest_df): display_df = манифест_df display_df['wav'] = [audio_player(prepend_path+path) для пути в display_df.wav_path] display_df['txt'] = [read_txt_file(prepend_path+path) для пути в tqdm(display_df.text_path)] audio_style = '' display_df = display_df[['wav','txt', 'длительность']] display(HTML(audio_style + display_df.to_html(escape=False))) дель display_df gc.собрать()
Игра с набором данных
Воспроизвести образец файлов
Браузеры большинства платформ поддерживают собственное воспроизведение звука. Таким образом, мы можем использовать аудиоплееры HTML5 для просмотра наших данных.
manifest_df = read_manifest (prepend_path + '/manifests/public_series_1.csv') #manifest_df = reroot_manifest(manifest_df, #source_path='', #target_path='../../../../../nvme/stt/data/ru_open_stt/')
образец = manifest_df.sample (n = 20) display_manifest (образец)
Чтение файла
!ls ru_open_stt_opus/manifests/*.csv
Некоторые примеры, показывающие, как лучше всего читать файлы wav и opus.
Scipy — самый быстрый для wav. Pysoundfile — лучший вариант для опуса.
%matplotlib встроенный импортная либроса из scipy.io импортировать wavfile из librosa импортировать дисплей как ldisplay из matplotlib импортировать pyplot как plt
Прочитать wav
manifest_df = read_manifest (prepend_path + 'manifests/asr_calls_2_val.csv') #manifest_df = reroot_manifest(manifest_df, #source_path='', #target_path='../../../../../nvme/stt/data/ru_open_stt/')
образец = manifest_df.sample (n = 5) display_manifest (образец)
из io импорт BytesIO wav_path = образец.iloc[0].wav_path ответ = urlopen(prepend_path+wav_path) данные = ответ.чтение() sr, wav = wavfile.read (BytesIO (данные)) wav.astype('float32') абсмакс = np.max (np.abs (wav)) wav = wav / абсмакс
# кратчайший способ построить спектрограмму D = librosa.amplitude_to_db(np.abs(librosa.stft(wav)), ref=np.max) plt.figure(figsize=(12, 6)) ldisplay.specshow(D, y_axis='журнал') plt.colorbar(format='%+2.0f дБ') plt.title('Логарифмическая спектрограмма мощности') # кратчайший способ построения конверта plt.figure(figsize=(12, 6)) ldisplay.waveplot(wav, sr=sr, max_points=50000,0, x_axis='время', смещение=0,0, max_sr=1000, ax=нет)
Прочитать опус
manifest_df = read_manifest (prepend_path + 'manifests/asr_public_phone_calls_2.csv') #manifest_df = reroot_manifest(manifest_df, #source_path='', #target_path='../../../../../nvme/stt/data/ru_open_stt/')
образец = manifest_df.sample (n = 5) display_manifest (образец)
opus_path = sample.iloc[0].wav_path ответ = urlopen(prepend_path+opus_path) данные = ответ.чтение() wav, sr = sf.read (BytesIO (данные)) wav.astype('float32') абсмакс = np.max (np.abs (wav)) wav = wav / абсмакс
# кратчайший способ построить спектрограмму D = librosa.amplitude_to_db(np.abs(librosa.stft(wav)), ref=np.max) plt.figure(figsize=(12, 6)) ldisplay.specshow(D, y_axis='журнал') plt.colorbar(format='%+2.0f дБ') plt.title('Логарифмическая спектрограмма мощности') # кратчайший способ построения конверта plt.figure(figsize=(12, 6)) ldisplay.waveplot(wav, sr=sr, max_points=50000,0, x_axis='время', смещение=0,0, max_sr=1000, ax=нет)
Следующие шаги
Просмотрите остальные наборы данных в каталоге открытых наборов данных.
Deutsche Bank предоставит российскому девелоперу STT кредит в размере $470 млн МНБ
Deutsche Bank предоставит российскому девелоперу STT Group 12 миллиардов рублей (470 миллионов долларов) для реализации проектов в сфере недвижимости, сообщило в понедельник российское подразделение банка.
Банк не раскрыл подробностей о сроке погашения кредита или процентной ставке. STT Group , принадлежащая российскому предпринимателю Шалве Чигиринскому, направит первый транш кредита в размере 3 млрд рублей (118 млн долларов) на рефинансирование кредита, использованного для реконструкции крупного торгового центра в Санкт-Петербурге. (риан.ру)
Зеленая энергия
Производство солнечной энергии в Венгрии достигло нового пика
Экономика | 16 фев 2023, 13:25
Правительство
Правительство стремится увеличить количество учащихся в университетах по предметам STEM до 50%
Политика | 15 фев 2023, 17:00
Предложения
4iG получила разрешение на увеличение доли в Spacecom
Бизнес | 16 фев 2023, 16:40
Отели
Kempinski Hotel Corvinus Bp назван 4-звездочным отелем в рейтинге FTG 2023...
Будапешт | 16 фев 2023, 15:30
ПОДДЕРЖИТЕ БУДАПЕШТСКИЙ БИЗНЕС-ЖУРНАЛ
Производство журналистики, достойной своего имени, — дорогостоящее дело. В течение 27 лет издатели, редакторы и корреспонденты Budapest Business Journal стремились донести до вас бизнес-новости, которые работают, информацию, которой вы можете доверять, которая основана на фактах, точна и представлена без страха или предпочтения.
Газетные организации по всему миру изо всех сил пытались найти бизнес-модель, которая позволила бы им продолжать совершенствоваться, не ставя под угрозу свою эффективность. Совсем недавно некоторые экспериментировали с идеей привлечения своих самых важных заинтересованных сторон, своих читателей.
Такую же возможность мы хотели бы предложить и нашим читателям. Мы хотели бы пригласить вас помочь нам предоставить качественную бизнес-журналистику, в которой вы нуждаетесь. Нажмите нашу кнопку поддержки BBJ, и вы сможете выбрать, сколько и как часто вы отправляете нам свои взносы.
Поддержка BBJ
РЕКЛАМА
Финансы
Депозиты MNB O/N поглощают ликвидность банковского сектора в январе
Экономика Финансы | 15 фев 2023, 11:15
Курсировщики Авгур Быстрее дезинфляции во 2 квартале - Минуты
Экономика Финансы | 9 фев 2023, 12:25
Международные резервы МНБ выросли на 1,553 млрд евро в январе
Экономика Финансы | 7 фев 2023, 16:30
РЕКЛАМА
Главные новости
4iG получила разрешение на увеличение доли в Spacecom
Business Industry | 16 фев 2023, 16:40
Kempinski Hotel Corvinus Bp назван 4-звездочным отелем в номинации Star Awards 2023 от FTG
Budapest Travel | 16 фев 2023, 15:30
Положения Соглашения об избежании двойного налогообложения с США прекращают свое действие 1 января 2024
Политика Иностранные дела | 16 фев.
Добавить комментарий