资源简介

利用50层ResNet实现手势数字的识别,准确率可达95%。。

资源截图

代码片段和文件信息

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\resnet_gesture.py
     文件         404  2018-07-20 08:09  assign8\test_dataset.py
     文件        4878  2018-05-21 11:19  assign8\resnets_utils.py
     目录           0  2018-02-11 14:56  assign8\images\
     文件       77517  2017-11-05 13:03  assign8\images\vanishing_grad_kiank.png
     文件       69787  2017-11-05 13:03  assign8\images\skip_connection_kiank.png
     文件      476233  2017-11-05 13:03  assign8\images\signs_data_kiank.png
     文件       50220  2017-11-05 13:05  assign8\images\resnet_kiank.png
     文件      955979  2017-11-05 13:21  assign8\images\my_image.jpg
     文件       43859  2017-11-05 13:04  assign8\images\idblock3_kiank.png
     文件       33797  2017-11-05 13:04  assign8\images\idblock2_kiank.png
     文件       44643  2017-11-05 13:03  assign8\images\convblock_kiank.png
     目录           0  2018-02-11 14:56  assign8\datasets\
     文件    13281872  2017-11-05 15:46  assign8\datasets\train_signs.h5
     文件     1477712  2017-11-05 13:08  assign8\datasets\test_signs.h5
     目录           0  2018-05-21 11:21  assign8\__pycache__\
     文件        3843  2018-05-21 11:21  assign8\__pycache__\resnets_utils.cpython-35.pyc

评论

共有 条评论