The most common causes for unexpected freezes are:
- Malfunctioning/Overheating hardware:
Make sure you regularly check your computer for signs of dust gathering on the inside. Use compressed air to clean components and especially check the proper functioning of fans. Have you recently installed any hardware since the problem started occuring? Try removing it and see if the issue persists. Run programs which check the health of your computer components (e.g. harddrive S.M.A.R.T. analyis tools)
- Corrupted system files/registry:
Reinstallation of the OS may be required in some of these cases, however if you can determine which files are damaged it may be possible to replace them.
- Recent changes:
Usually a recent software and/or hardware install can be the culprit. Try running your computer without any additional or unnecessary hardware, and uninstall recently installed software, and see if the problem persists.
Run anti-virus and anti-spyware utilities to remove these nasties from your system.
- Defective memory:
Sometimes systems may seem to function fine with defective memory, until a defective part of the memory is accessed. One of the most comprehensive memory checking utilities is Memcheck86 (which comes by default on Ubuntu live CDs, and do not require the installation of the Ubuntu OS)
I hope this helps in resolving your problem.