1
Applying Techniques in Supervised Deep Learning to Steering Angle Prediction in Autonomous Vehicles Vinay Sriram, Petar Penkov, James Ye PROBLEM DEFINITION IMAGE PRE-PROCESSING CONVOLUTIONAL NEURAL NETWORK MODEL RESULTS FUTURE WORK [1] Eliminate top-half of the images, and downsample by a factor of 100. This size captures necessary information for prediction and is of low enough dimensionality to allow training a network to be computationally feasible. [2] Apply edge-detection: Construct an image based on thresholding and the Sobel kernel operator on input : Define ) , + = −1 0 1 −2 0 2 −1 0 1 ∗ ′, 1 2 1 0 0 0 −1 −2 −1 ∗ ′ The development of effective autonomous vehicles is a popular application of machine learning and control. We wish to solve a learning problem predicting steering angles 4 6 7 over the course of a road segment from Udacity’s low-resolution images 4 6 7 where each 8 is defined by a 640×480×3 RGB tensor. We partition the driving data with a 70:30 train-to-test ratio such that the test-set contains significant turning. Introduce more class labels to better approximate angle continuity (for this, more data must be collected to provide a sufficient training volume for higher-magnitude labels). Introduce additional conv. layers to reduce the bias of the model, and run stochastic gradient descent (on resources with more computational power) for a greater number of epochs for better convergence at local optima. Compute cross-image gradients that can determine directions of feature change to better predict turn angles. For each (, ) in the output image, set 8B = 255 if either of the following are true, and set 8B =0 otherwise. Sobel gradient magnitude ) (, ) D + + (, ) D is above some cutoff threshold (preserving only the edges). Grayscale value of the pixel (, ) is above some cutoff threshold (preserving only white or near-white sections of the image). Together, lane capture is reasonable. We discretize the problem: each steering angle gets a class label 1,101 , where each label represents a range of ~0.01 rad. Forward Propagation: IJ4 = (I) (I) and IJ4 = I ( I ) with 8 (4) = 8 and O,P = (QJ4) . Layer has activation func. (I) . Max Pooling [Class Probabilities] [Input Image] [Softmax Layer] [Fully-Connected Layer] [Conv. Layer - ReLu Activation] REFERENCES Cameron, Oliver. Open Sourcing 223GB of Driving Data. Medium, 5 Oct. ‘16. Pomerleau, Dean. Neural Net Perception for Mobile Robot Guidance. (1993) Unsupervised Feature Learning and Deep Learning Tutorial. Stanford. Web. http://ufldl.stanford.edu/tutorial/supervised/MultiLayerNeuralNetworks Cost [ examples]: , = 4 6 4 D O,P 8 8 D 6 8X4 Training uses the Back-Propagation algorithm to optimize the cost J. The update rule is : I ∶= ∆ I + O \ with I = I 4 6 I . I = I 7 IJ4 ′( I ) O \ = (IJ4) I 7 ^ I = ( ^ I 7 ^ IJ4 )′( ^ I ) O c \ = I ∗ ( ^ IJ4 ) 6 8X4 For Typical Layers: For Convolutional Layers For training and testing, we considered in particular highway driving. The conv. neural network was effective at predicting steering angle within reasonable error. Sobel pre-filtering of images provided very marginal benefits (between 0.001 and 0.007 RMSE on test sets). RMSE of the above test segment was 0.031 (without Sobel preprocessing) and 0.034 (with preprocessing).

Applying Techniques in Supervised Deep Learning to ...cs229.stanford.edu/proj2016/poster/SriramPenkovYe...benefits (between 0.001 and 0.007 RMSE on test sets). • RMSE of the above

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Applying Techniques in Supervised Deep Learning to ...cs229.stanford.edu/proj2016/poster/SriramPenkovYe...benefits (between 0.001 and 0.007 RMSE on test sets). • RMSE of the above

Printing:Thisposteris48”wideby36”high.It’sdesignedtobeprintedonalargeformatprinter.

CustomizingtheContent:Theplaceholdersinthisformattedforyou.placeholderstoaddtext,orclickanicontoaddatable,chart,SmartArtgraphic,pictureormultimediafile.

Ttext,justclicktheBulletsbuttonontheHometab.

Ifyouneedmoreplaceholdersfortitles,contentofwhatyouneedanddragitintoplace.PowerPoint’sSmartGuideswillhelpyoualignitwitheverythingelse.

Wanttouseyourownpicturesinsteadofours?Noproblem!JustpictureMaintaintheproportionofpicturesasyouresizebydraggingacorner.

Applying Techniques in Supervised Deep Learning to Steering Angle Prediction in Autonomous Vehicles

Vinay Sriram, Petar Penkov, James Ye

PROBLEM DEFINITION

IMAGE PRE-PROCESSING

CONVOLUTIONAL NEURAL NETWORK MODEL

RESULTS FUTURE WORK

• [1]Eliminatetop-halfoftheimages,anddownsamplebyafactorof100.Thissizecapturesnecessaryinformationforpredictionandisoflowenoughdimensionalitytoallowtraininganetworktobecomputationallyfeasible.

• [2]Applyedge-detection:Constructanimage𝑋 basedonthresholdingandtheSobelkerneloperatoroninput𝑋’:

Define 𝑆), 𝑆+ =−1 0 1−2 0 2−1 0 1

∗ 𝑋′,1 2 10 0 0−1 −2 −1

∗ 𝑋′

• Thedevelopmentofeffectiveautonomousvehiclesisapopularapplicationofmachinelearningandcontrol.

• Wewishtosolvealearningproblempredictingsteeringangles 𝛼4…𝛼6 7 overthecourseofaroadsegmentfromUdacity’s low-resolutionimages 𝑋4 …𝑋6 7 whereeach𝑋8 isdefinedbya640×480×3 RGBtensor.

• Wepartitionthedrivingdatawitha70:30train-to-testratiosuchthatthetest-setcontainssignificantturning.

• Introducemoreclasslabelstobetterapproximateanglecontinuity(forthis,moredatamustbecollectedtoprovideasufficienttrainingvolumeforhigher-magnitudelabels).

• Introduceadditionalconv.layerstoreducethebiasofthemodel,andrunstochasticgradientdescent(onresourceswithmorecomputationalpower)foragreaternumberofepochsforbetterconvergenceatlocaloptima.

• Computecross-imagegradientsthatcandeterminedirectionsoffeaturechangetobetterpredictturnangles.Foreach(𝑖, 𝑗) intheoutputimage,set𝑋8B = 255 ifeither

ofthefollowingaretrue,andset𝑋8B = 0 otherwise.• Sobelgradientmagnitude 𝑆)(𝑖, 𝑗)D + 𝑆+(𝑖, 𝑗)D isabove

somecutoffthreshold(preservingonlytheedges).• Grayscalevalueofthepixel(𝑖, 𝑗) isabovesomecutoff

threshold(preservingonlywhiteornear-whitesectionsoftheimage).Together,lanecaptureisreasonable.

𝑋′ 𝑋

Wediscretizetheproblem:eachsteeringanglegetsaclasslabel𝑥 ∈ 1,101 ,whereeachlabelrepresentsarangeof~0.01rad.ForwardPropagation:𝑧 IJ4 = 𝑊(I)𝑎(I) and𝑎 IJ4 = 𝑓I(𝑧 I )with𝑎8

(4) = 𝑥8 andℎO,P = 𝑎(QJ4).Layer𝑙 hasactivationfunc.𝑓(I) .

MaxPooling

[ClassProbabilities]

[InputImage]

[SoftmaxLayer] [Fully-ConnectedLayer] [Conv.Layer- ReLuActivation]

REFERENCESCameron,Oliver.OpenSourcing223GBofDrivingData.Medium,5Oct.‘16.

Pomerleau,Dean.NeuralNetPerceptionforMobileRobotGuidance.(1993)

UnsupervisedFeatureLearningandDeepLearningTutorial.Stanford.Web.http://ufldl.stanford.edu/tutorial/supervised/MultiLayerNeuralNetworks

Cost[𝑚 examples]:𝐽 𝑊, 𝑏 = 46∑ 4

DℎO,P 𝑥8 − 𝑦8

D68X4

TrainingusestheBack-Propagation algorithmtooptimizethecostJ.Theupdateruleis:∆𝑊 I ∶= ∆𝑊 I + 𝛻O \ 𝐽

with𝑊 I = 𝑊 I − 𝛼 46∆𝑊 I .

𝛿 I = 𝑊 I 7𝛿 IJ4 𝑓′(𝑧 I )

𝛻O \ 𝐽 = 𝛿(IJ4) 𝑎 I 7

𝛿^I = 𝑢𝑝𝑠𝑎𝑚𝑝𝑙𝑒(𝑊 I 7𝛿^

IJ4 )𝑓′(𝑧^I )

𝛻Oc\ 𝐽 = ∑ 𝑎 I ∗ 𝑟𝑜𝑡(𝛿^

IJ4 )68X4

ForTypicalLayers:

ForConvolutionalLayers

• Fortrainingandtesting,weconsideredinparticularhighwaydriving.Theconv.neuralnetworkwaseffectiveatpredictingsteeringanglewithinreasonableerror.

• Sobelpre-filteringofimagesprovidedverymarginalbenefits(between0.001and0.007RMSEontestsets).

• RMSEoftheabovetestsegmentwas0.031(withoutSobelpreprocessing)and0.034(withpreprocessing).