I believe you can filter them out in your original WP_Query using Taxonomy Parameters. Then you can delete the for loop altogether.
$args = array(
'post_type' => 'post',
'posts_per_page' =>-1,
'tax_query' => array(
array(
'taxonomy' => 'post_tag',
'field' => 'slug',
'terms' => array('fun','learning'),
'operator' => 'NOT IN',
),
),
);
$wpb_all_query = new WP_Query( $args );