Giter Site home page Giter Site logo

aind2-rnn's Introduction

Recurrent Neural Networks course project: time series prediction and text generation

Amazon Web Services

Instead of training your model on a local CPU (or GPU), you could use Amazon Web Services to launch an EC2 GPU instance. Please refer to the Udacity instructions in your classroom for setting up a GPU instance for this project. link for AIND students

Rubric items

Files Submitted

Criteria Meets Specifications
Submission Files RNN_project.ipynb, my_answers.py --> both the completed notebook RNN_project.ipynb as well as all completed python functions requested in the main notebook RNN_project.ipynb (TODO items) should be copied into this python script and submitted for grading.

Step 1: Implement a function to window time series

Criteria Meets Specifications
Window time series data. The submission returns the proper windowed version of input time series of proper dimension listed in the notebook.

Step 2: Create a simple RNN model using keras to perform regression

Criteria Meets Specifications
Build an RNN model to perform regression. The submission constructs an RNN model in keras with LSTM module of dimension defined in the notebook.

Step 3: Clean up a large text corpus

Criteria Meets Specifications
Find and remove all non-english or punctuation characters from input text data. The submission removes all non-english / non-punctuation characters.

Step 4: Implement a function to window a large text corpus

Criteria Meets Specifications
Implement a function to window input text data The submission returns the proper windowed version of input text of proper dimension listed in the notebook.

Step 5: Create a simple RNN model using keras to perform multiclass classification

Criteria Meets Specifications
Build an RNN model to perform multiclass classification. The submission constructs an RNN model in keras with LSTM module of dimension defined in the notebook.

Step 6: Generate text using a fully trained RNN model and a variety of input sequences

Criteria Meets Specifications
Generate text using a trained RNN classifier. The submission presents examples of generated text from a trained RNN module. The majority of this generated text should consist of real english words.

Submission

Before submitting your solution to a reviewer, you are required to submit your project to Udacity's Project Assistant, which will provide some initial feedback.

The setup is simple. If you have not installed the client tool already, then you may do so with the command pip install udacity-pa.

To submit your code to the project assistant, run udacity submit from within the top-level directory of this project. You will be prompted for a username and password. If you login using google or facebook, visit this link for alternate login instructions.

This process will create a zipfile in your top-level directory named rnn-.zip. This is the file that you should submit to the Udacity reviews system.

aind2-rnn's People

Contributors

cgearhart avatar godfreyhobbs avatar helenmel avatar neonwatty avatar ronny-udacity avatar sandyleo26 avatar scbrubaker02 avatar sudkul avatar tjflynn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aind2-rnn's Issues

Unit test error during udacity submit

Units tests use cleaned_text from my_answers, while it named clean_text both in my_answers.py and RNN_project.ipynb

Udacity submit output:
Failed Test: Step 3: Clean up a large text corpus

NameError: name 'cleaned_text' is not defined

Syntax warning nb_epoch

The rest of the calls to fit use the updated api epochs

But one call toward the bottom get a deprecated syntax warning.

model.fit(Xlarge, ylarge, batch_size=500, nb_epoch=30,verbose = 1)

UserWarning: The nb_epoch argument in fit has been renamed epochs.

Should be updated to

model.fit(Xlarge, ylarge, batch_size=500, epochs=30,verbose = 1)

General Spelling/ Theory Improvements

  1. Section 1.2 and 2.3 describe windows of length 5, but both discuss input vector of length 4 which seems like an error.
  2. Beneath "dogs are great" gif analogous is spelt analaogous.
  3. In section 2.3 "One-hot encoding characters" the first sentence reads:

There's just one last issue we have to deal with before tackle: machine learning algorithm deal with numerical data and all of our input/output pairs are characters

which doesn't make sense.

Happy to contribute to repo if required.

Goal inputs for `window_transform_series` do not match udacity_pa tests

In the notebook it shows that goal for window_transform_series(odd_nums) is displayed as:

--- the input X will look like ----
[[ 1  3]
 [ 3  5]
 [ 5  7]
 [ 7  9]
 [ 9 11]
 [11 13]]

But the project assistant seems to be looking for below and will fail if the output matches above.

[[ 1  3]
 [ 3  5]
 [ 5  7]
 [ 7  9]
 [ 9 11]]

Which is correct?

Thanks.

Unit tests use incorrect parameter name for build_part1_RNN()

Correct specification of build_part1_RNN(): def build_part1_RNN(step_size, window_size)
Unit tests performed during udacity submit do not supply window_size, that leads to following error:

Failed Test: Step 2: Create a simple RNN model for regression

TypeError: build_part1_RNN() missing 1 required positional argument: 'window_size'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.