主页 > 软件开发  > 

人工智能神经网络

人工智能神经网络

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

        main.py

#导入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 pile(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))
标签:

人工智能神经网络由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“人工智能神经网络