人工智能神经网络

利用女性糖尿病人的怀孕次数、血糖、血压、皮脂厚度、胰岛素等特征通过BP神经网络来预测一个女性是否患有糖尿病,并且计算出模型预测的准确率。通过女性糖尿病患者的一系列特征构建一个BP神经网络模型,通过该模型预测一名女性患有糖尿病的概率。

main.py

python 复制代码
#导入keras等模块
from tensorflow.python.keras.models import Sequential
from tensorflow.python.keras.layers import Dense
import numpy as np
from sklearn.model_selection import train_test_split
import warnings
warnings.filterwarnings('ignore')
#导入女性糖尿病患者的特征数据
dataset = np.loadtxt('pima-indians-diabetes.csv', delimiter=',')
X = dataset[:, 0 : 8]
Y = dataset[:, 8]
# 将数据按照8:2比例分成训练集和测试集
x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size=0.2, random_state=1)
print(x_train.shape)
print(x_test.shape)
# 创建BP神经网络
model = Sequential()
# 输入层8个变量,与数据维度一致
# 第一个隐藏层有12个神经元,且采用ReLU激活函数,glorot均匀分布初始化器,偏差值初始为0
model.add(Dense(12, input_dim=8, activation='relu', kernel_initializer='glorot_uniform', bias_initializer='zeros'))
# 第二个隐藏层有8个神经元,且采用ReLU激活函数
model.add(Dense(8, activation='relu'))
# 输出层1个神经元,且采用Sigmoid激活函数
model.add(Dense(1, activation='sigmoid'))
#使用adam为优化器
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(x=x_train, y=y_train, epochs=150, batch_size=10)
# 打印出模型每层权值
print(model.trainable_weights)
print(model.get_weights())
# 评估模型
scores = model.evaluate(x=x_test, y=y_test)
print('\n%s : %.2f%%' % (model.metrics_names[1], scores[1]*100))
相关推荐
安吉升科技4 分钟前
图书馆、博物馆双目ai客流统计摄像头技术机理与运行架构解析
人工智能
武子康4 分钟前
低延迟不是更快地猜:EOU / Barge-in / Turn Protocol 必须统一(4 种结束 + Generation Fencing + 9 类可复现场景)
人工智能·后端·llm
您^_^6 分钟前
使用技巧(十一):Claude Code 最强审问官 —— grill-me 深度指南,装完先别写代码
人工智能·windows·个人开发·claudecode·deepseek v4 pro
ye小杰榨 问鼎中原ZP9 分钟前
初探:用 FastAPI 搭建你的第一个 AI Agent 接口
人工智能·fastapi
AOwhisky11 分钟前
AI审AI:GitLab上线AI代码审查,开发者可以松一口气了吗?
人工智能·gitlab
Asize12 分钟前
别只会改 Prompt:用 AI Loop 把大模型变成可验收的执行系统
人工智能
东风破_13 分钟前
Temperature 越高越有创造力吗?从概率分布、Top-K 到 LangChain 工作流
人工智能
今天AI了吗14 分钟前
Spring AI 框架实战:Java 后端集成大模型的架构设计与工程落地
java·人工智能·python·spring·机器学习
用户9385156350716 分钟前
Vibe Coding 的“驾驶”指南:从“失控屎山”到“精准驯服”
人工智能
机器人落地派17 分钟前
AI把工作做快了,为什么你反而更累了?
人工智能·ai·人形机器人·ai应用