初學機器學習

2021-10-08 21:27:42 字數 1690 閱讀 4755

配置太複雜

機器學習

權重w和偏執b。

通過學習來修正

一次函式的例子

y=w*x+b;

# -*- coding: utf-8 -*-

#基礎,乙個一次函式,y=w*x+b

import tensorflow as tf

import matplotlib.pyplot as plt

import numpy as np

#-----------【定義乙個引數:y=w*x+b】-----------

#y=3.0x+2.0

true_w=

3.0true_b=

2.0xdata=tf.random.normal(shape=

[100])

true_y=true_w*xdata+true_b

#------------【構建**的函式模型】-------------

class

model

(object):

def__init__

(self)

: self.w=tf.variable(

1.2)

self.b=tf.variable(

0.5)

def__call__

(self, xdata)

:return self.w*xdata+self.b #**的y

#-------------【損失函式:**與真實的差值】--------------

defcompute_loss

(true_y,y)

:return tf.reduce_mean(tf.square(true_y-y)

)#--------------【神經網路的構建】--------------------------

defmain()

: model=model(

)#例項化模型

for each in

range(45

):#45次訓練

with tf.gradienttape(

)as tape:

loss=compute_loss(true_y,model(xdata)

)#計算損失:真實與**的差值

#(差值,變數)

dw, db = tape.gradient(loss,

[model.w, model.b]

)#獲取梯度值

# 衰減權重和偏置,進行優化,梯度下降

model.w.assign_sub(

0.05

* dw)

#0.05為學習率

model.b.assign_sub(

0.05

* db)

print

("epoch %2d: w_true= %.2f, w_pred= %.2f; b_true= %.2f, b_pred= %.2f, loss= %.2f"%(

each +

1, true_w, model.w.numpy(

), true_b, model.b.numpy(

), loss.numpy())

)#啟動

if __name__ ==

'__main__'

: main(

)

初學機器學習筆記

機器學習 machine learning,ml 是一門多領域交叉學科,涉及概率論 統計學 逼近論 凸分析 演算法複雜度 理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的效能。機器學習是人工智慧研究發展到一定階段的必然產物。二...

機器學習 TensorFlow初學

dot 陣列的點積 dot producta np.arange 0,9 out 45 array 0,1,2,3,4,5,6,7,8 b a 1 out 47 array 8,7,6,5,4,3,2,1,0 np.dot a,b out 48 84隨機數生成 這幾個都是用於生成隨機數tensor的...

程式設計師初學機器學習演算法

英文原文 4 self study machine learning projects 學習機器學習有很多方法,大多數人選擇從理論開始。如果你是個程式設計師,那麼你已經掌握了把問題拆分成相應組成部分及設計小專案原型的能力,這些能力能幫助你學習新的技術 類庫和方法。這些對任何乙個職業程式設計師來說都是...