Package: aniemore
Aniemore- это открытая библиотека искусственного интеллекта для потоковой аналитики эмоциональных оттенков речи человека.Основные технические параметрыОбъем набора данных Russian Emotional Speech Dialogues содержит более 3000 аудиофрагментов представляющих 200 различных людей;Модели способны распознавать эмоции в зашумленных аудиофайлах длительностью в 3 секунды;Скорость обработки и ответа модели составляет не более 5 секунд;Пословная ошибка модели WER 30%;Совокупная точность модели 75%Диапазон распознавания эмоций: злость, отвращение, страх, счастье, интерес, грусть, нейтрально;Акустические возможности - 3 уровня.ОписаниеAniemore - это библиотека для Python, которая позволяет добавить в ваше
программное обеспечение возможность определять эмоциональный фон речи человека, как в голосе,
так и в тексте. Для этого в библиотеке разработано два соответсвующих модуля - Voice и Text.Aniemore содержит свой собственный датасет RESD (Russian Emotional Speech Dialogues) и другие
наборы данных разного объема, которые вы можете использовать для обучения своих моделей.ДатасетПримечаниеRESD7 эмоций, 4 часа аудиозаписей диалоговстудийное качествоRESD_AnnotatedRESD + speech-to-text аннотацииREPV2000 голосовых сообщений (.ogg), 200 актеров, 2 нейтральные фразы, 5 эмоцийREPV-S140 голосовых сообщений (.ogg) "Привет, как дела?" с разными эмоциямиВы можете использовать готовые предобученные модели из библиотеки:МодельТочностьГолосовые моделиwav2vec2-xlsr-53-russian-emotion-recognition73%wav2vec2-emotion-russian-resd75%wavlm-emotion-russian-resd82%hubert-emotion-russian-resd75%unispeech-sat-emotion-russian-resd Copied72%wavlm-bert-base81%wavlm-bert-fusion83%Текстовые моделиrubert-base-emotion-russian-cedr-m774%rubert-tiny2-russian-emotion-detection85%rubert-large-emotion-russian-cedr-m776%rubert-tiny-emotion-russian-cedr-m772%Показатели моделей в разрезе эмоцийУстановкаpipinstallaniemoreМинимальные требования к оборудованиюАрхитектураЦПУОЗУSSDWave2Vec22 ядра8 ГБ40 ГБWaveLM2 ядра8 ГБ40 ГБHubert2 ядра8 ГБ40 ГБUniSpeechSAT2 ядра8 ГБ40 ГБBert_Tiny/Bert_Tiny22 ядра4 ГБ40 ГБBert_Base2 ядра4 ГБ40 ГБBert_Large2 ядра8 ГБ40 ГБWavLM Bert Base2 ядра16 ГБ40 ГБWavLM Bert Fusion2 ядра16 ГБ40 ГБWhisper Tiny2 ядра4 ГБ40 ГБWhisper Base2 ядра4 ГБ40 ГБWhisper Small2 ядра4 ГБ40 ГБWhisper Medium2 ядра8 ГБ40 ГБWhisper Large2 ядра16 ГБ40 ГБTextEnhancer2 ядра4 ГБ40 ГБПример использованияНиже приведены простые примеры использования библиотеки. Для более детальных примеров, в том числезагрузка cобственной модели- смотрите сделанный для этогоGoogle ColabРаспознавание эмоций в текстеimporttorchfromaniemore.recognizers.textimportTextRecognizerfromaniemore.modelsimportHuggingFaceModelmodel=HuggingFaceModel.Text.Bert_Tiny2device='cuda'iftorch.cuda.is_available()else'cpu'tr=TextRecognizer(model=model,device=device)tr.recognize('это работает? :(',return_single_label=True)Распознавание эмоций в голосеimporttorchfromaniemore.recognizers.voiceimportVoiceRecognizerfromaniemore.modelsimportHuggingFaceModelmodel=HuggingFaceModel.Voice.WavLMdevice='cuda'iftorch.cuda.is_available()else'cpu'vr=VoiceRecognizer(model=model,device=device)vr.recognize('/content/ваш-звуковой-файл.wav',return_single_label=True)Распознавание эмоций (мультимодальный метод)importtorchfromaniemore.recognizers.multimodalimportVoiceTextRecognizerfromaniemore.utils.speech2textimportSmallSpeech2Textfromaniemore.modelsimportHuggingFaceModelmodel=HuggingFaceModel.MultiModal.WavLMBertFusions2t_model=SmallSpeech2Text()text=SmallSpeech2Text.recognize('/content/ваш-звуковой-файл.wav').textdevice='cuda'iftorch.cuda.is_available()else'cpu'vtr=VoiceTextRecognizer(model=model,device=device)vtr.recognize(('/content/ваш-звуковой-файл.wav',text),return_single_label=True)Распознавание эмоций (мультимодальный метод с автоматическим распознаванием речи)importtorchfromaniemore.recognizers.multimodalimportMultiModalRecognizerfromaniemore.utils.speech2textimportSmallSpeech2Textfromaniemore.modelsimportHuggingFaceModelmodel=HuggingFaceModel.MultiModal.WavLMBertFusiondevice='cuda'iftorch.cuda.is_available()else'cpu'mr=MultiModalRecognizer(model=model,s2t_model=SmallSpeech2Text(),device=device)mr.recognize('/content/ваш-звуковой-файл.wav',return_single_label=True)Доп. ссылкиВсе модели и датасеты, а так же примеры их использования вы можете посмотреть в нашемHuggingFace профилеАффилированостьAniemore (Artem Nikita Ilya EMOtion REcognition)Разработка открытой библиотеки произведена коллективом авторов на базе ООО "Социальный код".
Результаты работы получены за счет гранта Фонда содействия развитию малых форм предприятий в научно-технической сфере (Договор №1ГУКодИИС12-D7/72697
от 22.12.2021).ЦитированиеДля цитировация воспользуйтесь пунктомCite this repositoryв правом менюAboutэтого проекта, или скопируйте информацию ниже:@software{Lubenets_Aniemore,author={Lubenets, Ilya and Davidchuk, Nikita and Amentes, Artem},license={MIT},title={{Aniemore}},url={https://github.com/aniemore/Aniemore}}