Index: src/wp-includes/class-walker-nav-menu.php
===================================================================
--- src/wp-includes/class-walker-nav-menu.php	(revision 51545)
+++ src/wp-includes/class-walker-nav-menu.php	(working copy)
@@ -106,6 +106,7 @@
 	 *
 	 * @since 3.0.0
 	 * @since 4.4.0 The {@see 'nav_menu_item_args'} filter was added.
+	 * @since x.x.x Removed redundant title attributes.
 	 *
 	 * @see Walker::start_el()
 	 *
@@ -169,8 +170,11 @@
 
 		$output .= $indent . '<li' . $id . $class_names . '>';
 
+		/** This filter is documented in wp-includes/post-template.php */
+		$title = apply_filters( 'the_title', $item->title, $item->ID );
+
 		$atts           = array();
-		$atts['title']  = ! empty( $item->attr_title ) ? $item->attr_title : '';
+		$atts['title']  = ( ! empty( $item->attr_title ) && trim( strtolower( $item->attr_title ) ) != trim( strtolower( $title ) ) ) ? $item->attr_title : '';
 		$atts['target'] = ! empty( $item->target ) ? $item->target : '';
 		if ( '_blank' === $item->target && empty( $item->xfn ) ) {
 			$atts['rel'] = 'noopener';
@@ -209,9 +213,6 @@
 			}
 		}
 
-		/** This filter is documented in wp-includes/post-template.php */
-		$title = apply_filters( 'the_title', $item->title, $item->ID );
-
 		/**
 		 * Filters a menu item's title.
 		 *
