第07課 專案實戰 自己動手寫乙個神經網路模型

2021-10-09 16:27:52 字數 696 閱讀 6543

為了簡化操作,我們直接構造一批資料集。

說明:本文所有**均在 jupyter notebook 中編寫實現。

import numpy as np

import matplotlib.pyplot as plt

%matplotlib inline

r = np.random.randn(200)*0.8

x1 = np.linspace(-3, 1, 200)

x2 = np.linspace(-1, 3, 200)

y1 = x1*x1 + 2*x1 - 2 + r

y2 = -x2*x2 + 2*x2 + 2 + r

x = np.hstack(([x1, y1],[x2, y2])) # 輸入樣本 x,維度:2 x 400

y = np.hstack((np.zeros((1,200)),np.ones((1,200)))) # 輸出標籤 y

輸入樣本 x 的特徵維度為 2,樣本個數為 400,輸出標籤 y 包含 0 和 1 類別各 200 個。將資料集在二維平面上顯示。

plt.scatter(x[0, :], x[1, :], c=y, s=40, cmap=plt.cm.spectral)

自己動手寫乙個單鏈表

單向鍊錶 單鏈表 是鍊錶的一種,其特點是鍊錶的鏈結方向是單向的,對鍊錶的訪問要通過順序讀取從頭部開始。鏈式儲存結構的線性表將採用一組任意的儲存單元存放線性表中的資料元素。由於不需要按順序儲存,鍊錶在插入 刪除資料元素時比順序儲存要快,但是在查詢乙個節點時則要比順序儲存要慢 使用鏈式儲存可以克服順序線...

自己動手寫乙個單鏈表

單向鍊錶 單鏈表 是鍊錶的一種,其特點是鍊錶的鏈結方向是單向的,對鍊錶的訪問要通過順序讀取從頭部開始。鏈式儲存結構的線性表將採用一組任意的儲存單元存放線性表中的資料元素。由於不需要按順序儲存,鍊錶在插入 刪除資料元素時比順序儲存要快,但是在查詢乙個節點時則要比順序儲存要慢 使用鏈式儲存可以克服順序線...

自己動手寫乙個單鏈表

單向鍊錶 單鏈表 是鍊錶的一種,其特點是鍊錶的鏈結方向是單向的,對鍊錶的訪問要通過順序讀取從頭部開始。鏈式儲存結構的線性表將採用一組任意的儲存單元存放線性表中的資料元素。由於不需要按順序儲存,鍊錶在插入 刪除資料元素時比順序儲存要快,但是在查詢乙個節點時則要比順序儲存要慢 使用鏈式儲存可以克服順序線...