基于人工智能的校园霸凌受害者预测与分析(下)

简介: 基于人工智能的校园霸凌受害者预测与分析

四、模型训练


!pip install catboost


1.决策树预测 Decision Tree Classifier


import xgboost
import lightgbm
from sklearn.svm import SVC
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.linear_model import LogisticRegression
from catboost import CatBoostClassifier


# 训练决策树分类器
clf = DecisionTreeClassifier(random_state=1024)
clf.fit(X_train, y_train)
accuracy_list = []


# test数据集预测
y_pred = clf.predict(X_test)


from sklearn.metrics import accuracy_score
# 评估精度
accuracy = accuracy_score(y_test, y_pred)
print("精度: %.4f%%" % (accuracy * 100.0))
accuracy_list.append(accuracy*100)


精度: 76.2585%


2.随机森林 RandomForestClassifier


from sklearn.ensemble import RandomForestClassifier
r_clf = RandomForestClassifier(max_features=0.5, max_depth=15, random_state=1)
r_clf.fit(X_train, y_train)
r_pred = r_clf.predict(X_test)
r_acc = accuracy_score(y_test, r_pred)
print(r_acc)
accuracy_list.append(100*r_acc)


0.8279972416510688


3.逻辑回归Logistic Regression


log_reg = LogisticRegression()
log_reg.fit(X_train, y_train)
log_reg_pred = log_reg.predict(X_test)
log_reg_acc = accuracy_score(y_test, log_reg_pred)
print(log_reg_acc)
accuracy_list.append(100*log_reg_acc)
0.8344990641316127


4.支持向量机Support Vector


sv_clf = SVC()
sv_clf.fit(X_train, y_train)
sv_clf_pred = sv_clf.predict(X_test)
sv_clf_acc = accuracy_score(y_test, sv_clf_pred)
print(sv_clf_acc)
accuracy_list.append(100* sv_clf_acc)


0.8360752635208354


5.K临近算法K Neighbors Classifier


kn_clf = KNeighborsClassifier(n_neighbors=6)
kn_clf.fit(X_train, y_train)
kn_pred = kn_clf.predict(X_test)
kn_acc = accuracy_score(y_test, kn_pred)
print(kn_acc)
accuracy_list.append(100*kn_acc)


0.8304600531967293


6.梯度增强分类器 Gradient Boosting Classifier


gradientboost_clf = GradientBoostingClassifier(max_depth=2, random_state=1)
gradientboost_clf.fit(X_train,y_train)
gradientboost_pred = gradientboost_clf.predict(X_test)
gradientboost_acc = accuracy_score(y_test, gradientboost_pred)
print(gradientboost_acc)
accuracy_list.append(100*gradientboost_acc)


0.8364693133681411


7.xgbrf分类器 xgbrf classifier


xgb_clf = xgboost.XGBRFClassifier(max_depth=3, random_state=1)
xgb_clf.fit(X_train,y_train)
xgb_pred = xgb_clf.predict(X_test)
xgb_acc = accuracy_score(y_test, xgb_pred)
accuracy_list.append(100*xgb_acc)
print(xgb_acc)


[23:09:17] WARNING: ../src/learner.cc:1061: Starting in XGBoost 1.3.0, the default evaluation metric used with the objective 'multi:softprob' was changed from 'merror' to 'mlogloss'. Explicitly set eval_metric if you'd like to restore the old behavior.
0.8360752635208354

8.LGBMClassifier


lgb_clf = lightgbm.LGBMClassifier(max_depth=2, random_state=4)
lgb_clf.fit(X_train,y_train)
lgb_pred = lgb_clf.predict(X_test)
lgb_acc = accuracy_score(y_test, lgb_pred)
print(lgb_acc)
accuracy_list.append(100*lgb_acc)


0.8363708009063147


9.Cat Boost Classifier


cat_clf = CatBoostClassifier()
cat_clf.fit(X_train,y_train)
cat_pred = cat_clf.predict(X_test)
cat_acc = accuracy_score(y_test, cat_pred)
print(cat_acc)
accuracy_list.append(100*cat_acc)


989:  learn: 0.4191992  total: 12.3s  remaining: 124ms
990:  learn: 0.4190779  total: 12.3s  remaining: 112ms
991:  learn: 0.4189944  total: 12.3s  remaining: 99.5ms
992:  learn: 0.4189137  total: 12.3s  remaining: 87ms
993:  learn: 0.4188195  total: 12.4s  remaining: 74.6ms
994:  learn: 0.4187774  total: 12.4s  remaining: 62.2ms
995:  learn: 0.4187095  total: 12.4s  remaining: 49.7ms
996:  learn: 0.4186093  total: 12.4s  remaining: 37.3ms
997:  learn: 0.4185544  total: 12.4s  remaining: 24.9ms
998:  learn: 0.4184855  total: 12.4s  remaining: 12.4ms
999:  learn: 0.4183650  total: 12.4s  remaining: 0us
0.8307555905822086


五、各模型结果对比


print(accuracy_list)


[76.25849669983253, 82.79972416510688, 83.44990641316127, 83.60752635208354, 83.04600531967293, 83.6469313368141, 83.60752635208354, 83.63708009063147, 83.07555905822086]


model_list = ['DecisionTree', 'RandomForest', 'Logistic Regression', 'SVC','KNearestNeighbours',  
              'GradientBooster', 'XGBRF','LGBM', 'CatBoostClassifier']


plt.rcParams['figure.figsize']=20,8
sns.set_style('darkgrid')
ax = sns.barplot(x=model_list, y=accuracy_list, palette = "husl", saturation =2.0)
plt.xlabel('Classifier Models', fontsize = 20 )
plt.ylabel('% of Accuracy', fontsize = 20)
plt.title('Accuracy of different Classifier Models', fontsize = 20)
plt.xticks(fontsize = 12, horizontalalignment = 'center', rotation = 8)
plt.yticks(fontsize = 12)
for i in ax.patches:
    width, height = i.get_width(), i.get_height()
    x, y = i.get_xy() 
    ax.annotate(f'{round(height,2)}%', (x + width/2, y + height*1.02), ha='center', fontsize = 'x-large')
plt.show()

image.png

SVC支持向量机、xgbrf 、lightgbm 耗时特别长,以后不用它!

项目地址: aistudio.baidu.com/aistudio/pr…



目录
相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
探索人工智能在医疗影像分析中的应用
【5月更文挑战第20天】 随着深度学习技术的飞速发展,人工智能(AI)在医疗影像分析领域扮演了革命性的角色。本文聚焦于探讨AI技术如何提高医疗影像的诊断准确性与效率,并分析了目前存在的挑战和未来的发展方向。通过引入先进的卷积神经网络(CNN)模型,我们展示了AI系统在识别疾病标志、辅助临床决策以及个性化治疗计划制定中的潜力。同时,文章还讨论了数据隐私保护、算法解释性和跨域适应性等关键问题,为进一步研究和技术应用提供了参考。
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
未来十年人工智能在医疗行业的应用前景分析
随着人工智能技术的不断发展,医疗行业也迎来了巨大变革。本文将探讨未来十年内人工智能在医疗领域的应用前景,从诊断辅助、个性化治疗到医疗大数据分析等方面进行深入分析。
|
9天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能在网络安全中的威胁情报分析与响应的应用
人工智能在网络安全中的威胁情报分析与响应的应用
|
9天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能在社交媒体分析中的用户行为预测与趋势洞察
人工智能在社交媒体分析中的用户行为预测与趋势洞察
|
9天前
|
人工智能 自然语言处理 监控
人工智能在社交媒体分析中的应用已经变得越来越普遍和重要
人工智能在社交媒体分析中的应用已经变得越来越普遍和重要
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
探索人工智能在医疗影像分析中的应用
【5月更文挑战第1天】随着人工智能技术的飞速发展,其在医疗领域的应用日益广泛,尤其是在医疗影像分析方面。本文将深入探讨人工智能在医疗影像分析中的关键技术、应用现状以及未来发展趋势,以期为相关领域的研究者和实践者提供有益的参考。
|
1月前
|
机器学习/深度学习 人工智能 算法
探索人工智能在医疗影像分析中的应用
随着人工智能技术的迅猛发展,其在医疗领域的应用日益广泛,尤其是在医疗影像分析上。本文将深入探讨人工智能在医疗影像分析中的应用,包括其优势、挑战以及未来发展趋势。我们将通过实例分析,展示人工智能如何提高医疗影像的诊断准确性和效率,同时也会探讨数据隐私、模型解释性等关键问题。
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
探索人工智能在医疗影像分析中的应用
随着人工智能技术的飞速发展,其在医疗领域的应用日益增多,特别是在医疗影像分析方面。本文将深入探讨人工智能技术在医疗影像分析中的关键作用,包括图像识别、模式分析和深度学习等先进技术的运用。同时,文中还将讨论这些技术在提高诊断准确性、降低工作负荷以及促进个性化治疗等方面的贡献。通过案例研究和最新研究成果的展示,本文旨在为读者提供一个关于人工智能如何改变医疗影像分析领域的全面视角。
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
未来十年人工智能在医疗行业的应用前景分析
随着人工智能技术的不断发展,医疗行业也将迎来巨大的变革与机遇。本文从人工智能在医疗诊断、药物研发、个性化治疗等方面的应用现状入手,探讨了未来十年人工智能在医疗领域的发展趋势及挑战。
|
1月前
|
机器学习/深度学习 人工智能 监控
人工智能在内网上网行为管理软件中的智能分析与优化
随着科技的迅猛发展,内网上网行为管理软件越来越成为企业信息安全的重要组成部分。本文将探讨如何通过人工智能技术对内网上网行为进行智能分析与优化,以提高管理软件的效能。
335 0

热门文章

最新文章