В данном репозитории представлен мой личный проект по курсу БД на тему обучения исскуственного интеллекта.
Проект направлен на систематизацию и анализ результатов экспериментов, проводимых в области искусственного интеллекта и машинного обучения. Он охватывает разнообразные алгоритмы, наборы данных и метрики оценки, используемые для измерения эффективности и точности алгоритмов машинного обучения.
Целью проекта является облегчение сравнительного анализа различных подходов и ML технологий, а также предоставление платформы для обмена знаниями и опытом между учеными и инженерами, работающими в этой области.
- Проекты ИИ: Основные проекты, проводимые в области искусственного интеллекта, включая описание, цели, сроки и участников
- Алгоритмы: Различные алгоритмы машинного обучения, используемые в рамках проектов, с описанием их типов и особенностей.
- Наборы данных: Наборы данных, используемые для обучения и тестирования ML алгоритмов, с описанием их типов, размеров и структуры.
- Метрики оценки: Метрики, используемые для оценки эффективности и точности ML алгоритмов, с описанием их методологии и подходов к интерпретации результатов.
- Эксперименты: Эксперименты, проводимые в рамках проектов ИИ, включая информацию о применяемых алгоритмах, наборах данных и метриках оценки, а также временные рамки проведения экспериментов.
- Результаты экспериментов: Результаты экспериментов, представленные в виде значений метрик оценки, полученных для конкретных экспериментов и алгоритмов.
Физическая модель представлена в данной гугл таблице: https://docs.google.com/spreadsheets/d/16XFdbRY38UGQOfLI8A4TkrIBBlsm3_1ji_eA5BDjO-0/edit?usp=sharing.
Также она доступна в папке docs.
Описания запросов scripts/selects(task6).py
-
Запрос с использованием GROUP BY и HAVING: Извлекает среднюю оценку по каждому проекту, где средняя оценка больше 0.9.
-
Запрос с использованием ORDER BY: Возвращает результаты экспериментов, отсортированные по убыванию значения метрики.
-
Запрос с использованием функции агрегирования (AVG) OVER PARTITION BY: Для каждого эксперимента вычисляет среднее значение метрики в рамках каждого проекта.
-
Запрос с использованием функции ранжирования (RANK) OVER ORDER BY: Для каждого эксперимента определяет его ранг в зависимости от значения метрики.
-
Запрос с использованием функции смещения (LAG) OVER PARTITION BY ORDER BY: Возвращает значение метрики для предыдущего эксперимента в рамках каждого проекта.
-
Запрос с использованием функции агрегирования (AVG), функции ранжирования (RANK) и функции смещения (LAG) OVER PARTITION BY + ORDER BY: Для каждого эксперимента вычисляет среднее значение метрики и его ранг в рамках каждого проекта и возвращает значение метрики для предыдущего эксперимента
Описание тестов tests/tests(task7).py:
-
Тест для запроса с использованием GROUP BY и HAVING: Проверяет, что средняя оценка для каждого проекта больше 0.9.
-
Тест для запроса с использованием ORDER BY: Проверяет, что результаты экспериментов отсортированы по убыванию значения метрики.
-
Тест для запроса с использованием функции агрегирования (AVG) OVER PARTITION BY: Проверяет, что для каждого эксперимента вычислено среднее значение метрики в рамках каждого проекта.
-
Тест для запроса с использованием функции ранжирования (RANK) OVER ORDER BY: Проверяет, что для каждого эксперимента определен его ранг в зависимости от значения метрики.
-
Тест для запроса с использованием функции смещения (LAG) OVER PARTITION BY ORDER BY: Проверяет, что возвращается значение метрики для предыдущего эксперимента в рамках каждого проекта.
-
Тест для запроса с использованием функции агрегирования (AVG), функции ранжирования (RANK) и функции смещения (LAG) OVER PARTITION BY + ORDER BY: Проверяет, что для каждого эксперимента вычислено среднее значение метрики и его ранг в рамках каждого проекта.
-
Experiments.project_id: Это поле будем часто использовать при поиске всех экспериментов, связанных с определенным проектом.
-
ExperimentResults.experiment_id: Это поле будем также часто использовать при поиске результатов для определенного эксперимента.
-
CREATE INDEX idx_datasets_dataset_name ON Datasets (dataset_name) - Этот индекс ускоряет поиск по названию набора данных в таблице Datasets.
-
CREATE INDEX idx_projects_project_name ON Projects (project_name) - Аналогично предыдущему, этот индекс ускоряет поиск по названию проекта в таблице Projects.
-
ExperimentDatasets.dataset_id: Это поле используем при поиске всех экспериментов, в которых использовался определенный набор данных.

