Kears构建简单的二分类网络

目标:二分类

网络:DNN

损失:二元交叉熵

代码:

复制代码
import numpy as np
import tensorflow as tf
from sklearn.datasets import make_blobs
from matplotlib import pyplot as plt
from sklearn.preprocessing import MinMaxScaler


X, y = make_blobs(n_samples=100, centers=2, n_features=2, random_state=1)
Xa = []
Xb = []
for i in range(0, len(X)):
    Xa.append(X[i][0])
    Xb.append(X[i][1])
plt.scatter(Xa, Xb, marker='o', c='', edgecolors='g')

scalar = MinMaxScaler()
scalar.fit(X)
X = scalar.transform(X)
input1 = tf.keras.layers.Input(shape=(2,))
dense1 = tf.keras.layers.Dense(units=10, activation='relu')(input1)
output = tf.keras.layers.Dense(units=1, activation='sigmoid')(dense1)
model = tf.keras.models.Model(inputs=input1, outputs=output)
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(X, y, epochs=500, verbose=0, batch_size=10)

Xnew = np.array([[0.89337759, 0.65864154]])
ynew = model.predict(Xnew)
print(ynew)
复制代码

注:对于二分类,在模型预测时,直接给出的是label为1的prob值

posted @   今夜无风  阅读(150)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示