using tensorflow huber loss in keras - splunktool

文章推薦指數: 80 %
投票人數:10人

A loss function is one of the two arguments required for compiling a Keras model:. All losses are available both via a class handle and via ... usingtensorflowhuberlossinkerasLastUpdated:SunJul312022ComputestheHuberlossbetweeny_trueandy_pred., image OverviewResizeMethodcrop_and_resizedraw_bounding_boxesextract_glimpseresizeresize_arearesize_bicubicresize_bilinearresize_image_with_padresize_nearest_neighborsample_distorted_bounding_box, tf.ragged Overviewboolean_maskconstantcrosscross_hashedmap_flat_valuesrangerow_splits_to_segment_idssegment_ids_to_row_splitsstackstack_dynamic_partitions, test OverviewStubOutForTestingassert_equal_graph_defcompute_gradientcompute_gradient_errorget_temp_dirtest_src_dir_path Viewaliases Compataliasesformigration See Migrationguidefor moredetails. tf.compat.v1.keras.losses.Huber tf.keras.losses.Huber( delta=1.0, reduction=losses_utils.ReductionV2.AUTO, name='huber_loss' )Foreachvaluexinerror=y_true-y_pred:loss=0.5*x^2 if|x|<=d loss=0.5*d^2+d*(|x|-d)if|x|>dStandaloneusage:y_true=[ [0,1], [0,0] ] y_pred=[ [0.6,0.4], [0.4,0.6] ] #Using'auto'/'sum_over_batch_size' reductiontype. h=tf.keras.losses.Huber() h(y_true,y_pred).numpy() 0.155[Showmore...]Suggestion:2Icameherewiththeexactsamequestion.Theacceptedansweruseslogcoshwhichmayhavesimilarproperties,butitisn'texactlyHuberLoss.Here'showIimplementedHuberLossforKeras(notethatI'musingKerasfromTensorflow1.5).importnumpyasnp importtensorflowastf '' ' 'Huberloss. 'https://jaromiru.com/2017/05/27/on-using-huber-loss-in-deep-q-learning/ 'https://en.wikipedia.org/wiki/Huber_loss '' ' defhuber_loss(y_true,y_pred,clip_delta=1.0): error=y_true-y_pred cond=tf.keras.backend.abs(error)dStandaloneusage:y_true=[ [0,1], [0,0] ] y_pred=[ [0.6,0.4], [0.4,0.6] ] #Using'auto'/'sum_over_batch_size' reductiontype. h=tf.keras.losses.Huber() h(y_true,y_pred).numpy() 0.155[Showmore...]Suggestion:4UpdatedJuly21st,2022Inthisexample,we’redefiningthelossfunctionbycreatinganinstanceofthelossclass.Usingtheclassisadvantageousbecauseyoucanpasssomeadditionalparameters. fromtensorflow importkeras fromtensorflow.keras importlayers model=keras.Sequential() model.add(layers.Dense(64,kernel_initializer='uniform',input_shape=(10,))) model.add(layers.Activation('softmax')) loss_function=keras.losses.SparseCategoricalCrossentropy(from_logits=True) model.compile(loss=loss_function,optimizer='adam')IfyouwanttousealossfunctionthatisbuiltintoKeraswithoutspecifyinganyparametersyoucanjustusethestringaliasasshownbelow:model.compile(loss='sparse_categorical_crossentropy',optimizer='adam')TheBinaryCrossentropywillcalculatethecross-entropylossbetweenthepredictedclassesandthetrueclasses.Bydefault,thesum_over_batch_sizereductionisused.Thismeansthatthelosswillreturntheaverageoftheper-samplelossesinthebatch.y_true=[ [0.,1.], [0.2,0.8], [0.3,0.7], [0.4,0.6] ] y_pred=[ [0.6,0.4], [0.4,0.6], [0.6,0.4], [0.8,0.2] ] bce=tf.keras.losses.BinaryCrossentropy(reduction='sum_over_batch_size') bce(y_true,y_pred).numpy()[Showmore...]Suggestion:5Alllossesareavailablebothviaaclasshandleandviaafunctionhandle.Theclasshandlesenableyoutopassconfigurationargumentstotheconstructor(e.g.loss_fn=BinaryCrossentropy(from_logits=True)),andtheyperformreductionbydefaultwhenusedinastandaloneusage.,Theclasshandlesenableyoutopassconfigurationargumentstotheconstructor(e.g.loss_fn=CategoricalCrossentropy(from_logits=True)),andtheyperformreductionbydefaultwhenusedinastandalonewaytheyaredefinedseparately,allthelossfunctionsareavailableunderKerasmodule,exactlylikeinPyTorchallthelossfunctionswereavailableinTorchmodule,youcanaccessTensorflowlossfunctionsbycallingtf.keras.lossesmethod.,Asoneoftheleadingbrandsinmobility,weseeourrolesasanenablerinmovingtheindustryforwardandfuture-readythroughsuchpartnershipsintheinnovationecosystem.,Inmachinelearninganddeeplearningapplications,thehingelossisalossfunctionthatisusedfortrainingclassifiers.Thehingelossisusedforproblemslike“maximum-margin”classification,mostnotablyforsupportvectormachines(SVMs)Youcanusethelossfunctionbysimplycallingtf.keras.lossasshowninthebelowcommand,andwearealsoimportingNumPyadditionallyforourupcomingsampleusageoflossfunctions:importtensorflowastf importnumpyasnp bce_loss=tf.keras.losses.BinaryCrossentropy()HereisstandaloneusageofBinaryCrossEntropylossbytakingsampley_trueandy_preddatapoints:#inputs y_true=[ [0.,1.], [0.,0.] ] y_pred=[ [0.5,0.4], [0.4,0.5] ] #Using'auto'/'sum_over_batch_size' reductiontype bce_loss=tf.keras.losses.BinaryCrossentropy() bce_loss(y_true,y_pred).numpy()Youcanalsocallthelossusingsampleweightbyusingbelowcommand:bce_loss(y_true,y_pred,sample_weight=[1,0]).numpy()[Showmore...]Suggestion:6AlossfunctionisoneofthetwoargumentsrequiredforcompilingaKerasmodel:,Thepurposeoflossfunctionsistocomputethequantitythatamodelshouldseek tominimizeduringtraining.,Lossfunctionsappliedtotheoutputofamodelaren'ttheonlywayto createlosses.,Anycallablewiththesignatureloss_fn(y_true,y_pred) thatreturnsanarrayoflosses(oneofsampleintheinputbatch)canbepassedtocompile()asaloss. Notethatsampleweightingisautomaticallysupportedforanysuchloss.fromtensorflow importkeras fromtensorflow.keras importlayers model=keras.Sequential() model.add(layers.Dense(64,kernel_initializer='uniform',input_shape=(10,))) model.add(layers.Activation('softmax')) loss_fn=keras.losses.SparseCategoricalCrossentropy() model.compile(loss=loss_fn,optimizer='adam')#passoptimizerbyname:defaultparameterswillbeused model.compile(loss='sparse_categorical_crossentropy',optimizer='adam')loss_fn=keras.losses.SparseCategoricalCrossentropy(from_logits=True)>>>tf.keras.losses.mean_squared_error(tf.ones((2,2,)),tf.zeros((2,2))) >>>loss_fn=tf.keras.losses.MeanSquaredError(reduction='sum_over_batch_size') >>>loss_fn(tf.ones((2,2,)),tf.zeros((2,2))) >>>loss_fn=tf.keras.losses.MeanSquaredError(reduction='sum') >>>loss_fn(tf.ones((2,2,)),tf.zeros((2,2))) Suggestion:7 November13,2020 fromtensorflow importkeras yActual=[4,-1.5,5,2] yPredicted=[3.5,1,5,3] huberObject=keras.losses.Huber(delta=0.5) huberTensor=huberObject(yActual,yPredicted) huber=huberTensor.numpy() print(huber)huberTensor=keras.losses.huber(yActual,yPredicted,delta=0.5) huber=huberTensor.numpy()SimilarArticles1.)howisthecategorical_crossentropyimplementedinkeras?2.)howtosetrmsecostfunctionintensorflow3.)howtousenumpyfunctionsonakerastensorinthelossfunction?4.)maxmarginlossintensorflow5.)computemeansquared,absolutedeviationandcustomsimilaritymeasure-python/numpy6.)negativehugelossintensorflow7.)whyamihavingthiserror?typeerror:failedtoconvertobjectoftypetotensor8.)howisthelosscalculatedintensorflow?9.)customkeraslossfunctionwithinternalpredictionTrendingTechnologyandroid×13870angular×16962api×4899css×14556html×21320java×28499javascript×57492json×17645php×21600python×502736reactjs×16351sql×19874typescript×7220xml×2600Mostpopularinpython1.)peekstackinpython32.)notabletoget_itemfromawsdynamodbusingpython?3.)scikit-learncrossvalidationcustomsplitsfortimeseriesdata4.)findthereisanemojiinastringinpython3[duplicate]5.)howtosaveaplotinseabornwithpython[duplicate]6.)howtosendaemailbodypartthroughmimemultipart7.)performancedifferenceinpandasread_tablevs.read_csvvs.from_csvvs.read_excel?8.)typeerrorinvisualisingpandasdataframeasheatmap9.)imagefield()notsavingimagesinmodelform-django/python10.)django-rest-frameworkrelationships&hyperlinkedapiissues



請為這篇文章評分?