Preheat the oven to 375°F (190°C).
In a large skillet, heat the olive oil over medium heat. Add the onion and garlic and cook until softened, about 3 minutes.
Add the ground beef and cook until browned, breaking up any large chunks with a spoon.
Stir in the tomato paste, thyme, rosemary, salt, and pepper.
Add the beef broth and bring to a simmer. Cook for 10 minutes.
Add the peas and carrots and cook for an additional 5 minutes.
Meanwhile, steam the cauliflower until tender, about 10 minutes.
In a separate bowl, mash the cauliflower with butter, heavy cream, salt, and pepper.
Spread the beef mixture into a baking dish. Spoon the mashed cauliflower on top and smooth out evenly.
Sprinkle the shredded cheddar cheese over the top.
Bake for 25-30 minutes, or until the cheese is melted and bubbly and the shepherd's pie is heated through.