Документация библиотеки алгоритмов сильного искусственного интеллекта - OCEAN-AI
OCEAN-AI - библиотека с открытым исходным кодом, состоящая из набора алгоритмов интеллектуального анализа поведения человека на основе его мультимодальных данных для автоматического оценивания уровня отдельных персональных качеств личности человека (ПКЛЧ). Библиотека оценивает 5 ПКЛЧ: Открытость опыту (Openness), Добросовестность (Conscientiousness), Экстраверсия (Extraversion), Доброжелательность (Agreeableness), Эмоциональная стабильность (Non-Neuroticism).
OCEAN-AI включает четыре основных алгоритма:
Алгоритм анализа аудиоинформации (ААИ).
Алгоритм анализа видеоинформации (АВИ).
Алгоритм анализа текстовой информации (АТИ).
Алгоритм мультимодального объединения информации (МОИ).
Алгоритмы ААИ, АВИ и АТИ реализуют функции сильного искусственного интеллекта (ИИ) в части комплексирования акустических, визуальных и текстовых признаков, построенных на различных принципах (экспертных и нейросетевых), т.е. данные алгоритмы реализуют подходы композитного (гибридного) ИИ. В алгоритмах осуществляется необходимая предобработка аудио-, видео- и текстовой информации, вычисление акустических, визуальных и текстовых признаков и выдача гипотез предсказаний по ним.
Алгоритм МОИ является связующим звеном трех алгоритмов анализа информации (ААИ, АВИ и АТИ). Данный алгоритм выполняет нейросетевое объединение признаков полученных с помощью алгоритмов ААИ, АВИ и АТИ.
OCEAN-AI предоставляет примеры решения прикладных задач на основе полученных гипотез предсказаний оценок ПКЛЧ:
- Ранжирование потенциальных кандидатов для выполнения профессиональных обязанностей:
по группам профессий;
по профессиональным навыкам.
- Прогнозирование потребительских предпочтений по выбору промышленных потребительских товаров:
на примере характеристик автомобиля;
на примере категорий применения мобильного устройства.
- Формирование эффективных рабочих коллективов:
поиск подходящего младшего коллеги;
поиск подходящего старшего коллеги.
Помимо основной задачи - мультимодального оценивания персональных качеств личности человека, реализованные в OCEAN-AI признаки позволят исследователям решать другие задачи анализа поведения человека, например распознавание его аффективных состояний.
OCEAN-AI использует самые актуальные библиотеки с открытым исходным кодом для обработки аудио-, видео- и текстовой информации: librosa, openSMILE, openCV, mediapipe, transformers.
OCEAN-AI написана на языке программирования python. Нейросетевые модели реализованы и обучены с использованием библиотеки с открытым исходным кодом TensorFlow.
Исследовательские данные
Библиотека OCEAN-AI была апробирована на двух корпусах:
Общедоступном и крупномаштабном корпусе First Impressions V2.
На первом общедоступном рускоязычном мультимодальном корпусе для оценки персональных качеств - Multimodal Personality Traits Assessment (MuPTA) Corpus.
Свидетельство о государственной регистрации программы для ЭВМ
Свидетельство о государственной регистрации базы данных
Публикации
Журналы
@article{ryumina22_neurocomputing,
author = {Elena Ryumina and Denis Dresvyanskiy and Alexey Karpov},
title = {In Search of a Robust Facial Expressions Recognition Model: A Large-Scale Visual Cross-Corpus Study},
journal = {Neurocomputing},
volume = {514},
pages = {435-450},
year = {2022},
doi = {https://doi.org/10.1016/j.neucom.2022.10.013},
}
@article{ryumina24_eswa,
author = {Elena Ryumina and Maxim Markitantov and Dmitry Ryumin and Alexey Karpov},
title = {OCEAN-AI Framework with EmoFormer Cross-Hemiface Attention Approach for Personality Traits Assessment},
journal = {Expert Systems with Applications},
volume = {239},
pages = {122441},
year = {2024},
doi = {https://doi.org/10.1016/j.eswa.2023.122441},
}
Конференции
@inproceedings{ryumina23_interspeech,
author = {Elena Ryumina and Dmitry Ryumin and Maxim Markitantov and Heysem Kaya and Alexey Karpov},
title = {Multimodal Personality Traits Assessment (MuPTA) Corpus: The Impact of Spontaneous and Read Speech},
year = {2023},
booktitle = {INTERSPEECH},
pages = {4049--4053},
doi = {https://doi.org/10.21437/Interspeech.2023-1686},
}
Разработка поддерживается исследовательским центром «Сильный искусственный интеллект в промышленности» Университета ИТМО.
Быстрый старт
Установка и обновление
Установка с помощью PyPi
pip install oceanai
Обновление с помощью PyPi
pip install --upgrade oceanai
Зависимости
Библиотека |
Рекомендуемая версия |
Текущая версия |
---|---|---|
ipython |
8.7.0 |
|
jupyterlab |
3.5.0 |
|
tensorflow |
2.11.0 |
|
keras |
2.11.0 |
|
Keras-Applications |
1.0.8 |
|
numpy |
1.23.5 |
|
scipy |
1.9.3 |
|
pandas |
1.5.2 |
|
requests |
2.28.1 |
|
opensmile |
2.4.1 |
|
librosa |
0.9.2 |
|
audioread |
3.0.0 |
|
scikit-learn |
1.1.3 |
|
opencv-contrib-python |
4.6.0.66 |
|
pymediainfo |
6.0.1 |
|
mediapipe |
0.9.0 |
|
liwc |
0.5.0 |
|
transformers |
4.36.0 |
|
sentencepiece |
0.1.99 |
|
torch |
2.0.1 |
|
torchaudio |
2.0.2 |
|
sacremoses |
0.0.1 |
Примеры
Решение практических задач
Решение практической задачи выполняется в два этапа. На первом этапе необходимо использовать библиотеку OCEAN-AI для получения гипотез предсказаний (оценок персональных качеств личности человека). На втором этапе следует использовать методы _candidate_ranking и _priority_skill_calculation из библиотеки OCEAN-AI для решения представленной практической задачи. Примеры результатов работы и реализации представлены ниже.
Таким образом, библиотека OCEAN-AI предоставляет инструменты для анализа персональных качеств личности кандидатов и их соответствия требованиям должности, что может значительно улучшить процесс подбора персонала и помочь в принятии более объективных и систематизированных решений при ранжировании кандидатов.
FI V2
[2]:
# Импорт необходимых инструментов
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
corpus = 'fi'
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang='en')
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder()
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_FI/'
PATH_SAVE_VIDEO = './video_FI/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса First Impression V2
# URL: https://chalearnlap.cvc.uab.cat/dataset/24/description/
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'429713680?token=FqHdMLSSh7zYSZt&filename=_plk5k7PBEg.003.mp4',
'429713681?token=Hz9b4lQkrLfic33&filename=be0DQawtVkE.002.mp4',
'429713683?token=EgUXS9Xs8xHm5gz&filename=2d6btbaNdfo.000.mp4',
'429713684?token=1U26753kmPYdIgt&filename=300gK3CnzW0.003.mp4',
'429713685?token=LyigAWLTzDNwKJO&filename=300gK3CnzW0.001.mp4',
'429713686?token=EpfRbCKHyuc4HPu&filename=cLaZxEf1nE4.004.mp4',
'429713687?token=FNTkwqBr4jOS95l&filename=g24JGYuT74A.004.mp4',
'429713688?token=qDT95nz7hfm2Nki&filename=JZNMxa3OKHY.000.mp4',
'429713689?token=noLguEGXDpbcKhg&filename=nvlqJbHk_Lc.003.mp4',
'429713679?token=9L7RQ0hgdJlcek6&filename=4vdJGgZpj4k.003.mp4'
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_[corpus]['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = 'en')
[2023-12-16 18:42:02] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 18:42:05] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_FI:nbsphinx-math:test_plk5k7PBEg.003.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | 2d6btbaNdfo.000.mp4 | 0.581159 | 0.628822 | 0.466609 | 0.622129 | 0.553832 |
2 | 300gK3CnzW0.001.mp4 | 0.463991 | 0.418851 | 0.41301 | 0.493329 | 0.423093 |
3 | 300gK3CnzW0.003.mp4 | 0.454281 | 0.415049 | 0.39189 | 0.485114 | 0.420741 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588461 | 0.643233 | 0.530789 | 0.603038 | 0.593398 |
5 | be0DQawtVkE.002.mp4 | 0.633433 | 0.533295 | 0.523742 | 0.608591 | 0.588456 |
6 | cLaZxEf1nE4.004.mp4 | 0.636944 | 0.542386 | 0.558461 | 0.570975 | 0.558983 |
7 | g24JGYuT74A.004.mp4 | 0.531518 | 0.376987 | 0.393309 | 0.4904 | 0.447881 |
8 | JZNMxa3OKHY.000.mp4 | 0.610342 | 0.541418 | 0.563163 | 0.595013 | 0.569461 |
9 | nvlqJbHk_Lc.003.mp4 | 0.495809 | 0.458526 | 0.414436 | 0.469152 | 0.435461 |
10 | _plk5k7PBEg.003.mp4 | 0.60707 | 0.591893 | 0.520662 | 0.603938 | 0.565726 |
[2023-12-16 18:42:05] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0589 | 0.0612 | 0.0864 | 0.0697 | 0.0582 | 0.0669 |
Accuracy | 0.9411 | 0.9388 | 0.9136 | 0.9303 | 0.9418 | 0.9331 |
[2023-12-16 18:42:05] Средняя средних абсолютных ошибок: 0.0669, средняя точность: 0.9331 …
Лог файлы успешно сохранены …
— Время выполнения: 64.481 сек. —
[2]:
True
Для выполнения ранжирования кандидатов необходимо знать весовые коэффициенты, определяющие приоритетность персональных качеств личности в зависимости от профессии.
Предлагаются весовые коэффициенты для 5 профессий, вычисленные на основе научных статей:
Sajjad H. et al. Personality and Career Choices // African Journal of Business Management. - 2012. – Vol. 6 (6) – pp. 2255-2260.
Alkhelil A. H. The Relationship between Personality Traits and Career Choice: A Case Study of Secondary School Students // International Journal of Academic Research in Progressive Education and Development. – 2016. – Vol. 5(2). – pp. 2226-6348.
De Jong N. et al. Personality Traits and Career Role Enactment: Career Role Preferences as a Mediator // Frontiers in Psychology. – 2019. – Vol. 10. – pp. 1720.
Пользователь может установить свои весовые коэффициенты; сумма весов должна быть равна 100.
[3]:
# Загрузка датафрейма с весовыми коэффициентами
url = 'https://download.sberdisk.ru/download/file/478675798?token=fF5fNZVpthQlEV0&filename=traits_priority_for_professions.csv'
traits_priority_for_professions = pd.read_csv(url)
traits_priority_for_professions.index.name = 'ID'
traits_priority_for_professions.index += 1
traits_priority_for_professions.index = traits_priority_for_professions.index.map(str)
traits_priority_for_professions
[3]:
Profession | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Managers/executives | 15 | 35 | 15 | 30 | 5 |
2 | Entrepreneurship | 30 | 30 | 5 | 5 | 30 |
3 | Social/Non profit making professions | 5 | 5 | 35 | 35 | 20 |
4 | Public sector professions | 15 | 50 | 15 | 15 | 5 |
5 | Scientists/researchers, and engineers | 50 | 15 | 5 | 15 | 15 |
[4]:
weights = traits_priority_for_professions.iloc[4].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'engineer_candidate_ranking_fi_en', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[4]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | 60.246 |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | 59.725 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | 59.672 |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | 59.380 |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | 58.921 |
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | 58.463 |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | 48.271 |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | 47.310 |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | 45.294 |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | 44.487 |
[5]:
weights = traits_priority_for_professions.iloc[0].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'executive_candidate_ranking_fi_en', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[5]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | 60.360 |
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | 59.158 |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | 58.579 |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | 57.250 |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | 57.223 |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | 56.839 |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | 45.954 |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | 44.730 |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | 44.018 |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | 43.876 |
Для ранжирования кандидатов по профессиональным навыкам необходимо задать по два коэффициента корреляции для каждого персонального качества личности человека и навыка, а также порога полярности качеств. Эти коэффициенты должны показывать, как измениться оценка качества человека если она больше или меньше заданного порога полярности качеств.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в четырьмя профессиональными навыками, представленных в статье:
Wehner C., de Grip A., Pfeifer H. Do recruiters select workers with different personality traits for different tasks? A discrete choice experiment // Labour Economics. - 2022. - vol. 78. - pp. 102186.
Представлены 4 профессиональных навыка:
Analytical (Аналитические навыки). Умение эффективно решать новые задачи, требующие глубокого анализа.
Interactive (Навыки межличностного общения). Умение убеждать и достигать компромиссов с заказчиками и коллегами.
Routine (Способность выполнять рутинную работу). Умение эффективно управлять рутинными задачами, соблюдая точность и внимание к деталям.
Non-Routine (Способность выполнять нестандартную работу). Умение реагировать и решать проблемы, не имеющие установленного порядка, проявляя адаптивность и креативные навыки в решении задач.
Пользователь может установить свои коэффициенты корреляции и ранжировать кандидатов по другим профессиональным навыкам.
[6]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478678231?token=0qiZwliLtHWWYMv&filename=professional_skills.csv'
df_professional_skills = pd.read_csv(url)
df_professional_skills.index.name = 'ID'
df_professional_skills.index += 1
df_professional_skills.index = df_professional_skills.index.map(str)
df_professional_skills
[6]:
Trait | Score_level | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Openness | high | 0.082 | 0.348 | 0.571 | 0.510 |
2 | Openness | low | 0.196 | 0.152 | 0.148 | 0.218 |
3 | Conscientiousness | high | 0.994 | 1.333 | 1.507 | 1.258 |
4 | Conscientiousness | low | 0.241 | 0.188 | 0.191 | 0.267 |
5 | Extraversion | high | 0.169 | -0.060 | 0.258 | 0.017 |
6 | Extraversion | low | 0.181 | 0.135 | 0.130 | 0.194 |
7 | Agreeableness | high | 1.239 | 0.964 | 1.400 | 1.191 |
8 | Agreeableness | low | 0.226 | 0.180 | 0.189 | 0.259 |
9 | Non-Neuroticism | high | 0.636 | 0.777 | 0.876 | 0.729 |
10 | Non-Neuroticism | low | 0.207 | 0.159 | 0.166 | 0.238 |
[7]:
_b5._priority_skill_calculation(
correlation_coefficients = df_professional_skills,
threshold = 0.5,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_skill_, name = 'skill_candidate_ranking_fi_en', out = True)
# Опционно
df = _b5.df_files_priority_skill_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[7]:
Path | OPE | CON | EXT | AGR | NNEU | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | 0.380 | 0.415 | 0.561 | 0.454 |
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | 0.376 | 0.427 | 0.539 | 0.465 |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | 0.367 | 0.398 | 0.543 | 0.439 |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | 0.360 | 0.389 | 0.534 | 0.431 |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | 0.357 | 0.383 | 0.528 | 0.425 |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | 0.350 | 0.379 | 0.523 | 0.421 |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | 0.096 | 0.074 | 0.075 | 0.107 |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | 0.093 | 0.072 | 0.073 | 0.104 |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | 0.091 | 0.071 | 0.072 | 0.102 |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | 0.082 | 0.094 | 0.119 | 0.136 |
MuPTA
(ru)[9]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'mupta'
lang = 'ru'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder()
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 18:51:57] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 18:52:01] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.758137 | 0.693356 | 0.650108 | 0.744589 | 0.488671 |
2 | speaker_06_center_83.mov | 0.681602 | 0.654339 | 0.607156 | 0.731282 | 0.417908 |
3 | speaker_07_center_83.mov | 0.666104 | 0.656836 | 0.567863 | 0.685067 | 0.378102 |
4 | speaker_10_center_83.mov | 0.694171 | 0.596195 | 0.571414 | 0.66223 | 0.348639 |
5 | speaker_11_center_83.mov | 0.712885 | 0.594764 | 0.571709 | 0.716696 | 0.37802 |
6 | speaker_15_center_83.mov | 0.664158 | 0.670411 | 0.60421 | 0.696056 | 0.399842 |
7 | speaker_19_center_83.mov | 0.761213 | 0.652635 | 0.651028 | 0.788677 | 0.459676 |
8 | speaker_23_center_83.mov | 0.692788 | 0.68324 | 0.616737 | 0.795205 | 0.447242 |
9 | speaker_24_center_83.mov | 0.705923 | 0.658382 | 0.610645 | 0.697415 | 0.411988 |
10 | speaker_27_center_83.mov | 0.753417 | 0.708372 | 0.654608 | 0.816416 | 0.504743 |
[2023-12-16 18:52:01] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0673 | 0.0789 | 0.1325 | 0.102 | 0.1002 | 0.0962 |
Accuracy | 0.9327 | 0.9211 | 0.8675 | 0.898 | 0.8998 | 0.9038 |
[2023-12-16 18:52:01] Средняя средних абсолютных ошибок: 0.0962, средняя точность: 0.9038 …
Лог файлы успешно сохранены …
— Время выполнения: 415.41 сек. —
[9]:
True
Для выполнения ранжирования кандидатов необходимо знать весовые коэффициенты, определяющие приоритетность персональных качеств личности в зависимости от профессии.
Предлагаются весовые коэффициенты для 5 профессий, вычисленные на основе научных статей:
Sajjad H. et al. Personality and Career Choices // African Journal of Business Management. - 2012. – Vol. 6 (6) – pp. 2255-2260.
Alkhelil A. H. The Relationship between Personality Traits and Career Choice: A Case Study of Secondary School Students // International Journal of Academic Research in Progressive Education and Development. – 2016. – Vol. 5(2). – pp. 2226-6348.
De Jong N. et al. Personality Traits and Career Role Enactment: Career Role Preferences as a Mediator // Frontiers in Psychology. – 2019. – Vol. 10. – pp. 1720.
Пользователь может установить свои весовые коэффициенты; сумма весов должна быть равна 100.
[10]:
# Загрузка датафрейма с весовыми коэффициентами
url = 'https://download.sberdisk.ru/download/file/478675798?token=fF5fNZVpthQlEV0&filename=traits_priority_for_professions.csv'
traits_priority_for_professions = pd.read_csv(url)
traits_priority_for_professions.index.name = 'ID'
traits_priority_for_professions.index += 1
traits_priority_for_professions.index = traits_priority_for_professions.index.map(str)
traits_priority_for_professions
[10]:
Profession | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Managers/executives | 15 | 35 | 15 | 30 | 5 |
2 | Entrepreneurship | 30 | 30 | 5 | 5 | 30 |
3 | Social/Non profit making professions | 5 | 5 | 35 | 35 | 20 |
4 | Public sector professions | 15 | 50 | 15 | 15 | 5 |
5 | Scientists/researchers, and engineers | 50 | 15 | 5 | 15 | 15 |
[11]:
weights = traits_priority_for_professions.iloc[4].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'engineer_candidate_ranking_mupta_ru', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[11]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | 71.387 |
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | 70.057 |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | 69.831 |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | 66.608 |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | 64.866 |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | 64.169 |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | 63.845 |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | 62.724 |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | 61.945 |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | 61.672 |
[12]:
weights = traits_priority_for_professions.iloc[0].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'executive_candidate_ranking_mupta_ru', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[12]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | 72.930 |
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | 70.172 |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | 69.985 |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | 69.649 |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | 66.261 |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | 65.774 |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | 65.371 |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | 63.941 |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | 63.477 |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | 61.461 |
Для ранжирования кандидатов по профессиональным навыкам необходимо задать по два коэффициента корреляции для каждого персонального качества личности человека и навыка, а также порога полярности качеств. Эти коэффициенты должны показывать, как измениться оценка качества человека если она больше или меньше заданного порога полярности качеств.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в четырьмя профессиональными навыками, представленных в статье:
Wehner C., de Grip A., Pfeifer H. Do recruiters select workers with different personality traits for different tasks? A discrete choice experiment // Labour Economics. - 2022. - vol. 78. - pp. 102186.
Представлены 4 профессиональных навыка:
Analytical (Аналитические навыки). Умение эффективно решать новые задачи, требующие глубокого анализа.
Interactive (Навыки межличностного общения). Умение убеждать и достигать компромиссов с заказчиками и коллегами.
Routine (Способность выполнять рутинную работу). Умение эффективно управлять рутинными задачами, соблюдая точность и внимание к деталям.
Non-Routine (Способность выполнять нестандартную работу). Умение реагировать и решать проблемы, не имеющие установленного порядка, проявляя адаптивность и креативные навыки в решении задач.
Пользователь может установить свои коэффициенты корреляции и ранжировать кандидатов по другим профессиональным навыкам.
[13]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478678231?token=0qiZwliLtHWWYMv&filename=professional_skills.csv'
df_professional_skills = pd.read_csv(url)
df_professional_skills.index.name = 'ID'
df_professional_skills.index += 1
df_professional_skills.index = df_professional_skills.index.map(str)
df_professional_skills
[13]:
Trait | Score_level | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Openness | high | 0.082 | 0.348 | 0.571 | 0.510 |
2 | Openness | low | 0.196 | 0.152 | 0.148 | 0.218 |
3 | Conscientiousness | high | 0.994 | 1.333 | 1.507 | 1.258 |
4 | Conscientiousness | low | 0.241 | 0.188 | 0.191 | 0.267 |
5 | Extraversion | high | 0.169 | -0.060 | 0.258 | 0.017 |
6 | Extraversion | low | 0.181 | 0.135 | 0.130 | 0.194 |
7 | Agreeableness | high | 1.239 | 0.964 | 1.400 | 1.191 |
8 | Agreeableness | low | 0.226 | 0.180 | 0.189 | 0.259 |
9 | Non-Neuroticism | high | 0.636 | 0.777 | 0.876 | 0.729 |
10 | Non-Neuroticism | low | 0.207 | 0.159 | 0.166 | 0.238 |
[14]:
_b5._priority_skill_calculation(
correlation_coefficients = df_professional_skills,
threshold = 0.5,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_skill_, name = 'skill_candidate_ranking_mupta_ru', out = True)
# Опционно
df = _b5.df_files_priority_skill_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[14]:
Path | OPE | CON | EXT | AGR | NNEU | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | 0.442 | 0.469 | 0.650 | 0.525 |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | 0.384 | 0.391 | 0.554 | 0.455 |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | 0.379 | 0.386 | 0.553 | 0.454 |
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | 0.377 | 0.389 | 0.554 | 0.455 |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | 0.360 | 0.369 | 0.525 | 0.430 |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | 0.354 | 0.365 | 0.517 | 0.423 |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | 0.353 | 0.365 | 0.520 | 0.425 |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | 0.346 | 0.359 | 0.508 | 0.416 |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | 0.343 | 0.352 | 0.503 | 0.413 |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | 0.328 | 0.339 | 0.485 | 0.397 |
MuPTA
(en)[15]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'fi'
lang = 'en'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder()
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 19:00:49] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:00:52] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.564985 | 0.539052 | 0.440615 | 0.59251 | 0.488763 |
2 | speaker_06_center_83.mov | 0.650774 | 0.663849 | 0.607308 | 0.643847 | 0.620627 |
3 | speaker_07_center_83.mov | 0.435976 | 0.486683 | 0.313828 | 0.415446 | 0.396618 |
4 | speaker_10_center_83.mov | 0.498542 | 0.511243 | 0.412592 | 0.468947 | 0.44399 |
5 | speaker_11_center_83.mov | 0.394776 | 0.341608 | 0.327082 | 0.427304 | 0.354936 |
6 | speaker_15_center_83.mov | 0.566107 | 0.543811 | 0.492766 | 0.587411 | 0.499433 |
7 | speaker_19_center_83.mov | 0.506271 | 0.438215 | 0.430894 | 0.456177 | 0.44075 |
8 | speaker_23_center_83.mov | 0.486463 | 0.521755 | 0.309894 | 0.432291 | 0.433601 |
9 | speaker_24_center_83.mov | 0.417404 | 0.473339 | 0.320714 | 0.445086 | 0.414649 |
10 | speaker_27_center_83.mov | 0.526112 | 0.661107 | 0.443167 | 0.558965 | 0.554224 |
[2023-12-16 19:00:52] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.1727 | 0.1672 | 0.1661 | 0.2579 | 0.107 | 0.1742 |
Accuracy | 0.8273 | 0.8328 | 0.8339 | 0.7421 | 0.893 | 0.8258 |
[2023-12-16 19:00:52] Средняя средних абсолютных ошибок: 0.1742, средняя точность: 0.8258 …
Лог файлы успешно сохранены …
— Время выполнения: 372.823 сек. —
[15]:
True
Для выполнения ранжирования кандидатов необходимо знать весовые коэффициенты, определяющие приоритетность персональных качеств личности в зависимости от профессии.
Предлагаются весовые коэффициенты для 5 профессий, вычисленные на основе научных статей:
Sajjad H. et al. Personality and Career Choices // African Journal of Business Management. - 2012. – Vol. 6 (6) – pp. 2255-2260.
Alkhelil A. H. The Relationship between Personality Traits and Career Choice: A Case Study of Secondary School Students // International Journal of Academic Research in Progressive Education and Development. – 2016. – Vol. 5(2). – pp. 2226-6348.
De Jong N. et al. Personality Traits and Career Role Enactment: Career Role Preferences as a Mediator // Frontiers in Psychology. – 2019. – Vol. 10. – pp. 1720.
Пользователь может установить свои весовые коэффициенты; сумма весов должна быть равна 100.
[16]:
# Загрузка датафрейма с весовыми коэффициентами
url = 'https://download.sberdisk.ru/download/file/478675798?token=fF5fNZVpthQlEV0&filename=traits_priority_for_professions.csv'
traits_priority_for_professions = pd.read_csv(url)
traits_priority_for_professions.index.name = 'ID'
traits_priority_for_professions.index += 1
traits_priority_for_professions.index = traits_priority_for_professions.index.map(str)
traits_priority_for_professions
[16]:
Profession | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Managers/executives | 15 | 35 | 15 | 30 | 5 |
2 | Entrepreneurship | 30 | 30 | 5 | 5 | 30 |
3 | Social/Non profit making professions | 5 | 5 | 35 | 35 | 20 |
4 | Public sector professions | 15 | 50 | 15 | 15 | 5 |
5 | Scientists/researchers, and engineers | 50 | 15 | 5 | 15 | 15 |
[17]:
weights = traits_priority_for_professions.iloc[4].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'engineer_candidate_ranking_mupta_en', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[17]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | 64.500 |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | 55.229 |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | 55.136 |
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | 54.757 |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | 48.353 |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | 47.495 |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | 46.687 |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | 42.849 |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | 42.470 |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | 38.232 |
[18]:
weights = traits_priority_for_professions.iloc[0].values[1:]
weights = list(map(int, weights))
_b5._candidate_ranking(
weigths_openness = weights[0],
weigths_conscientiousness = weights[1],
weigths_extraversion = weights[2],
weigths_agreeableness = weights[3],
weigths_non_neuroticism = weights[4],
out = False
)
_b5._save_logs(df = _b5.df_files_ranking_, name = 'executive_candidate_ranking_mupta_en', out = True)
# Опционно
df = _b5.df_files_ranking_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[18]:
Path | OPE | CON | EXT | AGR | NNEU | Candidate score | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | 64.524 |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | 57.218 |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | 55.036 |
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | 54.170 |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | 47.849 |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | 45.344 |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | 45.284 |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | 43.064 |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | 42.727 |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | 37.378 |
Для ранжирования кандидатов по профессиональным навыкам необходимо задать по два коэффициента корреляции для каждого персонального качества личности человека и навыка, а также порога полярности качеств. Эти коэффициенты должны показывать, как измениться оценка качества человека если она больше или меньше заданного порога полярности качеств.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в четырьмя профессиональными навыками, представленных в статье:
Wehner C., de Grip A., Pfeifer H. Do recruiters select workers with different personality traits for different tasks? A discrete choice experiment // Labour Economics. - 2022. - vol. 78. - pp. 102186.
Представлены 4 профессиональных навыка:
Analytical (Аналитические навыки). Умение эффективно решать новые задачи, требующие глубокого анализа.
Interactive (Навыки межличностного общения). Умение убеждать и достигать компромиссов с заказчиками и коллегами.
Routine (Способность выполнять рутинную работу). Умение эффективно управлять рутинными задачами, соблюдая точность и внимание к деталям.
Non-Routine (Способность выполнять нестандартную работу). Умение реагировать и решать проблемы, не имеющие установленного порядка, проявляя адаптивность и креативные навыки в решении задач.
Пользователь может установить свои коэффициенты корреляции и ранжировать кандидатов по другим профессиональным навыкам.
[19]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478678231?token=0qiZwliLtHWWYMv&filename=professional_skills.csv'
df_professional_skills = pd.read_csv(url)
df_professional_skills.index.name = 'ID'
df_professional_skills.index += 1
df_professional_skills.index = df_professional_skills.index.map(str)
df_professional_skills
[19]:
Trait | Score_level | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|
ID | ||||||
1 | Openness | high | 0.082 | 0.348 | 0.571 | 0.510 |
2 | Openness | low | 0.196 | 0.152 | 0.148 | 0.218 |
3 | Conscientiousness | high | 0.994 | 1.333 | 1.507 | 1.258 |
4 | Conscientiousness | low | 0.241 | 0.188 | 0.191 | 0.267 |
5 | Extraversion | high | 0.169 | -0.060 | 0.258 | 0.017 |
6 | Extraversion | low | 0.181 | 0.135 | 0.130 | 0.194 |
7 | Agreeableness | high | 1.239 | 0.964 | 1.400 | 1.191 |
8 | Agreeableness | low | 0.226 | 0.180 | 0.189 | 0.259 |
9 | Non-Neuroticism | high | 0.636 | 0.777 | 0.876 | 0.729 |
10 | Non-Neuroticism | low | 0.207 | 0.159 | 0.166 | 0.238 |
[20]:
_b5._priority_skill_calculation(
correlation_coefficients = df_professional_skills,
threshold = 0.5,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_skill_, name = 'skill_candidate_ranking_mupta_en', out = True)
# Опционно
df = _b5.df_files_priority_skill_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[20]:
Path | OPE | CON | EXT | AGR | NNEU | Analytical | Interactive | Routine | Non-Routine | |
---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | 0.402 | 0.436 | 0.595 | 0.479 |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | 0.365 | 0.419 | 0.524 | 0.451 |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | 0.301 | 0.327 | 0.422 | 0.377 |
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | 0.299 | 0.325 | 0.421 | 0.375 |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | 0.176 | 0.194 | 0.212 | 0.212 |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | 0.172 | 0.192 | 0.210 | 0.208 |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | 0.088 | 0.068 | 0.069 | 0.099 |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | 0.087 | 0.068 | 0.069 | 0.098 |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | 0.084 | 0.094 | 0.118 | 0.136 |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | 0.078 | 0.060 | 0.061 | 0.087 |
Решение практической задачи выполняется в два этапа. На первом этапе необходимо использовать библиотеку OCEAN-AI для получения гипотез предсказаний (оценок персональных качеств личности человека). На втором этапе следует использовать метод _priority_calculation из библиотеки OCEAN-AI для решения представленной практической задачи. Примеры результатов работы и реализации представлены ниже.
Таким образом, библиотека OCEAN-AI предоставляет инструмент для анализа персональных качеств личности потребителей, что полезно для предсказания того, что их заинтересует. Это позволит компаниям более точно адаптировать свои товары и услуги к предпочтениям потребителей, делая их более уникальными и персонализированными.
FI V2
[2]:
# Импорт необходимых инструментов
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
corpus = 'fi'
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang='en')
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_FI/'
PATH_SAVE_VIDEO = './video_FI/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса First Impression V2
# URL: https://chalearnlap.cvc.uab.cat/dataset/24/description/
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'429713680?token=FqHdMLSSh7zYSZt&filename=_plk5k7PBEg.003.mp4',
'429713681?token=Hz9b4lQkrLfic33&filename=be0DQawtVkE.002.mp4',
'429713683?token=EgUXS9Xs8xHm5gz&filename=2d6btbaNdfo.000.mp4',
'429713684?token=1U26753kmPYdIgt&filename=300gK3CnzW0.003.mp4',
'429713685?token=LyigAWLTzDNwKJO&filename=300gK3CnzW0.001.mp4',
'429713686?token=EpfRbCKHyuc4HPu&filename=cLaZxEf1nE4.004.mp4',
'429713687?token=FNTkwqBr4jOS95l&filename=g24JGYuT74A.004.mp4',
'429713688?token=qDT95nz7hfm2Nki&filename=JZNMxa3OKHY.000.mp4',
'429713689?token=noLguEGXDpbcKhg&filename=nvlqJbHk_Lc.003.mp4',
'429713679?token=9L7RQ0hgdJlcek6&filename=4vdJGgZpj4k.003.mp4'
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_[corpus]['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = 'en')
[2023-12-16 19:05:15] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:05:17] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_FI:nbsphinx-math:test_plk5k7PBEg.003.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | 2d6btbaNdfo.000.mp4 | 0.581159 | 0.628822 | 0.466609 | 0.622129 | 0.553832 |
2 | 300gK3CnzW0.001.mp4 | 0.463991 | 0.418851 | 0.41301 | 0.493329 | 0.423093 |
3 | 300gK3CnzW0.003.mp4 | 0.454281 | 0.415049 | 0.39189 | 0.485114 | 0.420741 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588461 | 0.643233 | 0.530789 | 0.603038 | 0.593398 |
5 | be0DQawtVkE.002.mp4 | 0.633433 | 0.533295 | 0.523742 | 0.608591 | 0.588456 |
6 | cLaZxEf1nE4.004.mp4 | 0.636944 | 0.542386 | 0.558461 | 0.570975 | 0.558983 |
7 | g24JGYuT74A.004.mp4 | 0.531518 | 0.376987 | 0.393309 | 0.4904 | 0.447881 |
8 | JZNMxa3OKHY.000.mp4 | 0.610342 | 0.541418 | 0.563163 | 0.595013 | 0.569461 |
9 | nvlqJbHk_Lc.003.mp4 | 0.495809 | 0.458526 | 0.414436 | 0.469152 | 0.435461 |
10 | _plk5k7PBEg.003.mp4 | 0.60707 | 0.591893 | 0.520662 | 0.603938 | 0.565726 |
[2023-12-16 19:05:17] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0589 | 0.0612 | 0.0864 | 0.0697 | 0.0582 | 0.0669 |
Accuracy | 0.9411 | 0.9388 | 0.9136 | 0.9303 | 0.9418 | 0.9331 |
[2023-12-16 19:05:17] Средняя средних абсолютных ошибок: 0.0669, средняя точность: 0.9331 …
Лог файлы успешно сохранены …
— Время выполнения: 64.147 сек. —
[2]:
True
Для прогнозирования потребительских предпочтений в промышленных товарах необходимо знать коэффициенты корреляции, определяющие взаимосвязь между персональными качествами личности человека и предпочтениями в товарах или услугах.
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками автомобилей, представленными в статье:
O’Connor P. J. et al. What Drives Consumer Automobile Choice? Investigating Personality Trait Predictors of Vehicle Preference Factors // Personality and Individual Differences. – 2022. – Vol. 184. – pp. 111220.
Пользователь может установить свои коэффициенты корреляции.
[3]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675818?token=EjfLMqOeK8cfnOu&filename=auto_characteristics.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['Style and performance', 'Safety and practicality'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[3]:
Trait | Performance | Classic car features | Luxury additions | Fashion and attention | Recreation | Technology | Family friendly | Safe and reliable | Practical and easy to use | Economical/low cost | Basic features | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | ||||||||||||
1 | Openness | 0.020000 | -0.033333 | -0.030000 | -0.050000 | 0.033333 | 0.013333 | -0.030000 | 0.136667 | 0.106667 | 0.093333 | 0.006667 |
2 | Conscientiousness | 0.013333 | -0.193333 | -0.063333 | -0.096667 | -0.096667 | 0.086667 | -0.063333 | 0.280000 | 0.180000 | 0.130000 | 0.143333 |
3 | Extraversion | 0.133333 | 0.060000 | 0.106667 | 0.123333 | 0.126667 | 0.120000 | 0.090000 | 0.136667 | 0.043333 | 0.073333 | 0.050000 |
4 | Agreeableness | -0.036667 | -0.193333 | -0.133333 | -0.133333 | -0.090000 | 0.046667 | -0.016667 | 0.240000 | 0.160000 | 0.120000 | 0.083333 |
5 | Non-Neuroticism | 0.016667 | -0.006667 | -0.010000 | -0.006667 | -0.033333 | 0.046667 | -0.023333 | 0.093333 | 0.046667 | 0.046667 | -0.040000 |
[4]:
_b5._priority_calculation(
correlation_coefficients = df_correlation_coefficients,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = False
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'auto_characteristics_priorities_fi_en', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[4]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | Practical and easy to use | Safe and reliable | Economical/low cost | Agreeableness | Openness | Non-Neuroticism |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | Safe and reliable | Economical/low cost | Practical and easy to use | Agreeableness | Openness | Extraversion |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | Safe and reliable | Economical/low cost | Practical and easy to use | Agreeableness | Openness | Extraversion |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками мобильного устройства, представленными в статье:
Peltonen E., Sharmila P., Asare K. O., Visuri A., Lagerspetz E., Ferreira D. (2020). When phones get personal: Predicting Big Five personality traits from application usage // Pervasive and Mobile Computing. – 2020. – Vol. 69. – 101269.
[5]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478676690?token=7KcAxPqMpWiYQnx&filename=divice_characteristics.csv'
df_divice_characteristics = pd.read_csv(url)
df_divice_characteristics.index.name = 'ID'
df_divice_characteristics.index += 1
df_divice_characteristics.index = df_divice_characteristics.index.map(str)
df_divice_characteristics
[5]:
Trait | Communication | Game Action | Game Board | Game Casino | Game Educational | Game Simulation | Game Trivia | Entertainment | Finance | Health and Fitness | Media and Video | Music and Audio | News and Magazines | Personalisation | Travel and Local | Weather | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | |||||||||||||||||
1 | Openness | 0.118 | 0.056 | 0.079 | 0.342 | 0.027 | 0.104 | 0.026 | 0.000 | 0.006 | 0.002 | 0.000 | 0.000 | 0.001 | 0.004 | 0.002 | 0.004 |
2 | Conscientiousness | 0.119 | 0.043 | 0.107 | 0.448 | 0.039 | 0.012 | 0.119 | 0.000 | 0.005 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.001 | 0.003 |
3 | Extraversion | 0.246 | 0.182 | 0.211 | 0.311 | 0.102 | 0.165 | 0.223 | 0.001 | 0.003 | 0.000 | 0.001 | 0.001 | 0.001 | 0.004 | 0.009 | 0.003 |
4 | Agreeableness | 0.218 | 0.104 | 0.164 | 0.284 | 0.165 | 0.122 | 0.162 | 0.000 | 0.003 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.004 | 0.003 |
5 | Non-Neuroticism | 0.046 | 0.047 | 0.125 | 0.515 | 0.272 | 0.179 | 0.214 | 0.002 | 0.030 | 0.001 | 0.000 | 0.005 | 0.003 | 0.008 | 0.004 | 0.007 |
[6]:
_b5._priority_calculation(
correlation_coefficients = df_divice_characteristics,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'divice_characteristics_priorities_fi_en', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[6]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | Game Casino | Game Educational | Game Trivia | Non-Neuroticism | Conscientiousness | Agreeableness |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | Game Casino | Game Educational | Game Trivia | Non-Neuroticism | Conscientiousness | Agreeableness |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | Game Casino | Game Educational | Game Simulation | Non-Neuroticism | Agreeableness | Openness |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | Game Casino | Game Simulation | Game Educational | Non-Neuroticism | Agreeableness | Extraversion |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | Game Casino | Game Simulation | Game Educational | Non-Neuroticism | Agreeableness | Extraversion |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | Game Casino | Game Educational | Game Trivia | Non-Neuroticism | Agreeableness | Conscientiousness |
MuPTA
(ru)[7]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'mupta'
lang = 'ru'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 19:13:25] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:13:30] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.758137 | 0.693356 | 0.650108 | 0.744589 | 0.488671 |
2 | speaker_06_center_83.mov | 0.681602 | 0.654339 | 0.607156 | 0.731282 | 0.417908 |
3 | speaker_07_center_83.mov | 0.666104 | 0.656836 | 0.567863 | 0.685067 | 0.378102 |
4 | speaker_10_center_83.mov | 0.694171 | 0.596195 | 0.571414 | 0.66223 | 0.348639 |
5 | speaker_11_center_83.mov | 0.712885 | 0.594764 | 0.571709 | 0.716696 | 0.37802 |
6 | speaker_15_center_83.mov | 0.664158 | 0.670411 | 0.60421 | 0.696056 | 0.399842 |
7 | speaker_19_center_83.mov | 0.761213 | 0.652635 | 0.651028 | 0.788677 | 0.459676 |
8 | speaker_23_center_83.mov | 0.692788 | 0.68324 | 0.616737 | 0.795205 | 0.447242 |
9 | speaker_24_center_83.mov | 0.705923 | 0.658382 | 0.610645 | 0.697415 | 0.411988 |
10 | speaker_27_center_83.mov | 0.753417 | 0.708372 | 0.654608 | 0.816416 | 0.504743 |
[2023-12-16 19:13:30] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0673 | 0.0789 | 0.1325 | 0.102 | 0.1002 | 0.0962 |
Accuracy | 0.9327 | 0.9211 | 0.8675 | 0.898 | 0.8998 | 0.9038 |
[2023-12-16 19:13:30] Средняя средних абсолютных ошибок: 0.0962, средняя точность: 0.9038 …
Лог файлы успешно сохранены …
— Время выполнения: 416.453 сек. —
[7]:
True
Для прогнозирования потребительских предпочтений в промышленных товарах необходимо знать коэффициенты корреляции, определяющие взаимосвязь между персональными качествами личности человека и предпочтениями в товарах или услугах.
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками автомобилей, представленными в статье:
O’Connor P. J. et al. What Drives Consumer Automobile Choice? Investigating Personality Trait Predictors of Vehicle Preference Factors // Personality and Individual Differences. – 2022. – Vol. 184. – pp. 111220.
Пользователь может установить свои коэффициенты корреляции.
[8]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675818?token=EjfLMqOeK8cfnOu&filename=auto_characteristics.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['Style and performance', 'Safety and practicality'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[8]:
Trait | Performance | Classic car features | Luxury additions | Fashion and attention | Recreation | Technology | Family friendly | Safe and reliable | Practical and easy to use | Economical/low cost | Basic features | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | ||||||||||||
1 | Openness | 0.020000 | -0.033333 | -0.030000 | -0.050000 | 0.033333 | 0.013333 | -0.030000 | 0.136667 | 0.106667 | 0.093333 | 0.006667 |
2 | Conscientiousness | 0.013333 | -0.193333 | -0.063333 | -0.096667 | -0.096667 | 0.086667 | -0.063333 | 0.280000 | 0.180000 | 0.130000 | 0.143333 |
3 | Extraversion | 0.133333 | 0.060000 | 0.106667 | 0.123333 | 0.126667 | 0.120000 | 0.090000 | 0.136667 | 0.043333 | 0.073333 | 0.050000 |
4 | Agreeableness | -0.036667 | -0.193333 | -0.133333 | -0.133333 | -0.090000 | 0.046667 | -0.016667 | 0.240000 | 0.160000 | 0.120000 | 0.083333 |
5 | Non-Neuroticism | 0.016667 | -0.006667 | -0.010000 | -0.006667 | -0.033333 | 0.046667 | -0.023333 | 0.093333 | 0.046667 | 0.046667 | -0.040000 |
[9]:
_b5._priority_calculation(
correlation_coefficients = df_correlation_coefficients,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = False
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'auto_characteristics_priorities_mupta_ru', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[9]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | Safe and reliable | Practical and easy to use | Economical/low cost | Agreeableness | Conscientiousness | Openness |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | Safe and reliable | Practical and easy to use | Economical/low cost | Agreeableness | Conscientiousness | Openness |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | Safe and reliable | Practical and easy to use | Economical/low cost | Agreeableness | Conscientiousness | Openness |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | Safe and reliable | Practical and easy to use | Economical/low cost | Agreeableness | Conscientiousness | Openness |
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками мобильного устройства, представленными в статье:
Peltonen E., Sharmila P., Asare K. O., Visuri A., Lagerspetz E., Ferreira D. (2020). When phones get personal: Predicting Big Five personality traits from application usage // Pervasive and Mobile Computing. – 2020. – Vol. 69. – 101269.
[10]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478676690?token=7KcAxPqMpWiYQnx&filename=divice_characteristics.csv'
df_divice_characteristics = pd.read_csv(url)
df_divice_characteristics.index.name = 'ID'
df_divice_characteristics.index += 1
df_divice_characteristics.index = df_divice_characteristics.index.map(str)
df_divice_characteristics
[10]:
Trait | Communication | Game Action | Game Board | Game Casino | Game Educational | Game Simulation | Game Trivia | Entertainment | Finance | Health and Fitness | Media and Video | Music and Audio | News and Magazines | Personalisation | Travel and Local | Weather | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | |||||||||||||||||
1 | Openness | 0.118 | 0.056 | 0.079 | 0.342 | 0.027 | 0.104 | 0.026 | 0.000 | 0.006 | 0.002 | 0.000 | 0.000 | 0.001 | 0.004 | 0.002 | 0.004 |
2 | Conscientiousness | 0.119 | 0.043 | 0.107 | 0.448 | 0.039 | 0.012 | 0.119 | 0.000 | 0.005 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.001 | 0.003 |
3 | Extraversion | 0.246 | 0.182 | 0.211 | 0.311 | 0.102 | 0.165 | 0.223 | 0.001 | 0.003 | 0.000 | 0.001 | 0.001 | 0.001 | 0.004 | 0.009 | 0.003 |
4 | Agreeableness | 0.218 | 0.104 | 0.164 | 0.284 | 0.165 | 0.122 | 0.162 | 0.000 | 0.003 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.004 | 0.003 |
5 | Non-Neuroticism | 0.046 | 0.047 | 0.125 | 0.515 | 0.272 | 0.179 | 0.214 | 0.002 | 0.030 | 0.001 | 0.000 | 0.005 | 0.003 | 0.008 | 0.004 | 0.007 |
[11]:
_b5._priority_calculation(
correlation_coefficients = df_divice_characteristics,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'divice_characteristics_priorities_mupta_ru', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[11]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | Game Casino | Communication | Game Board | Extraversion | Agreeableness | Conscientiousness |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | Game Casino | Communication | Game Board | Agreeableness | Conscientiousness | Extraversion |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | Game Casino | Communication | Game Board | Extraversion | Agreeableness | Conscientiousness |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | Game Casino | Communication | Game Board | Extraversion | Agreeableness | Conscientiousness |
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | Game Casino | Communication | Game Board | Agreeableness | Extraversion | Conscientiousness |
MuPTA
(en)[12]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'fi'
lang = 'en'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 19:20:55] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:20:57] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.564985 | 0.539052 | 0.440615 | 0.59251 | 0.488763 |
2 | speaker_06_center_83.mov | 0.650774 | 0.663849 | 0.607308 | 0.643847 | 0.620627 |
3 | speaker_07_center_83.mov | 0.435976 | 0.486683 | 0.313828 | 0.415446 | 0.396618 |
4 | speaker_10_center_83.mov | 0.498542 | 0.511243 | 0.412592 | 0.468947 | 0.44399 |
5 | speaker_11_center_83.mov | 0.394776 | 0.341608 | 0.327082 | 0.427304 | 0.354936 |
6 | speaker_15_center_83.mov | 0.566107 | 0.543811 | 0.492766 | 0.587411 | 0.499433 |
7 | speaker_19_center_83.mov | 0.506271 | 0.438215 | 0.430894 | 0.456177 | 0.44075 |
8 | speaker_23_center_83.mov | 0.486463 | 0.521755 | 0.309894 | 0.432291 | 0.433601 |
9 | speaker_24_center_83.mov | 0.417404 | 0.473339 | 0.320714 | 0.445086 | 0.414649 |
10 | speaker_27_center_83.mov | 0.526112 | 0.661107 | 0.443167 | 0.558965 | 0.554224 |
[2023-12-16 19:20:57] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.1727 | 0.1672 | 0.1661 | 0.2579 | 0.107 | 0.1742 |
Accuracy | 0.8273 | 0.8328 | 0.8339 | 0.7421 | 0.893 | 0.8258 |
[2023-12-16 19:20:57] Средняя средних абсолютных ошибок: 0.1742, средняя точность: 0.8258 …
Лог файлы успешно сохранены …
— Время выполнения: 379.936 сек. —
[12]:
True
Для прогнозирования потребительских предпочтений в промышленных товарах необходимо знать коэффициенты корреляции, определяющие взаимосвязь между персональными качествами личности человека и предпочтениями в товарах или услугах.
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками автомобилей, представленными в статье:
O’Connor P. J. et al. What Drives Consumer Automobile Choice? Investigating Personality Trait Predictors of Vehicle Preference Factors // Personality and Individual Differences. – 2022. – Vol. 184. – pp. 111220.
Пользователь может установить свои коэффициенты корреляции.
[13]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675818?token=EjfLMqOeK8cfnOu&filename=auto_characteristics.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['Style and performance', 'Safety and practicality'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[13]:
Trait | Performance | Classic car features | Luxury additions | Fashion and attention | Recreation | Technology | Family friendly | Safe and reliable | Practical and easy to use | Economical/low cost | Basic features | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | ||||||||||||
1 | Openness | 0.020000 | -0.033333 | -0.030000 | -0.050000 | 0.033333 | 0.013333 | -0.030000 | 0.136667 | 0.106667 | 0.093333 | 0.006667 |
2 | Conscientiousness | 0.013333 | -0.193333 | -0.063333 | -0.096667 | -0.096667 | 0.086667 | -0.063333 | 0.280000 | 0.180000 | 0.130000 | 0.143333 |
3 | Extraversion | 0.133333 | 0.060000 | 0.106667 | 0.123333 | 0.126667 | 0.120000 | 0.090000 | 0.136667 | 0.043333 | 0.073333 | 0.050000 |
4 | Agreeableness | -0.036667 | -0.193333 | -0.133333 | -0.133333 | -0.090000 | 0.046667 | -0.016667 | 0.240000 | 0.160000 | 0.120000 | 0.083333 |
5 | Non-Neuroticism | 0.016667 | -0.006667 | -0.010000 | -0.006667 | -0.033333 | 0.046667 | -0.023333 | 0.093333 | 0.046667 | 0.046667 | -0.040000 |
[14]:
_b5._priority_calculation(
correlation_coefficients = df_correlation_coefficients,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = False
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'auto_characteristics_priorities_mupta_en', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[14]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | Practical and easy to use | Economical/low cost | Family friendly | Agreeableness | Openness | Non-Neuroticism |
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Openness |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | Practical and easy to use | Economical/low cost | Family friendly | Agreeableness | Openness | Non-Neuroticism |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | Classic car features | Fashion and attention | Luxury additions | Agreeableness | Conscientiousness | Openness |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | Safe and reliable | Practical and easy to use | Economical/low cost | Conscientiousness | Agreeableness | Non-Neuroticism |
В качестве примера предлагается использование коэффициентов корреляции между персональными качествами человека и характеристиками мобильного устройства, представленными в статье:
Peltonen E., Sharmila P., Asare K. O., Visuri A., Lagerspetz E., Ferreira D. (2020). When phones get personal: Predicting Big Five personality traits from application usage // Pervasive and Mobile Computing. – 2020. – Vol. 69. – 101269.
[15]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478676690?token=7KcAxPqMpWiYQnx&filename=divice_characteristics.csv'
df_divice_characteristics = pd.read_csv(url)
df_divice_characteristics.index.name = 'ID'
df_divice_characteristics.index += 1
df_divice_characteristics.index = df_divice_characteristics.index.map(str)
df_divice_characteristics
[15]:
Trait | Communication | Game Action | Game Board | Game Casino | Game Educational | Game Simulation | Game Trivia | Entertainment | Finance | Health and Fitness | Media and Video | Music and Audio | News and Magazines | Personalisation | Travel and Local | Weather | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ID | |||||||||||||||||
1 | Openness | 0.118 | 0.056 | 0.079 | 0.342 | 0.027 | 0.104 | 0.026 | 0.000 | 0.006 | 0.002 | 0.000 | 0.000 | 0.001 | 0.004 | 0.002 | 0.004 |
2 | Conscientiousness | 0.119 | 0.043 | 0.107 | 0.448 | 0.039 | 0.012 | 0.119 | 0.000 | 0.005 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.001 | 0.003 |
3 | Extraversion | 0.246 | 0.182 | 0.211 | 0.311 | 0.102 | 0.165 | 0.223 | 0.001 | 0.003 | 0.000 | 0.001 | 0.001 | 0.001 | 0.004 | 0.009 | 0.003 |
4 | Agreeableness | 0.218 | 0.104 | 0.164 | 0.284 | 0.165 | 0.122 | 0.162 | 0.000 | 0.003 | 0.001 | 0.000 | 0.002 | 0.002 | 0.001 | 0.004 | 0.003 |
5 | Non-Neuroticism | 0.046 | 0.047 | 0.125 | 0.515 | 0.272 | 0.179 | 0.214 | 0.002 | 0.030 | 0.001 | 0.000 | 0.005 | 0.003 | 0.008 | 0.004 | 0.007 |
[16]:
_b5._priority_calculation(
correlation_coefficients = df_divice_characteristics,
col_name_ocean = 'Trait',
threshold = 0.55,
number_priority = 3,
number_importance_traits = 3,
out = True
)
_b5._save_logs(df = _b5.df_files_priority_, name = 'divice_characteristics_priorities_mupta_en', out = True)
# Опционно
df = _b5.df_files_priority_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = ['OPE', 'CON', 'EXT', 'AGR', 'NNEU']
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[16]:
Path | OPE | CON | EXT | AGR | NNEU | Priority 1 | Priority 2 | Priority 3 | Trait importance 1 | Trait importance 2 | Trait importance 3 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Person ID | ||||||||||||
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | Communication | Health and Fitness | Media and Video | Agreeableness | Openness | Non-Neuroticism |
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | Game Casino | Communication | Game Trivia | Non-Neuroticism | Extraversion | Conscientiousness |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | Media and Video | Entertainment | Health and Fitness | Agreeableness | Conscientiousness | Extraversion |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | Media and Video | Entertainment | Health and Fitness | Agreeableness | Conscientiousness | Extraversion |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | Health and Fitness | Media and Video | News and Magazines | Agreeableness | Openness | Extraversion |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | Media and Video | Entertainment | Health and Fitness | Conscientiousness | Agreeableness | Extraversion |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | Media and Video | Entertainment | Health and Fitness | Agreeableness | Conscientiousness | Extraversion |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | Media and Video | Entertainment | Health and Fitness | Agreeableness | Conscientiousness | Extraversion |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | Game Casino | Game Educational | Game Trivia | Non-Neuroticism | Conscientiousness | Agreeableness |
Решение практической задачи выполняется в два этапа. На первом этапе необходимо использовать библиотеку OCEAN-AI для получения гипотез предсказаний (оценок персональных качеств личности человека). На втором этапе следует использовать метод _colleague_ranking из библиотеки OCEAN-AI для решения представленной практической задачи на примере поиска подходящих коллег для целевого коллеги. Примеры результатов работы и реализации представлены ниже.
Таким образом, библиотека OCEAN-AI предоставляет инструменты для анализа персональных качеств личности коллег и может помочь в формировании эффективных рабочих групп, улучшении коммуникации и сокращении конфликтов в коллективе.
FI V2
[2]:
# Импорт необходимых инструментов
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
corpus = 'fi'
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang='en')
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_FI/'
PATH_SAVE_VIDEO = './video_FI/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса First Impression V2
# URL: https://chalearnlap.cvc.uab.cat/dataset/24/description/
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'429713680?token=FqHdMLSSh7zYSZt&filename=_plk5k7PBEg.003.mp4',
'429713681?token=Hz9b4lQkrLfic33&filename=be0DQawtVkE.002.mp4',
'429713683?token=EgUXS9Xs8xHm5gz&filename=2d6btbaNdfo.000.mp4',
'429713684?token=1U26753kmPYdIgt&filename=300gK3CnzW0.003.mp4',
'429713685?token=LyigAWLTzDNwKJO&filename=300gK3CnzW0.001.mp4',
'429713686?token=EpfRbCKHyuc4HPu&filename=cLaZxEf1nE4.004.mp4',
'429713687?token=FNTkwqBr4jOS95l&filename=g24JGYuT74A.004.mp4',
'429713688?token=qDT95nz7hfm2Nki&filename=JZNMxa3OKHY.000.mp4',
'429713689?token=noLguEGXDpbcKhg&filename=nvlqJbHk_Lc.003.mp4',
'429713679?token=9L7RQ0hgdJlcek6&filename=4vdJGgZpj4k.003.mp4'
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_[corpus]['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = 'en')
[2023-12-16 19:24:17] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:24:19] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_FI:nbsphinx-math:test_plk5k7PBEg.003.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | 2d6btbaNdfo.000.mp4 | 0.581159 | 0.628822 | 0.466609 | 0.622129 | 0.553832 |
2 | 300gK3CnzW0.001.mp4 | 0.463991 | 0.418851 | 0.41301 | 0.493329 | 0.423093 |
3 | 300gK3CnzW0.003.mp4 | 0.454281 | 0.415049 | 0.39189 | 0.485114 | 0.420741 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588461 | 0.643233 | 0.530789 | 0.603038 | 0.593398 |
5 | be0DQawtVkE.002.mp4 | 0.633433 | 0.533295 | 0.523742 | 0.608591 | 0.588456 |
6 | cLaZxEf1nE4.004.mp4 | 0.636944 | 0.542386 | 0.558461 | 0.570975 | 0.558983 |
7 | g24JGYuT74A.004.mp4 | 0.531518 | 0.376987 | 0.393309 | 0.4904 | 0.447881 |
8 | JZNMxa3OKHY.000.mp4 | 0.610342 | 0.541418 | 0.563163 | 0.595013 | 0.569461 |
9 | nvlqJbHk_Lc.003.mp4 | 0.495809 | 0.458526 | 0.414436 | 0.469152 | 0.435461 |
10 | _plk5k7PBEg.003.mp4 | 0.60707 | 0.591893 | 0.520662 | 0.603938 | 0.565726 |
[2023-12-16 19:24:19] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0589 | 0.0612 | 0.0864 | 0.0697 | 0.0582 | 0.0669 |
Accuracy | 0.9411 | 0.9388 | 0.9136 | 0.9303 | 0.9418 | 0.9331 |
[2023-12-16 19:24:19] Средняя средних абсолютных ошибок: 0.0669, средняя точность: 0.9331 …
Лог файлы успешно сохранены …
— Время выполнения: 67.109 сек. —
[2]:
True
Для поиска подходящего коллеги по работе необходимо знать по два коэффициента корреляции для каждого персонального качества личности человека. Эти коэффициенты должны показывать, как изменится оценка качества одного человека, если она будет больше или меньше оценки качества другого человека.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в контексте отношений “начальник-подчиненный”, представленных в статье:
Kuroda S., Yamamoto I. Good boss, bad boss, workers’ mental health and productivity: Evidence from Japan // Japan & The World Economy. – 2018. – vol. 48. – pp. 106-118.
Пользователь может установить свои коэффициенты корреляции
[3]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675819?token=LuB7L1QsEY0UuSs&filename=colleague_ranking.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['ID'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[3]:
Score_comparison | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | higher | -0.0602 | 0.0471 | -0.1070 | -0.0832 | 0.190 |
2 | lower | -0.1720 | -0.1050 | 0.0772 | 0.0703 | -0.229 |
[4]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'major',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'major_colleague_ranking_fi_en', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[4]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | 0.078 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | 0.001 |
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | -0.002 |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | -0.007 |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | -0.008 |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | -0.013 |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | -0.014 |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | -0.154 |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | -0.154 |
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | -0.168 |
[5]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'minor',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'minor_colleague_ranking_fi_en', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[5]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
9 | nvlqJbHk_Lc.003.mp4 | 0.496 | 0.459 | 0.414 | 0.469 | 0.435 | -0.009 |
3 | 300gK3CnzW0.003.mp4 | 0.454 | 0.415 | 0.392 | 0.485 | 0.421 | -0.010 |
2 | 300gK3CnzW0.001.mp4 | 0.464 | 0.419 | 0.413 | 0.493 | 0.423 | -0.013 |
8 | JZNMxa3OKHY.000.mp4 | 0.610 | 0.541 | 0.563 | 0.595 | 0.569 | -0.207 |
6 | cLaZxEf1nE4.004.mp4 | 0.637 | 0.542 | 0.558 | 0.571 | 0.559 | -0.211 |
1 | 2d6btbaNdfo.000.mp4 | 0.581 | 0.629 | 0.467 | 0.622 | 0.554 | -0.213 |
10 | _plk5k7PBEg.003.mp4 | 0.607 | 0.592 | 0.521 | 0.604 | 0.566 | -0.213 |
5 | be0DQawtVkE.002.mp4 | 0.633 | 0.533 | 0.524 | 0.609 | 0.588 | -0.216 |
4 | 4vdJGgZpj4k.003.mp4 | 0.588 | 0.643 | 0.531 | 0.603 | 0.593 | -0.221 |
7 | g24JGYuT74A.004.mp4 | 0.532 | 0.377 | 0.393 | 0.490 | 0.448 | -0.259 |
MuPTA
(ru)[6]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'mupta'
lang = 'ru'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 19:32:56] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:33:00] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.758137 | 0.693356 | 0.650108 | 0.744589 | 0.488671 |
2 | speaker_06_center_83.mov | 0.681602 | 0.654339 | 0.607156 | 0.731282 | 0.417908 |
3 | speaker_07_center_83.mov | 0.666104 | 0.656836 | 0.567863 | 0.685067 | 0.378102 |
4 | speaker_10_center_83.mov | 0.694171 | 0.596195 | 0.571414 | 0.66223 | 0.348639 |
5 | speaker_11_center_83.mov | 0.712885 | 0.594764 | 0.571709 | 0.716696 | 0.37802 |
6 | speaker_15_center_83.mov | 0.664158 | 0.670411 | 0.60421 | 0.696056 | 0.399842 |
7 | speaker_19_center_83.mov | 0.761213 | 0.652635 | 0.651028 | 0.788677 | 0.459676 |
8 | speaker_23_center_83.mov | 0.692788 | 0.68324 | 0.616737 | 0.795205 | 0.447242 |
9 | speaker_24_center_83.mov | 0.705923 | 0.658382 | 0.610645 | 0.697415 | 0.411988 |
10 | speaker_27_center_83.mov | 0.753417 | 0.708372 | 0.654608 | 0.816416 | 0.504743 |
[2023-12-16 19:33:00] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0673 | 0.0789 | 0.1325 | 0.102 | 0.1002 | 0.0962 |
Accuracy | 0.9327 | 0.9211 | 0.8675 | 0.898 | 0.8998 | 0.9038 |
[2023-12-16 19:33:00] Средняя средних абсолютных ошибок: 0.0962, средняя точность: 0.9038 …
Лог файлы успешно сохранены …
— Время выполнения: 444.191 сек. —
[6]:
True
Для поиска подходящего коллеги по работе необходимо знать по два коэффициента корреляции для каждого персонального качества личности человека. Эти коэффициенты должны показывать, как изменится оценка качества одного человека, если она будет больше или меньше оценки качества другого человека.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в контексте отношений “начальник-подчиненный”, представленных в статье:
Kuroda S., Yamamoto I. Good boss, bad boss, workers’ mental health and productivity: Evidence from Japan // Japan & The World Economy. – 2018. – vol. 48. – pp. 106-118.
Пользователь может установить свои коэффициенты корреляции
[7]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675819?token=LuB7L1QsEY0UuSs&filename=colleague_ranking.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['ID'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[7]:
Score_comparison | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | higher | -0.0602 | 0.0471 | -0.1070 | -0.0832 | 0.190 |
2 | lower | -0.1720 | -0.1050 | 0.0772 | 0.0703 | -0.229 |
[8]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'major',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'major_colleague_ranking_mupta_ru', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[8]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | -0.052 |
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | -0.054 |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | -0.057 |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | -0.063 |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | -0.210 |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | -0.214 |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | -0.222 |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | -0.223 |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | -0.229 |
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | -0.232 |
[9]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'minor',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'minor_colleague_ranking_mupta_ru', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[9]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
2 | speaker_06_center_83.mov | 0.682 | 0.654 | 0.607 | 0.731 | 0.418 | -0.008 |
6 | speaker_15_center_83.mov | 0.664 | 0.670 | 0.604 | 0.696 | 0.400 | -0.013 |
9 | speaker_24_center_83.mov | 0.706 | 0.658 | 0.611 | 0.697 | 0.412 | -0.016 |
5 | speaker_11_center_83.mov | 0.713 | 0.595 | 0.572 | 0.717 | 0.378 | -0.019 |
3 | speaker_07_center_83.mov | 0.666 | 0.657 | 0.568 | 0.685 | 0.378 | -0.020 |
4 | speaker_10_center_83.mov | 0.694 | 0.596 | 0.571 | 0.662 | 0.349 | -0.025 |
8 | speaker_23_center_83.mov | 0.693 | 0.683 | 0.617 | 0.795 | 0.447 | -0.190 |
7 | speaker_19_center_83.mov | 0.761 | 0.653 | 0.651 | 0.789 | 0.460 | -0.199 |
10 | speaker_27_center_83.mov | 0.753 | 0.708 | 0.655 | 0.816 | 0.505 | -0.212 |
1 | speaker_01_center_83.mov | 0.758 | 0.693 | 0.650 | 0.745 | 0.489 | -0.213 |
MuPTA
(en)[10]:
import os
import pandas as pd
# Импорт модуля
from oceanai.modules.lab.build import Run
# Создание экземпляра класса
_b5 = Run()
corpus = 'fi'
lang = 'en'
# Настройка ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
# Формирование аудиомоделей
res_load_model_hc = _b5.load_audio_model_hc()
res_load_model_nn = _b5.load_audio_model_nn()
# Загрузка весов аудиомоделей
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_audio_model_weights_hc(url = url)
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_audio_model_weights_nn(url = url)
# Формирование видеомоделей
res_load_model_hc = _b5.load_video_model_hc(lang=lang)
res_load_model_deep_fe = _b5.load_video_model_deep_fe()
res_load_model_nn = _b5.load_video_model_nn()
# Загрузка весов видеомоделей
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_model_weights_hc = _b5.load_video_model_weights_hc(url = url)
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(url = url)
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_model_weights_nn = _b5.load_video_model_weights_nn(url = url)
# Загрузка словаря с экспертными признаками (текстовая модальность)
res_load_text_features = _b5.load_text_features()
# Формирование текстовых моделей
res_setup_translation_model = _b5.setup_translation_model() # только для русского языка
res_setup_translation_model = _b5.setup_bert_encoder(force_reload = False)
res_load_text_model_hc_fi = _b5.load_text_model_hc(corpus=corpus)
res_load_text_model_nn_fi = _b5.load_text_model_nn(corpus=corpus)
# Загрузка весов текстовых моделей
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(url = url)
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(url = url)
# Формирование модели для мультимодального объединения информации
res_load_avt_model_b5 = _b5.load_avt_model_b5()
# Загрузка весов модели для мультимодального объединения информации
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(url = url)
PATH_TO_DIR = './video_MuPTA/'
PATH_SAVE_VIDEO = './video_MuPTA/test/'
_b5.path_to_save_ = PATH_SAVE_VIDEO
# Загрузка 10 тестовых аудиовидеозаписей из корпуса MuPTA
# URL: https://hci.nw.ru/en/pages/mupta-corpus
domain = 'https://download.sberdisk.ru/download/file/'
tets_name_files = [
'477995979?token=2cvyk7CS0mHx2MJ&filename=speaker_06_center_83.mov',
'477995980?token=jGPtBPS69uzFU6Y&filename=speaker_01_center_83.mov',
'477995967?token=zCaRbNB6ht5wMPq&filename=speaker_11_center_83.mov',
'477995966?token=B1rbinDYRQKrI3T&filename=speaker_15_center_83.mov',
'477995978?token=dEpVDtZg1EQiEQ9&filename=speaker_07_center_83.mov',
'477995961?token=o1hVjw8G45q9L9Z&filename=speaker_19_center_83.mov',
'477995964?token=5K220Aqf673VHPq&filename=speaker_23_center_83.mov',
'477995965?token=v1LVD2KT1cU7Lpb&filename=speaker_24_center_83.mov',
'477995962?token=tmaSGyyWLA6XCy9&filename=speaker_27_center_83.mov',
'477995963?token=bTpo96qNDPcwGqb&filename=speaker_10_center_83.mov',
]
for curr_files in tets_name_files:
_b5.download_file_from_url(url = domain + curr_files, out = True)
# Получение прогнозов
_b5.path_to_dataset_ = PATH_TO_DIR # Директория набора данных
_b5.ext_ = ['.mov'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['mupta']['sberdisk']
_b5.get_avt_predictions(url_accuracy = url_accuracy, lang = lang)
[2023-12-16 19:40:25] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-16 19:40:28] Получение прогнозов и вычисление точности (мультимодальное объединение) …
10 из 10 (100.0%) … GitHub:nbsphinx-math:OCEANAI\docs\source\user_guide:nbsphinx-math:notebooks\video_MuPTA:nbsphinx-math:test\speaker_27_center_83.mov …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
Person ID | ||||||
1 | speaker_01_center_83.mov | 0.564985 | 0.539052 | 0.440615 | 0.59251 | 0.488763 |
2 | speaker_06_center_83.mov | 0.650774 | 0.663849 | 0.607308 | 0.643847 | 0.620627 |
3 | speaker_07_center_83.mov | 0.435976 | 0.486683 | 0.313828 | 0.415446 | 0.396618 |
4 | speaker_10_center_83.mov | 0.498542 | 0.511243 | 0.412592 | 0.468947 | 0.44399 |
5 | speaker_11_center_83.mov | 0.394776 | 0.341608 | 0.327082 | 0.427304 | 0.354936 |
6 | speaker_15_center_83.mov | 0.566107 | 0.543811 | 0.492766 | 0.587411 | 0.499433 |
7 | speaker_19_center_83.mov | 0.506271 | 0.438215 | 0.430894 | 0.456177 | 0.44075 |
8 | speaker_23_center_83.mov | 0.486463 | 0.521755 | 0.309894 | 0.432291 | 0.433601 |
9 | speaker_24_center_83.mov | 0.417404 | 0.473339 | 0.320714 | 0.445086 | 0.414649 |
10 | speaker_27_center_83.mov | 0.526112 | 0.661107 | 0.443167 | 0.558965 | 0.554224 |
[2023-12-16 19:40:28] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.1727 | 0.1672 | 0.1661 | 0.2579 | 0.107 | 0.1742 |
Accuracy | 0.8273 | 0.8328 | 0.8339 | 0.7421 | 0.893 | 0.8258 |
[2023-12-16 19:40:28] Средняя средних абсолютных ошибок: 0.1742, средняя точность: 0.8258 …
Лог файлы успешно сохранены …
— Время выполнения: 377.119 сек. —
[10]:
True
Для поиска подходящего коллеги по работе необходимо знать по два коэффициента корреляции для каждого персонального качества личности человека. Эти коэффициенты должны показывать, как изменится оценка качества одного человека, если она будет больше или меньше оценки качества другого человека.
В качестве примера предлагается использование коэффициентов корреляции между двумя людьми в контексте отношений “начальник-подчиненный”, представленных в статье:
Kuroda S., Yamamoto I. Good boss, bad boss, workers’ mental health and productivity: Evidence from Japan // Japan & The World Economy. – 2018. – vol. 48. – pp. 106-118.
Пользователь может установить свои коэффициенты корреляции
[11]:
# Загрузка датафрейма с коэффициентами корреляции
url = 'https://download.sberdisk.ru/download/file/478675819?token=LuB7L1QsEY0UuSs&filename=colleague_ranking.csv'
df_correlation_coefficients = pd.read_csv(url)
df_correlation_coefficients = pd.DataFrame(
df_correlation_coefficients.drop(['ID'], axis = 1)
)
df_correlation_coefficients.index.name = 'ID'
df_correlation_coefficients.index += 1
df_correlation_coefficients.index = df_correlation_coefficients.index.map(str)
df_correlation_coefficients
[11]:
Score_comparison | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | higher | -0.0602 | 0.0471 | -0.1070 | -0.0832 | 0.190 |
2 | lower | -0.1720 | -0.1050 | 0.0772 | 0.0703 | -0.229 |
[12]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'major',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'major_colleague_ranking_mupta_en', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[12]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | 0.069 |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | 0.034 |
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | -0.009 |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | -0.015 |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | -0.130 |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | -0.160 |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | -0.163 |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | -0.169 |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | -0.176 |
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | -0.183 |
[13]:
# Список оценок персональных качеств личности целевого человека
target_scores = [0.527886, 0.522337, 0.458468, 0.51761, 0.444649]
_b5._colleague_ranking(
correlation_coefficients = df_correlation_coefficients,
target_scores = target_scores,
colleague = 'minor',
equal_coefficients = 0.5,
out = False
)
_b5._save_logs(df = _b5.df_files_colleague_, name = 'minor_colleague_ranking_mupta_en', out = True)
# Опционно
df = _b5.df_files_colleague_.rename(columns = {'Openness':'OPE', 'Conscientiousness':'CON', 'Extraversion': 'EXT', 'Agreeableness': 'AGR', 'Non-Neuroticism': 'NNEU'})
columns_to_round = df.columns[1:]
df[columns_to_round] = df[columns_to_round].apply(lambda x: [round(i, 3) for i in x])
df
[13]:
Path | OPE | CON | EXT | AGR | NNEU | Match | |
---|---|---|---|---|---|---|---|
Person ID | |||||||
8 | speaker_23_center_83.mov | 0.486 | 0.522 | 0.310 | 0.432 | 0.434 | 0.009 |
9 | speaker_24_center_83.mov | 0.417 | 0.473 | 0.321 | 0.445 | 0.415 | 0.005 |
3 | speaker_07_center_83.mov | 0.436 | 0.487 | 0.314 | 0.415 | 0.397 | 0.004 |
4 | speaker_10_center_83.mov | 0.499 | 0.511 | 0.413 | 0.469 | 0.444 | -0.005 |
7 | speaker_19_center_83.mov | 0.506 | 0.438 | 0.431 | 0.456 | 0.441 | -0.010 |
5 | speaker_11_center_83.mov | 0.395 | 0.342 | 0.327 | 0.427 | 0.355 | -0.011 |
6 | speaker_15_center_83.mov | 0.566 | 0.544 | 0.493 | 0.587 | 0.499 | -0.189 |
2 | speaker_06_center_83.mov | 0.651 | 0.664 | 0.607 | 0.644 | 0.621 | -0.232 |
10 | speaker_27_center_83.mov | 0.526 | 0.661 | 0.443 | 0.559 | 0.554 | -0.236 |
1 | speaker_01_center_83.mov | 0.565 | 0.539 | 0.441 | 0.593 | 0.489 | -0.271 |
Аудиообработка информации
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:37:47] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
res_load_audio_model_hc = _b5.load_audio_model_hc(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:37:50] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) …
— Время выполнения: 3.03 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['hc']['sberdisk']
res_load_audio_model_weights_hc = _b5.load_audio_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:38:05] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) …
[2023-12-10 16:38:05] Загрузка файла “weights_2022-05-05_11-27-55.h5” 100.0% …
— Время выполнения: 0.458 сек. —
[6]:
_b5.audio_model_hc_.summary()
Model: "model_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 196, 25)] 0
lstm (LSTM) (None, 196, 64) 23040
dropout (Dropout) (None, 196, 64) 0
lstm_128_a_hc (LSTM) (None, 128) 98816
dropout_1 (Dropout) (None, 128) 0
dense (Dense) (None, 5) 645
=================================================================
Total params: 122,501
Trainable params: 122,501
Non-trainable params: 0
_________________________________________________________________
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:45:19] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
res_load_audio_model_nn = _b5.load_audio_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:45:19] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (аудио модальность) …
— Время выполнения: 1.221 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['nn']['sberdisk']
res_load_audio_model_weights_nn = _b5.load_audio_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:45:23] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (аудио модальность) …
[2023-12-10 16:45:27] Загрузка файла “weights_2022-05-03_07-46-14.h5” 100.0% …
— Время выполнения: 4.175 сек. —
[6]:
_b5.audio_model_nn_.summary()
Model: "model_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 224, 224, 3)] 0
block1_conv1 (Conv2D) (None, 224, 224, 64) 1792
block1_conv2 (Conv2D) (None, 224, 224, 64) 36928
block1_pool (MaxPooling2D) (None, 112, 112, 64) 0
block2_conv1 (Conv2D) (None, 112, 112, 128) 73856
block2_conv2 (Conv2D) (None, 112, 112, 128) 147584
block2_pool (MaxPooling2D) (None, 56, 56, 128) 0
block3_conv1 (Conv2D) (None, 56, 56, 256) 295168
block3_conv2 (Conv2D) (None, 56, 56, 256) 590080
block3_conv3 (Conv2D) (None, 56, 56, 256) 590080
block3_pool (MaxPooling2D) (None, 28, 28, 256) 0
block4_conv1 (Conv2D) (None, 28, 28, 512) 1180160
block4_conv2 (Conv2D) (None, 28, 28, 512) 2359808
block4_conv3 (Conv2D) (None, 28, 28, 512) 2359808
block4_pool (MaxPooling2D) (None, 14, 14, 512) 0
block5_conv1 (Conv2D) (None, 14, 14, 512) 2359808
block5_conv2 (Conv2D) (None, 14, 14, 512) 2359808
block5_conv3 (Conv2D) (None, 14, 14, 512) 2359808
block5_pool (MaxPooling2D) (None, 7, 7, 512) 0
flatten (Flatten) (None, 25088) 0
dense (Dense) (None, 512) 12845568
dropout (Dropout) (None, 512) 0
dense_256 (Dense) (None, 256) 131328
dense_1 (Dense) (None, 5) 1285
=================================================================
Total params: 27,692,869
Trainable params: 27,692,869
Non-trainable params: 0
_________________________________________________________________
_b5.audio_models_b5_
- Нейросетевые модели tf.keras.Model для получения оценок персональных качеств
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 11:10:51] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
[4]:
res_load_audio_models_b5 = _b5.load_audio_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 11:10:51] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (аудио модальность) …
— Время выполнения: 0.157 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['audio']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['audio']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['audio']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['audio']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['audio']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_audio_models_weights_b5 = _b5.load_audio_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # Эмоциональная стабильность
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 11:11:23] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (аудио модальность) …
[2023-12-14 11:11:23] Загрузка файла “weights_2022-06-15_16-16-20.h5” 100.0% … Открытость опыту
[2023-12-14 11:11:23] Загрузка файла “weights_2022-06-15_16-21-57.h5” 100.0% … Добросовестность
[2023-12-14 11:11:23] Загрузка файла “weights_2022-06-15_16-26-41.h5” 100.0% … Экстраверсия
[2023-12-14 11:11:23] Загрузка файла “weights_2022-06-15_16-32-51.h5” 100.0% … Доброжелательность
[2023-12-14 11:11:24] Загрузка файла “weights_2022-06-15_16-37-46.h5” 100.0% … Эмоциональная стабильность
— Время выполнения: 0.907 сек. —
openness
- Открытость опыту
conscientiousness
- Добросовестность
extraversion
- Экстраверсия
agreeableness
- Доброжелательность
non_neuroticism
- Эмоциональная стабильность
[6]:
_b5.audio_models_b5_['openness'].summary()
Model: "model"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 32)] 0
dense_1 (Dense) (None, 1) 33
activ_1 (Activation) (None, 1) 0
=================================================================
Total params: 33 (132.00 Byte)
Trainable params: 33 (132.00 Byte)
Non-trainable params: 0 (0.00 Byte)
_________________________________________________________________
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:35:36] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[5]:
# Настройки ядра
sr = 44100 # Частота дискретизации
# Путь к аудио или видеофайлу
path = 'video_FI/test/_plk5k7PBEg.003.mp4'
hc_features, melspectrogram_features = _b5.get_acoustic_features(
path = path, # Путь к аудио или видеофайлу
sr = sr, # Частота дискретизации
window = 2, # Размер окна сегмента сигнала (в секундах)
step = 1, # Шаг сдвига окна сегмента сигнала (в секундах)
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:36:06] Извлечение признаков (экспертных и лог мел-спектрограмм) из акустического сигнала …
[2023-12-10 16:36:11] Статистика извлеченных признаков из акустического сигнала: Общее количество сегментов с: 1. экспертными признаками: 16 2. лог мел-спектрограммами: 16 Размерность матрицы экспертных признаков одного сегмента: 196 ✕ 25 Размерность тензора с лог мел-спектрограммами одного сегмента: 224 ✕ 224 ✕ 3
— Время выполнения: 5.292 сек. —
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 16:54:20] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
_b5.df_pkgs_
- DataFrame c версиями установленных библиотек
[4]:
_b5.libs_vers(runtime = True, run = True)
Package | Version | |
---|---|---|
1 | TensorFlow | 2.15.0 |
2 | Keras | 2.15.0 |
3 | OpenCV | 4.8.1 |
4 | MediaPipe | 0.9.0 |
5 | NumPy | 1.26.2 |
6 | SciPy | 1.11.4 |
7 | Pandas | 2.1.3 |
8 | Scikit-learn | 1.3.2 |
9 | OpenSmile | 2.5.0 |
10 | Librosa | 0.10.1 |
11 | AudioRead | 3.0.1 |
12 | IPython | 8.18.1 |
13 | PyMediaInfo | 6.1.0 |
14 | Requests | 2.31.0 |
15 | JupyterLab | 4.0.9 |
16 | LIWC | 0.5.0 |
17 | Transformers | 4.36.0 |
18 | Sentencepiece | 0.1.99 |
19 | Torch | 2.0.1+cpu |
20 | Torchaudio | 2.0.2+cpu |
— Время выполнения: 0.005 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[5]:
res_load_audio_model_hc = _b5.load_audio_model_hc(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:20] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) …
— Время выполнения: 0.335 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['hc']['sberdisk']
res_load_audio_model_weights_hc = _b5.load_audio_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:21] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) …
[2023-12-14 16:54:21] Загрузка файла “weights_2022-05-05_11-27-55.h5” 100.0% …
— Время выполнения: 0.323 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[7]:
res_load_audio_model_nn = _b5.load_audio_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:21] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (аудио модальность) …
— Время выполнения: 0.212 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['nn']['sberdisk']
res_load_audio_model_weights_nn = _b5.load_audio_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:21] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (аудио модальность) …
[2023-12-14 16:54:22] Загрузка файла “weights_2022-05-03_07-46-14.h5”
— Время выполнения: 0.416 сек. —
_b5.audio_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[9]:
res_load_audio_models_b5 = _b5.load_audio_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:22] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (аудио модальность) …
— Время выполнения: 0.067 сек. —
_b5.audio_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[10]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['audio']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['audio']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['audio']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['audio']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['audio']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_audio_models_weights_b5 = _b5.load_audio_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # Эмоциональная стабильность
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 16:54:22] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (аудио модальность) …
[2023-12-14 16:54:22] Загрузка файла “weights_2022-06-15_16-16-20.h5” Открытость опыту
[2023-12-14 16:54:22] Загрузка файла “weights_2022-06-15_16-21-57.h5” Добросовестность
[2023-12-14 16:54:22] Загрузка файла “weights_2022-06-15_16-26-41.h5” Экстраверсия
[2023-12-14 16:54:22] Загрузка файла “weights_2022-06-15_16-32-51.h5” Доброжелательность
[2023-12-14 16:54:22] Загрузка файла “weights_2022-06-15_16-37-46.h5” Эмоциональная стабильность
— Время выполнения: 0.807 сек. —
_b5.df_files_
- DataFrame с данными
_b5.df_accuracy_
- DataFrame с результатами вычисления точности
[11]:
# Настройки ядра
_b5.path_to_dataset_ = 'E:/Databases/FirstImpressionsV2/test' # Директория набора данных
# Директории не входящие в выборку
_b5.ignore_dirs_ = []
# Названия ключей для DataFrame набора данных
_b5.keys_dataset_ = ['Path', 'Openness', 'Conscientiousness', 'Extraversion', 'Agreeableness', 'Non-Neuroticism']
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
_b5.path_to_logs_ = './logs' # Директория для сохранения LOG файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['fi']['sberdisk']
res_get_audio_union_predictions = _b5.get_audio_union_predictions(
depth = 1, # Глубина иерархии для получения аудио и видеоданных
recursive = False, # Рекурсивный поиск данных
sr = 44100, # Частота дискретизации
window = 2, # Размер окна сегмента сигнала (в секундах)
step = 1, # Шаг сдвига окна сегмента сигнала (в секундах)
accuracy = True, # Вычисление точности
url_accuracy = url_accuracy,
logs = True, # При необходимости формировать LOG файл
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 17:59:22] Получение прогнозов и вычисление точности (аудио модальность) …
2000 из 2000 (100.0%) … test80_25_Q4wOgixh7E.004.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.603529 | 0.556223 | 0.526545 | 0.579621 | 0.547629 |
2 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.568246 | 0.465263 | 0.460744 | 0.541769 | 0.511338 |
3 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.546209 | 0.603946 | 0.469445 | 0.589493 | 0.545716 |
4 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.691056 | 0.623856 | 0.628851 | 0.614669 | 0.645813 |
5 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.690808 | 0.589734 | 0.636104 | 0.606598 | 0.63479 |
6 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.65728 | 0.681336 | 0.571412 | 0.596052 | 0.623451 |
7 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.453781 | 0.438842 | 0.376464 | 0.520368 | 0.438252 |
8 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.558594 | 0.598366 | 0.452183 | 0.618858 | 0.571653 |
9 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.529081 | 0.502482 | 0.426603 | 0.488263 | 0.443719 |
10 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.537279 | 0.508283 | 0.438888 | 0.579794 | 0.512117 |
11 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.512779 | 0.447352 | 0.422968 | 0.559107 | 0.491406 |
12 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.447102 | 0.451113 | 0.364429 | 0.513031 | 0.414412 |
13 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.368372 | 0.391985 | 0.274865 | 0.42951 | 0.307666 |
14 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.582539 | 0.432871 | 0.412363 | 0.441974 | 0.462192 |
15 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.627705 | 0.801831 | 0.528622 | 0.692623 | 0.691908 |
16 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.708798 | 0.654007 | 0.640547 | 0.632052 | 0.669044 |
17 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.583968 | 0.644164 | 0.50463 | 0.633507 | 0.59208 |
18 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.550836 | 0.539624 | 0.468092 | 0.594872 | 0.544016 |
19 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.626745 | 0.563271 | 0.556561 | 0.561901 | 0.549236 |
20 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.593014 | 0.421482 | 0.504798 | 0.534224 | 0.532807 |
21 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.545921 | 0.479671 | 0.465769 | 0.571302 | 0.518793 |
22 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.548432 | 0.480831 | 0.453319 | 0.52774 | 0.47759 |
23 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.486083 | 0.467779 | 0.396113 | 0.444633 | 0.399402 |
24 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.558323 | 0.537912 | 0.474172 | 0.563599 | 0.52937 |
25 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.473017 | 0.542138 | 0.370228 | 0.550093 | 0.467068 |
26 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.530967 | 0.460241 | 0.410618 | 0.507322 | 0.450027 |
27 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.61807 | 0.506396 | 0.572248 | 0.574811 | 0.563796 |
28 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.64703 | 0.577771 | 0.565869 | 0.575279 | 0.60631 |
29 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.571473 | 0.529536 | 0.48662 | 0.535691 | 0.529022 |
30 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.655007 | 0.606712 | 0.592804 | 0.570543 | 0.600349 |
[2023-12-14 17:59:22] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0916 | 0.0925 | 0.0932 | 0.0918 | 0.094 | 0.0926 |
Accuracy | 0.9084 | 0.9075 | 0.9068 | 0.9082 | 0.906 | 0.9074 |
[2023-12-14 17:59:22] Средняя средних абсолютных ошибок: 0.0926, средняя точность: 0.9074 …
Лог файлы успешно сохранены …
— Время выполнения: 3899.26 сек. —
Видеообработка информации
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 17:11:13] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
FI V2
)[4]:
res_load_video_model_hc = _b5.load_video_model_hc(
lang = 'en',
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:11:13] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) …
— Время выполнения: 0.789 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['hc']['sberdisk']
res_load_video_model_weights_hc = _b5.load_video_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:11:14] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) …
[2023-12-10 17:11:14] Загрузка файла “weights_2022-08-27_18-53-35.h5” 100.0% …
— Время выполнения: 0.226 сек. —
[6]:
_b5.video_model_hc_.summary()
Model: "model_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 10, 115)] 0
lstm (LSTM) (None, 10, 64) 46080
dropout (Dropout) (None, 10, 64) 0
lstm_128_v_hc (LSTM) (None, 128) 98816
dropout_1 (Dropout) (None, 128) 0
dense (Dense) (None, 5) 645
=================================================================
Total params: 145,541
Trainable params: 145,541
Non-trainable params: 0
_________________________________________________________________
MuPTA
)[7]:
res_load_video_model_hc = _b5.load_video_model_hc(
lang = 'ru',
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:11:14] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) …
— Время выполнения: 0.25 сек. —
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['mupta']['hc']['sberdisk']
res_load_video_model_weights_hc = _b5.load_video_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:11:14] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) …
[2023-12-10 17:11:15] Загрузка файла “vhc_mupta_2022-07-22_10-02-37.h5” 100.0% …
— Время выполнения: 0.307 сек. —
[9]:
_b5.video_model_hc_.summary()
Model: "model_3"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_2 (InputLayer) [(None, 10, 109)] 0
lstm_1 (LSTM) (None, 10, 64) 44544
dropout_2 (Dropout) (None, 10, 64) 0
lstm_128_v_hc (LSTM) (None, 128) 98816
dropout_3 (Dropout) (None, 128) 0
dense_1 (Dense) (None, 5) 645
=================================================================
Total params: 144,005
Trainable params: 144,005
Non-trainable params: 0
_________________________________________________________________
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 17:08:31] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
FI V2
)[4]:
res_load_video_model_deep_fe = _b5.load_video_model_deep_fe(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:08:31] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) …
— Время выполнения: 1.118 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['fe']['sberdisk']
res_load_video_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:08:32] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) …
[2023-12-10 17:08:36] Загрузка файла “weights_2022-11-01_12-27-07.h5” 100.0% …
— Время выполнения: 4.042 сек. —
[6]:
_b5.video_model_deep_fe_.summary()
Model: "model_1"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
input_1 (InputLayer) [(None, 224, 224, 3 0 []
)]
conv1/7x7_s2 (Conv2D) (None, 112, 112, 64 9408 ['input_1[0][0]']
)
conv1/7x7_s2/bn (BatchNormaliz (None, 112, 112, 64 256 ['conv1/7x7_s2[0][0]']
ation) )
activation (Activation) (None, 112, 112, 64 0 ['conv1/7x7_s2/bn[0][0]']
)
max_pooling2d (MaxPooling2D) (None, 55, 55, 64) 0 ['activation[0][0]']
conv2_1_1x1_reduce (Conv2D) (None, 55, 55, 64) 4096 ['max_pooling2d[0][0]']
conv2_1_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_1_1x1_reduce[0][0]']
rmalization)
activation_1 (Activation) (None, 55, 55, 64) 0 ['conv2_1_1x1_reduce/bn[0][0]']
conv2_1_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_1[0][0]']
conv2_1_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_1_3x3[0][0]']
tion)
activation_2 (Activation) (None, 55, 55, 64) 0 ['conv2_1_3x3/bn[0][0]']
conv2_1_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_2[0][0]']
conv2_1_1x1_proj (Conv2D) (None, 55, 55, 256) 16384 ['max_pooling2d[0][0]']
conv2_1_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_1_1x1_increase[0][0]']
Normalization)
conv2_1_1x1_proj/bn (BatchNorm (None, 55, 55, 256) 1024 ['conv2_1_1x1_proj[0][0]']
alization)
add (Add) (None, 55, 55, 256) 0 ['conv2_1_1x1_increase/bn[0][0]',
'conv2_1_1x1_proj/bn[0][0]']
activation_3 (Activation) (None, 55, 55, 256) 0 ['add[0][0]']
conv2_2_1x1_reduce (Conv2D) (None, 55, 55, 64) 16384 ['activation_3[0][0]']
conv2_2_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_2_1x1_reduce[0][0]']
rmalization)
activation_4 (Activation) (None, 55, 55, 64) 0 ['conv2_2_1x1_reduce/bn[0][0]']
conv2_2_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_4[0][0]']
conv2_2_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_2_3x3[0][0]']
tion)
activation_5 (Activation) (None, 55, 55, 64) 0 ['conv2_2_3x3/bn[0][0]']
conv2_2_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_5[0][0]']
conv2_2_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_2_1x1_increase[0][0]']
Normalization)
add_1 (Add) (None, 55, 55, 256) 0 ['conv2_2_1x1_increase/bn[0][0]',
'activation_3[0][0]']
activation_6 (Activation) (None, 55, 55, 256) 0 ['add_1[0][0]']
conv2_3_1x1_reduce (Conv2D) (None, 55, 55, 64) 16384 ['activation_6[0][0]']
conv2_3_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_3_1x1_reduce[0][0]']
rmalization)
activation_7 (Activation) (None, 55, 55, 64) 0 ['conv2_3_1x1_reduce/bn[0][0]']
conv2_3_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_7[0][0]']
conv2_3_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_3_3x3[0][0]']
tion)
activation_8 (Activation) (None, 55, 55, 64) 0 ['conv2_3_3x3/bn[0][0]']
conv2_3_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_8[0][0]']
conv2_3_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_3_1x1_increase[0][0]']
Normalization)
add_2 (Add) (None, 55, 55, 256) 0 ['conv2_3_1x1_increase/bn[0][0]',
'activation_6[0][0]']
activation_9 (Activation) (None, 55, 55, 256) 0 ['add_2[0][0]']
conv3_1_1x1_reduce (Conv2D) (None, 28, 28, 128) 32768 ['activation_9[0][0]']
conv3_1_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_1_1x1_reduce[0][0]']
rmalization)
activation_10 (Activation) (None, 28, 28, 128) 0 ['conv3_1_1x1_reduce/bn[0][0]']
conv3_1_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_10[0][0]']
conv3_1_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_1_3x3[0][0]']
tion)
activation_11 (Activation) (None, 28, 28, 128) 0 ['conv3_1_3x3/bn[0][0]']
conv3_1_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_11[0][0]']
conv3_1_1x1_proj (Conv2D) (None, 28, 28, 512) 131072 ['activation_9[0][0]']
conv3_1_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_1_1x1_increase[0][0]']
Normalization)
conv3_1_1x1_proj/bn (BatchNorm (None, 28, 28, 512) 2048 ['conv3_1_1x1_proj[0][0]']
alization)
add_3 (Add) (None, 28, 28, 512) 0 ['conv3_1_1x1_increase/bn[0][0]',
'conv3_1_1x1_proj/bn[0][0]']
activation_12 (Activation) (None, 28, 28, 512) 0 ['add_3[0][0]']
conv3_2_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_12[0][0]']
conv3_2_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_2_1x1_reduce[0][0]']
rmalization)
activation_13 (Activation) (None, 28, 28, 128) 0 ['conv3_2_1x1_reduce/bn[0][0]']
conv3_2_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_13[0][0]']
conv3_2_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_2_3x3[0][0]']
tion)
activation_14 (Activation) (None, 28, 28, 128) 0 ['conv3_2_3x3/bn[0][0]']
conv3_2_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_14[0][0]']
conv3_2_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_2_1x1_increase[0][0]']
Normalization)
add_4 (Add) (None, 28, 28, 512) 0 ['conv3_2_1x1_increase/bn[0][0]',
'activation_12[0][0]']
activation_15 (Activation) (None, 28, 28, 512) 0 ['add_4[0][0]']
conv3_3_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_15[0][0]']
conv3_3_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_3_1x1_reduce[0][0]']
rmalization)
activation_16 (Activation) (None, 28, 28, 128) 0 ['conv3_3_1x1_reduce/bn[0][0]']
conv3_3_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_16[0][0]']
conv3_3_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_3_3x3[0][0]']
tion)
activation_17 (Activation) (None, 28, 28, 128) 0 ['conv3_3_3x3/bn[0][0]']
conv3_3_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_17[0][0]']
conv3_3_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_3_1x1_increase[0][0]']
Normalization)
add_5 (Add) (None, 28, 28, 512) 0 ['conv3_3_1x1_increase/bn[0][0]',
'activation_15[0][0]']
activation_18 (Activation) (None, 28, 28, 512) 0 ['add_5[0][0]']
conv3_4_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_18[0][0]']
conv3_4_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_4_1x1_reduce[0][0]']
rmalization)
activation_19 (Activation) (None, 28, 28, 128) 0 ['conv3_4_1x1_reduce/bn[0][0]']
conv3_4_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_19[0][0]']
conv3_4_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_4_3x3[0][0]']
tion)
activation_20 (Activation) (None, 28, 28, 128) 0 ['conv3_4_3x3/bn[0][0]']
conv3_4_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_20[0][0]']
conv3_4_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_4_1x1_increase[0][0]']
Normalization)
add_6 (Add) (None, 28, 28, 512) 0 ['conv3_4_1x1_increase/bn[0][0]',
'activation_18[0][0]']
activation_21 (Activation) (None, 28, 28, 512) 0 ['add_6[0][0]']
conv4_1_1x1_reduce (Conv2D) (None, 14, 14, 256) 131072 ['activation_21[0][0]']
conv4_1_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_1_1x1_reduce[0][0]']
rmalization)
activation_22 (Activation) (None, 14, 14, 256) 0 ['conv4_1_1x1_reduce/bn[0][0]']
conv4_1_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_22[0][0]']
conv4_1_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_1_3x3[0][0]']
tion)
activation_23 (Activation) (None, 14, 14, 256) 0 ['conv4_1_3x3/bn[0][0]']
conv4_1_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_23[0][0]']
)
conv4_1_1x1_proj (Conv2D) (None, 14, 14, 1024 524288 ['activation_21[0][0]']
)
conv4_1_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_1_1x1_increase[0][0]']
Normalization) )
conv4_1_1x1_proj/bn (BatchNorm (None, 14, 14, 1024 4096 ['conv4_1_1x1_proj[0][0]']
alization) )
add_7 (Add) (None, 14, 14, 1024 0 ['conv4_1_1x1_increase/bn[0][0]',
) 'conv4_1_1x1_proj/bn[0][0]']
activation_24 (Activation) (None, 14, 14, 1024 0 ['add_7[0][0]']
)
conv4_2_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_24[0][0]']
conv4_2_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_2_1x1_reduce[0][0]']
rmalization)
activation_25 (Activation) (None, 14, 14, 256) 0 ['conv4_2_1x1_reduce/bn[0][0]']
conv4_2_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_25[0][0]']
conv4_2_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_2_3x3[0][0]']
tion)
activation_26 (Activation) (None, 14, 14, 256) 0 ['conv4_2_3x3/bn[0][0]']
conv4_2_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_26[0][0]']
)
conv4_2_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_2_1x1_increase[0][0]']
Normalization) )
add_8 (Add) (None, 14, 14, 1024 0 ['conv4_2_1x1_increase/bn[0][0]',
) 'activation_24[0][0]']
activation_27 (Activation) (None, 14, 14, 1024 0 ['add_8[0][0]']
)
conv4_3_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_27[0][0]']
conv4_3_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_3_1x1_reduce[0][0]']
rmalization)
activation_28 (Activation) (None, 14, 14, 256) 0 ['conv4_3_1x1_reduce/bn[0][0]']
conv4_3_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_28[0][0]']
conv4_3_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_3_3x3[0][0]']
tion)
activation_29 (Activation) (None, 14, 14, 256) 0 ['conv4_3_3x3/bn[0][0]']
conv4_3_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_29[0][0]']
)
conv4_3_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_3_1x1_increase[0][0]']
Normalization) )
add_9 (Add) (None, 14, 14, 1024 0 ['conv4_3_1x1_increase/bn[0][0]',
) 'activation_27[0][0]']
activation_30 (Activation) (None, 14, 14, 1024 0 ['add_9[0][0]']
)
conv4_4_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_30[0][0]']
conv4_4_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_4_1x1_reduce[0][0]']
rmalization)
activation_31 (Activation) (None, 14, 14, 256) 0 ['conv4_4_1x1_reduce/bn[0][0]']
conv4_4_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_31[0][0]']
conv4_4_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_4_3x3[0][0]']
tion)
activation_32 (Activation) (None, 14, 14, 256) 0 ['conv4_4_3x3/bn[0][0]']
conv4_4_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_32[0][0]']
)
conv4_4_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_4_1x1_increase[0][0]']
Normalization) )
add_10 (Add) (None, 14, 14, 1024 0 ['conv4_4_1x1_increase/bn[0][0]',
) 'activation_30[0][0]']
activation_33 (Activation) (None, 14, 14, 1024 0 ['add_10[0][0]']
)
conv4_5_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_33[0][0]']
conv4_5_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_5_1x1_reduce[0][0]']
rmalization)
activation_34 (Activation) (None, 14, 14, 256) 0 ['conv4_5_1x1_reduce/bn[0][0]']
conv4_5_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_34[0][0]']
conv4_5_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_5_3x3[0][0]']
tion)
activation_35 (Activation) (None, 14, 14, 256) 0 ['conv4_5_3x3/bn[0][0]']
conv4_5_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_35[0][0]']
)
conv4_5_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_5_1x1_increase[0][0]']
Normalization) )
add_11 (Add) (None, 14, 14, 1024 0 ['conv4_5_1x1_increase/bn[0][0]',
) 'activation_33[0][0]']
activation_36 (Activation) (None, 14, 14, 1024 0 ['add_11[0][0]']
)
conv4_6_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_36[0][0]']
conv4_6_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_6_1x1_reduce[0][0]']
rmalization)
activation_37 (Activation) (None, 14, 14, 256) 0 ['conv4_6_1x1_reduce/bn[0][0]']
conv4_6_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_37[0][0]']
conv4_6_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_6_3x3[0][0]']
tion)
activation_38 (Activation) (None, 14, 14, 256) 0 ['conv4_6_3x3/bn[0][0]']
conv4_6_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_38[0][0]']
)
conv4_6_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_6_1x1_increase[0][0]']
Normalization) )
add_12 (Add) (None, 14, 14, 1024 0 ['conv4_6_1x1_increase/bn[0][0]',
) 'activation_36[0][0]']
activation_39 (Activation) (None, 14, 14, 1024 0 ['add_12[0][0]']
)
conv5_1_1x1_reduce (Conv2D) (None, 7, 7, 512) 524288 ['activation_39[0][0]']
conv5_1_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_1_1x1_reduce[0][0]']
rmalization)
activation_40 (Activation) (None, 7, 7, 512) 0 ['conv5_1_1x1_reduce/bn[0][0]']
conv5_1_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_40[0][0]']
conv5_1_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_1_3x3[0][0]']
tion)
activation_41 (Activation) (None, 7, 7, 512) 0 ['conv5_1_3x3/bn[0][0]']
conv5_1_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_41[0][0]']
conv5_1_1x1_proj (Conv2D) (None, 7, 7, 2048) 2097152 ['activation_39[0][0]']
conv5_1_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_1_1x1_increase[0][0]']
Normalization)
conv5_1_1x1_proj/bn (BatchNorm (None, 7, 7, 2048) 8192 ['conv5_1_1x1_proj[0][0]']
alization)
add_13 (Add) (None, 7, 7, 2048) 0 ['conv5_1_1x1_increase/bn[0][0]',
'conv5_1_1x1_proj/bn[0][0]']
activation_42 (Activation) (None, 7, 7, 2048) 0 ['add_13[0][0]']
conv5_2_1x1_reduce (Conv2D) (None, 7, 7, 512) 1048576 ['activation_42[0][0]']
conv5_2_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_2_1x1_reduce[0][0]']
rmalization)
activation_43 (Activation) (None, 7, 7, 512) 0 ['conv5_2_1x1_reduce/bn[0][0]']
conv5_2_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_43[0][0]']
conv5_2_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_2_3x3[0][0]']
tion)
activation_44 (Activation) (None, 7, 7, 512) 0 ['conv5_2_3x3/bn[0][0]']
conv5_2_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_44[0][0]']
conv5_2_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_2_1x1_increase[0][0]']
Normalization)
add_14 (Add) (None, 7, 7, 2048) 0 ['conv5_2_1x1_increase/bn[0][0]',
'activation_42[0][0]']
activation_45 (Activation) (None, 7, 7, 2048) 0 ['add_14[0][0]']
conv5_3_1x1_reduce (Conv2D) (None, 7, 7, 512) 1048576 ['activation_45[0][0]']
conv5_3_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_3_1x1_reduce[0][0]']
rmalization)
activation_46 (Activation) (None, 7, 7, 512) 0 ['conv5_3_1x1_reduce/bn[0][0]']
conv5_3_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_46[0][0]']
conv5_3_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_3_3x3[0][0]']
tion)
activation_47 (Activation) (None, 7, 7, 512) 0 ['conv5_3_3x3/bn[0][0]']
conv5_3_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_47[0][0]']
conv5_3_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_3_1x1_increase[0][0]']
Normalization)
add_15 (Add) (None, 7, 7, 2048) 0 ['conv5_3_1x1_increase/bn[0][0]',
'activation_45[0][0]']
activation_48 (Activation) (None, 7, 7, 2048) 0 ['add_15[0][0]']
avg_pool (AveragePooling2D) (None, 1, 1, 2048) 0 ['activation_48[0][0]']
global_average_pooling2d (Glob (None, 2048) 0 ['avg_pool[0][0]']
alAveragePooling2D)
gaussian_noise (GaussianNoise) (None, 2048) 0 ['global_average_pooling2d[0][0]'
]
dense_x (Dense) (None, 512) 1049088 ['gaussian_noise[0][0]']
==================================================================================================
Total params: 24,610,240
Trainable params: 24,557,120
Non-trainable params: 53,120
__________________________________________________________________________________________________
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 17:12:11] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
FI V2
)[4]:
res_load_video_model_nn = _b5.load_video_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:12:11] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) …
— Время выполнения: 1.559 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['nn']['sberdisk']
res_load_video_model_weights_nn = _b5.load_video_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:12:13] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) …
[2023-12-10 17:12:14] Загрузка файла “weights_2022-03-22_16-31-48.h5” 100.0% …
— Время выполнения: 1.053 сек. —
[6]:
_b5.video_model_nn_.summary()
Model: "model_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 10, 512)] 0
lstm_1024_v_nn (LSTM) (None, 1024) 6295552
dropout (Dropout) (None, 1024) 0
dense (Dense) (None, 5) 5125
activation (Activation) (None, 5) 0
=================================================================
Total params: 6,300,677
Trainable params: 6,300,677
Non-trainable params: 0
_________________________________________________________________
_b5.video_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 21:04:19] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
FI V2
)[4]:
res_load_video_models_b5 = _b5.load_video_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:04:19] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (видео модальность) …
— Время выполнения: 0.094 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['video']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['video']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['video']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['video']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['video']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_video_models_weights_b5 = _b5.load_video_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # Нейротизм
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:04:19] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (видео модальность) …
[2023-12-14 21:04:19] Загрузка файла “weights_2022-06-15_16-46-30.h5” 100.0% … Открытость опыту
[2023-12-14 21:04:20] Загрузка файла “weights_2022-06-15_16-48-50.h5” 100.0% … Добросовестность
[2023-12-14 21:04:20] Загрузка файла “weights_2022-06-15_16-54-06.h5” 100.0% … Экстраверсия
[2023-12-14 21:04:20] Загрузка файла “weights_2022-06-15_17-02-03.h5” 100.0% … Доброжелательность
[2023-12-14 21:04:20] Загрузка файла “weights_2022-06-15_17-06-15.h5” 100.0% … Эмоциональная стабильность
— Время выполнения: 0.998 сек. —
openness
- Открытость опыту
conscientiousness
- Добросовестность
extraversion
- Экстраверсия
agreeableness
- Доброжелательность
non_neuroticism
- Эмоциональная стабильность
[6]:
_b5.video_models_b5_['openness'].summary()
Model: "model"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 32)] 0
dense_1 (Dense) (None, 1) 33
activ_1 (Activation) (None, 1) 0
=================================================================
Total params: 33 (132.00 Byte)
Trainable params: 33 (132.00 Byte)
Non-trainable params: 0 (0.00 Byte)
_________________________________________________________________
[2]:
from oceanai.modules.lab.build import Run
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2024-03-28 21:50:44] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a22 Лицензия: BSD License
[4]:
res_load_video_model_deep_fe = _b5.load_video_model_deep_fe(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2024-03-28 21:50:46] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) …
— Время выполнения: 1.001 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['fe']['sberdisk']
res_load_video_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2024-03-28 21:50:50] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) …
[2024-03-28 21:50:56] Загрузка файла “weights_2022-11-01_12-27-07.h5” 100.0% …
— Время выполнения: 6.461 сек. —
FI V2
)[6]:
# Настройки ядра
# Путь к видеофайлу
path = 'video_FI/test/_plk5k7PBEg.003.mp4'
hc_features, nn_features = _b5.get_visual_features(
path = path, # Путь к видеофайлу
reduction_fps = 5, # Понижение кадровой частоты
window = 10, # Размер окна сегмента сигнала (в кадрах)
step = 5, # Шаг сдвига окна сегмента сигнала (в кадрах)
lang = 'en',
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2024-03-28 21:50:58] Извлечение признаков (экспертных и нейросетевых) из визуального сигнала …
[2024-03-28 21:51:22] Статистика извлеченных признаков из визуального сигнала: Общее количество сегментов с: 1. экспертными признаками: 16 2. нейросетевыми признаками: 16 Размерность матрицы экспертных признаков одного сегмента: 10 ✕ 115 Размерность матрицы с нейросетевыми признаками одного сегмента: 10 ✕ 512 Понижение кадровой частоты: с 30 до 5
— Время выполнения: 23.465 сек. —
MuPTA
)[7]:
# Настройки ядра
# Путь к видеофайлу
path = 'video_FI/test/_plk5k7PBEg.003.mp4'
hc_features, nn_features = _b5.get_visual_features(
path = path, # Путь к видеофайлу
reduction_fps = 5, # Понижение кадровой частоты
window = 10, # Размер окна сегмента сигнала (в кадрах)
step = 5, # Шаг сдвига окна сегмента сигнала (в кадрах)
lang = 'ru',
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2024-03-28 21:51:25] Извлечение признаков (экспертных и нейросетевых) из визуального сигнала …
[2024-03-28 21:51:43] Статистика извлеченных признаков из визуального сигнала: Общее количество сегментов с: 1. экспертными признаками: 16 2. нейросетевыми признаками: 16 Размерность матрицы экспертных признаков одного сегмента: 10 ✕ 109 Размерность матрицы с нейросетевыми признаками одного сегмента: 10 ✕ 512 Понижение кадровой частоты: с 30 до 5
— Время выполнения: 18.659 сек. —
[ ]:
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 21:05:26] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
_b5.df_pkgs_
- DataFrame c версиями установленных библиотек
[4]:
_b5.libs_vers(runtime = True, run = True)
Package | Version | |
---|---|---|
1 | TensorFlow | 2.15.0 |
2 | Keras | 2.15.0 |
3 | OpenCV | 4.8.1 |
4 | MediaPipe | 0.9.0 |
5 | NumPy | 1.26.2 |
6 | SciPy | 1.11.4 |
7 | Pandas | 2.1.3 |
8 | Scikit-learn | 1.3.2 |
9 | OpenSmile | 2.5.0 |
10 | Librosa | 0.10.1 |
11 | AudioRead | 3.0.1 |
12 | IPython | 8.18.1 |
13 | PyMediaInfo | 6.1.0 |
14 | Requests | 2.31.0 |
15 | JupyterLab | 4.0.9 |
16 | LIWC | 0.5.0 |
17 | Transformers | 4.36.0 |
18 | Sentencepiece | 0.1.99 |
19 | Torch | 2.0.1+cpu |
20 | Torchaudio | 2.0.2+cpu |
— Время выполнения: 0.005 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[5]:
res_load_video_model_hc = _b5.load_video_model_hc(
lang = 'en',
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:26] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) …
— Время выполнения: 0.321 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['hc']['sberdisk']
res_load_video_model_weights_hc = _b5.load_video_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:27] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) …
[2023-12-14 21:05:27] Загрузка файла “weights_2022-08-27_18-53-35.h5” 100.0% …
— Время выполнения: 0.249 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[7]:
res_load_video_model_deep_fe = _b5.load_video_model_deep_fe(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:27] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) …
— Время выполнения: 0.823 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['fe']['sberdisk']
res_load_video_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:28] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) …
[2023-12-14 21:05:31] Загрузка файла “weights_2022-11-01_12-27-07.h5” 100.0% …
— Время выполнения: 3.342 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[9]:
res_load_video_model_nn = _b5.load_video_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:31] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) …
— Время выполнения: 0.708 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[10]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['nn']['sberdisk']
res_load_video_model_weights_nn = _b5.load_video_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:32] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) …
[2023-12-14 21:05:32] Загрузка файла “weights_2022-03-22_16-31-48.h5”
— Время выполнения: 0.209 сек. —
_b5.video_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[11]:
res_load_video_models_b5 = _b5.load_video_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:32] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (видео модальность) …
— Время выполнения: 0.046 сек. —
_b5.video_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[12]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['video']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['video']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['video']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['video']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['video']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_video_models_weights_b5 = _b5.load_video_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # Нейротизм
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 21:05:32] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (видео модальность) …
[2023-12-14 21:05:32] Загрузка файла “weights_2022-06-15_16-46-30.h5” Открытость опыту
[2023-12-14 21:05:32] Загрузка файла “weights_2022-06-15_16-48-50.h5” Добросовестность
[2023-12-14 21:05:33] Загрузка файла “weights_2022-06-15_16-54-06.h5” Экстраверсия
[2023-12-14 21:05:33] Загрузка файла “weights_2022-06-15_17-02-03.h5” Доброжелательность
[2023-12-14 21:05:33] Загрузка файла “weights_2022-06-15_17-06-15.h5” Эмоциональная стабильность
— Время выполнения: 1.013 сек. —
_b5.df_files_
- DataFrame с данными
_b5.df_accuracy_
- DataFrame с результатами вычисления точности
[13]:
# Настройки ядра
_b5.path_to_dataset_ = 'E:/Databases/FirstImpressionsV2/test' # Директория набора данных
# Директории не входящие в выборку
_b5.ignore_dirs_ = []
# Названия ключей для DataFrame набора данных
_b5.keys_dataset_ = ['Path', 'Openness', 'Conscientiousness', 'Extraversion', 'Agreeableness', 'Non-Neuroticism']
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
_b5.path_to_logs_ = './logs' # Директория для сохранения LOG файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['fi']['sberdisk']
res_get_video_union_predictions = _b5.get_video_union_predictions(
depth = 1, # Глубина иерархии для получения аудио и видеоданных
recursive = False, # Рекурсивный поиск данных
reduction_fps = 5, # Понижение кадровой частоты
window = 10, # Размер окна сегмента сигнала (в секундах)
step = 5, # Шаг сдвига окна сегмента сигнала (в секундах)
lang = 'en',
accuracy = True, # Вычисление точности
url_accuracy = url_accuracy,
logs = True, # При необходимости формировать LOG файл
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:24:55] Получение прогнозов и вычисление точности (видео модальность) …
2000 из 2000 (100.0%) … test80_25_Q4wOgixh7E.004.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.526971 | 0.460063 | 0.422793 | 0.502726 | 0.450519 |
2 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.559385 | 0.432843 | 0.504231 | 0.578673 | 0.513424 |
3 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.466969 | 0.51701 | 0.331863 | 0.451395 | 0.406188 |
4 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.626113 | 0.597363 | 0.564068 | 0.574056 | 0.589245 |
5 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.5925 | 0.507246 | 0.505394 | 0.585405 | 0.493066 |
6 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.671855 | 0.642559 | 0.614689 | 0.613508 | 0.619511 |
7 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.411555 | 0.394029 | 0.329323 | 0.488684 | 0.39105 |
8 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.583696 | 0.568682 | 0.505574 | 0.625314 | 0.587337 |
9 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.551353 | 0.450333 | 0.449763 | 0.495501 | 0.438009 |
10 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.575084 | 0.517972 | 0.46315 | 0.582468 | 0.537961 |
11 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.559182 | 0.398618 | 0.433806 | 0.480592 | 0.492383 |
12 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.50948 | 0.432549 | 0.3319 | 0.495221 | 0.486891 |
13 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.330026 | 0.322635 | 0.235595 | 0.369766 | 0.25056 |
14 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.649351 | 0.550074 | 0.502858 | 0.526621 | 0.566755 |
15 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.651914 | 0.83048 | 0.535514 | 0.695223 | 0.734383 |
16 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.523986 | 0.435594 | 0.382946 | 0.41001 | 0.466265 |
17 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.575113 | 0.678301 | 0.468646 | 0.602139 | 0.626021 |
18 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.566349 | 0.558975 | 0.462116 | 0.606252 | 0.569516 |
19 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.672282 | 0.6552 | 0.656699 | 0.627328 | 0.663199 |
20 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.684442 | 0.602593 | 0.680469 | 0.635343 | 0.652304 |
21 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.550788 | 0.492015 | 0.404885 | 0.562745 | 0.478233 |
22 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.525446 | 0.469039 | 0.428517 | 0.491442 | 0.45359 |
23 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.473489 | 0.442729 | 0.353017 | 0.447929 | 0.358706 |
24 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.667829 | 0.655159 | 0.603695 | 0.630121 | 0.614812 |
25 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.469207 | 0.594029 | 0.364701 | 0.522734 | 0.481228 |
26 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.625514 | 0.641622 | 0.514204 | 0.547718 | 0.54766 |
27 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.568821 | 0.524382 | 0.475687 | 0.520644 | 0.531275 |
28 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.696397 | 0.665074 | 0.70902 | 0.655993 | 0.689747 |
29 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.578405 | 0.577321 | 0.487293 | 0.557221 | 0.52153 |
30 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.637576 | 0.587702 | 0.614512 | 0.637398 | 0.613861 |
[2023-12-14 22:24:55] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0873 | 0.082 | 0.0805 | 0.087 | 0.0872 | 0.0848 |
Accuracy | 0.9127 | 0.918 | 0.9195 | 0.913 | 0.9128 | 0.9152 |
[2023-12-14 22:24:55] Средняя средних абсолютных ошибок: 0.0848, средняя точность: 0.9152 …
Лог файлы успешно сохранены …
— Время выполнения: 4762.254 сек. —
Обработка текстовой информации
_b5.text_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:53:54] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
FI V2
)[4]:
res_load_text_model_hc_fi = _b5.load_text_model_hc(
corpus = "fi", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:53:55] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (текстовая модальность) …
— Время выполнения: 1.886 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:54:00] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (текстовая модальность) …
[2023-12-10 16:54:01] Загрузка файла “weights_2023-07-15_10-52-15.h5” 100.0% …
— Время выполнения: 0.311 сек. —
[6]:
_b5.text_model_hc_.summary()
Model: "model"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
model_hc/input (InputLayer) [(None, 89, 64)] 0 []
model_hc/bilstm_1 (Bidirection (None, 89, 64) 24832 ['model_hc/input[0][0]']
al)
model_hc/dence_2 (Dense) (None, 89, 64) 4160 ['model_hc/input[0][0]']
model_hc/attention (Attention) (None, 89, 64) 0 ['model_hc/bilstm_1[0][0]',
'model_hc/bilstm_1[0][0]']
model_hc/bilstm_2 (Bidirection (None, 89, 64) 24832 ['model_hc/dence_2[0][0]']
al)
add (Add) (None, 89, 64) 0 ['model_hc/bilstm_1[0][0]',
'model_hc/attention[0][0]',
'model_hc/bilstm_2[0][0]']
model_hc/add (Addition) (None, 128) 0 ['add[0][0]']
dense (Dense) (None, 5) 645 ['model_hc/add[0][0]']
==================================================================================================
Total params: 54,469
Trainable params: 54,469
Non-trainable params: 0
__________________________________________________________________________________________________
MuPTA
)[7]:
res_load_text_model_hc_mupta = _b5.load_text_model_hc(
corpus = "mupta", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:54:06] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (текстовая модальность) …
— Время выполнения: 0.577 сек. —
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['mupta']['hc']['sberdisk']
res_load_text_model_weights_hc_mupta = _b5.load_text_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:54:19] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (текстовая модальность) …
[2023-12-10 16:54:19] Загрузка файла “weights_2023-07-15_10-53-38.h5” 100.0% …
— Время выполнения: 0.264 сек. —
[9]:
_b5.text_model_hc_.summary()
Model: "model_1"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
model_hc/input (InputLayer) [(None, 365, 64)] 0 []
model_hc/bilstm_1 (Bidirection (None, 365, 64) 24832 ['model_hc/input[0][0]']
al)
model_hc/dence_2 (Dense) (None, 365, 64) 4160 ['model_hc/input[0][0]']
model_hc/attention (Attention) (None, 365, 64) 0 ['model_hc/bilstm_1[0][0]',
'model_hc/bilstm_1[0][0]']
model_hc/bilstm_2 (Bidirection (None, 365, 64) 24832 ['model_hc/dence_2[0][0]']
al)
add_1 (Add) (None, 365, 64) 0 ['model_hc/bilstm_1[0][0]',
'model_hc/attention[0][0]',
'model_hc/bilstm_2[0][0]']
model_hc/add (Addition) (None, 128) 0 ['add_1[0][0]']
dense_1 (Dense) (None, 5) 645 ['model_hc/add[0][0]']
==================================================================================================
Total params: 54,469
Trainable params: 54,469
Non-trainable params: 0
__________________________________________________________________________________________________
_b5.text_model_nn_
- Нейросетевая модель tf.keras.Model для признаков / оценок на базе нейросетевых признаков
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:55:37] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
FI V2
)[4]:
res_load_text_model_nn_fi = _b5.load_text_model_nn(
corpus = "fi", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:55:40] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (текстовая модальность) …
— Время выполнения: 1.03 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:55:45] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (текстовая модальность) …
[2023-12-10 16:55:45] Загрузка файла “weights_2023-07-03_15-01-08.h5” 100.0% …
— Время выполнения: 0.393 сек. —
[6]:
_b5.text_model_nn_.summary()
Model: "model"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
model_nn/input (InputLayer) [(None, 104, 768)] 0 []
model_nn/bilstm_1 (Bidirection (None, 104, 64) 205056 ['model_nn/input[0][0]']
al)
model_nn/attention (Attention) (None, 104, 64) 0 ['model_nn/bilstm_1[0][0]',
'model_nn/bilstm_1[0][0]']
model_nn/dence_2 (Dense) (None, 104, 128) 8320 ['model_nn/attention[0][0]']
model_nn/add (Addition) (None, 256) 0 ['model_nn/dence_2[0][0]']
model_nn/dence_3 (Dense) (None, 128) 32896 ['model_nn/add[0][0]']
dense (Dense) (None, 5) 645 ['model_nn/dence_3[0][0]']
==================================================================================================
Total params: 246,917
Trainable params: 246,917
Non-trainable params: 0
__________________________________________________________________________________________________
MuPTA
)[7]:
res_load_text_model_nn_mupta = _b5.load_text_model_nn(
corpus = "mupta", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:55:49] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (текстовая модальность) …
— Время выполнения: 0.264 сек. —
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['mupta']['nn']['sberdisk']
res_load_text_model_weights_nn_mupta = _b5.load_text_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 16:55:51] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (текстовая модальность) …
[2023-12-10 16:55:52] Загрузка файла “weights_2023-07-16_18-12-01.h5” 100.0% …
— Время выполнения: 0.373 сек. —
[9]:
_b5.text_model_nn_.summary()
Model: "model_1"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
model_nn/input (InputLayer) [(None, 414, 768)] 0 []
model_nn/bilstm_1 (Bidirection (None, 414, 64) 205056 ['model_nn/input[0][0]']
al)
model_nn/attention (Attention) (None, 414, 64) 0 ['model_nn/bilstm_1[0][0]',
'model_nn/bilstm_1[0][0]']
model_nn/dence_2 (Dense) (None, 414, 128) 8320 ['model_nn/attention[0][0]']
model_nn/add (Addition) (None, 256) 0 ['model_nn/dence_2[0][0]']
model_nn/dence_3 (Dense) (None, 128) 32896 ['model_nn/add[0][0]']
dense_1 (Dense) (None, 5) 645 ['model_nn/dence_3[0][0]']
==================================================================================================
Total params: 246,917
Trainable params: 246,917
Non-trainable params: 0
__________________________________________________________________________________________________
_b5.text_model_b5_
- Нейросетевая модель tf.keras.Model для получения оценок персональных качеств
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 17:03:46] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
res_load_text_model_b5 = _b5.load_text_model_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:03:46] Формирование нейросетевой архитектуры модели для получения оценок персональных качеств (текстовая модальность) …
— Время выполнения: 0.539 сек. —
FI V2
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['b5']['sberdisk']
res_load_text_model_weights_b5 = _b5.load_text_model_weights_b5(
url = url,
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:03:46] Загрузка весов нейросетевой модели для получения оценок персональных качеств (текстовая модальность) …
[2023-12-10 17:03:47] Загрузка файла “ft_fi_2023-12-09_14-25-13.h5”
— Время выполнения: 0.144 сек. —
MuPTA
[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['mupta']['b5']['sberdisk']
res_load_text_model_weights_b5 = _b5.load_text_model_weights_b5(
url = url,
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-10 17:03:47] Загрузка весов нейросетевой модели для получения оценок персональных качеств (текстовая модальность) …
[2023-12-10 17:03:47] Загрузка файла “ft_mupta_2023-12-09_14-25-13.h5”
— Время выполнения: 0.137 сек. —
[7]:
_b5.text_model_b5_.summary()
Model: "model"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
input_1 (InputLayer) [(None, 5)] 0 []
input_2 (InputLayer) [(None, 5)] 0 []
tf.concat (TFOpLambda) (None, 10) 0 ['input_1[0][0]',
'input_2[0][0]']
dense (Dense) (None, 5) 55 ['tf.concat[0][0]']
==================================================================================================
Total params: 55
Trainable params: 55
Non-trainable params: 0
__________________________________________________________________________________________________
[2]:
from oceanai.modules.lab.build import Run
2023-12-03 00:29:47.655916: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#FFF', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-03 00:29:57] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_load_text_features = _b5.load_text_features(
force_reload = True, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:29:57] Загрузка словаря с экспертными признаками …
[2023-12-03 00:30:00] Загрузка файла “LIWC2007.txt” 100.0% …
— Время выполнения: 3.073 сек. —
RU -> EN
)[5]:
res_setup_translation_model = _b5.setup_translation_model(
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:00] Формирование токенизатора и нейросетевой модели машинного перевода …
— Время выполнения: 3.098 сек. —
для кодирования слов
)[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_setup_translation_model = _b5.setup_bert_encoder(
force_reload = False, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:04] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-03 00:30:07] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-03 00:30:04] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-03 00:30:07] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-03 00:30:07] Разархивирование архива “bert-base-multilingual-cased.zip” …
— Время выполнения: 14.752 сек. —
EN
) с учетом ручной транскрипции)[7]:
# Путь к видеофайлу
path = '/Users/dl/GitHub/OCEANAI/docs/source/user_guide/notebooks/glgfB3vFewc.004.mp4'
hc_features, nn_features = _b5.get_text_features(
path = path, # Путь к видеофайлу
asr = False, # Распознавание речи
lang = 'en', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:18] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:19] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 89 ✕ 64 Размерность матрицы с нейросетевыми признаками: 104 ✕ 768 Текст: during those times i feel sad i feel confused and
— Время выполнения: 0.343 сек. —
EN
) без учета ручной транскрипции)[8]:
# Путь к видеофайлу
path = '/Users/dl/GitHub/OCEANAI/docs/source/user_guide/notebooks/glgfB3vFewc.004.mp4'
hc_features, nn_features = _b5.get_text_features(
path = path, # Путь к видеофайлу
asr = True, # Распознавание речи
lang = 'en', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:19] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:25] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 89 ✕ 64 Размерность матрицы с нейросетевыми признаками: 104 ✕ 768 Текст: during those times i feel sad i feel confused and- the school and introduce them to our administrators and the different faculty that work throughout the school and the library and the gym and so on and then they can get comfortable if theyre in a new school as well
— Время выполнения: 6.398 сек. —
RU
) без учета ручной транскрипции)[9]:
# Путь к текстовому файлу
path = '/Users/dl/GitHub/OCEANAI/docs/source/user_guide/notebooks/center_42.mov'
hc_features, nn_features = _b5.get_text_features(
path = path, # Путь к видеофайлу
asr = False, # Распознавание речи
lang = 'ru', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:25] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:43] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 365 ✕ 64 Размерность матрицы с нейросетевыми признаками: 414 ✕ 768 Текст: на картинке изображены скорее всего друзья которые играют в груз мечом это скорее всего происходит где-то в америке возможно в калифорнии на пляже девушка в топе и в шортах пытается словить мяч также двое парней смотрят одинаково думает как перехватить следующую подачу меча на заднем фоне видны высокие пальмы стоят дома неба голубое песок чистой чётко написки отображаются силой этой людей у парня в дали одеты солнце защитные очки он также в шортах и в майке в близи не видно головы человека он одет в темные шорты и в серую фортболку
— Время выполнения: 18.045 сек. —
RU
)[10]:
# Текст
path = '''
На картинке изображены скорее всего друзья, которые играют в игру с мячом.
Это скорее всего происходит где-то в Америке, возможно, в Калифорнии на пляже.
Девушка в топе и в шортах пытается словить мяч. Также двое парней смотрят, один активно думает,
как перехватить следующую подачу мяча. На заднем фоне видны высокие пальмы. Стоят дома.
Небо голубое. Песок чистый. Чётко на песке отображаются силуэты людей. У парня вдали одеты солнцезащитные очки,
он также в шортах и в майке. Вблизи не видно головы человека. Он одет в тёмные шорты и в серую футболку.
'''
hc_features, nn_features = _b5.get_text_features(
path = path, # Текст
asr = False, # Распознавание речи
lang = 'ru', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:43] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:52] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 365 ✕ 64 Размерность матрицы с нейросетевыми признаками: 414 ✕ 768 Текст: на картинке изображены скорее всего друзья которые играют в игру с мячом это скорее всего происходит где-то в америке возможно в калифорнии на пляже девушка в топе и в шортах пытается словить мяч также двое парней смотрят один активно думает как перехватить следующую подачу мяча на заднем фоне видны высокие пальмы стоят дома небо голубое песок чистый чётко на песке отображаются силуэты людей у парня вдали одеты солнцезащитные очки он также в шортах и в майке вблизи не видно головы человека он одет в тёмные шорты и в серую футболку
— Время выполнения: 9.227 сек. —
EN
)[11]:
# Текст
path = '''
today says they to for that but right now i am just watching super girl a new images be catching up
and some shows a good say you guys
'''
hc_features, nn_features = _b5.get_text_features(
path = path, # Текст
asr = False, # Распознавание речи
lang = 'en', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:52] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:53] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 89 ✕ 64 Размерность матрицы с нейросетевыми признаками: 104 ✕ 768 Текст: today says they to for that but right now i am just watching super girl a new images be catching up and some shows a good say you guys
— Время выполнения: 0.247 сек. —
EN
)[12]:
# Текст
path = '/Users/dl/GitHub/OCEANAI/docs/source/user_guide/notebooks/glgfB3vFewc.004.txt'
hc_features, nn_features = _b5.get_text_features(
path = path, # Текст
asr = False, # Распознавание речи
lang = 'en', # Выбор языка
show_text = True, # Отображение текста
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-03 00:30:53] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-03 00:30:53] Статистика извлеченных признаков из текста: Размерность матрицы экспертных признаков: 89 ✕ 64 Размерность матрицы с нейросетевыми признаками: 104 ✕ 768 Текст: during those times i feel sad i feel confused and
— Время выполнения: 0.204 сек. —
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 18:07:43] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
_b5.df_pkgs_
- DataFrame c версиями установленных библиотек
[4]:
_b5.libs_vers(runtime = True, run = True)
Package | Version | |
---|---|---|
1 | TensorFlow | 2.15.0 |
2 | Keras | 2.15.0 |
3 | OpenCV | 4.8.1 |
4 | MediaPipe | 0.9.0 |
5 | NumPy | 1.26.2 |
6 | SciPy | 1.11.4 |
7 | Pandas | 2.1.3 |
8 | Scikit-learn | 1.3.2 |
9 | OpenSmile | 2.5.0 |
10 | Librosa | 0.10.1 |
11 | AudioRead | 3.0.1 |
12 | IPython | 8.18.1 |
13 | PyMediaInfo | 6.1.0 |
14 | Requests | 2.31.0 |
15 | JupyterLab | 4.0.9 |
16 | LIWC | 0.5.0 |
17 | Transformers | 4.36.0 |
18 | Sentencepiece | 0.1.99 |
19 | Torch | 2.0.1+cpu |
20 | Torchaudio | 2.0.2+cpu |
— Время выполнения: 0.006 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_load_text_features = _b5.load_text_features(
force_reload = True, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:43] Загрузка словаря с экспертными признаками …
[2023-12-14 18:07:43] Загрузка файла “LIWC2007.txt” 100.0% …
— Время выполнения: 0.232 сек. —
RU -> EN
)[6]:
res_setup_translation_model = _b5.setup_translation_model(
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:43] Формирование токенизатора и нейросетевой модели машинного перевода …
— Время выполнения: 1.71 сек. —
для кодирования слов
)[7]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_setup_translation_model = _b5.setup_bert_encoder(
force_reload = False, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:45] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-14 18:07:47] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-14 18:07:45] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-14 18:07:47] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-14 18:07:47] Разархивирование архива “bert-base-multilingual-cased.zip” …
— Время выполнения: 4.188 сек. —
FI V2
_b5.text_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[8]:
res_load_text_model_hc_fi = _b5.load_text_model_hc(
corpus = "fi", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:49] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (текстовая модальность) …
— Время выполнения: 0.647 сек. —
_b5.text_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[9]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:50] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (текстовая модальность) …
[2023-12-14 18:07:50] Загрузка файла “weights_2023-07-15_10-52-15.h5” 100.0% …
— Время выполнения: 0.289 сек. —
_b5.text_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[10]:
res_load_text_model_nn_fi = _b5.load_text_model_nn(
corpus = "fi", # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:50] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (текстовая модальность) …
— Время выполнения: 0.279 сек. —
_b5.text_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[11]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:50] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (текстовая модальность) …
[2023-12-14 18:07:51] Загрузка файла “weights_2023-07-03_15-01-08.h5” 100.0% …
— Время выполнения: 0.337 сек. —
_b5.text_model_b5_
- Нейросетевая модель tf.keras.Model для получения оценок персональных качеств
[12]:
res_load_text_model_b5 = _b5.load_text_model_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:51] Формирование нейросетевой архитектуры модели для получения оценок персональных качеств (текстовая модальность) …
— Время выполнения: 0.015 сек. —
_b5.text_model_b5_
- Нейросетевая модель tf.keras.Model для получения оценок персональных качеств
[13]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text']['fi']['b5']['sberdisk']
res_load_text_model_weights_b5 = _b5.load_text_model_weights_b5(
url = url,
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 18:07:51] Загрузка весов нейросетевой модели для получения оценок персональных качеств (текстовая модальность) …
[2023-12-14 18:07:51] Загрузка файла “ft_fi_2023-12-09_14-25-13.h5”
— Время выполнения: 0.163 сек. —
_b5.df_files_
- DataFrame с данными
_b5.df_accuracy_
- DataFrame с результатами вычисления точности
[14]:
# Настройки ядра
_b5.path_to_dataset_ = 'E:/Databases/FirstImpressionsV2/test' # Директория набора данных
# Директории не входящие в выборку
_b5.ignore_dirs_ = []
# Названия ключей для DataFrame набора данных
_b5.keys_dataset_ = ['Path', 'Openness', 'Conscientiousness', 'Extraversion', 'Agreeableness', 'Non-Neuroticism']
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
_b5.path_to_logs_ = './logs' # Директория для сохранения LOG файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['fi']['sberdisk']
res_get_text_union_predictions = _b5.get_text_union_predictions(
depth = 1, # Глубина иерархии для получения видеоданных
recursive = False, # Рекурсивный поиск данных
asr = True, # Распознавание речи
lang = 'en', # Выбор языка
accuracy = True, # Вычисление точности
url_accuracy = url_accuracy,
logs = True, # При необходимости формировать LOG файл
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 19:00:14] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-14 19:00:15] Получение прогнозов и вычисление точности (текстовая модальность) …
2000 из 2000 (100.0%) … test80_25_Q4wOgixh7E.004.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.624434 | 0.588915 | 0.53729 | 0.601771 | 0.587032 |
2 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.518305 | 0.405696 | 0.440837 | 0.486431 | 0.42919 |
3 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.516165 | 0.482939 | 0.419187 | 0.520959 | 0.46346 |
4 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.653522 | 0.645953 | 0.5613 | 0.63864 | 0.635908 |
5 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.672823 | 0.563164 | 0.597474 | 0.618239 | 0.627377 |
6 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.571563 | 0.49441 | 0.477624 | 0.548336 | 0.509708 |
7 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.579048 | 0.590844 | 0.470888 | 0.580203 | 0.545247 |
8 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.547369 | 0.540064 | 0.441378 | 0.55407 | 0.52564 |
9 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.630611 | 0.546466 | 0.548925 | 0.592785 | 0.576801 |
10 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.643665 | 0.650126 | 0.561841 | 0.63202 | 0.636658 |
11 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.610431 | 0.509742 | 0.532337 | 0.563182 | 0.548405 |
12 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.501841 | 0.438787 | 0.408134 | 0.493867 | 0.433236 |
13 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.516751 | 0.521908 | 0.412392 | 0.535759 | 0.475492 |
14 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.625826 | 0.595756 | 0.545166 | 0.608196 | 0.601571 |
15 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.506065 | 0.466968 | 0.428299 | 0.497129 | 0.451425 |
16 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.638552 | 0.564402 | 0.561068 | 0.599493 | 0.594701 |
17 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.51764 | 0.588128 | 0.392461 | 0.569938 | 0.512308 |
18 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.581101 | 0.516556 | 0.489761 | 0.557651 | 0.521073 |
19 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.545621 | 0.467661 | 0.46827 | 0.518607 | 0.478676 |
20 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.619155 | 0.529129 | 0.535892 | 0.58141 | 0.571938 |
21 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.58491 | 0.489063 | 0.500084 | 0.538159 | 0.525135 |
22 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.504319 | 0.449576 | 0.427531 | 0.488319 | 0.441239 |
23 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.587255 | 0.591969 | 0.50329 | 0.578679 | 0.566444 |
24 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.6448 | 0.58204 | 0.558367 | 0.61345 | 0.60149 |
25 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.575514 | 0.517498 | 0.481397 | 0.548056 | 0.514953 |
26 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.561977 | 0.594428 | 0.456222 | 0.562595 | 0.536081 |
27 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.522762 | 0.468697 | 0.426084 | 0.510566 | 0.451157 |
28 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.642535 | 0.538425 | 0.564254 | 0.602641 | 0.595872 |
29 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.615789 | 0.54139 | 0.522493 | 0.585496 | 0.570682 |
30 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.620333 | 0.522955 | 0.543902 | 0.569043 | 0.559107 |
[2023-12-14 19:00:16] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.1097 | 0.114 | 0.115 | 0.1019 | 0.1154 | 0.1112 |
Accuracy | 0.8903 | 0.886 | 0.885 | 0.8981 | 0.8846 | 0.8888 |
[2023-12-14 19:00:16] Средняя средних абсолютных ошибок: 0.1112, средняя точность: 0.8888 …
Лог файлы успешно сохранены …
— Время выполнения: 3131.846 сек. —
Мультимодальная обработка информации
_b5.av_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 22:44:38] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
[4]:
res_load_av_models_b5 = _b5.load_av_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:44:38] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (мультимодальное объединение) …
— Время выполнения: 0.095 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['av']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['av']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['av']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['av']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['av']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_av_models_weights_b5 = _b5.load_av_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # Эмоциональная стабильность
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:44:53] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (мультимодальное объединение) …
[2023-12-14 22:44:53] Загрузка файла “weights_2022-08-28_11-14-35.h5” 100.0% … Открытость опыту
[2023-12-14 22:44:54] Загрузка файла “weights_2022-08-28_11-08-10.h5” 100.0% … Добросовестность
[2023-12-14 22:44:54] Загрузка файла “weights_2022-08-28_11-17-57.h5” 100.0% … Экстраверсия
[2023-12-14 22:44:54] Загрузка файла “weights_2022-08-28_11-25-11.h5” 100.0% … Доброжелательность
[2023-12-14 22:44:54] Загрузка файла “weights_2022-06-14_21-44-09.h5” 100.0% … Эмоциональная стабильность
— Время выполнения: 0.914 сек. —
openness
- Открытость опыту
conscientiousness
- Добросовестность
extraversion
- Экстраверсия
agreeableness
- Доброжелательность
non_neuroticism
- Эмоциональная стабильность
[6]:
_b5.av_models_b5_['openness'].summary()
Model: "model"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 64)] 0
dense_1 (Dense) (None, 1) 65
activ_1 (Activation) (None, 1) 0
=================================================================
Total params: 65 (260.00 Byte)
Trainable params: 65 (260.00 Byte)
Non-trainable params: 0 (0.00 Byte)
_________________________________________________________________
_b5.avt_model_b5_
- Нейросетевая модель tf.keras.Model для получения результатов оценки персональных качеств
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-11 09:46:45] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
res_load_avt_model_b5 = _b5.load_avt_model_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-11 09:46:45] Формирование нейросетевой архитектуры модели для получения оценок персональных качеств (мультимодальное объединение) …
— Время выполнения: 0.814 сек. —
[5]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['avt']['fi']['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(
url = url,
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-11 09:46:46] Загрузка весов нейросетевой модели для получения оценок персональных качеств (мультимодальное объединение) …
[2023-12-11 09:46:46] Загрузка файла “avt_fi_2023-12-03_11-36-51.h5”
— Время выполнения: 0.218 сек. —
[6]:
_b5.avt_model_b5_.summary()
Model: "model"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
hc_t (InputLayer) [(None, 128)] 0 []
hc_a (InputLayer) [(None, 256)] 0 []
nn_t (InputLayer) [(None, 128)] 0 []
nn_a (InputLayer) [(None, 512)] 0 []
hc_v (InputLayer) [(None, 256)] 0 []
nn_v (InputLayer) [(None, 2048)] 0 []
ln_hc_t (LayerNormalization) (None, 128) 256 ['hc_t[0][0]']
ln_hc_a (LayerNormalization) (None, 256) 512 ['hc_a[0][0]']
ln_nn_t (LayerNormalization) (None, 128) 256 ['nn_t[0][0]']
ln_nn_a (LayerNormalization) (None, 512) 1024 ['nn_a[0][0]']
ln_hc_v (LayerNormalization) (None, 256) 512 ['hc_v[0][0]']
ln_nn_v (LayerNormalization) (None, 2048) 4096 ['nn_v[0][0]']
gata (GFL) (None, 64) 131072 ['ln_hc_t[0][0]',
'ln_hc_a[0][0]',
'ln_nn_t[0][0]',
'ln_nn_a[0][0]']
gatv (GFL) (None, 64) 327680 ['ln_hc_t[0][0]',
'ln_hc_v[0][0]',
'ln_nn_t[0][0]',
'ln_nn_v[0][0]']
gaav (GFL) (None, 64) 393216 ['ln_hc_a[0][0]',
'ln_hc_v[0][0]',
'ln_nn_a[0][0]',
'ln_nn_v[0][0]']
tf.concat (TFOpLambda) (None, 192) 0 ['gata[0][0]',
'gatv[0][0]',
'gaav[0][0]']
dense (Dense) (None, 50) 9650 ['tf.concat[0][0]']
dence_cl (Dense) (None, 5) 255 ['dense[0][0]']
==================================================================================================
Total params: 868,529
Trainable params: 868,529
Non-trainable params: 0
__________________________________________________________________________________________________
FI V2
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-14 22:46:31] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
_b5.df_pkgs_
- DataFrame c версиями установленных библиотек
[4]:
_b5.libs_vers(runtime = True, run = True)
Package | Version | |
---|---|---|
1 | TensorFlow | 2.15.0 |
2 | Keras | 2.15.0 |
3 | OpenCV | 4.8.1 |
4 | MediaPipe | 0.9.0 |
5 | NumPy | 1.26.2 |
6 | SciPy | 1.11.4 |
7 | Pandas | 2.1.3 |
8 | Scikit-learn | 1.3.2 |
9 | OpenSmile | 2.5.0 |
10 | Librosa | 0.10.1 |
11 | AudioRead | 3.0.1 |
12 | IPython | 8.18.1 |
13 | PyMediaInfo | 6.1.0 |
14 | Requests | 2.31.0 |
15 | JupyterLab | 4.0.9 |
16 | LIWC | 0.5.0 |
17 | Transformers | 4.36.0 |
18 | Sentencepiece | 0.1.99 |
19 | Torch | 2.0.1+cpu |
20 | Torchaudio | 2.0.2+cpu |
— Время выполнения: 0.006 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[5]:
res_load_audio_model_hc = _b5.load_audio_model_hc(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:31] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) …
— Время выполнения: 0.322 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['hc']['sberdisk']
res_load_audio_model_weights_hc = _b5.load_audio_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:31] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) …
[2023-12-14 22:46:32] Загрузка файла “weights_2022-05-05_11-27-55.h5” 100.0% …
— Время выполнения: 0.277 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[7]:
res_load_audio_model_nn = _b5.load_audio_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:32] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (аудио модальность) …
— Время выполнения: 0.244 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio']['fi']['nn']['sberdisk']
res_load_audio_model_weights_nn = _b5.load_audio_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:32] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (аудио модальность) …
[2023-12-14 22:46:32] Загрузка файла “weights_2022-05-03_07-46-14.h5”
— Время выполнения: 0.389 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[9]:
res_load_video_model_hc = _b5.load_video_model_hc(
lang = 'en',
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:32] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) …
— Время выполнения: 0.257 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения оценок по экспертным признакам
[10]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['hc']['sberdisk']
res_load_video_model_weights_hc = _b5.load_video_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:32] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) …
[2023-12-14 22:46:33] Загрузка файла “weights_2022-08-27_18-53-35.h5” 100.0% …
— Время выполнения: 0.226 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[11]:
res_load_video_model_deep_fe = _b5.load_video_model_deep_fe(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:34] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) …
— Время выполнения: 0.783 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[12]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['fe']['sberdisk']
res_load_video_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:35] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) …
[2023-12-14 22:46:40] Загрузка файла “weights_2022-11-01_12-27-07.h5” 100.0% …
— Время выполнения: 4.311 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[13]:
res_load_video_model_nn = _b5.load_video_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:40] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) …
— Время выполнения: 0.724 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения оценок по нейросетевым признакам
[14]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video']['fi']['nn']['sberdisk']
res_load_video_model_weights_nn = _b5.load_video_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:40] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) …
[2023-12-14 22:46:42] Загрузка файла “weights_2022-03-22_16-31-48.h5”
— Время выполнения: 1.355 сек. —
_b5.av_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[15]:
res_load_av_models_b5 = _b5.load_av_models_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:42] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (мультимодальное объединение) …
— Время выполнения: 0.048 сек. —
_b5.av_models_b5_
- Нейросетевые модели tf.keras.Model для получения результатов оценки персональных качеств
[16]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url_openness = _b5.weights_for_big5_['av']['fi']['b5']['openness']['sberdisk']
url_conscientiousness = _b5.weights_for_big5_['av']['fi']['b5']['conscientiousness']['sberdisk']
url_extraversion = _b5.weights_for_big5_['av']['fi']['b5']['extraversion']['sberdisk']
url_agreeableness = _b5.weights_for_big5_['av']['fi']['b5']['agreeableness']['sberdisk']
url_non_neuroticism = _b5.weights_for_big5_['av']['fi']['b5']['non_neuroticism']['sberdisk']
res_load_av_models_weights_b5 = _b5.load_av_models_weights_b5(
url_openness = url_openness, # Открытость опыту
url_conscientiousness = url_conscientiousness, # Добросовестность
url_extraversion = url_extraversion, # Экстраверсия
url_agreeableness = url_agreeableness, # Доброжелательность
url_non_neuroticism = url_non_neuroticism, # "Эмоциональная стабильность
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-14 22:46:47] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (мультимодальное объединение) …
[2023-12-14 22:46:47] Загрузка файла “weights_2022-08-28_11-14-35.h5” 100.0% … Открытость опыту
[2023-12-14 22:46:47] Загрузка файла “weights_2022-08-28_11-08-10.h5” 100.0% … Добросовестность
[2023-12-14 22:46:47] Загрузка файла “weights_2022-08-28_11-17-57.h5” 100.0% … Экстраверсия
[2023-12-14 22:46:47] Загрузка файла “weights_2022-08-28_11-25-11.h5” 100.0% … Доброжелательность
[2023-12-14 22:46:47] Загрузка файла “weights_2022-06-14_21-44-09.h5” 100.0% … Эмоциональная стабильность
— Время выполнения: 0.785 сек. —
_b5.df_files_
- DataFrame с данными
_b5.df_accuracy_
- DataFrame с результатами вычисления точности
[17]:
# Настройки ядра
_b5.path_to_dataset_ = 'E:/Databases/FirstImpressionsV2/test' # Директория набора данных
# Директории не входящие в выборку
_b5.ignore_dirs_ = []
# Названия ключей для DataFrame набора данных
_b5.keys_dataset_ = ['Path', 'Openness', 'Conscientiousness', 'Extraversion', 'Agreeableness', 'Non-Neuroticism']
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_['fi']['sberdisk']
_b5.get_av_union_predictions(
depth = 1, # Глубина иерархии для получения аудио и видеоданных
recursive = False, # Рекурсивный поиск данных
sr = 44100, # Частота дискретизации
window_audio = 2, # Размер окна сегмента аудио сигнала (в секундах)
step_audio = 1, # Шаг сдвига окна сегмента аудио сигнала (в секундах)
reduction_fps = 5, # Понижение кадровой частоты
window_video = 10, # Размер окна сегмента видео сигнала (в секундах)
step_video = 5, # Шаг сдвига окна сегмента видео сигнала (в секундах)
lang = 'en',
accuracy = True, # Вычисление точности
url_accuracy = url_accuracy,
logs = True, # При необходимости формировать LOG файл
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 01:11:04] Получение прогнозов и вычисление точности (мультимодальное объединение) …
2000 из 2000 (100.0%) … test80_25_Q4wOgixh7E.004.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.554249 | 0.506548 | 0.440194 | 0.540235 | 0.48605 |
2 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.558823 | 0.442357 | 0.50397 | 0.558767 | 0.521587 |
3 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.477549 | 0.568616 | 0.333939 | 0.491873 | 0.458966 |
4 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.662656 | 0.621852 | 0.58996 | 0.599038 | 0.636035 |
5 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.645876 | 0.532378 | 0.551939 | 0.589174 | 0.552269 |
6 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.67497 | 0.666972 | 0.617604 | 0.610567 | 0.641452 |
7 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.39908 | 0.397298 | 0.335823 | 0.497966 | 0.39729 |
8 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.577705 | 0.597157 | 0.498064 | 0.640584 | 0.600152 |
9 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.543675 | 0.451197 | 0.449555 | 0.482371 | 0.415256 |
10 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.54876 | 0.51097 | 0.433856 | 0.579709 | 0.536171 |
11 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.546634 | 0.398485 | 0.443701 | 0.518107 | 0.492343 |
12 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.459302 | 0.427114 | 0.315686 | 0.495817 | 0.457954 |
13 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.309097 | 0.317028 | 0.218514 | 0.372315 | 0.241697 |
14 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.643403 | 0.509414 | 0.483608 | 0.503154 | 0.550979 |
15 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.65016 | 0.840148 | 0.535299 | 0.710939 | 0.743357 |
16 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.598313 | 0.520505 | 0.450767 | 0.486345 | 0.561532 |
17 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.571537 | 0.673989 | 0.472203 | 0.615608 | 0.621064 |
18 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.552433 | 0.568787 | 0.457108 | 0.613188 | 0.570902 |
19 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.658695 | 0.625194 | 0.634877 | 0.612277 | 0.626052 |
20 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.660076 | 0.544358 | 0.64178 | 0.604572 | 0.628259 |
21 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.543881 | 0.477881 | 0.407731 | 0.555772 | 0.499664 |
22 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.537325 | 0.46375 | 0.419255 | 0.499785 | 0.455146 |
23 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.464761 | 0.434816 | 0.346836 | 0.428429 | 0.358087 |
24 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.633951 | 0.63333 | 0.584644 | 0.615227 | 0.608006 |
25 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.4517 | 0.574346 | 0.350136 | 0.526873 | 0.468283 |
26 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.602848 | 0.592382 | 0.494679 | 0.539232 | 0.505865 |
27 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.586638 | 0.521421 | 0.485391 | 0.530296 | 0.535499 |
28 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.689552 | 0.643902 | 0.695799 | 0.646209 | 0.686243 |
29 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.583505 | 0.564313 | 0.502263 | 0.554502 | 0.539899 |
30 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.642695 | 0.588222 | 0.617706 | 0.615312 | 0.626649 |
[2023-12-15 01:11:04] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0845 | 0.0802 | 0.0793 | 0.0858 | 0.0847 | 0.0829 |
Accuracy | 0.9155 | 0.9198 | 0.9207 | 0.9142 | 0.9153 | 0.9171 |
[2023-12-15 01:11:04] Средняя средних абсолютных ошибок: 0.0829, средняя точность: 0.9171 …
Лог файлы успешно сохранены …
— Время выполнения: 8654.754 сек. —
[17]:
True
FI V2
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-15 07:01:44] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a16 Лицензия: BSD License
_b5.df_pkgs_
- DataFrame c версиями установленных библиотек
[4]:
_b5.libs_vers(runtime = True, run = True)
Package | Version | |
---|---|---|
1 | TensorFlow | 2.15.0 |
2 | Keras | 2.15.0 |
3 | OpenCV | 4.8.1 |
4 | MediaPipe | 0.9.0 |
5 | NumPy | 1.26.2 |
6 | SciPy | 1.11.4 |
7 | Pandas | 2.1.3 |
8 | Scikit-learn | 1.3.2 |
9 | OpenSmile | 2.5.0 |
10 | Librosa | 0.10.1 |
11 | AudioRead | 3.0.1 |
12 | IPython | 8.18.1 |
13 | PyMediaInfo | 6.1.0 |
14 | Requests | 2.31.0 |
15 | JupyterLab | 4.0.9 |
16 | LIWC | 0.5.0 |
17 | Transformers | 4.36.0 |
18 | Sentencepiece | 0.1.99 |
19 | Torch | 2.0.1+cpu |
20 | Torchaudio | 2.0.2+cpu |
— Время выполнения: 0.004 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[5]:
res_load_audio_model_hc = _b5.load_audio_model_hc(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:44] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) …
— Время выполнения: 0.326 сек. —
_b5.audio_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[6]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
corpus = 'fi'
lang = 'en'
url = _b5.weights_for_big5_['audio'][corpus]['hc']['sberdisk']
res_load_audio_model_weights_hc = _b5.load_audio_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:45] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) …
[2023-12-15 07:01:45] Загрузка файла “weights_2022-05-05_11-27-55.h5” 100.0% …
— Время выполнения: 0.226 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[7]:
res_load_audio_model_nn = _b5.load_audio_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:45] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (аудио модальность) …
— Время выполнения: 0.219 сек. —
_b5.audio_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[8]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['audio'][corpus]['nn']['sberdisk']
res_load_audio_model_weights_nn = _b5.load_audio_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:45] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (аудио модальность) …
[2023-12-15 07:01:45] Загрузка файла “weights_2022-05-03_07-46-14.h5”
— Время выполнения: 0.328 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[9]:
res_load_video_model_hc = _b5.load_video_model_hc(
lang = lang,
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:45] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) …
— Время выполнения: 0.252 сек. —
_b5.video_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[10]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video'][corpus]['hc']['sberdisk']
res_load_video_model_weights_hc = _b5.load_video_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:46] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) …
[2023-12-15 07:01:46] Загрузка файла “weights_2022-08-27_18-53-35.h5” 100.0% …
— Время выполнения: 0.24 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[11]:
res_load_video_model_deep_fe = _b5.load_video_model_deep_fe(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:46] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) …
— Время выполнения: 0.794 сек. —
_b5.video_model_deep_fe_
- Нейросетевая модель tf.keras.Model для получения нейросетевых признаков
[12]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video'][corpus]['fe']['sberdisk']
res_load_video_model_weights_deep_fe = _b5.load_video_model_weights_deep_fe(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:47] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) …
[2023-12-15 07:01:50] Загрузка файла “weights_2022-11-01_12-27-07.h5” 100.0% …
— Время выполнения: 3.937 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[13]:
res_load_video_model_nn = _b5.load_video_model_nn(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:51] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) …
— Время выполнения: 0.707 сек. —
_b5.video_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[14]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['video'][corpus]['nn']['sberdisk']
res_load_video_model_weights_nn = _b5.load_video_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:51] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) …
[2023-12-15 07:01:51] Загрузка файла “weights_2022-03-22_16-31-48.h5”
— Время выполнения: 0.166 сек. —
[15]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_load_text_features = _b5.load_text_features(
force_reload = True, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:51] Загрузка словаря с экспертными признаками …
[2023-12-15 07:01:52] Загрузка файла “LIWC2007.txt” 100.0% …
— Время выполнения: 0.166 сек. —
RU -> EN
)[16]:
res_setup_translation_model = _b5.setup_translation_model(
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:52] Формирование токенизатора и нейросетевой модели машинного перевода …
— Время выполнения: 1.763 сек. —
для кодирования слов
)[17]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_setup_translation_model = _b5.setup_bert_encoder(
force_reload = False, # Принудительная загрузка файла
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:53] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-15 07:01:55] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-15 07:01:53] Формирование токенизатора и нейросетевой модели BERT …
[2023-12-15 07:01:55] Загрузка файла “bert-base-multilingual-cased.zip”
[2023-12-15 07:01:55] Разархивирование архива “bert-base-multilingual-cased.zip” …
— Время выполнения: 5.269 сек. —
_b5.text_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[18]:
res_load_text_model_hc_fi = _b5.load_text_model_hc(
corpus = corpus, # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:59] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (текстовая модальность) …
— Время выполнения: 0.701 сек. —
_b5.text_model_hc_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе экспертных признаков
[19]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text'][corpus]['hc']['sberdisk']
res_load_text_model_weights_hc_fi = _b5.load_text_model_weights_hc(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:01:59] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (текстовая модальность) …
[2023-12-15 07:02:00] Загрузка файла “weights_2023-07-15_10-52-15.h5” 100.0% …
— Время выполнения: 0.278 сек. —
_b5.text_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[20]:
res_load_text_model_nn_fi = _b5.load_text_model_nn(
corpus = corpus, # Корпус для тестирования нейросетевой модели
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:02:00] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (текстовая модальность) …
— Время выполнения: 0.286 сек. —
_b5.text_model_nn_
- Нейросетевая модель tf.keras.Model для получения признаков / оценок на базе нейросетевых признаков
[21]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['text'][corpus]['nn']['sberdisk']
res_load_text_model_weights_nn_fi = _b5.load_text_model_weights_nn(
url = url, # Полный путь к файлу с весами нейросетевой модели
force_reload = True, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:02:00] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (текстовая модальность) …
[2023-12-15 07:02:00] Загрузка файла “weights_2023-07-03_15-01-08.h5” 100.0% …
— Время выполнения: 0.42 сек. —
_b5.avt_model_b5_
- Нейросетевая модель tf.keras.Model для получения оценок персональных качеств
[22]:
res_load_avt_model_b5 = _b5.load_avt_model_b5(
show_summary = False, # Отображение сформированной нейросетевой архитектуры модели
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:02:00] Формирование нейросетевой архитектуры модели для получения оценок персональных качеств (мультимодальное объединение) …
— Время выполнения: 0.212 сек. —
_b5.avt_model_b5_
- Нейросетевая модель tf.keras.Model для получения оценок персональных качеств
[23]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
url = _b5.weights_for_big5_['avt'][corpus]['b5']['sberdisk']
res_load_avt_model_weights_b5 = _b5.load_avt_model_weights_b5(
url = url,
force_reload = False, # Принудительная загрузка файла с весами нейросетевой модели из сети
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 07:02:01] Загрузка весов нейросетевой модели для получения оценок персональных качеств (мультимодальное объединение) …
[2023-12-15 07:02:01] Загрузка файла “avt_fi_2023-12-03_11-36-51.h5”
— Время выполнения: 0.295 сек. —
_b5.df_files_
- DataFrame с данными
_b5.df_accuracy_
- DataFrame с результатами вычисления точности
[24]:
# Настройки ядра
_b5.path_to_dataset_ = 'E:/Databases/FirstImpressionsV2/test' # Директория набора данных
# Директории не входящие в выборку
_b5.ignore_dirs_ = []
# Названия ключей для DataFrame набора данных
_b5.keys_dataset_ = ['Path', 'Openness', 'Conscientiousness', 'Extraversion', 'Agreeableness', 'Non-Neuroticism']
_b5.ext_ = ['.mp4'] # Расширения искомых файлов
# Полный путь к файлу с верными предсказаниями для подсчета точности
url_accuracy = _b5.true_traits_[corpus]['sberdisk']
_b5.get_avt_predictions(
depth = 1, # Глубина иерархии для получения аудио и видеоданных
recursive = False, # Рекурсивный поиск данных
sr = 44100, # Частота дискретизации
window_audio = 2, # Размер окна сегмента аудио сигнала (в секундах)
step_audio = 1, # Шаг сдвига окна сегмента аудио сигнала (в секундах)
reduction_fps = 5, # Понижение кадровой частоты
window_video = 10, # Размер окна сегмента видео сигнала (в секундах)
step_video = 5, # Шаг сдвига окна сегмента видео сигнала (в секундах)
asr = False, # Распознавание речи
lang = lang, # Выбор языка
accuracy = True, # Вычисление точности
url_accuracy = url_accuracy,
logs = True, # При необходимости формировать LOG файл
out = True, # Отображение
runtime = True, # Подсчет времени выполнения
run = True # Блокировка выполнения
)
[2023-12-15 10:22:11] Извлечение признаков (экспертных и нейросетевых) из текста …
[2023-12-15 10:22:14] Получение прогнозов и вычисление точности (мультимодальное объединение) …
2000 из 2000 (100.0%) … test80_25_Q4wOgixh7E.004.mp4 …
Path | Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | |
---|---|---|---|---|---|---|
ID | ||||||
1 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.545377 | 0.523155 | 0.456685 | 0.533811 | 0.516093 |
2 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.520572 | 0.396216 | 0.478419 | 0.528622 | 0.459169 |
3 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.450715 | 0.491121 | 0.36674 | 0.510387 | 0.414304 |
4 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.665193 | 0.648017 | 0.640581 | 0.580625 | 0.596675 |
5 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.669463 | 0.606313 | 0.619956 | 0.653291 | 0.618665 |
6 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.632529 | 0.722035 | 0.583922 | 0.63653 | 0.603358 |
7 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.489579 | 0.453927 | 0.373339 | 0.486156 | 0.421787 |
8 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.59544 | 0.615519 | 0.514064 | 0.627394 | 0.601345 |
9 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.559325 | 0.50692 | 0.442211 | 0.537979 | 0.499341 |
10 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.509495 | 0.526581 | 0.406979 | 0.565923 | 0.54616 |
11 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.599391 | 0.516418 | 0.516382 | 0.589003 | 0.558064 |
12 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.458006 | 0.496319 | 0.345605 | 0.48779 | 0.448027 |
13 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.377578 | 0.410694 | 0.283698 | 0.384478 | 0.313993 |
14 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.563649 | 0.499573 | 0.445833 | 0.454925 | 0.463903 |
15 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.7302 | 0.784698 | 0.51636 | 0.698729 | 0.713016 |
16 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.620163 | 0.564576 | 0.556421 | 0.563072 | 0.543618 |
17 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.603495 | 0.644997 | 0.440616 | 0.603712 | 0.578639 |
18 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.543104 | 0.489751 | 0.452691 | 0.566111 | 0.520961 |
19 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.624445 | 0.574276 | 0.609165 | 0.582815 | 0.560111 |
20 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.658763 | 0.545697 | 0.627865 | 0.61989 | 0.609391 |
21 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.562814 | 0.493076 | 0.430422 | 0.539134 | 0.502142 |
22 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.472688 | 0.417943 | 0.423233 | 0.472491 | 0.392815 |
23 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.43985 | 0.429655 | 0.319237 | 0.420569 | 0.414306 |
24 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.638308 | 0.632067 | 0.580016 | 0.642938 | 0.603159 |
25 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.506815 | 0.57838 | 0.367448 | 0.523856 | 0.481819 |
26 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.517949 | 0.562723 | 0.383299 | 0.483178 | 0.467141 |
27 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.570406 | 0.441804 | 0.454944 | 0.530368 | 0.512669 |
28 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.637813 | 0.611132 | 0.607629 | 0.636313 | 0.620745 |
29 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.572268 | 0.532781 | 0.504937 | 0.575169 | 0.518609 |
30 | E:\Databases\FirstImpressionsV2\test\test80_01... | 0.658128 | 0.598394 | 0.59656 | 0.621783 | 0.612908 |
[2023-12-15 10:22:14] Точность по отдельным персональным качествам личности человека …
Openness | Conscientiousness | Extraversion | Agreeableness | Non-Neuroticism | Mean | |
---|---|---|---|---|---|---|
Metrics | ||||||
MAE | 0.0758 | 0.0716 | 0.0688 | 0.0752 | 0.0731 | 0.0729 |
Accuracy | 0.9242 | 0.9284 | 0.9312 | 0.9248 | 0.9269 | 0.9271 |
[2023-12-15 10:22:14] Средняя средних абсолютных ошибок: 0.0729, средняя точность: 0.9271 …
Лог файлы успешно сохранены …
— Время выполнения: 12013.03 сек. —
[24]:
True
Дополнительные возможности
[2]:
from oceanai.modules.lab.build import Run
[3]:
_b5 = Run(
lang = 'ru', # Язык
color_simple = '#333', # Цвет обычного текста (шестнадцатеричный код)
color_info = '#1776D2', # Цвет текста содержащего информацию (шестнадцатеричный код)
color_err = '#FF0000', # Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true = '#008001', # Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text = True, # Жирное начертание текста
num_to_df_display = 30, # Количество строк для отображения в таблицах
text_runtime = 'Время выполнения', # Текст времени выполнения
metadata = True # Отображение информации о библиотеке
)
[2023-12-10 16:49:03] OCEANAI - персональные качества личности человека: Авторы: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Карпов Алексей [karpov@iias.spb.su] Сопровождающие: Рюмина Елена [ryumina_ev@mail.ru] Рюмин Дмитрий [dl_03.03.1991@mail.ru] Версия: 1.0.0a5 Лицензия: BSD License
[4]:
# Настройки ядра
_b5.path_to_save_ = './models' # Директория для сохранения файла
_b5.chunk_size_ = 2000000 # Размер загрузки файла из сети за 1 шаг
res_download_file_from_url = _b5.download_file_from_url(
url = 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5',
force_reload = True,
out = True,
runtime = True,
run = True
)
[2023-12-10 16:49:04] Загрузка файла “weights_2022-05-05_11-27-55.h5” 100.0% …
— Время выполнения: 0.214 сек. —
[5]:
res_download_file_from_url
[5]:
200
Модули
Пользовательские исключения
- exception oceanai.modules.core.exceptions.CustomException[исходный код]
Базовые классы:
Exception
Класс для всех пользовательских исключений
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.exceptions import CustomException 2 3message = 'Пользовательское исключение' 4 5try: raise CustomException(message) 6except CustomException as ex: print(ex)
[1]:1Пользовательское исключение
- exception oceanai.modules.core.exceptions.InvalidContentLength[исходный код]
Базовые классы:
CustomException
Не определен размер файла для загрузки
Пример
верно – 1 –
In [1]:1from oceanai.modules.core.exceptions import InvalidContentLength 2 3message = 'Не определен размер файла для загрузки' 4 5try: raise InvalidContentLength(message) 6except InvalidContentLength as ex: print(ex)
[1]:1Не определен размер файла для загрузки
- exception oceanai.modules.core.exceptions.IsSmallWindowSizeError[исходный код]
Базовые классы:
CustomException
Указан слишком маленький размер окна сегмента сигнала
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.exceptions import IsSmallWindowSizeError 2 3message = 'Указан слишком маленький размер окна сегмента сигнала' 4 5try: raise IsSmallWindowSizeError(message) 6except IsSmallWindowSizeError as ex: print(ex)
[1]:1Указан слишком маленький размер окна сегмента сигнала
Определение языка
- class oceanai.modules.core.language.Language(lang: str = 'ru')[исходный код]
Базовые классы:
object
Класс для интернационализации (I18N) и локализации (L10N)
- Параметры
lang (str) – Язык
- __get_languages() List[Optional[str]]
Получение поддерживаемых языков
Примечание
private (приватный метод)
- Результат
Список поддерживаемых языков
- Тип результата
List[Optional[str]]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4language._Language__get_languages()
[1]:1['ru', 'en']
- __get_locales() Dict[str, method]
Получение языковых пакетов
Примечание
private (приватный метод)
- Результат
Словарь с языковыми пакетами
- Тип результата
Dict[str, MethodType]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4language._Language__get_locales()
[1]:1{ 2 'ru': <bound method GNUTranslations.gettext of <gettext.GNUTranslations object at 0x14680ce50>>, 3 'en': <bound method GNUTranslations.gettext of <gettext.GNUTranslations object at 0x1460ddbb0>> 4}
- __set_locale(lang: str = '') method
Установка языка
Примечание
private (приватный метод)
- Параметры
lang (str) – Язык
- Результат
MethodType перевода строк на один из поддерживаемых языков если метод запущен через конструктор
- Тип результата
MethodType
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang_)
[1]:1ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4language._Language__set_locale('en') 5print(language.lang_)
[2]:1en
- lang: str = 'ru'
Язык, доступные варианты:
"ru"
- Русский язык (по умолчанию
)"en"
- Английский язык
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language() 4print(language.lang, language.lang_)
[1]:1ru ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang, language.lang_)
[2]:1ru ru
– 3 –
In [3]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.lang, language.lang_)
[3]:1en en
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'es') 4print(language.lang, language.lang_)
[4]:1es ru
– 2 –
In [5]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 1) 4print(language.lang, language.lang_)
[5]:11 ru
- Type
str
- property lang_: str
Получение текущего языка
- Результат
Язык
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language() 4print(language.lang_)
[1]:1ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang_)
[2]:1ru
– 3 –
In [3]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.lang_)
[3]:1en
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'es') 4print(language.lang_)
[4]:1ru
– 2 –
In [5]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 1) 4print(language.lang_)
[5]:1ru
- property locales_: List[str]
Получение поддерживаемых языков
- Результат
Список поддерживаемых языков
- Тип результата
List[str]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.locales_)
[1]:1['ru', 'en']
- property path_to_locales_: str
Получение директории с языковыми пакетами
- Результат
Директория с языковыми пакетами
- Тип результата
str
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4# У каждого пользователя свой путь 5print(language.path_to_locales_)
[1]:1/Users/dl/GitHub/OCEANAI/oceanai/modules/locales
Сообщения
- class oceanai.modules.core.messages.Messages(lang: str = 'ru')[исходный код]
Базовые классы:
Language
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
Настройки
- class oceanai.modules.core.settings.Settings(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Messages
Класс для настроек
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Цвет обычного текста (шестнадцатеричный код)
color_info (str) – Цвет текста содержащего информацию (шестнадцатеричный код)
color_err (str) – Цвет текста содержащего ошибку (шестнадцатеричный код)
color_true (str) – Цвет текста содержащего положительную информацию (шестнадцатеричный код)
bold_text (bool) – Жирное начертание текста
num_to_df_display (int) – Количество строк для отображения в таблицах
text_runtime (str) – Текст времени выполнения
- bold_text: bool = True
Жирное начертание текста
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru') 4print(settings.bold_text, settings.bold_text_)
[1]:1True True
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = True) 4print(settings.bold_text, settings.bold_text_)
[2]:1True True
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = False) 4print(settings.bold_text, settings.bold_text_)
[3]:1False False
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = 1) 4print(settings.bold_text, settings.bold_text_)
[4]:1True True
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = 'какой-то_текст') 4print(settings.bold_text, settings.bold_text_)
[5]:1True True
- Type
bool
- property bold_text_: bool
Получение/установка жирного начертания текста
- Параметры
(bool) – True или False
- Результат
True или False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = True) 4print(settings.bold_text_)
[1]:1True
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = True) 4settings.bold_text_ = False 5print(settings.bold_text_)
[2]:1False
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'en', bold_text = False) 4settings.bold_text_ = 1 5print(settings.bold_text_)
[3]:1False
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(lang = 'ru', bold_text = True) 4settings.bold_text_ = 'какой-то_текст' 5print(settings.bold_text_)
[4]:1True
- property chunk_size_: int
Получение/установка размера загрузки файла из сети за 1 шаг
- Параметры
(int) – Размер загрузки файла из сети за 1 шаг
- Результат
Размер загрузки файла из сети за 1 шаг
- Тип результата
int
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.chunk_size_)
[1]:11000000
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.chunk_size_ = 2000000 5print(settings.chunk_size_)
[2]:12000000
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.chunk_size_ = -1 5print(settings.chunk_size_)
[3]:11000000
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.chunk_size_ = False 5print(settings.chunk_size_)
[4]:11000000
– 3 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.chunk_size_ = 'какой-то_текст' 5print(settings.chunk_size_)
[5]:11000000
- color_err: str = '#FF0000'
Цвет текста содержащего ошибку (шестнадцатеричный код)
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.color_err, settings.color_err_)
[1]:1#FF0000 #FF0000
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_err = 'FF0000') 4print(settings.color_err, settings.color_err_)
[2]:1#FF0000 #FF0000
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_err = '#FF0') 4print(settings.color_err, settings.color_err_)
[3]:1#FF0 #FF0
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_err = 1) 4print(settings.color_err, settings.color_err_)
[4]:1#FF0000 #FF0000
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_err = []) 4print(settings.color_err, settings.color_err_)
[5]:1#FF0000 #FF0000
- Type
str
- property color_err_: str
Получение/установка цвета текста содержащего ошибку
- Параметры
(str) – Шестнадцатеричный код
- Результат
Шестнадцатеричный код
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_err = '#C22931') 4print(settings.color_err_)
[1]:1#C22931
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_err_ = '#FF0' 5print(settings.color_err_)
[2]:1#FF0
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_err_ = 1 5print(settings.color_err_)
[3]:1#FF0000
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_err_ = {} 5print(settings.color_err_)
[4]:1#FF0000
- color_info: str = '#1776D2'
Цвет текста содержащего информацию (шестнадцатеричный код)
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.color_info, settings.color_info_)
[1]:1#1776D2 #1776D2
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_info = '#1776D2') 4print(settings.color_info, settings.color_info_)
[2]:1#1776D2 #1776D2
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_info = '#42F') 4print(settings.color_info, settings.color_info_)
[3]:1#42F #42F
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_info = 1) 4print(settings.color_info, settings.color_info_)
[4]:1#1776D2 #1776D2
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_info = []) 4print(settings.color_info, settings.color_info_)
[5]:1#1776D2 #1776D2
- Type
str
- property color_info_: str
Получение/установка цвета текста содержащего информацию
- Параметры
(str) – Шестнадцатеричный код
- Результат
Шестнадцатеричный код
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_info = '#1776D2') 4print(settings.color_info_)
[1]:1#1776D2
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_info_ = '#42F' 5print(settings.color_info_)
[2]:1#42F
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_info_ = 1 5print(settings.color_info_)
[3]:1#1776D2
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_info_ = () 5print(settings.color_info_)
[4]:1#1776D2
- color_simple: str = '#666'
Цвет обычного текста (шестнадцатеричный код)
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.color_simple, settings.color_simple_)
[1]:1#666 #666
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_simple = '#666') 4print(settings.color_simple, settings.color_simple_)
[2]:1#666 #666
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_simple = '#222') 4print(settings.color_simple, settings.color_simple_)
[3]:1#222 #222
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_simple = 1) 4print(settings.color_simple, settings.color_simple_)
[4]:1#666 #666
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_simple = {1, 2, 3}) 4print(settings.color_simple, settings.color_simple_)
[5]:1#666 #666
- Type
str
- property color_simple_: str
Получение/установка цвета обычного текста
- Параметры
(str) – Шестнадцатеричный код
- Результат
Шестнадцатеричный код
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_simple = '#111') 4print(settings.color_simple_)
[1]:1#111
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_simple_ = '#444' 5print(settings.color_simple_)
[2]:1#444
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_simple_ = 1 5print(settings.color_simple_)
[3]:1#666
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_simple_ = () 5print(settings.color_simple_)
[4]:1#666
- color_true: str = '#008001'
Цвет текста содержащего положительную информацию (шестнадцатеричный код)
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.color_true, settings.color_true_)
[1]:1#008001 #008001
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_true = '#003332') 4print(settings.color_true, settings.color_true_)
[2]:1#003332 #003332
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_true = '#42F') 4print(settings.color_true, settings.color_true_)
[3]:1#42F #42F
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_true = 1) 4print(settings.color_true, settings.color_true_)
[4]:1#008001 #008001
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_true = []) 4print(settings.color_true, settings.color_true_)
[5]:1#008001 #008001
- Type
str
- property color_true_: str
Получение/установка цвета текста содержащего положительную информацию
- Параметры
(str) – Шестнадцатеричный код
- Результат
Шестнадцатеричный код
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(color_true = '#008001') 4print(settings.color_true_)
[1]:1#008001
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_true_ = '#42F' 5print(settings.color_true_)
[2]:1#42F
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_true = 1 5print(settings.color_true)
[3]:1#008001
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.color_true_ = () 5print(settings.color_true_)
[4]:1#008001
- property ext_: List[str]
Получение/установка расширений искомых файлов
- Параметры
(List[str]) – Список с расширениями искомых файлов
- Результат
Список с расширениями искомых файлов
- Тип результата
List[str]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.ext_)
[1]:1[]
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ext_ = ['.mp4'] 5print(settings.ext_)
[2]:1['.mp4']
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ext_ = ['.mp3', '.wav'] 5print(settings.ext_)
[3]:1['.mp3', '.wav']
– 4 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ext_ = [] 5print(settings.ext_)
[4]:1[]
Лучше так не делать – 1 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ext_ = [2, []] 5print(settings.ext_)
[5]:1[]
- property ignore_dirs_: List[str]
Получение/установка списка с директориями не входящими в выборку
- Параметры
(List[str]) – Список с директориями
- Результат
Список с директориями
- Тип результата
List[str]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.ignore_dirs_)
[1]:1[]
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ignore_dirs_ = ['test', 'test_2'] 5print(settings.ignore_dirs_)
[2]:1['test', 'test_2']
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ignore_dirs_ = [] 5print(settings.ignore_dirs_)
[3]:1[]
– 4 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ext_ = ['1_a', '2_b'] 5print(settings.ext_)
[4]:1['1_a', '2_b']
Лучше так не делать – 1 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.ignore_dirs_ = [2, []] 5print(settings.ignore_dirs_)
[5]:1[]
- property keys_dataset_
Получение/установка названий ключей набора данных
- Параметры
(List[str]) – Список с названиями ключей набора данных
- Результат
Список с названиями ключей набора данных
- Тип результата
List[str]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.keys_dataset_)
[1]:1[ 2 'Path', 3 'Openness', 4 'Conscientiousness', 5 'Extraversion', 6 'Agreeableness', 7 'Non-Neuroticism' 8]
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.keys_dataset_ = ['P', 'O', 'C', 'E', 'A', 'N'] 5print(settings.keys_dataset_)
[2]:1['P', 'O', 'C', 'E', 'A', 'N']
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.keys_dataset_ = [{}, [], 1] 5print(settings.keys_dataset_)
[3]:1[ 2 'Path', 3 'Openness', 4 'Conscientiousness', 5 'Extraversion', 6 'Agreeableness', 7 'Non-Neuroticism' 8]
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.keys_dataset_ = ['P', 'O'] 5print(settings.keys_dataset_)
[4]:1[ 2 'Path', 3 'Openness', 4 'Conscientiousness', 5 'Extraversion', 6 'Agreeableness', 7 'Non-Neuroticism' 8]
– 3 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.keys_dataset_ = [] 5print(settings.keys_dataset_)
[5]:1[ 2 'Path', 3 'Openness', 4 'Conscientiousness', 5 'Extraversion', 6 'Agreeableness', 7 'Non-Neuroticism' 8]
- num_to_df_display: int = 30
Количество строк для отображения в таблицах
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.num_to_df_display, settings.num_to_df_display_)
[1]:130 30
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(num_to_df_display = 30) 4print(settings.num_to_df_display, settings.num_to_df_display_)
[2]:130 30
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(num_to_df_display = 50) 4print(settings.num_to_df_display, settings.num_to_df_display_)
[3]:150 50
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(num_to_df_display = 0) 4print(settings.num_to_df_display, settings.num_to_df_display_)
[4]:130 30
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(num_to_df_display = 'какой-то_текст') 4print(settings.num_to_df_display, settings.num_to_df_display_)
[5]:130 30
- Type
int
- property num_to_df_display_: int
Получение/установка количества строк для отображения в таблицах
- Параметры
(int) – Количество строк
- Результат
Количество строк
- Тип результата
int
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(num_to_df_display = 30) 4print(settings.num_to_df_display_)
[1]:130
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.num_to_df_display_ = 50 5print(settings.num_to_df_display_)
[2]:150
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.num_to_df_display_ = 0 5print(settings.num_to_df_display_)
[3]:130
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.num_to_df_display_ = () 5print(settings.num_to_df_display_)
[4]:130
- property path_to_dataset_: str
Получение/установка директории набора данных
- Параметры
(str) – Директория набора данных
- Результат
Директория набора данных
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.path_to_dataset_)
[1]:1.
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_dataset_ = './dataset' 5print(settings.path_to_dataset_)
[2]:1dataset
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_dataset_ = '' 5print(settings.path_to_dataset_)
[3]:1.
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_dataset_ = [2, []] 5print(settings.path_to_dataset_)
[4]:1.
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_dataset_ = 1 5print(settings.path_to_dataset_)
[5]:1.
- property path_to_logs_: str
Получение/установка директории для сохранения LOG файлов
- Параметры
(str) – Директория для сохранения LOG файлов
- Результат
Директория для сохранения LOG файлов
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.path_to_logs_)
[1]:1logs
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_logs_ = './logs/DF' 5print(settings.path_to_logs_)
[2]:1logs/DF
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_logs_ = '' 5print(settings.path_to_logs_)
[3]:1.
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_logs_ = [2, []] 5print(settings.path_to_logs_)
[4]:1logs
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_logs_ = {'a': 1, 'b': 2} 5print(settings.path_to_logs_)
[5]:1logs
- property path_to_save_: str
Получение/установка директории для сохранения данных
- Параметры
(str) – Директория для сохранения данных
- Результат
Директория для сохранения данных
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.path_to_save_)
[1]:1models
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_save_ = './models/Audio' 5print(settings.path_to_save_)
[2]:1models/Audio
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_save_ = '' 5print(settings.path_to_save_)
[3]:1.
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_save_ = [2, []] 5print(settings.path_to_save_)
[4]:1models
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.path_to_save_ = {'a': 1, 'b': 2} 5print(settings.path_to_save_)
[5]:1models
- text_runtime: str = ''
Текст времени выполнения
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4print(settings.text_runtime, settings.text_runtime_)
[1]:1Время выполнения Время выполнения
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(text_runtime = 'Код выполнился за') 4print(settings.text_runtime, settings.text_runtime_)
[2]:1Код выполнился за Код выполнился за
– 3 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(text_runtime = 'Время выполнения') 4print(settings.text_runtime, settings.text_runtime_)
[3]:1Время выполнения Время выполнения
Лучше так не делать – 1 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(text_runtime = 1) 4print(settings.text_runtime, settings.text_runtime_)
[4]:1Время выполнения Время выполнения
– 2 –
In [5]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(text_runtime = {1, 2, 3}) 4print(settings.text_runtime, settings.text_runtime_)
[5]:1Время выполнения Время выполнения
- Type
str
- property text_runtime_: str
Получение/установка текста времени выполнения
- Параметры
(str) – Текст
- Результат
Текст
- Тип результата
str
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings(text_runtime = 'Время выполнения') 4print(settings.text_runtime_)
[1]:1Время выполнения
– 2 –
In [2]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.text_runtime_ = 'Код выполнился за' 5print(settings.text_runtime_)
[2]:1Код выполнился за
Лучше так не делать – 1 –
In [3]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.text_runtime_ = 1 5print(settings.text_runtime_)
[3]:1Время выполнения
– 2 –
In [4]:1from oceanai.modules.core.settings import Settings 2 3settings = Settings() 4settings.text_runtime_ = () 5print(settings.text_runtime_)
[4]:1Время выполнения
Ядро
- class oceanai.modules.core.core.CoreMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Settings
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- class oceanai.modules.core.core.Core(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
CoreMessages
Класс-ядро модулей
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- __is_notebook() bool
Определение запуска библиотеки в Jupyter или аналогах
Примечание
private (приватный метод)
- Результат
True если библиотека запущена в Jupyter или аналогах, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._Core__is_notebook()
[1]:1True
– 2 –
In [2]:1from oceanai.modules.core.core import Core 2 3Core._Core__is_notebook()
[2]:1True
- _add_last_el_notebook_history_output(message: str) None [исходный код]
Добавление текста к последнему сообщению из истории вывода сообщений в ячейке Jupyter
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
- Результат
None
- Тип результата
None
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._add_last_el_notebook_history_output(message = '...') 6 7core._add_notebook_history_output( 8 message = 'Сообщение 1', last = False 9) 10core._add_last_el_notebook_history_output(message = '...') 11 12core.show_notebook_history_output()
[1]:1... 2Сообщение 1 ...
- _add_notebook_history_output(message: str, last: bool = False) None [исходный код]
Добавление истории вывода сообщений в ячейке Jupyter
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._add_notebook_history_output( 6 message = 'Сообщение 1', last = False 7) 8core._add_notebook_history_output( 9 message = 'Сообщение 2', last = False 10) 11core._add_notebook_history_output( 12 message = 'Замена последнего сообщения', last = True 13) 14 15core.show_notebook_history_output()
[1]:1Сообщение 1 2Замена последнего сообщения
– 2 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for message, last in zip( 6 [ 7 'Сообщение 1', 8 'Сообщение 2', 9 'Замена последнего сообщения' 10 ], 11 [False, False, True] 12): 13 core._add_notebook_history_output( 14 message = message, last = last 15 ) 16 17core.show_notebook_history_output()
[2]:1Сообщение 1 2Замена последнего сообщения
- _append_to_list_of_accuracy(preds: List[Optional[float]], out: bool = True) bool [исходный код]
Добавление значений в словарь для DataFrame с результатами вычисления точности
Примечание
protected (защищенный метод)
- Параметры
preds (List[Optional[float]]) – Предсказания персональных качеств
out (bool) – Отображение
- Результат
True если значения в словарь для DataFrame были добавлены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core.keys_dataset_ = ['O', 'C', 'E', 'A', 'N'] 6 7core._append_to_list_of_accuracy( 8 preds = [0.5, 0.6, 0.2, 0.1, 0.8], 9 out = True 10) 11 12core._append_to_list_of_accuracy( 13 preds = [0.4, 0.5, 0.1, 0, 0.7], 14 out = True 15) 16 17core.dict_of_accuracy_
[1]:1{ 2 'O': [0.5, 0.4], 3 'C': [0.6, 0.5], 4 'E': [0.2, 0.1], 5 'A': [0.1, 0], 6 'N': [0.8, 0.7] 7}
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core.keys_dataset_ = ['O', 'C', 'E', 'A', 'N'] 6 7core._append_to_list_of_accuracy( 8 preds = [0.5, 0.6, 0.2, 0.1, 0.8], 9 out = True 10) 11 12core.keys_dataset_ = ['O2', 'C2', 'E2', 'A2', 'N2'] 13 14core._append_to_list_of_accuracy( 15 preds = [0.4, 0.5, 0.1, 0, 0.7], 16 out = True 17) 18 19core.dict_of_accuracy_
– 2 –
[2]:1[2022-12-03 23:08:15] Ой! Что-то пошло не так ... смотрите настройки ядра и цепочку выполнения действий ... 2 3 Файл: /Users/dl/GitHub/OCEANAI.private/oceanai/modules/core/core.py 4 Линия: 2669 5 Метод: _append_to_list_of_accuracy 6 Тип ошибки: KeyError 7 8{ 9 'O': [0.5, 0.4], 10 'C': [0.6, 0.5], 11 'E': [0.2, 0.1], 12 'A': [0.1, 0], 13 'N': [0.8, 0.7] 14}
- _append_to_list_of_files(path: str, preds: List[Optional[float]], out: bool = True) bool [исходный код]
Добавление значений в словарь для DataFrame c данными
Примечание
protected (защищенный метод)
- Параметры
path (str) – Путь к файлу
preds (List[Optional[float]]) – Предсказания персональных качеств
out (bool) – Отображение
- Результат
True если значения в словарь для DataFrame были добавлены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core.keys_dataset_ = ['P', 'O', 'C', 'E', 'A', 'N'] 6 7core._append_to_list_of_files( 8 path = './6V807Mf_gHM.003.mp4', 9 preds = [0.5, 0.6, 0.2, 0.1, 0.8], 10 out = True 11) 12 13core._append_to_list_of_files( 14 path = './6V807Mf_gHM.004.mp4', 15 preds = [0.4, 0.5, 0.1, 0, 0.7], 16 out = True 17) 18 19core.dict_of_files_
[1]:1{ 2 'P': ['./6V807Mf_gHM.003.mp4', './6V807Mf_gHM.004.mp4'], 3 'O': [0.5, 0.4], 4 'C': [0.6, 0.5], 5 'E': [0.2, 0.1], 6 'A': [0.1, 0], 7 'N': [0.8, 0.7] 8}
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core.keys_dataset_ = ['P', 'O', 'C', 'E', 'A', 'N'] 6 7core._append_to_list_of_files( 8 path = './6V807Mf_gHM.003.mp4', 9 preds = [0.5, 0.6, 0.2, 0.1, 0.8], 10 out = True 11) 12 13core.keys_dataset_ = ['P2', 'O2', 'C2', 'E2', 'A2', 'N2'] 14 15core._append_to_list_of_files( 16 path = './6V807Mf_gHM.004.mp4', 17 preds = [0.4, 0.5, 0.1, 0, 0.7], 18 out = True 19) 20 21core.dict_of_files_
– 2 –
[2]:1[2022-10-13 18:22:40] Ой! Что-то пошло не так ... смотрите настройки ядра и цепочку выполнения действий ... 2 3 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/core/core.py 4 Линия: 1105 5 Метод: _append_to_list_of_files 6 Тип ошибки: KeyError 7 8{ 9 'P': ['./6V807Mf_gHM.003.mp4'], 10 'O': [0.5], 11 'C': [0.6], 12 'E': [0.2], 13 'A': [0.1], 14 'N': [0.8] 15}
- _bold_wrapper(message: str) str [исходный код]
Обернутое сообщение с жирным начертанием
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
- Результат
Обернутое сообщение с жирным начертанием
- Тип результата
str
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core(bold_text = False) 4print(core._bold_wrapper( 5 'Обернутое сообщение без жирного начертания' 6)) 7 8core.bold_text = True 9print(core._bold_wrapper( 10 'Обернутое сообщение с жирным начертанием' 11))
[1]:1<span style="color:#666">Обернутое сообщение без жирного начертания</span> 2<span style="color:#666">**Обернутое сообщение с жирным начертанием**</span>
- _candidate_ranking(df_files: Optional[DataFrame] = None, weigths_openness: int = 0, weigths_conscientiousness: int = 0, weigths_extraversion: int = 0, weigths_agreeableness: int = 0, weigths_non_neuroticism: int = 0, out: bool = True) DataFrame [исходный код]
Ранжирование кандидатов по профессиональным обязанностям
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
weigths_openness (int) – Вес для ранжирования персонального качества (открытость опыту)
weigths_conscientiousness (int) – Вес для ранжирования персонального качества (добросовестность)
weigths_extraversion (int) – Вес для ранжирования персонального качества (экстраверсия)
weigths_agreeableness (int) – Вес для ранжирования персонального качества (доброжелательность)
weigths_non_neuroticism (int) – Вес для ранжирования персонального качества (эмоциональная стабильность)
out (bool) – Отображение
- Результат
DataFrame c ранжированными данными
- Тип результата
pd.DataFrame
- _clear_notebook_history_output() None [исходный код]
Очистка истории вывода сообщений в ячейке Jupyter
Примечание
protected (защищенный метод)
- Результат
None
- Тип результата
None
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._add_notebook_history_output( 6 message = 'Сообщение 1', last = False 7) 8core._add_notebook_history_output( 9 message = 'Сообщение 2', last = False 10) 11 12core._clear_notebook_history_output() 13 14core.show_notebook_history_output()
[1]:1
- _colleague_personality_desorders(df_files: Optional[DataFrame] = None, correlation_coefficients_mbti: Optional[DataFrame] = None, correlation_coefficients_disorders: Optional[DataFrame] = None, personality_desorder_number: int = 3, col_name_ocean: str = 'Trait', threshold: float = 0.55, out: bool = True) DataFrame [исходный код]
Определение приоритетных профессиональных растройств по версии MBTI
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients_mbti (pd.DataFrame) – DataFrame c коэффициентами корреляции для MBTI
correlation_coefficients_disorders (pd.DataFrame) – DataFrame c коэффициентами корреляции для расстройств
target_scores (List[float]) – Список оценок персональных качеств личности целевого человека
personality_desorder_number (int) – Количество приоритетных расстройств
threshold (float) – Порог для оценок полярности качеств (например, интроверт < 0.55, экстраверт > 0.55)
out (bool) – Отображение
col_name_ocean (str) –
- Результат
DataFrame c приоритетными расстройствами
- Тип результата
pd.DataFrame
- _colleague_personality_type_match(df_files: Optional[DataFrame] = None, correlation_coefficients: Optional[DataFrame] = None, target_scores: List[float] = [0.47, 0.63, 0.35, 0.58, 0.51], col_name_ocean: str = 'Trait', threshold: float = 0.55, out: bool = True) DataFrame [исходный код]
Поиск коллег по совместимости персональных типов по версии MBTI
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients (pd.DataFrame) – DataFrame c коэффициентами корреляции
target_scores (List[float]) – Список оценок персональных качеств личности целевого человека
threshold (float) – Порог для оценок полярности качеств (например, интроверт < 0.55, экстраверт > 0.55)
out (bool) – Отображение
col_name_ocean (str) –
- Результат
DataFrame c совместимостью коллег по персональным типам по версии MBTI
- Тип результата
pd.DataFrame
- _colleague_ranking(df_files: Optional[DataFrame] = None, correlation_coefficients: Optional[DataFrame] = None, target_scores: List[float] = [0.47, 0.63, 0.35, 0.58, 0.51], colleague: str = 'major', equal_coefficients: float = 0.5, out: bool = True) DataFrame [исходный код]
Поиск подходящего коллеги
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients (pd.DataFrame) – DataFrame c коэффициентами корреляции
target_scores (List[float]) – Список оценок персональных качеств личности целевого человека
colleague (str) – Ранг коллеги по совместимости
equal_coefficients (float) – Коэффициент применяемый к оценкам в случае равенства оценок двух человек
out (bool) – Отображение
- Результат
DataFrame c ранжированными коллегами
- Тип результата
pd.DataFrame
- _compatibility_percentage(type1, type2)[исходный код]
- _create_folder_for_logs(out: bool = True)[исходный код]
Создание директории для сохранения LOG файлов
Примечание
protected (защищенный метод)
- Параметры
out (bool) – Отображение
- Результат
True если директория создана или существует, в обратном случае False
- Тип результата
bool
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core.path_to_logs_ = './logs' 6 7core._create_folder_for_logs(out = True)
[1]:1true
- _del_last_el_notebook_history_output() None [исходный код]
Удаление последнего сообщения из истории вывода сообщений в ячейке Jupyter
Примечание
protected (защищенный метод)
- Результат
None
- Тип результата
None
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._add_notebook_history_output( 6 message = 'Сообщение 1', last = False 7) 8core._add_notebook_history_output( 9 message = 'Сообщение 2', last = False 10) 11 12core._del_last_el_notebook_history_output() 13 14core.show_notebook_history_output()
[1]:1Сообщение 1
- _error(message: str, last: bool = False, out: bool = True) None [исходный код]
Сообщение об ошибке
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._error( 6 message = 'Сообщение об ошибке 1', 7 last = False, out = True 8) 9 10core.color_simple_ = '#FFF' 11core.color_err_ = 'FF0000' 12core.bold_text_ = False 13 14core._error( 15 message = 'Сообщение об ошибке 2', 16 last = True, out = True 17)
[1]:1[2022-10-12 15:21:00] Сообщение об ошибке 1 2[2022-10-12 15:21:00] Сообщение об ошибке 2
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._error( 6 message = '', 7 last = False, out = True 8)
[2]:1[2022-10-12 17:06:04] Неверные типы или значения аргументов в "Core._error" ...
- _error_wrapper(message: str) str [исходный код]
Обернутое сообщение об ошибке
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
- Результат
Обернутое сообщение об ошибке
- Тип результата
str
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4print(core._error_wrapper( 5 'Обернутое сообщение об ошибке 1' 6)) 7 8core.color_err_ = '#FF4545' 9print(core._error_wrapper( 10 'Обернутое сообщение об ошибке 2' 11))
[1]:1<span style="color:#FF0000">Обернутое сообщение об ошибке 1</span> 2<span style="color:#FF4545">Обернутое сообщение об ошибке 2</span>
- _get_paths(path: Iterable, depth: int = 1, out: bool = True) Union[List[str], bool] [исходный код]
Получение директорий где хранятся данные
Примечание
protected (защищенный метод)
- Параметры
path (Iterable) – Директория набора данных
depth (int) – Глубина иерархии для извлечения классов
out (bool) – Отображение
- Результат
False если проверка аргументов не удалась или список с директориями
- Тип результата
Union[List[str], bool]
Примеры
Верно – 1 –
In [1]:1core = Core() 2core._get_paths( 3 path = '/Users/dl/GitHub/oceanai/oceanai/dataset', 4 depth = 1, out = True 5)
[1]:1[ 2 '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01', 3 '/Users/dl/GitHub/oceanai/oceanai/dataset/1', 4 '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_17' 5]
Ошибки – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._get_paths( 5 path = '', 6 depth = 1, out = True 7)
[2]:1[2022-10-12 16:36:16] Неверные типы или значения аргументов в "Core._get_paths" ... 2False
– 2 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._get_paths( 5 path = '/Users/dl/GitHub/oceanai/oceanai/folder', 6 depth = 1, out = True 7)
[3]:1[2022-10-13 18:37:11] Ой! Что-то пошло не так ... директория "/Users/dl/GitHub/oceanai/oceanai/folder" не найдена ... 2 3 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/core/core.py 4 Линия: 1023 5 Метод: _get_paths 6 Тип ошибки: FileNotFoundError 7 8False
- _info(message: str, last: bool = False, out: bool = True) None [исходный код]
Информационное сообщение
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._info( 6 message = 'Информационное сообщение 1', 7 last = False, out = True 8) 9 10core.color_simple_ = '#FFF' 11core.color_info_ = '#0B45B9' 12core.bold_text_ = False 13 14core._info( 15 message = 'Информационное сообщение 2', 16 last = True, out = True 17)
[1]:1[2022-10-14 11:35:00] Информационное сообщение 1 2[2022-10-14 11:35:00] Информационное сообщение 2
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._info( 6 message = '', 7 last = False, out = True 8)
[2]:1[2022-10-14 11:43:00] Неверные типы или значения аргументов в "Core._info" ...
- _info_true(message: str, last: bool = False, out: bool = True) None [исходный код]
Положительная информация
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._info_true( 6 message = 'Информационное положительное сообщение 1', 7 last = False, out = True 8) 9 10core.color_true_ = '#008001' 11core.bold_text_ = False 12 13core._info_true( 14 message = 'Информационное положительное сообщение 2', 15 last = True, out = True 16)
[1]:1Информационное положительное сообщение 1 2 3Информационное положительное сообщение 2
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._info_true( 6 message = '', 7 last = False, out = True 8)
[2]:1[2022-10-22 16:46:56] Неверные типы или значения аргументов в "Core._info_true" ...
- _info_wrapper(message: str) str [исходный код]
Обернутое информационное сообщение
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
- Результат
Обернутое информационное сообщение
- Тип результата
str
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4print(core._info_wrapper('Обернутое информационное сообщение 1')) 5 6core.color_info_ = '#0B45B9' 7print(core._info_wrapper('Обернутое информационное сообщение 2'))
[1]:1<span style="color:#1776D2">Обернутое информационное сообщение 1</span> 2<span style="color:#0B45B9">Обернутое информационное сообщение 2</span>
- _inv_args(class_name: str, build_name: str, last: bool = False, out: bool = True) None [исходный код]
Сообщение об указании неверных типов аргументов
Примечание
protected (защищенный метод)
- Параметры
class_name (str) – Имя класса
build_name (str) – Имя метода/функции
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._inv_args( 5 Core.__name__, core._info.__name__, 6 last = False, out = True 7)
[1]:1[2022-10-14 11:58:04] Неверные типы или значения аргументов в "Core._info" ...
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._inv_args(1, '', last = False, out = True)
[2]:1[2022-10-14 11:58:04] Неверные типы или значения аргументов в "Core._inv_args" ...
- _metadata_info(last: bool = False, out: bool = True) None [исходный код]
Информация об библиотеке
Примечание
protected (защищенный метод)
- Параметры
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._metadata_info(last = False, out = True)
[1]:1[2022-10-14 13:05:54] oceanai - персональные качества личности человека: 2 Авторы: 3 Рюмина Елена [ryumina_ev@mail.ru] 4 Рюмин Дмитрий [dl_03.03.1991@mail.ru] 5 Карпов Алексей [karpov@iias.spb.su] 6 Сопровождающие: 7 Рюмина Елена [ryumina_ev@mail.ru] 8 Рюмин Дмитрий [dl_03.03.1991@mail.ru] 9 Версия: 1.0.0-a7 10 Лицензия: GPLv3
Лучше так не делать – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._metadata_info(last = 1, out = [])
[2]:1[2022-10-14 13:05:54] oceanai - персональные качества личности человека: 2 Авторы: 3 Рюмина Елена [ryumina_ev@mail.ru] 4 Рюмин Дмитрий [dl_03.03.1991@mail.ru] 5 Карпов Алексей [karpov@iias.spb.su] 6 Сопровождающие: 7 Рюмина Елена [ryumina_ev@mail.ru] 8 Рюмин Дмитрий [dl_03.03.1991@mail.ru] 9 Версия: 1.0.0-a7 10 Лицензия: GPLv3
- _notebook_display_markdown(message: str, last: bool = False, out: bool = True) None [исходный код]
Отображение сообщения
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._notebook_display_markdown('Сообщение')
[1]:1Сообщение
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._notebook_display_markdown(1)
[2]:1[2022-10-14 15:52:03] Неверные типы или значения аргументов в "Core._notebook_display_markdown" ...
- _other_error(message: str, last: bool = False, out: bool = True) None [исходный код]
Сообщение об прочей ошибке
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5try: raise Exception 6except: 7 core._other_error( 8 message = 'Сообщение об ошибке 1', 9 last = False, out = True 10 ) 11 12core.color_simple_ = '#FFF' 13core.color_err_ = 'FF0000' 14core.bold_text_ = False 15 16try: raise Exception 17except: 18 core._other_error( 19 message = 'Сообщение об ошибке 2', 20 last = True, out = True 21 )
[1]:1[2022-10-14 16:25:11] Сообщение об ошибке 1 2 3 Файл: /var/folders/gw/w3k5kxtx0s3_nqdqw94zr8yh0000gn/T/ipykernel_20011/333478077.py 4 Линия: 5 5 Метод: <cell line: 5> 6 Тип ошибки: Exception 7 8[2022-10-14 16:25:11] Сообщение об ошибке 2 9 10 Файл: /var/folders/gw/w3k5kxtx0s3_nqdqw94zr8yh0000gn/T/ipykernel_20011/333478077.py 11 Линия: 16 12 Метод: <cell line: 16> 13 Тип ошибки: Exception
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5try: raise Exception 6except: 7 core._other_error( 8 message = '', 9 last = False, out = True 10 )
[2]:1[2022-10-14 16:25:11] Неверные типы или значения аргументов в "Core._other_error" ...
- _priority_calculation(df_files: Optional[DataFrame] = None, correlation_coefficients: Optional[DataFrame] = None, col_name_ocean: str = 'Trait', threshold: float = 0.55, number_priority: int = 1, number_importance_traits: int = 1, out: bool = True) DataFrame [исходный код]
Ранжирование предпочтений
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients (pd.DataFrame) – DataFrame c коэффициентами корреляции
col_name_ocean (str) – Столбец с названиями персональных качеств личности человека
threshold (float) – Порог для оценок полярности качеств (например, интроверт < 0.55, экстраверт > 0.55)
number_priority (int) – Количество приоритетных предпочтений
number_importance_traits (int) – Количество наиболее важных персональных качеств личности человека
out (bool) – Отображение
- Результат
DataFrame c ранжированными предпочтениями
- Тип результата
pd.DataFrame
- _priority_skill_calculation(df_files: Optional[DataFrame] = None, correlation_coefficients: Optional[DataFrame] = None, threshold: float = 0.55, out: bool = True) DataFrame [исходный код]
Ранжирование кандидатов по профессиональным навыкам
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients (pd.DataFrame) – DataFrame c коэффициентами корреляции
threshold (float) – Порог для оценок полярности качеств (например, интроверт < 0.55, экстраверт > 0.55)
out (bool) – Отображение
- Результат
DataFrame c ранжированными кандидатами
- Тип результата
pd.DataFrame
- _professional_match(df_files: Optional[DataFrame] = None, correlation_coefficients: Optional[DataFrame] = None, personality_type: Optional[str] = None, col_name_ocean: str = 'Trait', threshold: float = 0.55, out: bool = True) DataFrame [исходный код]
Ранжирование кандидатов по одному из шестнадцати персональных типов по версии MBTI
Примечание
protected (защищенный метод)
- Параметры
df_files (pd.DataFrame) – DataFrame c данными
correlation_coefficients (pd.DataFrame) – DataFrame c коэффициентами корреляции
personality_type (str) – Персональный тип по версии MBTI
threshold (float) – Порог для оценок полярности качеств (например, интроверт < 0.55, экстраверт > 0.55)
out (bool) – Отображение
col_name_ocean (str) –
- Результат
DataFrame c ранжированными кандидатами
- Тип результата
pd.DataFrame
- _progressbar(message: str, progress: str, clear_out: bool = True, last: bool = False, out: bool = True) None [исходный код]
Индикатор выполнения
Примечание
protected (защищенный метод)
- Параметры
message (str) – Сообщение
progress (str) – Индикатор выполнения
clear_out (bool) – Очистка области вывода
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for cnt in range(1, 4): 6 core._progressbar( 7 message = 'Цикл действий', 8 progress = 'Итерация ' + str(cnt), 9 clear_out = False, 10 last = False, out = True 11 )
[1]:1[2022-10-14 16:52:20] Цикл действий 2 3 Итерация 1 4 5[2022-10-14 16:52:20] Цикл действий 6 7 Итерация 2 8 9[2022-10-14 16:52:20] Цикл действий 10 11 Итерация 3
– 2 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for cnt in range(1, 4): 6 core._progressbar( 7 message = 'Цикл действий', 8 progress = 'Итерация ' + str(cnt), 9 clear_out = True, 10 last = True, out = True 11 )
[2]:1[2022-10-14 16:52:20] Цикл действий 2 3 Итерация 3
Ошибка – 1 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for cnt in range(1, 4): 6 core._progressbar( 7 message = 1, 8 progress = 2, 9 clear_out = True, 10 last = False, out = True 11 )
[3]:1[2022-10-14 16:52:38] Неверные типы или значения аргументов в "Core._progressbar" ...
- _progressbar_union_predictions(message: str, item: int, info: str, len_paths: int, clear_out: bool = True, last: bool = False, out: bool = True) None [исходный код]
Индикатор выполнения получения прогнозов по аудио
Примечание
private (приватный метод)
- Параметры
message (str) – Сообщение
item (int) – Номер видеофайла
info (str) – Локальный путь
len_paths (int) – Количество видеофайлов
clear_out (bool) – Очистка области вывода
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5l = range(1, 4, 1) 6 7for progress in l: 8 core._progressbar_union_predictions( 9 message = 'Цикл действий', 10 item = progress, 11 info = 'Путь к файлу', 12 len_paths = len(l), 13 clear_out = False, 14 last = False, out = True 15 )
[1]:1[2022-10-20 16:51:49] Цикл действий 2 3 1 из 3 (33.33%) ... Путь к файлу ... 4 5[2022-10-20 16:51:49] Цикл действий 6 7 2 из 3 (66.67%) ... Путь к файлу ... 8 9[2022-10-20 16:51:49] Цикл действий 10 11 3 из 3 (100.0%) ... Путь к файлу ...
– 2 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5l = range(1, 4, 1) 6 7for progress in l: 8 core._progressbar_union_predictions( 9 message = 'Цикл действий', 10 item = progress, 11 info = 'Путь к файлу', 12 len_paths = len(l), 13 clear_out = True, 14 last = True, out = True 15 )
[2]:1[2022-10-20 16:51:55] Цикл действий 2 3 3 из 3 (100.0%) ... Путь к файлу ...
Ошибка – 1 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5l = range(1, 4, 1) 6 7for progress in l: 8 core._progressbar_union_predictions( 9 message = 1, 10 item = progress, 11 info = 'Путь к файлу', 12 len_paths = len(l), 13 clear_out = True, 14 last = False, out = True 15 )
[3]:1[2022-10-20 16:55:15] Неверные типы или значения аргументов в "Audio._progressbar_union_predictions" ...
- _r_end(last: bool = False, out: bool = True) None [исходный код]
Конец отсчета времени выполнения
Примечание
protected (защищенный метод)
Подсказка
Работает в связке с
_r_start()
- Параметры
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._r_start() 6for cnt in range(0, 10000000): res = cnt * 2 7core._r_end()
[1]:1--- Время выполнения: 0.819 сек. ---
Ошибка – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for cnt in range(0, 10000000): res = cnt * 2 6core._r_end()
[1]:1--- Время выполнения: 1665756222.704 сек. ---
- _r_start() None [исходный код]
Начало отсчета времени выполнения
Примечание
protected (защищенный метод)
Подсказка
Работает в связке с
_r_end()
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._r_start() 6for cnt in range(0, 10000000): res = cnt * 2 7core._r_end()
[1]:1--- Время выполнения: 0.819 сек. ---
Ошибка – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5for cnt in range(0, 10000000): res = cnt * 2 6core._r_end()
[1]:1--- Время выполнения: 1665756222.704 сек. ---
- _round_math(val: Union[int, float], out: bool = True) Union[int, bool] [исходный код]
Округление чисел по математическому закону
Примечание
protected (защищенный метод)
- Параметры
val (Union[int, float]) – Число для округления
out (bool) – Отображение
- Результат
Округленное число если ошибок не выявлено, в обратном случае False
- Тип результата
Union[int, bool]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._round_math(4.5)
[1]:15
– 2 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._round_math(-2.5)
[1]:1-3
Ошибка – 1 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._round_math('')
[3]:1[2022-11-03 15:52:30] Неверные типы или значения аргументов в "Core._round_math" ... 2 3False
- _save_logs(df: DataFrame, name: str, out: bool = True) bool [исходный код]
Сохранение LOG файла
Примечание
protected (защищенный метод)
- Параметры
df (pd.DataFrame) – DataFrame который будет сохранен в LOG файл
name (str) – Имя LOG файла
out (bool) – Отображение
- Результат
True если LOG файл сохранен, в обратном случае False
- Тип результата
bool
Пример
Верно – 1 –
In [1]:1import pandas as pd 2from oceanai.modules.core.core import Core 3 4df = pd.DataFrame.from_dict( 5 data = {'Test': [1, 2, 3]} 6) 7 8core = Core() 9 10core.path_to_logs_ = './logs' 11 12core._save_logs( 13 df = df, name = 'test', out = True 14)
[1]:1True
- _search_file(path_to_file: str, ext: str, create: bool = False, out: bool = True) bool [исходный код]
Поиск файла
Примечание
protected (защищенный метод)
- Параметры
path_to_file (str) – Путь к файлу
ext (str) – Расширение файла
create (bool) – Создание файла в случае его отсутствия
out (bool) – Печатать процесс выполнения
- Результат
True если файл найден, в обратном случае False
- Тип результата
bool
- _stat_acoustic_features(last: bool = False, out: bool = True, **kwargs: Union[int, Tuple[int], TensorShape]) None [исходный код]
Сообщение со статистикой извлеченных признаков из акустического сигнала
Примечание
protected (защищенный метод)
- Параметры
last (bool) – Замена последнего сообщения
out (bool) – Отображение
**kwargs (Union[int, Tuple[int], tf.TensorShape]) – Дополнительные именованные аргументы
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core( 4 color_simple = '#FFF', 5 color_info = '#1776D2', 6 bold_text = True, 7) 8 9core._stat_acoustic_features( 10 last = False, out = True, 11 len_hc_features = 12, 12 len_melspectrogram_features = 12, 13 shape_hc_features = [196, 25], 14 shape_melspectrogram_features = [224, 224, 3], 15)
[1]:1[2022-10-14 17:59:20] Статистика извлеченных признаков из акустического сигнала: 2 Общее количество сегментов с: 3 1. экспертными признаками: 12 4 2. лог мел-спектрограммами: 12 5 Размерность матрицы экспертных признаков одного сегмента: 196 ✕ 25 6 Размерность тензора с лог мел-спектрограммами одного сегмента: 224 ✕ 224 ✕ 3
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core( 4 color_simple = '#FFF', 5 color_info = '#1776D2', 6 bold_text = True, 7) 8 9core._stat_acoustic_features( 10 last = False, out = True 11)
[2]:1[2022-10-14 17:59:21] Неверные типы или значения аргументов в "Core._stat_acoustic_features" ...
- _stat_text_features(last: bool = False, out: bool = True, **kwargs: Union[int, Tuple[int], TensorShape]) None [исходный код]
Сообщение c статистикой извлеченных признаков из текста
Примечание
protected (защищенный метод)
- Параметры
last (bool) – Замена последнего сообщения
out (bool) – Отображение
**kwargs (Union[int, Tuple[int], tf.TensorShape]) – Дополнительные именованные аргументы
- Результат
None
- Тип результата
None
- _stat_visual_features(last: bool = False, out: bool = True, **kwargs: Union[int, Tuple[int], TensorShape]) None [исходный код]
Сообщение c статистикой извлеченных признаков из визуального сигнала
Примечание
protected (защищенный метод)
- Параметры
last (bool) – Замена последнего сообщения
out (bool) – Отображение
**kwargs (Union[int, Tuple[int], tf.TensorShape]) – Дополнительные именованные аргументы
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core( 4 color_simple = '#FFF', 5 color_info = '#1776D2', 6 bold_text = True, 7) 8 9core._stat_visual_features( 10 last = False, out = True, 11 len_hc_features = 23, 12 len_nn_features = 23, 13 shape_hc_features = [10, 115], 14 shape_nn_features = [10, 512], 15 fps_before = 30, 16 fps_after = 10 17)
[1]:1[2022-11-03 16:18:40] Статистика извлеченных признаков из визуального сигнала: 2 Общее количество сегментов с: 3 1. экспертными признаками: 23 4 2. нейросетевыми признаками: 23 5 Размерность матрицы экспертных признаков одного сегмента: 10 ✕ 115 6 Размерность тензора с нейросетевыми признаками одного сегмента: 10 ✕ 512 7 Понижение кадровой частоты: с 30 до 10
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core( 4 color_simple = '#FFF', 5 color_info = '#1776D2', 6 bold_text = True, 7) 8 9core._stat_visual_features( 10 last = False, out = True 11)
[2]:1[2022-11-03 16:19:35] Неверные типы или значения аргументов в "Core._stat_visual_features" ...
- static _traceback() Dict [исходный код]
Трассировка исключений
Примечание
protected (защищенный метод)
- Результат
Словарь с описанием исключения
- Тип результата
Dict
Пример
Верно – 1 –
In [1]:1import pprint 2from oceanai.modules.core.core import Core 3 4core = Core() 5 6try: raise Exception 7except: 8 pp = pprint.PrettyPrinter(compact = True) 9 pp.pprint(core._traceback())
[1]:1{ 2 'filename': '/var/folders/gw/w3k5kxtx0s3_nqdqw94zr8yh0000gn/T/ipykernel_22253/4179594971.py', 3 'lineno': 6, 4 'name': '<cell line: 6>', 5 'type': 'Exception' 6}
- property df_accuracy_: DataFrame
Получение DataFrame с результатами вычисления точности
- Результат
DataFrame с результатами вычисления точности
- Тип результата
pd.DataFrame
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.df_accuracy_)
[1]:10
- property df_files_: DataFrame
Получение DataFrame c данными
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.df_files_)
[1]:10
- property df_files_MBTI_colleague_match_: DataFrame
Получение DataFrame c ранжированными коллегами на основе MBTI
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
- property df_files_MBTI_disorders_: DataFrame
Получение DataFrame c ранжированными профессиональными расстройствами на основе MBTI
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
- property df_files_MBTI_job_match_: DataFrame
Получение DataFrame c ранжированными кандидатами на основе MBTI
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
- property df_files_colleague_: DataFrame
Получение DataFrame c ранжированными коллегами на основе данных
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
- property df_files_priority_: DataFrame
Получение DataFrame c ранжированными предпочтениями на основе данных
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.df_files_priority_)
[1]:10
- property df_files_priority_skill_: DataFrame
Получение DataFrame c ранжированными коллегами на основе данных
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
- property df_files_ranking_: DataFrame
Получение DataFrame c ранжированными данными
- Результат
DataFrame c данными
- Тип результата
pd.DataFrame
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.df_files_ranking_)
[1]:10
- property df_pkgs_: DataFrame
Получение DataFrame c версиями установленных библиотек
- Результат
DataFrame c версиями установленных библиотек
- Тип результата
pd.DataFrame
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.libs_vers(out = False, runtime = True, run = True) 5core.df_pkgs_
[1]:1|----|--------------|---------| 2| | Package | Version | 3|----|--------------|---------| 4| 1 | TensorFlow | 2.11.0 | 5| 2 | Keras | 2.11.0 | 6| 3 | OpenCV | 4.6.0 | 7| 4 | MediaPipe | 0.9.0 | 8| 5 | NumPy | 1.23.5 | 9| 6 | SciPy | 1.9.3 | 10| 7 | Pandas | 1.5.2 | 11| 8 | Scikit-learn | 1.1.3 | 12| 9 | OpenSmile | 2.4.1 | 13| 10 | Librosa | 0.9.2 | 14| 11 | AudioRead | 3.0.0 | 15| 12 | IPython | 8.7.0 | 16| 14 | Requests | 2.28.1 | 17| 15 | JupyterLab | 3.5.0 | 18|----|--------------|---------|
- property dict_of_accuracy_: Dict[str, List[Union[int, float]]]
Получение словаря для DataFrame с результатами вычисления точности
Подсказка
На основе данного словаря формируется DataFrame с данными
df_accuracy_
- Результат
Словарь для DataFrame с результатами вычисления точности
- Тип результата
Dict[str, List[Union[int, float]]]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.dict_of_accuracy_)
[1]:10
- property dict_of_files_: Dict[str, List[Union[int, str, float]]]
Получение словаря для DataFrame с данными
Подсказка
На основе данного словаря формируется DataFrame с данными
df_files_
- Результат
Словарь для DataFrame с данными
- Тип результата
Dict[str, List[Union[int, str, float]]]
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4len(core.dict_of_files_)
[1]:10
- property is_notebook_: bool
Получение результата определения запуска библиотеки в Jupyter или аналогах
- Результат
True если библиотека запущена в Jupyter или аналогах, в обратном случае False
- Тип результата
bool
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4print(core.is_notebook_)
[1]:1True
- libs_vers(out: bool = True, runtime: bool = True, run: bool = True) None [исходный код]
Получение и отображение версий установленных библиотек
- Параметры
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.libs_vers(out = True, runtime = True, run = True)
[1]:1|----|---------------|---------| 2| | Package | Version | 3|----|---------------|---------| 4| 1 | TensorFlow | 2.11.0 | 5| 2 | Keras | 2.11.0 | 6| 3 | OpenCV | 4.6.0 | 7| 4 | MediaPipe | 0.9.0 | 8| 5 | NumPy | 1.23.5 | 9| 6 | SciPy | 1.9.3 | 10| 7 | Pandas | 1.5.2 | 11| 8 | Scikit-learn | 1.1.3 | 12| 9 | OpenSmile | 2.4.1 | 13| 10 | Librosa | 0.9.2 | 14| 11 | AudioRead | 3.0.0 | 15| 12 | IPython | 8.7.0 | 16| 14 | Requests | 2.28.1 | 17| 15 | JupyterLab | 3.5.0 | 18| 16 | LIWC | 0.5.0 | 19| 17 | Transformers | 4.24.0 | 20| 18 | Sentencepiece | 0.1.99 | 21| 19 | Torch | 1.12.1 | 22| 20 | Torchaudio | 0.12.1 | 23|----|---------------|---------| 24--- Время выполнения: 0.005 сек. ---
– 2 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.libs_vers(out = True, runtime = True, run = False)
[2]:1[2022-10-15 18:17:27] Выполнение заблокировано пользователем ...
Ошибка – 1 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.libs_vers(out = True, runtime = True, run = 1)
[3]:1[2022-10-15 18:18:51] Неверные типы или значения аргументов в "Core.libs_vers" ...
- property runtime_
Получение времени выполнения
- Результат
Время выполнения
- Тип результата
Union[int, float]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._r_start() 6for cnt in range(0, 10000000): res = cnt * 2 7core._r_end(out = False) 8 9print(core.runtime_)
[1]:10.838
Ошибка – 1 –
In [2]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5print(core.runtime_)
[2]:1-1
– 2 –
In [3]:1from oceanai.modules.core.core import Core 2 3core = Core() 4 5core._r_start() 6for cnt in range(0, 10000000): res = cnt * 2 7 8print(core.runtime_)
[3]:1-1
- show_notebook_history_output() None [исходный код]
Отображение истории вывода сообщений в ячейке Jupyter
- Результат
None
- Тип результата
None
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core._info( 5 message = 'Информационное сообщение', 6 last = False, out = False 7) 8 9core.show_notebook_history_output()
[1]:1[2022-10-15 18:27:46] Информационное сообщение
- property true_traits_: Dict[str, str]
Получение путей к верным предсказаниям для подсчета точности
- Результат
Словарь с путями к верным предсказаниям для подсчета точности
- Тип результата
Dict
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.true_traits_
[1]:1{ 2 'sberdisk': 'https://download.sberdisk.ru/download/file/410305241?token=TFePK6w5CW6ADnq&filename=data_true_traits.csv' 3}
- property weights_for_big5_: Dict[str, Dict]
Получение весов для нейросетевых архитектур
- Результат
Словарь с весами для нейросетевых архитектур
- Тип результата
Dict
Пример
Верно – 1 –
In [1]:1from oceanai.modules.core.core import Core 2 3core = Core() 4core.weights_for_big5_
[1]:1{ 2 'audio': { 3 'hc': { 4 'sberdisk': 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5', 5 }, 6 'nn': { 7 'sberdisk': 'https://download.sberdisk.ru/download/file/400635678?token=W6LCtD33FQHnYEz&filename=weights_2022-05-03_07-46-14.h5', 8 }, 9 'b5': { 10 'openness': { 11 'sberdisk': 'https://download.sberdisk.ru/download/file/405035301?token=443WRA9MFWqWBAE&filename=weights_2022-06-15_16-16-20.h5', 12 }, 13 'conscientiousness': { 14 'sberdisk': 'https://download.sberdisk.ru/download/file/405034601?token=eDG28m3H6c8bWoE&filename=weights_2022-06-15_16-21-57.h5', 15 }, 16 'extraversion': { 17 'sberdisk': 'https://download.sberdisk.ru/download/file/405034830?token=3daBSTYnmZaesee&filename=weights_2022-06-15_16-26-41.h5', 18 }, 19 'agreeableness': { 20 'sberdisk': 'https://download.sberdisk.ru/download/file/405034397?token=52ZPHMjb4CFmdYa&filename=weights_2022-06-15_16-32-51.h5', 21 }, 22 'non_neuroticism': { 23 'sberdisk': 'https://download.sberdisk.ru/download/file/405035156?token=q8CZJ99rZqcNxkM&filename=weights_2022-06-15_16-37-46.h5', 24 }, 25 }, 26 }, 27 'video': { 28 'hc': { 29 'sberdisk': 'https://download.sberdisk.ru/download/file/412059444?token=JXerCfAjJZg6crD&filename=weights_2022-08-27_18-53-35.h5', 30 }, 31 'nn': { 32 'sberdisk': 'https://download.sberdisk.ru/download/file/412059478?token=85KeW6q4QKy6kP8&filename=weights_2022-03-22_16-31-48.h5', 33 }, 34 'fe': { 35 'sberdisk': 'https://download.sberdisk.ru/download/file/414207833?token=ygzxWEkndjSMnEL&filename=weights_2022-11-01_12-27-07.h5' 36 }, 37 'b5': { 38 'openness': { 39 'sberdisk': 'https://download.sberdisk.ru/download/file/415127050?token=rfpy9TLdbeXtiN7&filename=weights_2022-06-15_16-46-30.h5', 40 }, 41 'conscientiousness': { 42 'sberdisk': 'https://download.sberdisk.ru/download/file/415126986?token=PnjzaHaR3wPg2RT&filename=weights_2022-06-15_16-48-50.h5', 43 }, 44 'extraversion': { 45 'sberdisk': 'https://download.sberdisk.ru/download/file/415127012?token=s5aTwbt8DBkt7G4&filename=weights_2022-06-15_16-54-06.h5', 46 }, 47 'agreeableness': { 48 'sberdisk': 'https://download.sberdisk.ru/download/file/415126845?token=joN7TMHk59Gffsf&filename=weights_2022-06-15_17-02-03.h5', 49 }, 50 'non_neuroticism': { 51 'sberdisk': 'https://download.sberdisk.ru/download/file/415127032?token=NEBSsE7mjyjen3o&filename=weights_2022-06-15_17-06-15.h5', 52 } 53 } 54 } 55}
Обработка архивов
- class oceanai.modules.lab.unzip.UnzipMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Core
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- class oceanai.modules.lab.unzip.Unzip(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
UnzipMessages
Класс для обработки архивов
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- __progressbar_unzip(path_to_zipfile: str, progress: float, clear_out: bool = True, last: bool = False, out: bool = True) None
Индикатор выполнения
Примечание
private (приватный метод)
- Параметры
path_to_zipfile (str) – Путь до архива
progress (float) – Процент выполнения (от 0.0 до 100.0)
clear_out (bool) – Очистка области вывода
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Тип результата
None
- _unzip(path_to_zipfile: str, new_name: Optional[str] = None, force_reload: bool = True, out: bool = True) bool [исходный код]
Разархивирование архива (без очистки истории вывода сообщений в ячейке Jupyter)
Примечание
protected (защищенный метод)
- Параметры
path_to_zipfile (str) – Полный путь до архива
new_name (str) – Имя директории для разархивирования
force_reload (bool) – Принудительное разархивирование
out (bool) – Отображение
- Результат
True если разархивирование прошло успешно, в обратном случае False
- Тип результата
bool
- property path_to_unzip: str
Получение директории для разархивирования
- Результат
Директория для разархивирования
- Тип результата
str
- unzip(path_to_zipfile: str, new_name: Optional[str] = None, force_reload: bool = True, out: bool = True) bool [исходный код]
Разархивирование архива
- Параметры
path_to_zipfile (str) – Полный путь до архива
new_name (str) – Имя директории для разархивирования
force_reload (bool) – Принудительное разархивирование
out (bool) – Отображение
- Результат
True если разархивирование прошло успешно, в обратном случае False
- Тип результата
bool
Загрузка файлов
- class oceanai.modules.lab.download.DownloadMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Unzip
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- class oceanai.modules.lab.download.Download(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
DownloadMessages
Класс для загрузки файлов
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- __progressbar_download_file_from_url(url_filename: str, progress: float, clear_out: bool = True, last: bool = False, out: bool = True) None
Индикатор выполнения загрузки файла из URL
Примечание
private (приватный метод)
- Параметры
url_filename (str) – Путь до файла
progress (float) – Процент выполнения (от 0.0 до 100.0)
clear_out (bool) – Очистка области вывода
last (bool) – Замена последнего сообщения
out (bool) – Отображение
- Результат
None
- Тип результата
None
Примеры
Верно – 1 –
In [1]:1import numpy as np 2from oceanai.modules.lab.download import Download 3 4download = Download() 5 6for progress in np.arange(0., 101, 25): 7 download._Download__progressbar_download_file_from_url( 8 url_filename = 'https://clck.ru/32Nwdk', 9 progress = float(progress), 10 clear_out = False, 11 last = False, out = True 12 )
[1]:1[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (0.0%) ... 2 3[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (25.0%) ... 4 5[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (50.0%) ... 6 7[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (75.0%) ... 8 9[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (100.0%) ...
– 2 –
In [2]:1import numpy as np 2from oceanai.modules.lab.download import Download 3 4download = Download() 5 6for progress in np.arange(0., 101, 25): 7 download._Download__progressbar_download_file_from_url( 8 url_filename = 'https://clck.ru/32Nwdk', 9 progress = float(progress), 10 clear_out = True, 11 last = True, out = True 12 )
[2]:1[2022-10-16 16:59:41] Загрузка файла "https://clck.ru/32Nwdk" (100.0%) ...
Ошибка – 1 –
In [3]:1import numpy as np 2from oceanai.modules.lab.download import Download 3 4download = Download() 5 6for progress in np.arange(0., 101, 25): 7 download._Download__progressbar_download_file_from_url( 8 url_filename = 'https://clck.ru/32Nwdk', 9 progress = 101, 10 clear_out = True, 11 last = False, out = True 12 )
[3]:1[2022-10-16 17:00:11] Неверные типы или значения аргументов в "Download.__progressbar_download_file_from_url" ...
- _download_file_from_url(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) int [исходный код]
Загрузка файла из URL (без очистки истории вывода сообщений в ячейке Jupyter)
Примечание
protected (защищенный метод)
- Параметры
url (str) – Полный путь к файлу
force_reload (bool) – Принудительная загрузка файла из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Код статуса ответа:
200
- Файл загружен400
- Ошибка при проверке аргументов403
- Выполнение заблокировано пользователем404
- Не удалось скачать файл
- Тип результата
int
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.download import Download 2 3download = Download() 4 5download.path_to_save_ = './models' 6download.chunk_size_ = 2000000 7 8res_download_file_from_url = download._download_file_from_url( 9 url = 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5', 10 force_reload = True, 11 out = True, 12 runtime = True, 13 run = True 14)
[1]:1[2022-10-16 20:23:25] Загрузка файла "weights_2022-05-05_11-27-55.h5" (100.0%) ... 2 3--- Время выполнения: 0.373 сек. --- 4 5200
– 2 –
In [2]:1from oceanai.modules.lab.download import Download 2 3download = Download() 4 5download.path_to_save_ = './models' 6download.chunk_size_ = 2000000 7 8res_download_file_from_url = download._download_file_from_url( 9 url = 'https://clck.ru/32Nwdk', 10 force_reload = True, 11 out = True, 12 runtime = True, 13 run = False 14) 15res_download_file_from_url
[2]:1[2022-10-16 19:33:05] Выполнение заблокировано пользователем ... 2 3403
Ошибки – 1 –
In [3]:1from oceanai.modules.lab.download import Download 2 3download = Download() 4 5download.path_to_save_ = './models' 6download.chunk_size_ = 2000000 7 8res_download_file_from_url = download._download_file_from_url( 9 url = 1, 10 force_reload = True, 11 out = True, 12 runtime = True, 13 run = True 14) 15res_download_file_from_url
[3]:1[2022-10-16 19:33:01] Неверные типы или значения аргументов в "Download._download_file_from_url" ... 2 3400
– 2 –
In [4]:1from oceanai.modules.lab.download import Download 2 3download = Download() 4 5download.path_to_save_ = './models' 6download.chunk_size_ = 2000000 7 8res_download_file_from_url = download._download_file_from_url( 9 url = 'https://', 10 force_reload = True, 11 out = True, 12 runtime = True, 13 run = True 14) 15res_download_file_from_url
[4]:1[2022-10-16 19:33:10] Что-то пошло не так ... не удалось обработать указанный URL ... 2 3 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/download.py 4 Линия: 257 5 Метод: _download_file_from_url 6 Тип ошибки: InvalidURL 7 8--- Время выполнения: 0.061 сек. --- 9 10404
– 3 –
In [5]:1from oceanai.modules.lab.download import Download 2 3download = Download() 4 5download.path_to_save_ = './models' 6download.chunk_size_ = 2000000 7 8res_download_file_from_url = download._download_file_from_url( 9 url = 'https://www.iconfinder.com/icons/4375050/download/svg/4096', 10 force_reload = True, 11 out = True, 12 runtime = True, 13 run = True 14) 15res_download_file_from_url
[5]:1[2022-10-16 19:33:15] Загрузка файла "4375050_logo_python_icon.svg" 2 3[2022-10-16 19:33:15] Что-то пошло не так ... Не определен размер файла для загрузки ... 4 5 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/download.py 6 Линия: 324 7 Метод: _download_file_from_url 8 Тип ошибки: InvalidContentLength 9 10--- Время выполнения: 0.386 сек. --- 11 12404
- download_file_from_url(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) int [исходный код]
Загрузка файла из URL
- Параметры
url (str) – Полный путь к файлу
force_reload (bool) – Принудительная загрузка файла из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Код статуса ответа:
200
- Файл загружен400
- Ошибка при проверке аргументов403
- Выполнение заблокировано пользователем404
- Не удалось скачать файл
- Тип результата
int
Аудио
- class oceanai.modules.lab.audio.AudioMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Download
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- class oceanai.modules.lab.audio.Audio(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
AudioMessages
Класс для обработки аудио
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- __concat_pred(pred_hc: ndarray, pred_melspectrogram: ndarray, out: bool = True) List[Optional[ndarray]]
Конкатенация оценок по экспертным и нейросетевым признакам
Примечание
private (приватный метод)
- Параметры
pred_hc (np.ndarray) – Оценки по экспертным признакам
pred_melspectrogram (np.ndarray) – Оценки по нейросетевым признакам
out (bool) – Отображение
- Результат
Конкатенированные оценки по экспертным и нейросетевым признакам
- Тип результата
List[Optional[np.ndarray]]
Примеры
Верно – 1 –
In [1]:1import numpy as np 2from oceanai.modules.lab.audio import Audio 3 4audio = Audio() 5 6arr_hc = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415, 0.59334993], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11arr_melspectrogram = np.array([ 12 [0.56030345, 0.7488746, 0.44648764, 0.59893465, 0.5701077], 13 [0.5900006, 0.7652722, 0.4795154, 0.6409055, 0.6088242] 14]) 15 16audio._Audio__concat_pred( 17 pred_hc = arr_hc, 18 pred_melspectrogram = arr_melspectrogram, 19 out = True 20)
[1]:1[ 2 array([ 3 0.64113516, 0.6652424, 0.65318878, 0.65318878, 0.65318878, 4 0.65318878, 0.65318878, 0.65318878, 0.65318878, 0.65318878, 5 0.65318878, 0.65318878, 0.65318878, 0.65318878, 0.65318878, 6 0.65318878, 0.56030345, 0.5900006, 0.57515202, 0.57515202, 7 0.57515202, 0.57515202, 0.57515202, 0.57515202, 0.57515202, 8 0.57515202, 0.57515202, 0.57515202, 0.57515202, 0.57515202, 9 0.57515202, 0.57515202 10 ]), 11 array([ 12 0.6217892, 0.63606125, 0.62892523, 0.62892523, 0.62892523, 13 0.62892523, 0.62892523, 0.62892523, 0.62892523, 0.62892523, 14 0.62892523, 0.62892523, 0.62892523, 0.62892523, 0.62892523, 15 0.62892523, 0.7488746, 0.7652722, 0.7570734, 0.7570734, 16 0.7570734, 0.7570734, 0.7570734, 0.7570734, 0.7570734, 17 0.7570734, 0.7570734, 0.7570734, 0.7570734, 0.7570734, 18 0.7570734, 0.7570734 19 ]), 20 array([ 21 0.54451424, 0.572305, 0.55840962, 0.55840962, 0.55840962, 22 0.55840962, 0.55840962, 0.55840962, 0.55840962, 0.55840962, 23 0.55840962, 0.55840962, 0.55840962, 0.55840962, 0.55840962, 24 0.55840962, 0.44648764, 0.4795154, 0.46300152, 0.46300152, 25 0.46300152, 0.46300152, 0.46300152, 0.46300152, 0.46300152, 26 0.46300152, 0.46300152, 0.46300152, 0.46300152, 0.46300152, 27 0.46300152, 0.46300152 28 ]), 29 array([ 30 0.6144415, 0.63169795, 0.62306972, 0.62306972, 0.62306972, 31 0.62306972, 0.62306972, 0.62306972, 0.62306972, 0.62306972, 32 0.62306972, 0.62306972, 0.62306972, 0.62306972, 0.62306972, 33 0.62306972, 0.59893465, 0.6409055, 0.61992008, 0.61992008, 34 0.61992008, 0.61992008, 0.61992008, 0.61992008, 0.61992008, 35 0.61992008, 0.61992008, 0.61992008, 0.61992008, 0.61992008, 36 0.61992008, 0.61992008 37 ]), 38 array([ 39 0.59334993, 0.612515, 0.60293247, 0.60293247, 0.60293247, 40 0.60293247, 0.60293247, 0.60293247, 0.60293247, 0.60293247, 41 0.60293247, 0.60293247, 0.60293247, 0.60293247, 0.60293247, 42 0.60293247, 0.5701077, 0.6088242, 0.58946595, 0.58946595, 43 0.58946595, 0.58946595, 0.58946595, 0.58946595, 0.58946595, 44 0.58946595, 0.58946595, 0.58946595, 0.58946595, 0.58946595, 45 0.58946595, 0.58946595 46 ]) 47]
Ошибка – 1 –
In [2]:1import numpy as np 2from oceanai.modules.lab.audio import Audio 3 4audio = Audio() 5 6arr_hc = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11arr_melspectrogram = np.array([ 12 [0.56030345, 0.7488746, 0.44648764, 0.59893465, 0.5701077], 13 [0.5900006, 0.7652722, 0.4795154, 0.6409055, 0.6088242] 14]) 15 16audio._Audio__concat_pred( 17 pred_hc = arr_hc, 18 pred_melspectrogram = arr_melspectrogram, 19 out = True 20)
[3]:1[2022-10-20 22:33:31] Что-то пошло не так ... конкатенация оценок по экспертным и нейросетевым 2признакам не произведена (аудио модальность) ... 3 4[]
- __load_audio_model_b5(show_summary: bool = False, out: bool = True) Optional[Model]
Формирование нейросетевой архитектуры модели для получения результата оценки персонального качества
Примечание
private (приватный метод)
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
- Результат
None если неверные типы или значения аргументов, в обратном случае нейросетевая модель tf.keras.Model для получения результата оценки персонального качества
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio._Audio__load_audio_model_b5( 6 show_summary = True, out = True 7)
[1]:1Model: "model" 2_________________________________________________________________ 3 Layer (type) Output Shape Param # 4================================================================= 5 input_1 (InputLayer) [(None, 32)] 0 6 7 dense_1 (Dense) (None, 1) 33 8 9 activ_1 (Activation) (None, 1) 0 10 11================================================================= 12Total params: 33 13Trainable params: 33 14Non-trainable params: 0 15_________________________________________________________________ 16<tf.keras.Model at 0x13d442940>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio._Audio__load_audio_model_b5( 6 show_summary = True, out = [] 7)
[3]:1[2022-10-17 10:53:03] Неверные типы или значения аргументов в "Audio.__load_audio_model_b5" ...
- __load_model_weights(url: str, force_reload: bool = True, info_text: str = '', out: bool = True, runtime: bool = True, run: bool = True) bool
Загрузка весов нейросетевой модели
Примечание
private (приватный метод)
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
info_text (str) – Текст для информационного сообщения
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8audio._Audio__load_model_weights( 9 url = 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5', 10 force_reload = True, 11 info_text = 'Загрузка весов нейросетевой модели', 12 out = True, runtime = True, run = True 13)
[1]:1[2022-10-17 12:21:48] Загрузка весов нейросетевой модели 2 3[2022-10-17 12:21:48] Загрузка файла "weights_2022-05-05_11-27-55.h5" (100.0%) ... 4 5--- Время выполнения: 0.439 сек. --- 6 7True
– 2 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8audio._Audio__load_model_weights( 9 url = './models/weights_2022-05-05_11-27-55.h5', 10 force_reload = True, 11 info_text = 'Загрузка весов нейросетевой модели', 12 out = True, runtime = True, run = True 13)
[2]:1[2022-10-17 12:21:50] Загрузка весов нейросетевой модели 2 3--- Время выполнения: 0.002 сек. --- 4 5True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8audio._Audio__load_model_weights( 9 url = 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5', 10 force_reload = True, info_text = '', 11 out = True, runtime = True, run = True 12)
[3]:1[2022-10-17 12:21:57] Неверные типы или значения аргументов в "Audio.__load_model_weights" ... 2 3False
- __norm_pred(pred_data: ndarray, len_spec: int = 16, out: bool = True) ndarray
Нормализация оценок по экспертным и нейросетевым признакам
Примечание
private (приватный метод)
- Параметры
pred_data (np.ndarray) – Оценки
len_spec (int) – Максимальный размер вектора оценок
out (bool) – Отображение
- Результат
Нормализованные оценки по экспертным и нейросетевым признакам
- Тип результата
np.ndarray
Примеры
Верно – 1 –
In [1]:1import numpy as np 2from oceanai.modules.lab.audio import Audio 3 4audio = Audio() 5 6arr = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415, 0.59334993], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11audio._Audio__norm_pred( 12 pred_data = arr, 13 len_spec = 4, 14 out = True 15)
[1]:1array([ 2 [0.64113516, 0.6217892 , 0.54451424, 0.6144415 , 0.59334993], 3 [0.6652424 , 0.63606125, 0.572305 , 0.63169795, 0.612515], 4 [0.65318878, 0.62892523, 0.55840962, 0.62306972, 0.60293247], 5 [0.65318878, 0.62892523, 0.55840962, 0.62306972, 0.60293247] 6])
Ошибка – 1 –
In [2]:1import numpy as np 2from oceanai.modules.lab.audio import Audio 3 4audio = Audio() 5 6arr = np.array([]) 7 8audio._Audio__norm_pred( 9 pred_data = arr, 10 len_spec = 4, 11 out = True 12)
[3]:1[2022-10-20 22:03:17] Неверные типы или значения аргументов в "Audio.__norm_pred" ... 2 3array([], dtype=float64)
- __smile() Smile
Извлечение функций OpenSmile
Примечание
private (приватный метод)
- Результат
Извлеченные функции OpenSmile
- Тип результата
opensmile.core.smile.Smile
Пример
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio._Audio__smile()
[1]:1{ 2 '$opensmile.core.smile.Smile': { 3 'feature_set': 'eGeMAPSv02', 4 'feature_level': 'LowLevelDescriptors', 5 'options': {}, 6 'sampling_rate': None, 7 'channels': [0], 8 'mixdown': False, 9 'resample': False 10 } 11}
- _get_acoustic_features(path: str, sr: int = 44100, window: Union[int, float] = 2.0, step: Union[int, float] = 1.0, last: bool = False, out: bool = True, runtime: bool = True, run: bool = True) Tuple[List[Optional[ndarray]], List[Optional[ndarray]]] [исходный код]
Извлечение признаков из акустического сигнала (без очистки истории вывода сообщений в ячейке Jupyter)
Примечание
protected (защищенный метод)
- Параметры
path (str) – Путь к аудио или видеофайлу
sr (int) – Частота дискретизации
window (Union[int, float]) – Размер окна сегмента сигнала (в секундах)
step (Union[int, float]) – Шаг сдвига окна сегмента сигнала (в секундах)
last (bool) – Замена последнего сообщения
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Кортеж с двумя списками:
Список с экспертными признаками
Список с лог мел-спектрограммами
- Тип результата
Tuple[List[Optional[np.ndarray]], List[Optional[np.ndarray]]]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5sr = 44100 6path = '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01/glgfB3vFewc.004.mp4' 7 8hc_features, melspectrogram_features = audio._get_acoustic_features( 9 path = path, sr = sr, 10 window = 2, step = 1, 11 last = False, out = True, 12 runtime = True, run = True 13)
[1]:1[2022-10-19 14:58:19] Извлечение признаков (экспертных и лог мел-спектрограмм) из акустического сигнала ... 2 3[2022-10-19 14:58:20] Статистика извлеченных признаков из акустического сигнала: 4 Общее количество сегментов с: 5 1. экспертными признаками: 12 6 2. лог мел-спектрограммами: 12 7 Размерность матрицы экспертных признаков одного сегмента: 196 ✕ 25 8 Размерность тензора с лог мел-спектрограммами одного сегмента: 224 ✕ 224 ✕ 3 9 10--- Время выполнения: 1.273 сек. ---
Ошибки – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5sr = 44100 6path = '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01/glgfB3vFewc.004.mp4' 7 8hc_features, melspectrogram_features = audio._get_acoustic_features( 9 path = 1, sr = sr, 10 window = 2, step = 1, 11 last = False, out = True, 12 runtime = True, run = True 13)
[2]:1[2022-10-19 15:33:04] Неверные типы или значения аргументов в "Audio._get_acoustic_features" ...
– 2 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5sr = 44100 6path = '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01/glgfB3vFewc.004.mp4' 7 8hc_features, melspectrogram_features = audio._get_acoustic_features( 9 path = path, sr = sr, 10 window = 0.04, step = 1, 11 last = False, out = True, 12 runtime = True, run = True 13)
[2]:1[2022-10-19 15:34:38] Извлечение признаков (экспертных и лог мел-спектрограмм) из акустического сигнала ... 2 3[2022-10-19 15:34:38] Что-то пошло не так ... указан слишком маленький размер (0.04) окна сегмента сигнала ... 4 5 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 6 Линия: 863 7 Метод: _get_acoustic_features 8 Тип ошибки: IsSmallWindowSizeError 9 10--- Время выполнения: 0.049 сек. ---
- property audio_model_hc_: Optional[Model]
Получение нейросетевой модели tf.keras.Model для получения оценок по экспертным признакам
- Результат
Нейросетевая модель tf.keras.Model или None
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_model_hc( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10audio.audio_model_hc_
[1]:1[2022-10-17 13:54:35] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) ... 2 3--- Время выполнения: 0.509 сек. --- 4 5<tf.keras.Model at 0x13dd600a0>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.audio_model_hc_
[2]:1
- property audio_model_nn_: Optional[Model]
Получение нейросетевой модели tf.keras.Model для получения оценок по нейросетевым признакам
- Результат
Нейросетевая модель tf.keras.Model или None
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_model_nn( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10audio.audio_model_nn_
[1]:1[2022-10-17 13:58:29] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам ... 2 3--- Время выполнения: 0.444 сек. --- 4 5<tf.keras.Model at 0x13db97760>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.audio_model_nn_
[2]:1
- property audio_models_b5_: Dict[str, Optional[Model]]
Получение нейросетевых моделей tf.keras.Model для получения результатов оценки персональных качеств
- Результат
Словарь с нейросетевыми моделями tf.keras.Model
- Тип результата
Dict
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_models_b5( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10audio.audio_models_b5_
[1]:1[2022-10-19 15:45:35] Формирование нейросетевых архитектур моделей для получения результатов оценки 2персональных качеств (аудио модальность) ... 3 4--- Время выполнения: 0.07 сек. --- 5 6{ 7 'openness': <tf.keras.Model at 0x1481e03a0>, 8 'conscientiousness': <tf.keras.Model at 0x147d13520>, 9 'extraversion': <tf.keras.Model at 0x1481edfa0>, 10 'agreeableness': <tf.keras.Model at 0x1481cfc40>, 11 'non_neuroticism': <tf.keras.Model at 0x1481cffd0> 12}
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.audio_models_b5_
[2]:1{ 2 'openness': None, 3 'conscientiousness': None, 4 'extraversion': None, 5 'agreeableness': None, 6 'non_neuroticism': None 7}
- get_acoustic_features(path: str, sr: int = 44100, window: Union[int, float] = 2.0, step: Union[int, float] = 1.0, out: bool = True, runtime: bool = True, run: bool = True) Tuple[List[Optional[ndarray]], List[Optional[ndarray]]] [исходный код]
Извлечение признаков из акустического сигнала
- Параметры
path (str) – Путь к аудио или видеофайлу
sr (int) – Частота дискретизации
window (Union[int, float]) – Размер окна сегмента сигнала (в секундах)
step (Union[int, float]) – Шаг сдвига окна сегмента сигнала (в секундах)
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Кортеж с двумя списками:
Список с экспертными признаками
Список с лог мел-спектрограммами
- Тип результата
Tuple[List[Optional[np.ndarray]], List[Optional[np.ndarray]]]
- get_audio_union_predictions(depth: int = 1, recursive: bool = False, sr: int = 44100, window: Union[int, float] = 2.0, step: Union[int, float] = 1.0, accuracy=True, url_accuracy: str = '', logs: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Получения прогнозов по аудио
- Параметры
depth (int) – Глубина иерархии для получения данных
recursive (bool) – Рекурсивный поиск данных
sr (int) – Частота дискретизации
window (Union[int, float]) – Размер окна сегмента сигнала (в секундах)
step (Union[int, float]) – Шаг сдвига окна сегмента сигнала (в секундах)
accuracy (bool) – Вычисление точности
url_accuracy (str) – Полный путь к файлу с верными предсказаниями для подсчета точности
logs (bool) – При необходимости формировать LOG файл
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если прогнозы успешно получены, в обратном случае False
- Тип результата
bool
- load_audio_model_hc(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевая архитектура модели сформирована, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_model_hc( 5 show_summary = False, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-10-17 13:16:23] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) ... 2 3--- Время выполнения: 0.364 сек. --- 4 5True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_model_hc( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-10-17 13:20:04] Неверные типы или значения аргументов в "Audio.load_audio_model_hc" ... 2 3False
- load_audio_model_nn(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевая архитектура модели сформирована, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_model_nn( 5 show_summary = True, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-10-17 13:25:34] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (аудио модальность) ... 2 3Model: "model" 4_________________________________________________________________ 5 Layer (type) Output Shape Param # 6================================================================= 7 input_1 (InputLayer) [(None, 224, 224, 3)] 0 8 9 block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 10 11 block1_conv2 (Conv2D) (None, 224, 224, 64) 36928 12 13 block1_pool (MaxPooling2D) (None, 112, 112, 64) 0 14 15 block2_conv1 (Conv2D) (None, 112, 112, 128) 73856 16 17 block2_conv2 (Conv2D) (None, 112, 112, 128) 147584 18 19 block2_pool (MaxPooling2D) (None, 56, 56, 128) 0 20 21 block3_conv1 (Conv2D) (None, 56, 56, 256) 295168 22 23 block3_conv2 (Conv2D) (None, 56, 56, 256) 590080 24 25 block3_conv3 (Conv2D) (None, 56, 56, 256) 590080 26 27 block3_pool (MaxPooling2D) (None, 28, 28, 256) 0 28 29 block4_conv1 (Conv2D) (None, 28, 28, 512) 1180160 30 31 block4_conv2 (Conv2D) (None, 28, 28, 512) 2359808 32 33 block4_conv3 (Conv2D) (None, 28, 28, 512) 2359808 34 35 block4_pool (MaxPooling2D) (None, 14, 14, 512) 0 36 37 block5_conv1 (Conv2D) (None, 14, 14, 512) 2359808 38 39 block5_conv2 (Conv2D) (None, 14, 14, 512) 2359808 40 41 block5_conv3 (Conv2D) (None, 14, 14, 512) 2359808 42 43 block5_pool (MaxPooling2D) (None, 7, 7, 512) 0 44 45 flatten (Flatten) (None, 25088) 0 46 47 dense (Dense) (None, 512) 12845568 48 49 dropout (Dropout) (None, 512) 0 50 51 dense_1 (Dense) (None, 256) 131328 52 53 dense_2 (Dense) (None, 5) 1285 54 55================================================================= 56Total params: 27,692,869 57Trainable params: 27,692,869 58Non-trainable params: 0 59_________________________________________________________________ 60--- Время выполнения: 0.407 сек. --- 61 62True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_model_nn( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-10-17 13:25:40] Неверные типы или значения аргументов в "Audio.load_audio_model_nn" ... 2 3False
- load_audio_model_weights_hc(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевой модели для получения оценок по экспертным признакам
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_model_hc( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-10-17 14:24:28] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (аудио модальность) ... 2 3--- Время выполнения: 0.398 сек. --- 4 5True
In [2]:1audio.path_to_save_ = './models' 2audio.chunk_size_ = 2000000 3 4url = audio.weights_for_big5_['audio']['hc']['sberdisk'] 5 6audio.load_audio_model_weights_hc( 7 url = url, 8 force_reload = True, 9 out = True, 10 runtime = True, 11 run = True 12)
[2]:1[2022-10-17 14:24:30] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) ... 2 3[2022-10-17 14:24:30] Загрузка файла "weights_2022-05-05_11-27-55.h5" (100.0%) ... 4 5--- Время выполнения: 0.414 сек. --- 6 7True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8url = audio.weights_for_big5_['audio']['hc']['sberdisk'] 9 10audio.load_audio_model_weights_hc( 11 url = url, 12 force_reload = True, 13 out = True, 14 runtime = True, 15 run = True 16)
[3]:1[2022-10-17 15:21:13] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (аудио модальность) ... 2 3[2022-10-17 15:21:14] Загрузка файла "weights_2022-05-05_11-27-55.h5" (100.0%) ... 4 5[2022-10-17 15:21:14] Что-то пошло не так ... нейросетевая архитектура модели для получения оценок по экспертным признакам не сформирована (аудио модальность) ... 6 7--- Время выполнения: 0.364 сек. --- 8 9False
- load_audio_model_weights_nn(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_model_nn( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-10-17 15:47:20] Формирование нейросетевой архитектуры для получения оценок по нейросетевым 2признакам (аудио модальность) ... 3 4--- Время выполнения: 0.419 сек. --- 5 6True
In [2]:1audio.path_to_save_ = './models' 2audio.chunk_size_ = 2000000 3 4url = audio.weights_for_big5_['audio']['nn']['sberdisk'] 5 6audio.load_audio_model_weights_nn( 7 url = url, 8 force_reload = True, 9 out = True, 10 runtime = True, 11 run = True 12)
[2]:1[2022-10-17 15:47:22] Загрузка весов нейросетевой модели для получения оценок по нейросетевым 2признакам (аудио модальность) ... 3 4[2022-10-17 15:47:26] Загрузка файла "weights_2022-05-03_07-46-14.h5" (100.0%) ... 5 6--- Время выполнения: 3.884 сек. --- 7 8True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8url = audio.weights_for_big5_['audio']['nn']['sberdisk'] 9 10audio.load_audio_model_weights_nn( 11 url = url, 12 force_reload = True, 13 out = True, 14 runtime = True, 15 run = True 16)
[3]:1[2022-10-17 15:49:57] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (аудио модальность) ... 2 3[2022-10-17 15:50:04] Загрузка файла "weights_2022-05-03_07-46-14.h5" (100.0%) ... 4 5[2022-10-17 15:50:04] Что-то пошло не так ... нейросетевая архитектура модели для получения оценок по нейросетевым признакам не сформирована (аудио модальность) ... 6 7--- Время выполнения: 6.786 сек. --- 8 9False
- load_audio_models_b5(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств
- Параметры
show_summary (bool) – Отображение последней сформированной нейросетевой архитектуры моделей
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевые архитектуры модели сформированы, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_models_b5( 5 show_summary = True, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-10-18 11:39:22] Формирование нейросетевых архитектур моделей для получения результатов оценки 2персональных качеств (аудио модальность) ... 3 4Model: "model_4" 5_________________________________________________________________ 6 Layer (type) Output Shape Param # 7================================================================= 8 input_1 (InputLayer) [(None, 32)] 0 9 10 dense_1 (Dense) (None, 1) 33 11 12 activ_1 (Activation) (None, 1) 0 13 14================================================================= 15Total params: 33 16Trainable params: 33 17Non-trainable params: 0 18_________________________________________________________________ 19--- Время выполнения: 0.163 сек. --- 20 21True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.load_audio_models_b5( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-10-18 13:47:36] Неверные типы или значения аргументов в "Audio.load_audio_models_b5" ... 2 3False
- load_audio_models_weights_b5(url_openness: str, url_conscientiousness: str, url_extraversion: str, url_agreeableness: str, url_non_neuroticism: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств
- Параметры
url_openness (str) – Полный путь к файлу с весами нейросетевой модели (открытость опыту)
url_conscientiousness (str) – Полный путь к файлу с весами нейросетевой модели (добросовестность)
url_extraversion (str) – Полный путь к файлу с весами нейросетевой модели (экстраверсия)
url_agreeableness (str) – Полный путь к файлу с весами нейросетевой модели (доброжелательность)
url_non_neuroticism (str) – Полный путь к файлу с весами нейросетевой модели (эмоциональная стабильность)
force_reload (bool) – Принудительная загрузка файлов с весами нейросетевых моделей из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевых моделей загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.load_audio_models_b5( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-10-18 22:40:05] Формирование нейросетевых архитектур моделей для получения результатов оценки 2персональных качеств (аудио модальность) ... 3 4--- Время выполнения: 0.163 сек. --- 5 6True
In [2]:1audio.path_to_save_ = './models' 2audio.chunk_size_ = 2000000 3 4url_openness = audio.weights_for_big5_['audio']['b5']['openness']['sberdisk'] 5url_conscientiousness = audio.weights_for_big5_['audio']['b5']['conscientiousness']['sberdisk'] 6url_extraversion = audio.weights_for_big5_['audio']['b5']['extraversion']['sberdisk'] 7url_agreeableness = audio.weights_for_big5_['audio']['b5']['agreeableness']['sberdisk'] 8url_non_neuroticism = audio.weights_for_big5_['audio']['b5']['non_neuroticism']['sberdisk'] 9 10audio.load_audio_models_weights_b5( 11 url_openness = url_openness, 12 url_conscientiousness = url_conscientiousness, 13 url_extraversion = url_extraversion, 14 url_agreeableness = url_agreeableness, 15 url_non_neuroticism = url_non_neuroticism, 16 force_reload = True, 17 out = True, 18 runtime = True, 19 run = True 20)
[2]:1[2022-10-18 23:08:37] Загрузка весов нейросетевых моделей для получения результатов оценки 2персональных качеств (аудио модальность) ... 3 4[2022-10-18 23:08:37] Загрузка файла "weights_2022-06-15_16-16-20.h5" (100.0%) ... Открытость опыту 5 6[2022-10-18 23:08:38] Загрузка файла "weights_2022-06-15_16-21-57.h5" (100.0%) ... Добросовестность 7 8[2022-10-18 23:08:38] Загрузка файла "weights_2022-06-15_16-26-41.h5" (100.0%) ... Экстраверсия 9 10[2022-10-18 23:08:38] Загрузка файла "weights_2022-06-15_16-32-51.h5" (100.0%) ... Доброжелательность 11 12[2022-10-18 23:08:39] Загрузка файла "weights_2022-06-15_16-37-46.h5" (100.0%) ... Эмоциональная стабильность 13 14--- Время выполнения: 1.611 сек. --- 15 16True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4 5audio.path_to_save_ = './models' 6audio.chunk_size_ = 2000000 7 8url_openness = audio.weights_for_big5_['audio']['b5']['openness']['sberdisk'] 9url_conscientiousness = audio.weights_for_big5_['audio']['b5']['conscientiousness']['sberdisk'] 10url_extraversion = audio.weights_for_big5_['audio']['b5']['extraversion']['sberdisk'] 11url_agreeableness = audio.weights_for_big5_['audio']['b5']['agreeableness']['sberdisk'] 12url_non_neuroticism = audio.weights_for_big5_['audio']['b5']['non_neuroticism']['sberdisk'] 13 14audio.load_audio_models_weights_b5( 15 url_openness = url_openness, 16 url_conscientiousness = url_conscientiousness, 17 url_extraversion = url_extraversion, 18 url_agreeableness = url_agreeableness, 19 url_non_neuroticism = url_non_neuroticism, 20 force_reload = True, 21 out = True, 22 runtime = True, 23 run = True 24)
[3]:1[2022-10-18 23:09:40] Загрузка весов нейросетевых моделей для получения результатов оценки 2персональных качеств (аудио модальность) ... 3 4[2022-10-18 23:09:41] Загрузка файла "weights_2022-06-15_16-16-20.h5" (100.0%) ... 5 6[2022-10-18 23:09:41] Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... 7Открытость опыту 8 9 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 10 Линия: 1764 11 Метод: load_audio_models_weights_b5 12 Тип ошибки: AttributeError 13 14[2022-10-18 23:09:41] Загрузка файла "weights_2022-06-15_16-21-57.h5" (100.0%) ... 15 16[2022-10-18 23:09:41] Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... 17Добросовестность 18 19 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 20 Линия: 1764 21 Метод: load_audio_models_weights_b5 22 Тип ошибки: AttributeError 23 24[2022-10-18 23:09:41] Загрузка файла "weights_2022-06-15_16-26-41.h5" (100.0%) ... 25 26[2022-10-18 23:09:41] Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... 27Экстраверсия 28 29 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 30 Линия: 1764 31 Метод: load_audio_models_weights_b5 32 Тип ошибки: AttributeError 33 34[2022-10-18 23:09:42] Загрузка файла "weights_2022-06-15_16-32-51.h5" (100.0%) ... 35 36[2022-10-18 23:09:42] Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... 37Доброжелательность 38 39 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 40 Линия: 1764 41 Метод: load_audio_models_weights_b5 42 Тип ошибки: AttributeError 43 44[2022-10-18 23:09:42] Загрузка файла "weights_2022-06-15_16-37-46.h5" (100.0%) ... 45 46[2022-10-18 23:09:42] Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... 47Эмоциональная стабильность 48 49 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/audio.py 50 Линия: 1764 51 Метод: load_audio_models_weights_b5 52 Тип ошибки: AttributeError 53 54--- Время выполнения: 1.573 сек. --- 55 56False
- property smile_: Smile
Получение функций OpenSmile
- Результат
Извлеченные функции OpenSmile
- Тип результата
opensmile.core.smile.Smile
Пример
Верно – 1 –
In [1]:1from oceanai.modules.lab.audio import Audio 2 3audio = Audio() 4audio.smile_
[1]:1{ 2 '$opensmile.core.smile.Smile': { 3 'feature_set': 'eGeMAPSv02', 4 'feature_level': 'LowLevelDescriptors', 5 'options': {}, 6 'sampling_rate': None, 7 'channels': [0], 8 'mixdown': False, 9 'resample': False 10 } 11}
Видео
- class oceanai.modules.lab.video.VideoMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
Download
Класс для сообщений
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- class oceanai.modules.lab.video.Video(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]
Базовые классы:
VideoMessages
Класс для обработки видео
- Параметры
lang (str) – Смотреть
lang
color_simple (str) – Смотреть
color_simple
color_info (str) – Смотреть
color_info
color_err (str) – Смотреть
color_err
color_true (str) – Смотреть
color_true
bold_text (bool) – Смотреть
bold_text
num_to_df_display (int) – Смотреть
num_to_df_display
text_runtime (str) – Смотреть
text_runtime
- __calc_reshape_img_coef(shape: Union[Tuple[int], List[int]], new_shape: Union[int, Tuple[int], List[int]], out: bool = True) float
Вычисление коэффициента изменения размера изображения
Примечание
private (приватный метод)
- Параметры
shape (Union[Tuple[int], List[int]]) – Текущий размер изображения (ширина, высота)
new_shape (Union[int, Tuple[int], List[int]]) – Желаемый размер изображения
out (bool) – Отображение
- Результат
Коэффициент изменения размера изображения
- Тип результата
float
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video._Video__calc_reshape_img_coef( 6 shape = (1280, 720), 7 new_shape = 224, 8 out = True 9)
[1]:10.175
Верно – 2 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video._Video__calc_reshape_img_coef( 6 shape = (1280, 720), 7 new_shape = (1920, 1080), 8 out = True 9)
[1]:11.5
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video._Video__calc_reshape_img_coef( 6 shape = (1280, 720), 7 new_shape = '', 8 out = True 9)
[4]:1[2022-10-29 13:24:27] Неверные типы или значения аргументов в "Video.__calc_reshape_img_coef" ... 2 3-1.0
- __concat_pred(pred_hc: ndarray, pred_nn: ndarray, out: bool = True) List[Optional[ndarray]]
Конкатенация оценок по экспертным и нейросетевым признакам
Примечание
private (приватный метод)
- Параметры
pred_hc (np.ndarray) – Оценки по экспертным признакам
pred_nn (np.ndarray) – Оценки по нейросетевым признакам
out (bool) – Отображение
- Результат
Конкатенированные оценки по экспертным и нейросетевым признакам
- Тип результата
List[Optional[np.ndarray]]
Примеры
Верно – 1 –
In [1]:1import numpy as np 2from oceanai.modules.lab.video import Video 3 4video = Video() 5 6arr_hc = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415, 0.59334993], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11arr_nn = np.array([ 12 [0.56030345, 0.7488746, 0.44648764, 0.59893465, 0.5701077], 13 [0.5900006, 0.7652722, 0.4795154, 0.6409055, 0.6088242] 14]) 15 16video._Video__concat_pred( 17 pred_hc = arr_hc, 18 pred_nn = arr_nn, 19 out = True 20)
[1]:1[ 2 array([ 3 0.64113516, 0.6652424, 0.65318878, 0.65318878, 0.65318878, 4 0.65318878, 0.65318878, 0.65318878, 0.65318878, 0.65318878, 5 0.65318878, 0.65318878, 0.65318878, 0.65318878, 0.65318878, 6 0.65318878, 0.56030345, 0.5900006, 0.57515202, 0.57515202, 7 0.57515202, 0.57515202, 0.57515202, 0.57515202, 0.57515202, 8 0.57515202, 0.57515202, 0.57515202, 0.57515202, 0.57515202, 9 0.57515202, 0.57515202 10 ]), 11 array([ 12 0.6217892, 0.63606125, 0.62892523, 0.62892523, 0.62892523, 13 0.62892523, 0.62892523, 0.62892523, 0.62892523, 0.62892523, 14 0.62892523, 0.62892523, 0.62892523, 0.62892523, 0.62892523, 15 0.62892523, 0.7488746, 0.7652722, 0.7570734, 0.7570734, 16 0.7570734, 0.7570734, 0.7570734, 0.7570734, 0.7570734, 17 0.7570734, 0.7570734, 0.7570734, 0.7570734, 0.7570734, 18 0.7570734, 0.7570734 19 ]), 20 array([ 21 0.54451424, 0.572305, 0.55840962, 0.55840962, 0.55840962, 22 0.55840962, 0.55840962, 0.55840962, 0.55840962, 0.55840962, 23 0.55840962, 0.55840962, 0.55840962, 0.55840962, 0.55840962, 24 0.55840962, 0.44648764, 0.4795154, 0.46300152, 0.46300152, 25 0.46300152, 0.46300152, 0.46300152, 0.46300152, 0.46300152, 26 0.46300152, 0.46300152, 0.46300152, 0.46300152, 0.46300152, 27 0.46300152, 0.46300152 28 ]), 29 array([ 30 0.6144415, 0.63169795, 0.62306972, 0.62306972, 0.62306972, 31 0.62306972, 0.62306972, 0.62306972, 0.62306972, 0.62306972, 32 0.62306972, 0.62306972, 0.62306972, 0.62306972, 0.62306972, 33 0.62306972, 0.59893465, 0.6409055, 0.61992008, 0.61992008, 34 0.61992008, 0.61992008, 0.61992008, 0.61992008, 0.61992008, 35 0.61992008, 0.61992008, 0.61992008, 0.61992008, 0.61992008, 36 0.61992008, 0.61992008 37 ]), 38 array([ 39 0.59334993, 0.612515, 0.60293247, 0.60293247, 0.60293247, 40 0.60293247, 0.60293247, 0.60293247, 0.60293247, 0.60293247, 41 0.60293247, 0.60293247, 0.60293247, 0.60293247, 0.60293247, 42 0.60293247, 0.5701077, 0.6088242, 0.58946595, 0.58946595, 43 0.58946595, 0.58946595, 0.58946595, 0.58946595, 0.58946595, 44 0.58946595, 0.58946595, 0.58946595, 0.58946595, 0.58946595, 45 0.58946595, 0.58946595 46 ]) 47]
Ошибка – 1 –
In [2]:1import numpy as np 2from oceanai.modules.lab.video import Video 3 4video = Video() 5 6arr_hc = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11arr_nn = np.array([ 12 [0.56030345, 0.7488746, 0.44648764, 0.59893465, 0.5701077], 13 [0.5900006, 0.7652722, 0.4795154, 0.6409055, 0.6088242] 14]) 15 16video._Video__concat_pred( 17 pred_hc = arr_hc, 18 pred_nn = arr_nn, 19 out = True 20)
[3]:1[2022-10-20 22:33:31] Ой! Что-то пошло не так ... конкатенация оценок по экспертным и нейросетевым 2признакам не произведена (видео модальность) ... 3 4[]
- __load_model_weights(url: str, force_reload: bool = True, info_text: str = '', out: bool = True, runtime: bool = True, run: bool = True) bool
Загрузка весов нейросетевой модели
Примечание
private (приватный метод)
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
info_text (str) – Текст для информационного сообщения
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8video._Video__load_model_weights( 9 url = 'https://download.sberdisk.ru/download/file/412059444?token=JXerCfAjJZg6crD&filename=weights_2022-08-27_18-53-35.h5', 10 force_reload = True, 11 info_text = 'Загрузка весов нейросетевой модели', 12 out = True, runtime = True, run = True 13)
[1]:1[2022-10-27 12:46:55] Загрузка весов нейросетевой модели 2 3[2022-10-27 12:46:55] Загрузка файла "weights_2022-08-27_18-53-35.h5" (100.0%) ... 4 5--- Время выполнения: 0.626 сек. --- 6 7True
– 2 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8video._Video__load_model_weights( 9 url = './models/weights_2022-08-27_18-53-35.h5', 10 force_reload = True, 11 info_text = 'Загрузка весов нейросетевой модели', 12 out = True, runtime = True, run = True 13)
[2]:1[2022-10-27 12:47:52] Загрузка весов нейросетевой модели 2 3--- Время выполнения: 0.002 сек. --- 4 5True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8video._Video__load_model_weights( 9 url = 'https://download.sberdisk.ru/download/file/412059444?token=JXerCfAjJZg6crD&filename=weights_2022-08-27_18-53-35.h5', 10 force_reload = True, info_text = '', 11 out = True, runtime = True, run = True 12)
[3]:1[2022-10-27 12:48:24] Неверные типы или значения аргументов в "Video.__load_model_weights" ... 2 3False
- __load_video_model_b5(show_summary: bool = False, out: bool = True) Optional[Model]
Формирование нейросетевой архитектуры модели для получения результата оценки персонального качества
Примечание
private (приватный метод)
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
- Результат
None если неверные типы или значения аргументов, в обратном случае нейросетевая модель tf.keras.Model для получения результата оценки персонального качества
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video._Video__load_video_model_b5( 6 show_summary = True, out = True 7)
[1]:1Model: "model" 2_________________________________________________________________ 3 Layer (type) Output Shape Param # 4================================================================= 5 input_1 (InputLayer) [(None, 32)] 0 6 7 dense_1 (Dense) (None, 1) 33 8 9 activ_1 (Activation) (None, 1) 0 10 11================================================================= 12Total params: 33 13Trainable params: 33 14Non-trainable params: 0 15_________________________________________________________________ 16<tf.keras.Model at 0x13d442940>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video._Video__load_video_model_b5( 6 show_summary = True, out = [] 7)
[3]:1[2022-10-17 10:53:03] Неверные типы или значения аргументов в "Video.__load_video_model_b5" ...
- __norm_pred(pred_data: ndarray, len_nn: int = 16, out: bool = True) ndarray
Нормализация оценок по экспертным и нейросетевым признакам
Примечание
private (приватный метод)
- Параметры
pred_data (np.ndarray) – Оценки
len_nn (int) – Максимальный размер вектора оценок
out (bool) – Отображение
- Результат
Нормализованные оценки по экспертным и нейросетевым признакам
- Тип результата
np.ndarray
Примеры
Верно – 1 –
In [1]:1import numpy as np 2from oceanai.modules.lab.video import Video 3 4video = Video() 5 6arr = np.array([ 7 [0.64113516, 0.6217892, 0.54451424, 0.6144415, 0.59334993], 8 [0.6652424, 0.63606125, 0.572305, 0.63169795, 0.612515] 9]) 10 11video._Video__norm_pred( 12 pred_data = arr, 13 len_nn = 4, 14 out = True 15)
[1]:1array([ 2 [0.64113516, 0.6217892 , 0.54451424, 0.6144415 , 0.59334993], 3 [0.6652424 , 0.63606125, 0.572305 , 0.63169795, 0.612515], 4 [0.65318878, 0.62892523, 0.55840962, 0.62306972, 0.60293247], 5 [0.65318878, 0.62892523, 0.55840962, 0.62306972, 0.60293247] 6])
Ошибка – 1 –
In [2]:1import numpy as np 2from oceanai.modules.lab.video import Video 3 4video = Video() 5 6arr = np.array([]) 7 8video._Video__norm_pred( 9 pred_data = arr, 10 len_nn = 4, 11 out = True 12)
[3]:1[2022-10-20 22:03:17] Неверные типы или значения аргументов в "Video.__norm_pred" ... 2 3array([], dtype=float64)
- _get_visual_features(path: str, reduction_fps: int = 5, window: int = 10, step: int = 5, lang: str = 'ru', last: bool = False, out: bool = True, runtime: bool = True, run: bool = True) Tuple[ndarray, ndarray] [исходный код]
Извлечение признаков из визуального сигнала (без очистки истории вывода сообщений в ячейке Jupyter)
Примечание
protected (защищенный метод)
- Параметры
path (str) – Путь к видеофайлу
reduction_fps (int) – Понижение кадровой частоты
window (int) – Размер окна сегмента сигнала (в кадрах)
step (int) – Шаг сдвига окна сегмента сигнала (в кадрах)
lang (str) – Язык
last (bool) – Замена последнего сообщения
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Кортеж с двумя np.ndarray:
np.ndarray с экспертными признаками
np.ndarray с нейросетевыми признаками
- Тип результата
Tuple[np.ndarray, np.ndarray]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5res_load_model_deep_fe = video.load_video_model_deep_fe( 6 show_summary = False, 7 out = True, 8 runtime = True, 9 run = True 10)
[1]:1[2022-11-03 16:37:12] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) ... 2 3--- Время выполнения: 1.564 сек. ---
In [2]:1video.path_to_save_ = './models' 2video.chunk_size_ = 2000000 3 4url = video.weights_for_big5_['video']['fe']['sberdisk'] 5 6res_load_video_model_weights_deep_fe = video.load_video_model_weights_deep_fe( 7 url = url, 8 force_reload = True, out = True, 9 runtime = True, run = True 10)
[2]:1[2022-11-03 16:39:10] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) ... 2 3[2022-11-03 16:39:14] Загрузка файла "weights_2022-11-01_12-27-07.h5" (100.0%) ... 4 5--- Время выполнения: 4.874 сек. ---
In [3]:1path = '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01/glgfB3vFewc.004.mp4' 2 3hc_features, nn_features = video.get_visual_features( 4 path = path, reduction_fps = 5, 5 window = 10, step = 5, 6 out = True, runtime = True, run = True 7)
[3]:1[2022-11-03 16:56:52] Извлечение признаков (экспертных и нейросетевых) из визуального сигнала ... 2 3[2022-11-03 16:56:58] Статистика извлеченных признаков из визуального сигнала: 4 Общее количество сегментов с: 5 1. экспертными признаками: 12 6 2. нейросетевыми признаками: 12 7 Размерность матрицы экспертных признаков одного сегмента: 10 ✕ 115 8 Размерность тензора с нейросетевыми признаками одного сегмента: 10 ✕ 512 9 Понижение кадровой частоты: с 30 до 5 10 11--- Время выполнения: 6.109 сек. ---
Ошибка – 1 –
In [4]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5path = '/Users/dl/GitHub/oceanai/oceanai/dataset/test80_01/glgfB3vFewc.004.mp4' 6 7hc_features, nn_features = video.get_visual_features( 8 path = path, reduction_fps = 5, 9 window = 10, step = 5, 10 out = True, runtime = True, run = True 11)
[4]:1[2022-11-03 16:59:45] Извлечение признаков (экспертных и нейросетевых) из визуального сигнала ... 2 3[2022-11-03 16:59:46] Ой! Что-то пошло не так ... нейросетевая архитектура модели для получения нейросетевых признаков не сформирована (видео модальность) ... 4 5--- Время выполнения: 1.358 сек. ---
- get_video_union_predictions(depth: int = 1, recursive: bool = False, reduction_fps: int = 5, window: int = 10, step: int = 5, lang: str = 'ru', accuracy=True, url_accuracy: str = '', logs: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Получения прогнозов по видео
- Параметры
depth (int) – Глубина иерархии для получения данных
recursive (bool) – Рекурсивный поиск данных
reduction_fps (int) – Понижение кадровой частоты
window (int) – Размер окна сегмента сигнала (в кадрах)
step (int) – Шаг сдвига окна сегмента сигнала (в кадрах)
lang (str) – Язык
accuracy (bool) – Вычисление точности
url_accuracy (str) – Полный путь к файлу с верными предсказаниями для подсчета точности
logs (bool) – При необходимости формировать LOG файл
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если прогнозы успешно получены, в обратном случае False
- Тип результата
bool
- get_visual_features(path: str, reduction_fps: int = 5, window: int = 10, step: int = 5, lang: str = 'ru', out: bool = True, runtime: bool = True, run: bool = True) Tuple[ndarray, ndarray] [исходный код]
Извлечение признаков из визуального сигнала
- Параметры
path (str) – Путь к видеофайлу
reduction_fps (int) – Понижение кадровой частоты
window (int) – Размер окна сегмента сигнала (в кадрах)
step (int) – Шаг сдвига окна сегмента сигнала (в кадрах)
lang (str) – Язык
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
Кортеж с двумя np.ndarray:
np.ndarray с экспертными признаками
np.ndarray с нейросетевыми признаками
- Тип результата
Tuple[np.ndarray, np.ndarray]
- load_video_model_deep_fe(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевой архитектуры для получения нейросетевых признаков
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевая архитектура модели сформирована, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_deep_fe( 5 show_summary = True, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-11-01 12:18:14] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) ... 2 3Model: "model_1" 4__________________________________________________________________________________________________ 5 Layer (type) Output Shape Param # Connected to 6================================================================================================== 7 input_2 (InputLayer) [(None, 224, 224, 3 0 [] 8 )] 9 10 conv1/7x7_s2 (Conv2D) (None, 112, 112, 64 9408 ['input_2[0][0]'] 11 ) 12 13 conv1/7x7_s2/bn (BatchNormaliz (None, 112, 112, 64 256 ['conv1/7x7_s2[0][0]'] 14 ation) ) 15 16 activation_49 (Activation) (None, 112, 112, 64 0 ['conv1/7x7_s2/bn[0][0]'] 17 ) 18 19 max_pooling2d_1 (MaxPooling2D) (None, 55, 55, 64) 0 ['activation_49[0][0]'] 20 21 conv2_1_1x1_reduce (Conv2D) (None, 55, 55, 64) 4096 ['max_pooling2d_1[0][0]'] 22 23 conv2_1_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_1_1x1_reduce[0][0]'] 24 rmalization) 25 26 activation_50 (Activation) (None, 55, 55, 64) 0 ['conv2_1_1x1_reduce/bn[0][0]'] 27 28 conv2_1_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_50[0][0]'] 29 30 conv2_1_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_1_3x3[0][0]'] 31 tion) 32 33 activation_51 (Activation) (None, 55, 55, 64) 0 ['conv2_1_3x3/bn[0][0]'] 34 35 conv2_1_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_51[0][0]'] 36 37 conv2_1_1x1_proj (Conv2D) (None, 55, 55, 256) 16384 ['max_pooling2d_1[0][0]'] 38 39 conv2_1_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_1_1x1_increase[0][0]'] 40 Normalization) 41 42 conv2_1_1x1_proj/bn (BatchNorm (None, 55, 55, 256) 1024 ['conv2_1_1x1_proj[0][0]'] 43 alization) 44 45 add_16 (Add) (None, 55, 55, 256) 0 ['conv2_1_1x1_increase/bn[0][0]', 46 'conv2_1_1x1_proj/bn[0][0]'] 47 48 activation_52 (Activation) (None, 55, 55, 256) 0 ['add_16[0][0]'] 49 50 conv2_2_1x1_reduce (Conv2D) (None, 55, 55, 64) 16384 ['activation_52[0][0]'] 51 52 conv2_2_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_2_1x1_reduce[0][0]'] 53 rmalization) 54 55 activation_53 (Activation) (None, 55, 55, 64) 0 ['conv2_2_1x1_reduce/bn[0][0]'] 56 57 conv2_2_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_53[0][0]'] 58 59 conv2_2_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_2_3x3[0][0]'] 60 tion) 61 62 activation_54 (Activation) (None, 55, 55, 64) 0 ['conv2_2_3x3/bn[0][0]'] 63 64 conv2_2_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_54[0][0]'] 65 66 conv2_2_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_2_1x1_increase[0][0]'] 67 Normalization) 68 69 add_17 (Add) (None, 55, 55, 256) 0 ['conv2_2_1x1_increase/bn[0][0]', 70 'activation_52[0][0]'] 71 72 activation_55 (Activation) (None, 55, 55, 256) 0 ['add_17[0][0]'] 73 74 conv2_3_1x1_reduce (Conv2D) (None, 55, 55, 64) 16384 ['activation_55[0][0]'] 75 76 conv2_3_1x1_reduce/bn (BatchNo (None, 55, 55, 64) 256 ['conv2_3_1x1_reduce[0][0]'] 77 rmalization) 78 79 activation_56 (Activation) (None, 55, 55, 64) 0 ['conv2_3_1x1_reduce/bn[0][0]'] 80 81 conv2_3_3x3 (Conv2D) (None, 55, 55, 64) 36864 ['activation_56[0][0]'] 82 83 conv2_3_3x3/bn (BatchNormaliza (None, 55, 55, 64) 256 ['conv2_3_3x3[0][0]'] 84 tion) 85 86 activation_57 (Activation) (None, 55, 55, 64) 0 ['conv2_3_3x3/bn[0][0]'] 87 88 conv2_3_1x1_increase (Conv2D) (None, 55, 55, 256) 16384 ['activation_57[0][0]'] 89 90 conv2_3_1x1_increase/bn (Batch (None, 55, 55, 256) 1024 ['conv2_3_1x1_increase[0][0]'] 91 Normalization) 92 93 add_18 (Add) (None, 55, 55, 256) 0 ['conv2_3_1x1_increase/bn[0][0]', 94 'activation_55[0][0]'] 95 96 activation_58 (Activation) (None, 55, 55, 256) 0 ['add_18[0][0]'] 97 98 conv3_1_1x1_reduce (Conv2D) (None, 28, 28, 128) 32768 ['activation_58[0][0]'] 99 100 conv3_1_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_1_1x1_reduce[0][0]'] 101 rmalization) 102 103 activation_59 (Activation) (None, 28, 28, 128) 0 ['conv3_1_1x1_reduce/bn[0][0]'] 104 105 conv3_1_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_59[0][0]'] 106 107 conv3_1_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_1_3x3[0][0]'] 108 tion) 109 110 activation_60 (Activation) (None, 28, 28, 128) 0 ['conv3_1_3x3/bn[0][0]'] 111 112 conv3_1_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_60[0][0]'] 113 114 conv3_1_1x1_proj (Conv2D) (None, 28, 28, 512) 131072 ['activation_58[0][0]'] 115 116 conv3_1_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_1_1x1_increase[0][0]'] 117 Normalization) 118 119 conv3_1_1x1_proj/bn (BatchNorm (None, 28, 28, 512) 2048 ['conv3_1_1x1_proj[0][0]'] 120 alization) 121 122 add_19 (Add) (None, 28, 28, 512) 0 ['conv3_1_1x1_increase/bn[0][0]', 123 'conv3_1_1x1_proj/bn[0][0]'] 124 125 activation_61 (Activation) (None, 28, 28, 512) 0 ['add_19[0][0]'] 126 127 conv3_2_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_61[0][0]'] 128 129 conv3_2_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_2_1x1_reduce[0][0]'] 130 rmalization) 131 132 activation_62 (Activation) (None, 28, 28, 128) 0 ['conv3_2_1x1_reduce/bn[0][0]'] 133 134 conv3_2_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_62[0][0]'] 135 136 conv3_2_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_2_3x3[0][0]'] 137 tion) 138 139 activation_63 (Activation) (None, 28, 28, 128) 0 ['conv3_2_3x3/bn[0][0]'] 140 141 conv3_2_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_63[0][0]'] 142 143 conv3_2_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_2_1x1_increase[0][0]'] 144 Normalization) 145 146 add_20 (Add) (None, 28, 28, 512) 0 ['conv3_2_1x1_increase/bn[0][0]', 147 'activation_61[0][0]'] 148 149 activation_64 (Activation) (None, 28, 28, 512) 0 ['add_20[0][0]'] 150 151 conv3_3_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_64[0][0]'] 152 153 conv3_3_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_3_1x1_reduce[0][0]'] 154 rmalization) 155 156 activation_65 (Activation) (None, 28, 28, 128) 0 ['conv3_3_1x1_reduce/bn[0][0]'] 157 158 conv3_3_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_65[0][0]'] 159 160 conv3_3_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_3_3x3[0][0]'] 161 tion) 162 163 activation_66 (Activation) (None, 28, 28, 128) 0 ['conv3_3_3x3/bn[0][0]'] 164 165 conv3_3_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_66[0][0]'] 166 167 conv3_3_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_3_1x1_increase[0][0]'] 168 Normalization) 169 170 add_21 (Add) (None, 28, 28, 512) 0 ['conv3_3_1x1_increase/bn[0][0]', 171 'activation_64[0][0]'] 172 173 activation_67 (Activation) (None, 28, 28, 512) 0 ['add_21[0][0]'] 174 175 conv3_4_1x1_reduce (Conv2D) (None, 28, 28, 128) 65536 ['activation_67[0][0]'] 176 177 conv3_4_1x1_reduce/bn (BatchNo (None, 28, 28, 128) 512 ['conv3_4_1x1_reduce[0][0]'] 178 rmalization) 179 180 activation_68 (Activation) (None, 28, 28, 128) 0 ['conv3_4_1x1_reduce/bn[0][0]'] 181 182 conv3_4_3x3 (Conv2D) (None, 28, 28, 128) 147456 ['activation_68[0][0]'] 183 184 conv3_4_3x3/bn (BatchNormaliza (None, 28, 28, 128) 512 ['conv3_4_3x3[0][0]'] 185 tion) 186 187 activation_69 (Activation) (None, 28, 28, 128) 0 ['conv3_4_3x3/bn[0][0]'] 188 189 conv3_4_1x1_increase (Conv2D) (None, 28, 28, 512) 65536 ['activation_69[0][0]'] 190 191 conv3_4_1x1_increase/bn (Batch (None, 28, 28, 512) 2048 ['conv3_4_1x1_increase[0][0]'] 192 Normalization) 193 194 add_22 (Add) (None, 28, 28, 512) 0 ['conv3_4_1x1_increase/bn[0][0]', 195 'activation_67[0][0]'] 196 197 activation_70 (Activation) (None, 28, 28, 512) 0 ['add_22[0][0]'] 198 199 conv4_1_1x1_reduce (Conv2D) (None, 14, 14, 256) 131072 ['activation_70[0][0]'] 200 201 conv4_1_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_1_1x1_reduce[0][0]'] 202 rmalization) 203 204 activation_71 (Activation) (None, 14, 14, 256) 0 ['conv4_1_1x1_reduce/bn[0][0]'] 205 206 conv4_1_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_71[0][0]'] 207 208 conv4_1_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_1_3x3[0][0]'] 209 tion) 210 211 activation_72 (Activation) (None, 14, 14, 256) 0 ['conv4_1_3x3/bn[0][0]'] 212 213 conv4_1_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_72[0][0]'] 214 ) 215 216 conv4_1_1x1_proj (Conv2D) (None, 14, 14, 1024 524288 ['activation_70[0][0]'] 217 ) 218 219 conv4_1_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_1_1x1_increase[0][0]'] 220 Normalization) ) 221 222 conv4_1_1x1_proj/bn (BatchNorm (None, 14, 14, 1024 4096 ['conv4_1_1x1_proj[0][0]'] 223 alization) ) 224 225 add_23 (Add) (None, 14, 14, 1024 0 ['conv4_1_1x1_increase/bn[0][0]', 226 ) 'conv4_1_1x1_proj/bn[0][0]'] 227 228 activation_73 (Activation) (None, 14, 14, 1024 0 ['add_23[0][0]'] 229 ) 230 231 conv4_2_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_73[0][0]'] 232 233 conv4_2_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_2_1x1_reduce[0][0]'] 234 rmalization) 235 236 activation_74 (Activation) (None, 14, 14, 256) 0 ['conv4_2_1x1_reduce/bn[0][0]'] 237 238 conv4_2_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_74[0][0]'] 239 240 conv4_2_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_2_3x3[0][0]'] 241 tion) 242 243 activation_75 (Activation) (None, 14, 14, 256) 0 ['conv4_2_3x3/bn[0][0]'] 244 245 conv4_2_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_75[0][0]'] 246 ) 247 248 conv4_2_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_2_1x1_increase[0][0]'] 249 Normalization) ) 250 251 add_24 (Add) (None, 14, 14, 1024 0 ['conv4_2_1x1_increase/bn[0][0]', 252 ) 'activation_73[0][0]'] 253 254 activation_76 (Activation) (None, 14, 14, 1024 0 ['add_24[0][0]'] 255 ) 256 257 conv4_3_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_76[0][0]'] 258 259 conv4_3_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_3_1x1_reduce[0][0]'] 260 rmalization) 261 262 activation_77 (Activation) (None, 14, 14, 256) 0 ['conv4_3_1x1_reduce/bn[0][0]'] 263 264 conv4_3_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_77[0][0]'] 265 266 conv4_3_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_3_3x3[0][0]'] 267 tion) 268 269 activation_78 (Activation) (None, 14, 14, 256) 0 ['conv4_3_3x3/bn[0][0]'] 270 271 conv4_3_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_78[0][0]'] 272 ) 273 274 conv4_3_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_3_1x1_increase[0][0]'] 275 Normalization) ) 276 277 add_25 (Add) (None, 14, 14, 1024 0 ['conv4_3_1x1_increase/bn[0][0]', 278 ) 'activation_76[0][0]'] 279 280 activation_79 (Activation) (None, 14, 14, 1024 0 ['add_25[0][0]'] 281 ) 282 283 conv4_4_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_79[0][0]'] 284 285 conv4_4_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_4_1x1_reduce[0][0]'] 286 rmalization) 287 288 activation_80 (Activation) (None, 14, 14, 256) 0 ['conv4_4_1x1_reduce/bn[0][0]'] 289 290 conv4_4_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_80[0][0]'] 291 292 conv4_4_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_4_3x3[0][0]'] 293 tion) 294 295 activation_81 (Activation) (None, 14, 14, 256) 0 ['conv4_4_3x3/bn[0][0]'] 296 297 conv4_4_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_81[0][0]'] 298 ) 299 300 conv4_4_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_4_1x1_increase[0][0]'] 301 Normalization) ) 302 303 add_26 (Add) (None, 14, 14, 1024 0 ['conv4_4_1x1_increase/bn[0][0]', 304 ) 'activation_79[0][0]'] 305 306 activation_82 (Activation) (None, 14, 14, 1024 0 ['add_26[0][0]'] 307 ) 308 309 conv4_5_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_82[0][0]'] 310 311 conv4_5_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_5_1x1_reduce[0][0]'] 312 rmalization) 313 314 activation_83 (Activation) (None, 14, 14, 256) 0 ['conv4_5_1x1_reduce/bn[0][0]'] 315 316 conv4_5_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_83[0][0]'] 317 318 conv4_5_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_5_3x3[0][0]'] 319 tion) 320 321 activation_84 (Activation) (None, 14, 14, 256) 0 ['conv4_5_3x3/bn[0][0]'] 322 323 conv4_5_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_84[0][0]'] 324 ) 325 326 conv4_5_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_5_1x1_increase[0][0]'] 327 Normalization) ) 328 329 add_27 (Add) (None, 14, 14, 1024 0 ['conv4_5_1x1_increase/bn[0][0]', 330 ) 'activation_82[0][0]'] 331 332 activation_85 (Activation) (None, 14, 14, 1024 0 ['add_27[0][0]'] 333 ) 334 335 conv4_6_1x1_reduce (Conv2D) (None, 14, 14, 256) 262144 ['activation_85[0][0]'] 336 337 conv4_6_1x1_reduce/bn (BatchNo (None, 14, 14, 256) 1024 ['conv4_6_1x1_reduce[0][0]'] 338 rmalization) 339 340 activation_86 (Activation) (None, 14, 14, 256) 0 ['conv4_6_1x1_reduce/bn[0][0]'] 341 342 conv4_6_3x3 (Conv2D) (None, 14, 14, 256) 589824 ['activation_86[0][0]'] 343 344 conv4_6_3x3/bn (BatchNormaliza (None, 14, 14, 256) 1024 ['conv4_6_3x3[0][0]'] 345 tion) 346 347 activation_87 (Activation) (None, 14, 14, 256) 0 ['conv4_6_3x3/bn[0][0]'] 348 349 conv4_6_1x1_increase (Conv2D) (None, 14, 14, 1024 262144 ['activation_87[0][0]'] 350 ) 351 352 conv4_6_1x1_increase/bn (Batch (None, 14, 14, 1024 4096 ['conv4_6_1x1_increase[0][0]'] 353 Normalization) ) 354 355 add_28 (Add) (None, 14, 14, 1024 0 ['conv4_6_1x1_increase/bn[0][0]', 356 ) 'activation_85[0][0]'] 357 358 activation_88 (Activation) (None, 14, 14, 1024 0 ['add_28[0][0]'] 359 ) 360 361 conv5_1_1x1_reduce (Conv2D) (None, 7, 7, 512) 524288 ['activation_88[0][0]'] 362 363 conv5_1_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_1_1x1_reduce[0][0]'] 364 rmalization) 365 366 activation_89 (Activation) (None, 7, 7, 512) 0 ['conv5_1_1x1_reduce/bn[0][0]'] 367 368 conv5_1_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_89[0][0]'] 369 370 conv5_1_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_1_3x3[0][0]'] 371 tion) 372 373 activation_90 (Activation) (None, 7, 7, 512) 0 ['conv5_1_3x3/bn[0][0]'] 374 375 conv5_1_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_90[0][0]'] 376 377 conv5_1_1x1_proj (Conv2D) (None, 7, 7, 2048) 2097152 ['activation_88[0][0]'] 378 379 conv5_1_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_1_1x1_increase[0][0]'] 380 Normalization) 381 382 conv5_1_1x1_proj/bn (BatchNorm (None, 7, 7, 2048) 8192 ['conv5_1_1x1_proj[0][0]'] 383 alization) 384 385 add_29 (Add) (None, 7, 7, 2048) 0 ['conv5_1_1x1_increase/bn[0][0]', 386 'conv5_1_1x1_proj/bn[0][0]'] 387 388 activation_91 (Activation) (None, 7, 7, 2048) 0 ['add_29[0][0]'] 389 390 conv5_2_1x1_reduce (Conv2D) (None, 7, 7, 512) 1048576 ['activation_91[0][0]'] 391 392 conv5_2_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_2_1x1_reduce[0][0]'] 393 rmalization) 394 395 activation_92 (Activation) (None, 7, 7, 512) 0 ['conv5_2_1x1_reduce/bn[0][0]'] 396 397 conv5_2_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_92[0][0]'] 398 399 conv5_2_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_2_3x3[0][0]'] 400 tion) 401 402 activation_93 (Activation) (None, 7, 7, 512) 0 ['conv5_2_3x3/bn[0][0]'] 403 404 conv5_2_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_93[0][0]'] 405 406 conv5_2_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_2_1x1_increase[0][0]'] 407 Normalization) 408 409 add_30 (Add) (None, 7, 7, 2048) 0 ['conv5_2_1x1_increase/bn[0][0]', 410 'activation_91[0][0]'] 411 412 activation_94 (Activation) (None, 7, 7, 2048) 0 ['add_30[0][0]'] 413 414 conv5_3_1x1_reduce (Conv2D) (None, 7, 7, 512) 1048576 ['activation_94[0][0]'] 415 416 conv5_3_1x1_reduce/bn (BatchNo (None, 7, 7, 512) 2048 ['conv5_3_1x1_reduce[0][0]'] 417 rmalization) 418 419 activation_95 (Activation) (None, 7, 7, 512) 0 ['conv5_3_1x1_reduce/bn[0][0]'] 420 421 conv5_3_3x3 (Conv2D) (None, 7, 7, 512) 2359296 ['activation_95[0][0]'] 422 423 conv5_3_3x3/bn (BatchNormaliza (None, 7, 7, 512) 2048 ['conv5_3_3x3[0][0]'] 424 tion) 425 426 activation_96 (Activation) (None, 7, 7, 512) 0 ['conv5_3_3x3/bn[0][0]'] 427 428 conv5_3_1x1_increase (Conv2D) (None, 7, 7, 2048) 1048576 ['activation_96[0][0]'] 429 430 conv5_3_1x1_increase/bn (Batch (None, 7, 7, 2048) 8192 ['conv5_3_1x1_increase[0][0]'] 431 Normalization) 432 433 add_31 (Add) (None, 7, 7, 2048) 0 ['conv5_3_1x1_increase/bn[0][0]', 434 'activation_94[0][0]'] 435 436 activation_97 (Activation) (None, 7, 7, 2048) 0 ['add_31[0][0]'] 437 438 avg_pool (AveragePooling2D) (None, 1, 1, 2048) 0 ['activation_97[0][0]'] 439 440 global_average_pooling2d_1 (Gl (None, 2048) 0 ['avg_pool[0][0]'] 441 obalAveragePooling2D) 442 443 gaussian_noise_1 (GaussianNois (None, 2048) 0 ['global_average_pooling2d_1[0][0 444 e) ]'] 445 446 dense_x (Dense) (None, 512) 1049088 ['gaussian_noise_1[0][0]'] 447 448 dropout_1 (Dropout) (None, 512) 0 ['dense_x[0][0]'] 449 450 dense_1 (Dense) (None, 7) 3591 ['dropout_1[0][0]'] 451 452================================================================================================== 453Total params: 24,613,831 454Trainable params: 24,560,711 455Non-trainable params: 53,120 456__________________________________________________________________________________________________ 457--- Время выполнения: 2.222 сек. --- 458 459True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_deep_fe( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-11-01 12:21:23] Неверные типы или значения аргументов в "Video.load_video_model_deep_fe" ... 2 3False
- load_video_model_hc(lang: str, show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам
- Параметры
lang (str) – Язык
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевая архитектура модели сформирована, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_hc( 5 show_summary = False, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-10-25 16:37:43] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) ... 2 3--- Время выполнения: 0.659 сек. --- 4 5True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_hc( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-10-26 12:27:41] Неверные типы или значения аргументов в "Video.load_video_model_hc" ... 2 3False
- load_video_model_nn(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам
- Параметры
show_summary (bool) – Отображение сформированной нейросетевой архитектуры модели
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевая архитектура модели сформирована, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_nn( 5 show_summary = True, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-10-27 14:46:11] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) ... 2 3Model: "model" 4_________________________________________________________________ 5 Layer (type) Output Shape Param # 6================================================================= 7 input_1 (InputLayer) [(None, 10, 512)] 0 8 9 lstm (LSTM) (None, 1024) 6295552 10 11 dropout (Dropout) (None, 1024) 0 12 13 dense (Dense) (None, 5) 5125 14 15 activation (Activation) (None, 5) 0 16 17================================================================= 18Total params: 6,300,677 19Trainable params: 6,300,677 20Non-trainable params: 0 21_________________________________________________________________ 22--- Время выполнения: 2.018 сек. --- 23 24True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_model_nn( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-10-27 14:47:22] Неверные типы или значения аргументов в "Video.load_video_model_nn" ... 2 3False
- load_video_model_weights_deep_fe(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевой модели для получения нейросетевых признаков
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_deep_fe( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-11-01 12:41:59] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) ... 2 3--- Время выполнения: 1.306 сек. --- 4 5True
In [2]:1video.path_to_save_ = './models' 2video.chunk_size_ = 2000000 3 4url = video.weights_for_big5_['video']['fe']['sberdisk'] 5 6video.load_video_model_weights_deep_fe( 7 url = url, 8 force_reload = True, 9 out = True, 10 runtime = True, 11 run = True 12)
[2]:1[2022-11-01 12:42:51] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) ... 2 3[2022-11-01 12:43:06] Загрузка файла "weights_2022-11-01_12-27-07.h5" (100.0%) ... 4 5--- Время выполнения: 14.781 сек. --- 6 7True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8url = video.weights_for_big5_['video']['fe']['sberdisk'] 9 10video.load_video_model_weights_deep_fe( 11 url = url, 12 force_reload = True, 13 out = True, 14 runtime = True, 15 run = True 16)
[3]:1[2022-11-01 12:44:14] Загрузка весов нейросетевой модели для получения нейросетевых признаков (видео модальность) ... 2 3[2022-11-01 12:44:28] Загрузка файла "weights_2022-11-01_12-27-07.h5" (100.0%) ... 4 5[2022-11-01 12:44:28] Ой! Что-то пошло не так ... нейросетевая архитектура модели для получения нейросетевых признаков не сформирована (видео модальность) ... 6 7--- Время выполнения: 13.926 сек. --- 8 9False
- load_video_model_weights_hc(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевой модели для получения оценок по экспертным признакам
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_hc( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-10-27 12:55:31] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) ... 2 3--- Время выполнения: 0.606 сек. --- 4 5True
In [2]:1video.path_to_save_ = './models' 2video.chunk_size_ = 2000000 3 4url = video.weights_for_big5_['video']['hc']['sberdisk'] 5 6video.load_video_model_weights_hc( 7 url = url, 8 force_reload = True, 9 out = True, 10 runtime = True, 11 run = True 12)
[2]:1[2022-10-27 13:08:04] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) ... 2 3[2022-10-27 13:08:05] Загрузка файла "weights_2022-08-27_18-53-35.h5" (100.0%) ... 4 5--- Время выполнения: 0.493 сек. --- 6 7True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8url = video.weights_for_big5_['video']['hc']['sberdisk'] 9 10video.load_video_model_weights_hc( 11 url = url, 12 force_reload = True, 13 out = True, 14 runtime = True, 15 run = True 16)
[3]:1[2022-10-27 13:09:54] Загрузка весов нейросетевой модели для получения оценок по экспертным признакам (видео модальность) ... 2 3[2022-10-27 13:09:54] Загрузка файла "weights_2022-08-27_18-53-35.h5" (100.0%) ... 4 5[2022-10-27 13:09:54] Ой! Что-то пошло не так ... нейросетевая архитектура модели для получения оценок по экспертным признакам не сформирована (видео модальность) ... 6 7--- Время выполнения: 0.424 сек. --- 8 9False
- load_video_model_weights_nn(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам
- Параметры
url (str) – Полный путь к файлу с весами нейросетевой модели
force_reload (bool) – Принудительная загрузка файла с весами нейросетевой модели из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевой модели загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_nn( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-10-27 15:17:13] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) ... 2 3--- Время выполнения: 1.991 сек. --- 4 5True
In [2]:1video.path_to_save_ = './models' 2video.chunk_size_ = 2000000 3 4url = video.weights_for_big5_['video']['nn']['sberdisk'] 5 6video.load_video_model_weights_nn( 7 url = url, 8 force_reload = True, 9 out = True, 10 runtime = True, 11 run = True 12)
[2]:1[2022-10-27 15:19:08] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) ... 2 3[2022-10-27 15:19:11] Загрузка файла "weights_2022-03-22_16-31-48.h5" (100.0%) ... 4 5--- Время выполнения: 3.423 сек. --- 6 7True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8url = video.weights_for_big5_['video']['nn']['sberdisk'] 9 10video.load_video_model_weights_nn( 11 url = url, 12 force_reload = True, 13 out = True, 14 runtime = True, 15 run = True 16)
[3]:1[2022-10-27 15:19:40] Загрузка весов нейросетевой модели для получения оценок по нейросетевым признакам (видео модальность) ... 2 3[2022-10-27 15:19:43] Загрузка файла "weights_2022-03-22_16-31-48.h5" (100.0%) ... 4 5[2022-10-27 15:19:43] Ой! Что-то пошло не так ... нейросетевая архитектура модели для получения оценок по нейросетевым признакам не сформирована (видео модальность) ... 6 7--- Время выполнения: 3.469 сек. --- 8 9False
- load_video_models_b5(show_summary: bool = False, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств
- Параметры
show_summary (bool) – Отображение последней сформированной нейросетевой архитектуры моделей
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если нейросетевые архитектуры модели сформированы, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_models_b5( 5 show_summary = True, out = True, 6 runtime = True, run = True 7)
[1]:1[2022-11-04 15:29:26] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (видео модальность) ... 2 3Model: "model_4" 4_________________________________________________________________ 5 Layer (type) Output Shape Param # 6================================================================= 7 input_1 (InputLayer) [(None, 32)] 0 8 9 dense_1 (Dense) (None, 1) 33 10 11 activ_1 (Activation) (None, 1) 0 12 13================================================================= 14Total params: 33 15Trainable params: 33 16Non-trainable params: 0 17_________________________________________________________________ 18--- Время выполнения: 0.116 сек. --- 19 20True
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4video.load_video_models_b5( 5 show_summary = 1, out = True, 6 runtime = True, run = True 7)
[2]:1[2022-11-04 15:30:15] Неверные типы или значения аргументов в "Video.load_video_models_b5" ... 2 3False
- load_video_models_weights_b5(url_openness: str, url_conscientiousness: str, url_extraversion: str, url_agreeableness: str, url_non_neuroticism: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) bool [исходный код]
Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств
- Параметры
url_openness (str) – Полный путь к файлу с весами нейросетевой модели (открытость опыту)
url_conscientiousness (str) – Полный путь к файлу с весами нейросетевой модели (добросовестность)
url_extraversion (str) – Полный путь к файлу с весами нейросетевой модели (экстраверсия)
url_agreeableness (str) – Полный путь к файлу с весами нейросетевой модели (доброжелательность)
url_non_neuroticism (str) – Полный путь к файлу с весами нейросетевой модели (эмоциональная стабильность)
force_reload (bool) – Принудительная загрузка файлов с весами нейросетевых моделей из сети
out (bool) – Отображение
runtime (bool) – Подсчет времени выполнения
run (bool) – Блокировка выполнения
- Результат
True если веса нейросетевых моделей загружены, в обратном случае False
- Тип результата
bool
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_models_b5( 6 show_summary = False, out = True, 7 runtime = True, run = True 8)
[1]:1[2022-11-04 18:56:41] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств (видео модальность) ... 2 3--- Время выполнения: 0.117 сек. --- 4 5True
In [2]:1video.path_to_save_ = './models' 2video.chunk_size_ = 2000000 3 4url_openness = video.weights_for_big5_['video']['b5']['openness']['sberdisk'] 5url_conscientiousness = video.weights_for_big5_['video']['b5']['conscientiousness']['sberdisk'] 6url_extraversion = video.weights_for_big5_['video']['b5']['extraversion']['sberdisk'] 7url_agreeableness = video.weights_for_big5_['video']['b5']['agreeableness']['sberdisk'] 8url_non_neuroticism = video.weights_for_big5_['video']['b5']['non_neuroticism']['sberdisk'] 9 10video.load_video_models_weights_b5( 11 url_openness = url_openness, 12 url_conscientiousness = url_conscientiousness, 13 url_extraversion = url_extraversion, 14 url_agreeableness = url_agreeableness, 15 url_non_neuroticism = url_non_neuroticism, 16 force_reload = True, 17 out = True, 18 runtime = True, 19 run = True 20)
[2]:1[2022-11-04 18:58:59] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (видео модальность) ... 2 3[2022-11-04 18:59:00] Загрузка файла "weights_2022-06-15_16-46-30.h5" (100.0%) ... Открытость опыту 4 5[2022-11-04 18:59:00] Загрузка файла "weights_2022-06-15_16-48-50.h5" (100.0%) ... Добросовестность 6 7[2022-11-04 18:59:00] Загрузка файла "weights_2022-06-15_16-54-06.h5" (100.0%) ... Экстраверсия 8 9[2022-11-04 18:59:01] Загрузка файла "weights_2022-06-15_17-02-03.h5" (100.0%) ... Доброжелательность 10 11[2022-11-04 18:59:01] Загрузка файла "weights_2022-06-15_17-06-15.h5" (100.0%) ... Эмоциональная стабильность 12 13--- Время выполнения: 1.827 сек. --- 14 15True
Ошибка – 1 –
In [3]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.path_to_save_ = './models' 6video.chunk_size_ = 2000000 7 8url_openness = video.weights_for_big5_['video']['b5']['openness']['sberdisk'] 9url_conscientiousness = video.weights_for_big5_['video']['b5']['conscientiousness']['sberdisk'] 10url_extraversion = video.weights_for_big5_['video']['b5']['extraversion']['sberdisk'] 11url_agreeableness = video.weights_for_big5_['video']['b5']['agreeableness']['sberdisk'] 12url_non_neuroticism = video.weights_for_big5_['video']['b5']['non_neuroticism']['sberdisk'] 13 14video.load_video_models_weights_b5( 15 url_openness = url_openness, 16 url_conscientiousness = url_conscientiousness, 17 url_extraversion = url_extraversion, 18 url_agreeableness = url_agreeableness, 19 url_non_neuroticism = url_non_neuroticism, 20 force_reload = True, 21 out = True, 22 runtime = True, 23 run = True 24)
[3]:1[2022-11-04 19:02:32] Загрузка весов нейросетевых моделей для получения результатов оценки персональных качеств (видео модальность) ... 2 3[2022-11-04 19:02:32] Загрузка файла "weights_2022-06-15_16-46-30.h5" (100.0%) ... 4 5[2022-11-04 19:02:32] Ой! Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... Открытость опыту 6 7 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/video.py 8 Линия: 2833 9 Метод: load_video_models_weights_b5 10 Тип ошибки: AttributeError 11 12[2022-11-04 19:02:32] Загрузка файла "weights_2022-06-15_16-48-50.h5" (100.0%) ... 13 14[2022-11-04 19:02:32] Ой! Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... Добросовестность 15 16 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/video.py 17 Линия: 2833 18 Метод: load_video_models_weights_b5 19 Тип ошибки: AttributeError 20 21[2022-11-04 19:02:33] Загрузка файла "weights_2022-06-15_16-54-06.h5" (100.0%) ... 22 23[2022-11-04 19:02:33] Ой! Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... Экстраверсия 24 25 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/video.py 26 Линия: 2833 27 Метод: load_video_models_weights_b5 28 Тип ошибки: AttributeError 29 30[2022-11-04 19:02:33] Загрузка файла "weights_2022-06-15_17-02-03.h5" (100.0%) ... 31 32[2022-11-04 19:02:33] Ой! Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... Доброжелательность 33 34 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/video.py 35 Линия: 2833 36 Метод: load_video_models_weights_b5 37 Тип ошибки: AttributeError 38 39[2022-11-04 19:02:34] Загрузка файла "weights_2022-06-15_17-06-15.h5" (100.0%) ... 40 41[2022-11-04 19:02:34] Ой! Что-то пошло не так ... не удалось загрузить веса нейросетевой модели ... Эмоциональная стабильность 42 43 Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/video.py 44 Линия: 2833 45 Метод: load_video_models_weights_b5 46 Тип ошибки: AttributeError 47 48--- Время выполнения: 1.831 сек. --- 49 50False
- property video_model_deep_fe_: Optional[Model]
Получение нейросетевой модели tf.keras.Model для получения нейросетевых признаков
- Результат
Нейросетевая модель tf.keras.Model или None
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_deep_fe( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10video.video_model_deep_fe_
[1]:1[2022-11-01 12:12:35] Формирование нейросетевой архитектуры для получения нейросетевых признаков (видео модальность) ... 2 3--- Время выполнения: 1.468 сек. --- 4 5<tf.keras.Model at 0x14e138100>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.video_model_deep_fe_
[2]:1
- property video_model_hc_: Optional[Model]
Получение нейросетевой модели tf.keras.Model для получения оценок по экспертным признакам
- Результат
Нейросетевая модель tf.keras.Model или None
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_hc( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10video.video_model_hc_
[1]:1[2022-10-26 12:37:42] Формирование нейросетевой архитектуры модели для получения оценок по экспертным признакам (видео модальность) ... 2 3--- Время выполнения: 1.112 сек. --- 4 5<tf.keras.Model at 0x1434eb1f0>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.video_model_hc_
[2]:1
- property video_model_nn_: Optional[Model]
Получение нейросетевой модели tf.keras.Model для получения оценок по нейросетевым признакам
- Результат
Нейросетевая модель tf.keras.Model или None
- Тип результата
Optional[tf.keras.Model]
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_model_nn( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10video.video_model_nn_
[1]:1[2022-10-27 14:49:00] Формирование нейросетевой архитектуры для получения оценок по нейросетевым признакам (видео модальность) ... 2 3--- Время выполнения: 1.986 сек. --- 4 5<tf.keras.Model at 0x13d5295b0>
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.video_model_nn_
[2]:1
- property video_models_b5_: Dict[str, Optional[Model]]
Получение нейросетевых моделей tf.keras.Model для получения результатов оценки персональных качеств
- Результат
Словарь с нейросетевыми моделями tf.keras.Model
- Тип результата
Dict
Примеры
Верно – 1 –
In [1]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.load_video_models_b5( 6 show_summary = False, out = True, 7 runtime = True, run = True 8) 9 10video.video_models_b5_
[1]:1[2022-10-19 15:45:35] Формирование нейросетевых архитектур моделей для получения результатов оценки персональных качеств ... 2 3--- Время выполнения: 0.07 сек. --- 4 5{ 6 'openness': <tf.keras.Model at 0x1481e03a0>, 7 'conscientiousness': <tf.keras.Model at 0x147d13520>, 8 'extraversion': <tf.keras.Model at 0x1481edfa0>, 9 'agreeableness': <tf.keras.Model at 0x1481cfc40>, 10 'non_neuroticism': <tf.keras.Model at 0x1481cffd0> 11}
Ошибка – 1 –
In [2]:1from oceanai.modules.lab.video import Video 2 3video = Video() 4 5video.video_models_b5_
[2]:1{ 2 'openness': None, 3 'conscientiousness': None, 4 'extraversion': None, 5 'agreeableness': None, 6 'non_neuroticism': None 7}
Текст
Мультимодальное объединение информации
Сборка
- Пользовательские исключения
Документация для файла
modules/core/exceptions.py
- Определение языка
Документация для файла
modules/core/language.py
- Сообщения
Документация для файла
modules/core/messages.py
- Настройки
Документация для файла
modules/core/settings.py
- Ядро
Документация для файла
modules/core/core.py
- Обработка архивов
Документация для файла
modules/lab/unzip.py
- Загрузка файлов
Документация для файла
modules/lab/download.py
- Аудио
Документация для файла
modules/lab/audio.py
- Видео
Документация для файла
modules/lab/video.py
- Текст
Документация для файла
modules/lab/text.py
- Мультимодальное объединение информации
Документация для файла
modules/lab/prediction.py
- Сборка
Документация для файла
modules/lab/build.py
Диаграмма классов
Исключения
Основные классы
Команда разработчиков
Библиотека OCEAN-AI
разработана и поддерживается исследовательской группой из лаборатории речевых и многомодальных интерфейсов (ЛРМИ) Санкт-Петербургского Федерального исследовательского центра Российской академии наук (СПб ФИЦ РАН), входящей в состав НИЦ Сильный искусственный интеллект в промышленности (Университет ИТМО) а именно:
Рюмина Елена - аспирант Университета ИТМО, младший научный сотрудник ЛРМИ СПб ФИЦ РАН.
Рюмин Дмитрий - кандидат технических наук (PhD in Engineering, 2020), старший научный сотрудник ЛРМИ СПб ФИЦ РАН.
Карпов Алексей - доктор технических наук (2013), профессор по специальности 05.13.11 (2022), главный научный сотрудник (руководитель) ЛРМИ СПб ФИЦ РАН.
Ответы на часто задаваемые вопросы
Это список часто задаваемых вопросов о OCEAN-AI и ответов на них.
OCEAN-AI это?
Библиотека с открытым исходным кодом, состоящая из набора алгоритмов интеллектуального анализа поведения человека на основе его мультимодальных данных для автоматического оценивания уровня отдельных персональных качеств личности человека (ПКЛЧ). Библиотека оценивает 5 ПКЛЧ: открытость опыту, добросовестность, экстраверсия, доброжелательность, эмоциональная стабильность.
Почему библиотека называется OCEAN-AI?
OCEAN - это аббревиатура 5 ПКЛЧ (Openness, Conscientiousness, Extraversion, Agreeableness, Non-Neuroticism), а AI - это аббревиатура искусственного интеллекта.
Можно ли установить OCEAN-AI с помошью pip?
Да, для этого нужно перейти по ссылке.