A VPN is a Virtual Private Network. Usually requires being able to have an existing network at some address to connect to (some routers can setup a VPN), you'll of course need to know the IP and login of the VPN host in order to log in.
Some public wifi hotspots may not even allow you to log into the VPN if they're restricted to web services. Not to mention seriously reducing your access speed if you're thinking bout doing this:
You -> public wifi -> Home network -> VPN -> outbound internet from house -> Desired Site then back down.
Especially since you're going to be relying on the upstream speed of the public wifi as well as the upstream from your residential service, plus knowing what your IP is (short of using dyndns).
I'd still consider connecting to a public wifi to be insecure since there's no telling what happens between you and the VPN, especially since you're relying on the connection to get to the VPN.