antonov_dmitry_lab_4 #26

Merged
Alexey merged 1 commits from antonov_dmitry_lab_4 into main 2023-10-11 20:09:04 +04:00
4 changed files with 4525 additions and 0 deletions

View File

@ -0,0 +1,78 @@
# Лаб 4 Кластеризация
Использовать метод кластеризации по варианту для данных из датасета курсовой
Predict students' dropout and academic success (отсев студентов), самостоятельно сформулировав задачу.
Интерпретировать результаты и оценить, насколько хорошо он подходит для
решения сформулированной вами задачи.
# Вариант 3
Метод t-SNE
# Запуск
Выполнением скрипта файла (вывод в консоль).
# Описание модели:
T-Distributed Stochastic Neighbor Embedding (t-SNE) - это метод визуализации и снижения размерности,
используемый для визуализации многомерных данных в виде двумерной или трехмерной графики.
Результатом работы t-SNE является визуализация данных, где близкие точки в исходном пространстве отображаются
близко друг к другу, а отдаленные точки - далеко. Это позволяет исследователям изучать структуру данных и
находить кластеры и структуры, которые могут быть не видны при прямом наблюдении исходного пространства высокой размерности.
# Задача кластеризации
Учитывая набор данных, содержащий информацию о студентах, включая их пол, международный статус и ВВП,
цель состоит в том, чтобы сгруппировать этих студентов в отдельные кластеры на основе этих признаков.
Цель состоит в том, чтобы выявить естественные закономерности или подгруппы среди учащихся, которые могут
иметь сходные характеристики с точки зрения пола, международного статуса и экономического происхождения.
Такая кластеризация может помочь в адаптации образовательных программ, служб поддержки или вмешательств
к конкретным группам учащихся для улучшения академических результатов и показателей удержания.
Цель анализа - выявить значимые идеи, которые могут быть использованы для улучшения общего образовательного опыта
и показателей успешности различных групп учащихся.
# Результаты
Для применения метода уменьшения размерности t-SNE использованы признаки "Гендер", "Международный" и "ВВП".
Данные проецируются на двумерную плоскость, при этом сохраняя локальную структуру данных.
Как интерпретировать результаты на графике:
1. Пол:
- Поскольку "Пол" является категориальной переменной (бинарной, как "Мужчина" или "Женщина"),
- Ожидается увидеть на графике отчетливые кластеры или разделения. Каждая точка представляет учащегося,
- и лица одинакового пола должны быть сгруппированы вместе.
2. Международный:
- "Международный" также является бинарной категориальной переменной (например, "Да" или "Нет" указывает,
- является ли студент иностранным), вы можете увидеть разделение между иностранными и немеждународными студентами.
- Это может привести к образованию двух различных кластеров.
3. ВВП:
- "ВВП" - это непрерывная переменная, и ее значения будут представлены в виде точек на графике. В зависимости от
- распределения значений ВВП вы можете наблюдать градиент или закономерность в данных.
Теперь, когда посмотреть на график, должны быть видны точки, разбросанные по двумерному пространству. Похожие точки
находятся близко друг к другу, а непохожие - дальше друг от друга.
- Результаты:
- Видны четкие кластеры, это говорит о том, что эти признаки являются хорошими показателями для разделения
- студентов на группы.
- Доминирующими признаками являются "гендер" и "Интернациональность", можно увидеть два различных кластера,
- в одном из которых, например, в основном учатся местные студенты мужского пола, а в другом - иностранные студентки
- женского пола.
- "ВВП" оказывает сильное влияние, можно увидеть градиент точек, указывающий на корреляцию между ВВП и
- некоторой базовой закономерностью в данных.
Конкретная интерпретация будет зависеть от фактического распределения и характеристик данных.
Также важно отметить, что t-SNE - это стохастический алгоритм, поэтому его многократное выполнение с одними и теми
же параметрами может привести к несколько иным результатам. Поэтому рекомендуется изучить графики из нескольких прогонов,
чтобы получить четкое представление о структуре данных.
<p>
<div>График</div>
<img src="screens/myplot.png" width="650" title="График">
</p>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,22 @@
import pandas as pd
from sklearn.cluster import KMeans
from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
# загрузка датасета
data = pd.read_csv('dataset.csv')
# выделение необходимых признаков
X = data[['Gender', 'International', 'GDP']]
# применение t-SNE для сокращения размерности
tsne = TSNE(n_components=2, random_state=42)
X_tsne = tsne.fit_transform(X)
# визуализация данных
plt.scatter(X_tsne[:, 0], X_tsne[:, 1], c=data['Target'], cmap='viridis')
plt.colorbar()
plt.xlabel('t-SNE х')
plt.ylabel('t-SNE у')
plt.title('t-SNE визуализация')
plt.show()

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB