Self Driving Car FAQ

https://www.udacity.com/drive/faq

FERNANDO가 정리해준 자료

The main point of this course is not knowing everything, but knowing the basic concepts and how to apply it when necessary. Then you can work in the most varied areas of the self-driving car industry.

Project 1

Here is a brief pipeline for P1:

Load 1 image

Apply grayscale()

Apply gaussian_blur()

Apply canny()

Apply region_of_interest()

Apply draw_lines()

Apply hough_lines()

Then you apply to every frame of the video All these functions are taught in the lessons. Watch every step, show the image result from every function and you will see the transformation.

Project Q&A

Join Udacity Self-Driving Car Nanodegree instructors as they guide you through project roadblockers and answer your questions live! (RECORDED)

HOUGH TRANSFORM VIDEOS

IMPROVEMENTS

Here is a link that can help you to improve the model by pre-processing the image. This technique is not premised to be approved in the project, but it can improve your results.http://akash0x53.github.io/blog/2013/04/29/RGB-Normalization/

SMOOTH LINES

One thing that you can do is to draw the lines based not only on the current frame but also on the past frames. You can create a list of parameters of the past frames and draw the lines based on the mean of these parameters.

You can do it by creating a class or just using global variables.

Hi! I'm sending you a few interesting links. Let me know if you like it :-)

For P2, to inspire you,

here is a link that can help you define your model and pre-process the images. This technique is not premised to be approved in the project, but it can improve your results.http://navoshta.com/traffic-signs-classification/

Project Q&A

Join Udacity Self-Driving Car Nanodegree instructors as they guide you through project roadblockers and answer your questions live! (RECORDED)

TensorFlow

Did you see this tutorial:

It's very simple and straight to the point...

And this video is great!!!

Gradient Descent Method

Here are some good links to better understand the Gradient Descent Method:

Activation Functions

Here is some good links to better understand the Activation Function:

PIPELINE

Here is a good pipeline to follow when training neural networks:

  • Select a smaller subset of the training data (about 20% after shuffling)

  • Start with a simple model & keep on increasing the complexity until you are able to overfit the training data (>90% accuracy on the smaller training set)

  • Then use the larger set with augmentation and dropout/maxpooling to reduce the over fitting

DATA AGUMENTATION

Data augmentation is used to balance your data set to reduce bias towards highly represented classes. It is also used when you have a model which overfits the training data i.e. training loss is low, training accuracy is high but not for validation data. In such cases you might want to generate more diverse training samples by randomly (and sensibly) augmenting your data.

WHEN IS AUGMENTED DATA USED?

Data augmentation is used when you observe overfitting in your model. If your model is not able to generalize well to new data then you may want to perform image augmentation to capture the characteristics of the test set. Example, brightness augmentation will ensure your model sees images of different lighting conditions during training. So it won't fit itself to any one lighting condition. So my point it is, you should incorporate augmented data for training once you achieve a model which overfits i.e. low training loss but high(er) validation loss.

  • If your model was performing very well - don't use augmented data

  • If your model was performing very poorly in the first place, then first get a model architecture which overfits your training data. Then incorporate augmented data.

MAKE SURE AUGMENTATION IS HAPPENING PROPERLY

Visualize the augmentation techniques on your data by plotting some images. Make sure its happening correctly. If augmentation is only messing up the images then such data won't help your model.

Here are some links that will help you understand more about CNN's, ok?

1 LINKEDIN RECOMMENDATION AND ENDORSEMENT

If it is of your interest, add me on Linkedin (if you have not already done) and then send the link to your profile here that I will make a recommendation. Make sure you have added the skills you learned in this Nanodegree and I will be able to endorse them. These recommendations will be made according to the evolution and participation of each one.

I will be very happy if you can also make a recommendation and endorse my skills. This is my Linkedin profile: linkedin.com/in/fernando-damasio/

2 FEEDBACK TIME (This is very, very important!)

I really want to be a 5-starts mentor! Although every week you send the feedback, I come here to ask for your detailed comments regarding my work. The intention is to improve my service as a mentor, okay? Here it goes:

  • How can I improve my mentor services?

  • How can I help you with your studies?

  • Did I ever leave you helpless in relation to the course? If so, in what situation and how could I have helped more?

Please, send me tips and suggestions...

Let me know what you think :-)

FEBRUARY 21, 2018

Hi again! If you did not check in this week, please do it. It is very important to keep track of your progress, okay?

Here are more very interesting and useful links. Enjoy!!! (and let me know what you think)

FEBRUARY 28, 2018

Hi again! If you did not check in recently, please do it. It is very important to keep track of your progress and this way I can help you more.

Let me know,

  • Which lessons and projects you've completed this week?
  • Are you stuck? How can I help you?
  • Are you having problems with Time Management?

Here are more very interesting and useful links. Enjoy!!! (and let me know what you think)

Best regards,

MARCH 08, 2018

Dear student,

If you did not check in recently, please do it. It is essential to keep track of your progress and this way I can help you more. Let me know:

  • Are you stuck (yes or no)? How can I help you with the lessons?
  • Are you having problems with Time Management?

Two Important things:

1 LINKEDIN RECOMMENDATION AND ENDORSEMENT

If it is of your interest, add me on Linkedin (if you have not already done)

And send the link to your profile here in the chat. Make sure you have added the skills you learned in this Nanodegree and I will be able to endorse them.

These recommendations will be made according to the evolution and participation of each one. I will be pleased if you can also make a recommendation and endorse my skills.

2 FEEDBACK TIME

I want to be a 5-starts mentor! Please, send me your detailed comments regarding my work. The intention is to improve my service as a mentor, okay?

  1. How can I improve my mentor services? How can I help you with your studies?
  2. Did I ever leave you helpless on the course? If so, in what situation and how could I have helped more?
  3. Are you reading the links that I sent to you every week?

Best regards,

MARCH 14, 2018

Dear Student,

If you did not check in recently, please do it. It is essential to keep track of your progress and this way I can help you more.

Let me know,

  • Which lessons and projects you've completed this week?
  • Are you stuck? How can I help you?
  • Are you having problems with Time Management?

And here is an exciting post from Udacity Blog:5 Must-Read AI Newsletter

  1. The Algorithm: The Algorithm is sent out by the MIT Technology Review, and is read by virtually all AI professionals. It arrives in your inbox every weekday, providing brief, no-nonsense updates on AI news…

  2. ODSC: The Open Data Science Conference (ODSC) is well known for its global events on the future of AI and Data Science. Their AccelerateAI newsletter is a great insider source of information on the commercial applications of AI…

  3. Data Elixir: Data Elixir is put together by Lon Riesberg, a former NASA data scientist. It’s become an essential weekly read for anyone even remotely interested in AI, machine learning, or data…

  4. AI Weekly: AI Weekly’s simple design means you can quickly scan through industry news and articles on AI tools and hardware. Its “Some Inspiration” section is an excellent…

  5. Import AI: Written by Open AI’s Jack Clark, Import AI is a weekly, bare-bones text newsletter. Its succinct news summaries of major events are highly recommended, as is Jack’s commentary providing context on every story…

Don’t wait. Subscribe to these newsletters now! You’ll stay informed and you’ll always have a view on the latest AI developments.

MARCH 21, 2018

If you did not check in this week, please do it. It is essential to keep track of your progress and this way I can help you more.

Let me know,

  • Which lessons and projects you've completed this week?
  • Are you stuck? How can I help you?
  • Are you having problems with Time Management?

And here is our weekly links. Enjoy!!! And let me know your opinion:

  1. [VIDEO] DensePose: Dense Human Pose Estimation In The Wild
  2. [ARTICLE] AI, Robotics, And The Future Of Precision Agriculture
  3. [VIDEO] Generative Artificial Intelligence
  4. [ARTICLE] What's the Difference? Agile vs Scrum vs Waterfall vs Kanban
  5. [POST] Building a Deep Neural Net In Google Sheets

Fernando's help for Behavior Cloning Project

TIPS FOR P3

  1. For every image, crop it, normalize it and resize it.
  2. Exclude something like 70% of the data that has angles near to zero, maybe steerings <= 0.85. We have a lot of data going straight, so the model will have bias associated with going straight.
  3. Duplicate all the data, mirroring the image and the steering angle, this way you will have double # of images.
  4. Run the sim in training mode and record a lot of data in the points that your car is getting out of the track.
  5. Record data going in the opposite direction too...
  6. You can try the Nvidia architecture
  7. I trained my model for hundred of epochs, but not every time. After training, I was saving the weights and after I recorded more data, I preloaded the weights so that the learning would run faster... I did it a few times, and it worked!

Project Q&A

Join Udacity Self-Driving Car Nanodegree instructors as they guide you through project roadblockers and answer your questions live! (RECORDED)

LESSONS LEARNED

Here is a link to some lessons learned about the Behavioral Cloning project:https://discussions.udacity.com/t/cant-access-helpful-guide-from-paul-heraty-oct-cohort/217945

INSPIRATION

And some inspiration...https://medium.com/@MSqalli/teach-a-car-how-to-drive-b54e921f64d2#.uu1enoz1c

CNN VIDEO

These videos are great for understanding CNN:https://www.youtube.com/watch?v=FmpDIaiMIeA,https://www.youtube.com/watch?v=JiN9p5vWHDY

FILE PATH

img_file = img_file.split('/')[-1]
img_file = 'data/IMG/'+img_file.split('\\')[-1]

I'm just returning the filename without the path by using .split function. I split using '/' and '\' because I was using two different OS's to generate the data. Then, I just added 'data/IMG/' to the start of the path.

RESIZING AND CROPPING

For resizing images inside the model you can use Lambda layer & tensorflow's resize. For cropping you can use Keras' Cropping2D Layer. Here is an example:

def my_resize_function(input):
    from keras.backend import tf as ktf
    return ktf.image.resize_images(input, (new_height, new_width)

model = Sequential()
# crop inside the model
model.add(Cropping2D(cropping=((70, 25), (1, 1)), input_shape=(160, 320, 3)))
# re-size inside the model
model.add(Lambda(lambda x: my_resize_function(x)))

With this you won't have to make changes to drive.py. But remember these 2 methods are known to have issues in certain Keras versions. So many students opt for doing these functions outside the model if it doesn't work for them.

DATA AUGMENTATION

  • You can use random brightness adjustment as a augmentation technique.
  • I would suggest you use a generator and randomly decide whether or not to flip an image in every forward pass. These random selections & adjustments will mean that the distribution of steering angles will be more balanced and the images will be more diverse.

DROP OUT

Here is the best explanations I know about it:https://www.youtube.com/watch?v=G3KUvHx9GDY

If you want to know th

If you want to know the math behind it, this 11min video is great:https://www.youtube.com/watch?v=UcKPdAM8cnI

MARCH 29, 2018

Hi! This week I prepared something different. I made a collection of the main blogs and websites I follow. Here it is! Please send me suggestions on more blogs and websites related to Self-driving Cars and Machine Learning, okay? I also appreciate your feedback regarding this collection.

If you did not check in recently, please do it. It is essential to keep track of your progress and this way I can help you more.

Let me know,

  • Which lessons and projects you've completed this week?
  • Are you stuck? How can I help you?
  • Are you having problems with Time Management?

APRIL 07, 2018

If you did not check in this week, please do it. It is essential to keep track of your progress and this way I can help you more.

Let me know,

  • Which lessons and projects you've completed this week?
  • Are you stuck? How can I help you?
  • Are you having problems with Time Management?

LINKS: Open Datasets for Deep Learning

Image Datasets

Natural Language Processing

Audio/Speech Datasets

Others

APRIL 12, 2018

Dear Student,

1 LINKEDIN ENDORSEMENT

If it is of your interest, add me on Linkedin (if you have not already done)

and send the link to your profile here in the chat. Make sure you have added the skills you learned in this Nanodegree and I will be able to endorse them.

These recommendations will be made according to the evolution and participation of each one.

2 FEEDBACK TIME

I want to be a 5-starts mentor! Please, send me your detailed comments regarding my work. The intention is to improve my service as a mentor, okay?

  1. How can I improve my mentor services? How can I help you with your studies?
  2. Did I ever leave you helpless on the course? If so, in what situation and how could I have helped more?
  3. Are you reading the links that I sent to you every week?

Best regards,

results matching ""

    No results matching ""