If I owned a small business I would want to ramp my customer base quickly since I would have a variety of other expenses which would be killing me until my revenue was high enough. (Fixed monthly costs like insurance, rent, utilities etc.)
Yelp is a service I and many other people are using more and more to decide where to eat, shop, even use the dentist.
Yelp is not charging for just an ad for a user, they are charging for an ad to a Yelp user who has the ability to put a yelp review up which can help drive business in the future.
It is important to get Yelp users to try your business so you can get those stars so you can get more customers. No business owner is worried about getting bad reviews since they naturally believe their service/food/etc. is the best in the market so that isn't a factor either.
So, yes on a CPM basis this is a terrible deal, but on a CPM basis for a yelp user the economics might look much differently.