1. I am Assuming windows.
2. I am assuming the machine is on.
3. You can do the same in linux, I just don't know the tools.
Ok Firstly. You wanna stop using your plugged in keyboard. Go to the onscreen keyboard on the screen - this will not be logged by a keylogger.
Secondly. You wanna find out what ports you have open, and where they are connecting to. Close all web browsers and everything connecting outwards. If you see anything going out, not the ip address.
Open a process viewer (task manager will do) look for any processes taking up more ram / cpu than the others. Download and install process explorer from sys internals. Use this to "varify" all processes running. Right click process, click properties, click varify.
If any do not varify. They are suspect.
Disconnect the machine from the internet. If it is a text keylogger you need to look for several things. Any stange exes, and any strange text files. To find these. I would boot into a linux live cd. Grep for exe. See what you find. Grep for .txt or .log see what you find.
If you are still unsure. Type in some random characters onto the live running machine using your keyboard. Make it a unique string. so like "hdnsnakaishtbam292834dsa" something you would not have typed before. Boot into linux, and do a grep for that string. If you find it saved in a text file, or find it anywhere on the drive OTHER THAN the pagefile.sys. You have a keylogger on your machine. Once you find out where your string is stored, you have the temp file of the keylogger. Google its name, and check the folder where it is saved. You will likely find the keylogger hidding in the same, or a few folders back in the tree.
I hope this helps. I do this for a living. I have detected and removed keyloggers on windows machines before. So I can try my best to help you.
Once you find any suspect files. Upload them to virustotal.com and see what they rank as, either good or bad.