利用50层ResNet实现手势数字的识别,准确率可达95%。。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-07-20 12:58 assign8
文件 8586 2018-07-20 12:58 assign8
esnet_gesture.py
文件 404 2018-07-20 08:09 assign8 est_dataset.py
文件 4878 2018-05-21 11:19 assign8
esnets_utils.py
目录 0 2018-02-11 14:56 assign8images
文件 77517 2017-11-05 13:03 assign8imagesvanishing_grad_kiank.png
文件 69787 2017-11-05 13:03 assign8imagesskip_connection_kiank.png
文件 476233 2017-11-05 13:03 assign8imagessigns_data_kiank.png
文件 50220 2017-11-05 13:05 assign8images
esnet_kiank.png
文件 955979 2017-11-05 13:21 assign8imagesmy_image.jpg
文件 43859 2017-11-05 13:04 assign8imagesidblock3_kiank.png
文件 33797 2017-11-05 13:04 assign8imagesidblock2_kiank.png
文件 44643 2017-11-05 13:03 assign8imagesconvblock_kiank.png
目录 0 2018-02-11 14:56 assign8datasets
文件 13281872 2017-11-05 15:46 assign8datasets rain_signs.h5
文件 1477712 2017-11-05 13:08 assign8datasets est_signs.h5
目录 0 2018-05-21 11:21 assign8\__pycache__
文件 3843 2018-05-21 11:21 assign8\__pycache__
esnets_utils.cpython-35.pyc
import os
import numpy as np
import tensorflow as tf
import h5py
import math
def load_dataset():
train_dataset = h5py.File(‘datasets/train_signs.h5‘ “r“)
train_set_x_orig = np.array(train_dataset[“train_set_x“][:]) # your train set features
train_set_y_orig = np.array(train_dataset[“train_set_y“][:]) # your train set labels
# print(train_set_x_orig.shape)
# print(train_set_y_orig.shape)
test_dataset = h5py.File(‘datasets/test_signs.h5‘ “r“)
test_set_x_orig = np.array(test_dataset[“test_set_x“][:]) # your test set features
test_set_y_orig = np.array(test_dataset[“test_set_y“][:]) # your test set labels
# print(test_set_x_orig.shape)
# print(test_set_y_orig.shape)
classes = np.array(test_dataset[“list_classes“][:]) # the list of classes
train_set_y_orig = train_set_y_orig.reshape((1 train_set_y_orig.shape[0]))
test_set_y_orig = test_set_y_orig.reshape((1 test_set_y_orig.shape[0]))
return train_set_x_orig train_set_y_orig test_set_x_orig test_set_y_orig classes
#load_dataset()
def random_mini_batches(X Y mini_batch_size = 64 seed = 0):
“““
Creates a list of random minibatches from (X Y)
Arguments:
X -- input data of shape (input size number of examples) (m Hi Wi Ci)
Y -- true “label“ vector (containing 0 if cat 1 if non-cat) of shape (1 number of examples) (m n_y)
mini_batch_size - size of the mini-batches integer
seed -- this is only for the purpose of grading so that you‘re “random minibatches are the same as ours.
Returns:
mini_batches -- list of synchronous (mini_batch_X mini_batch_Y)
“““
m = X.shape[0] # number of training examples
mini_batches = []
np.random.seed(seed)
# Step 1: Shuffle (X Y)
permutation = list(np.random.permutation(m))
shuffled_X = X[permutation:::]
shuffled_Y = Y[permutation:]
# Step 2: Partition (shuffled_X shuffled_Y). Minus the end case.
num_complete_minibatches = math.floor(m/mini_batch_size) # number of mini batches of size mini_batch_size in your partitionning
for k in range(0 num_complete_minibatches):
mini_batch_X = shuffled_X[k * mini_batch_size : k * mini_batch_size + mini_batch_size:::]
mini_batch_Y = shuffled_Y[k * mini_batch_size : k * mini_batch_size + mini_batch_size:]
mini_batch = (mini_batch_X mini_batch_Y)
mini_batches.append(mini_batch)
# Handling the end case (last mini-batch < mini_batch_size)
if m % mini_batch_size != 0:
mini_batch_X = shuffled_X[num_complete_minibatches * mini_batch_size : m:::]
mini_batch_Y = shuffled_Y[num_complete_minibatches * mini_batch_size : m:]
mini_batch = (mini_batch_X mini_batch_Y)
mini_batches.append(mini_batch)
return mini_batches
def convert_to_one_hot(Y C):
Y = np.eye(C)[Y.reshape(-1)].T
return Y
def forward_propagation_for_predict(X parameters):
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-07-20 12:58 assign8
文件 8586 2018-07-20 12:58 assign8
esnet_gesture.py
文件 404 2018-07-20 08:09 assign8 est_dataset.py
文件 4878 2018-05-21 11:19 assign8
esnets_utils.py
目录 0 2018-02-11 14:56 assign8images
文件 77517 2017-11-05 13:03 assign8imagesvanishing_grad_kiank.png
文件 69787 2017-11-05 13:03 assign8imagesskip_connection_kiank.png
文件 476233 2017-11-05 13:03 assign8imagessigns_data_kiank.png
文件 50220 2017-11-05 13:05 assign8images
esnet_kiank.png
文件 955979 2017-11-05 13:21 assign8imagesmy_image.jpg
文件 43859 2017-11-05 13:04 assign8imagesidblock3_kiank.png
文件 33797 2017-11-05 13:04 assign8imagesidblock2_kiank.png
文件 44643 2017-11-05 13:03 assign8imagesconvblock_kiank.png
目录 0 2018-02-11 14:56 assign8datasets
文件 13281872 2017-11-05 15:46 assign8datasets rain_signs.h5
文件 1477712 2017-11-05 13:08 assign8datasets est_signs.h5
目录 0 2018-05-21 11:21 assign8\__pycache__
文件 3843 2018-05-21 11:21 assign8\__pycache__
esnets_utils.cpython-35.pyc
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)