当前位置:网站首页>1. Linear regression
1. Linear regression
2022-07-08 01:02:00 【booze-J】
The code running platform is jupyter-notebook, Code blocks in the article , According to jupyter-notebook Written in the order of division in , Run article code , Glue directly into jupyter-notebook that will do .
1. Import third-party library
import keras
import numpy as np
import matplotlib.pyplot as plt
# Sequential Sequential model
from keras.models import Sequential
# Dense Fully connected layer
from keras.layers import Dense
2. Randomly generate data sets
# Use numpy Generate 100 A random point
x_data = np.random.rand(100)
# Noise shape and x_data The shape of is the same
noise = np.random.normal(0,0.01,x_data.shape)
# Set up w=0.1 b=0.2
y_data = x_data*0.1+0.2+noise
# y_data_no_noisy = x_data*0.1+0.2
# Show random points
plt.scatter(x_data,y_data)
# plt.scatter(x_data,y_data_no_noisy)
Running effect :
This is the case of adding noise y_data = x_data*0.1+0.2+noise
:
Without adding noise y_data_no_noisy = x_data*0.1+0.2
(w=0.1,b=0.2):
Linear regression is based on the scatter plot with added noise , Fit a straight line that is similar to the scatter diagram without adding noise .
3. Linear regression
# Build a sequential model
model = Sequential()
# Add a full connection layer to the model stay jupyter-notebook in , Press shift+tab Parameters can be displayed
model.add(Dense(units=1,input_dim=1))
# sgd:Stochastic gradient descent , Random gradient descent method
# mse:Mean Squared Error , Mean square error
model.compile(optimizer='sgd',loss='mse')
# Training 3001 Lots
for step in range(3001):
# One batch at a time The loss of
cost = model.train_on_batch(x_data,y_data)
# Every time 500 individual batch Print once cost
if step%500==0:
print("cost:",cost)
# Print weights and batch values
W,b = model.layers[0].get_weights()
print("W:",W)
print("b:",b)
# x_data Input the predicted value in the network
y_pred = model.predict(x_data)
# Show random points
plt.scatter(x_data,y_data)
# Show forecast results
plt.plot(x_data,y_pred,"r-",lw=3)
plt.show()
Running effect :
You can see the prediction w and b Are very close to what we set w and b.
Be careful
- stay jupyter-notebook in , Press shift+tab Parameters can be displayed
- train_on_batch Use
- compile Use
边栏推荐
- v-for遍历元素样式失效
- Which securities company has a low, safe and reliable account opening commission
- ABAP ALV LVC template
- SDNU_ACM_ICPC_2022_Summer_Practice(1~2)
- 9. Introduction to convolutional neural network
- Codeforces Round #804 (Div. 2)(A~D)
- Basic mode of service mesh
- Implementation of adjacency table of SQLite database storage directory structure 2-construction of directory tree
- 50Mhz产生时间
- 新库上线 | CnOpenData中国星级酒店数据
猜你喜欢
随机推荐
7. Regularization application
攻防演练中沙盘推演的4个阶段
9. Introduction to convolutional neural network
英雄联盟胜负预测--简易肯德基上校
Introduction to ML regression analysis of AI zhetianchuan
130. 被圍繞的區域
13.模型的保存和载入
The whole life cycle of commodity design can be included in the scope of industrial Internet
My best game based on wechat applet development
Basic types of 100 questions for basic grammar of Niuke
C# ?,?.,?? .....
130. Surrounding area
Serial port receives a packet of data
基于人脸识别实现课堂抬头率检测
Su embedded training - Day7
Get started quickly using the local testing tool postman
接口测试进阶接口脚本使用—apipost(预/后执行脚本)
50Mhz产生时间
Prediction of the victory or defeat of the League of heroes -- simple KFC Colonel
Cve-2022-28346: Django SQL injection vulnerability