301s will also occur if you redirect www. to non-www or vice versa, so the ones you are seeing are not necessarily just because of your page redirects.
It should be easy to tell from your raw (full-text) HTTP server logs where the requests are coming from. The well known robots use user-agent strings that clearly identify themselves, and if in doubt, you can look up the IP addresses at a WhoIs service, which will show them to be from Google or Yahoo or wherever.
The way to indicate that a page does not exist anymore (and force the page out of search engine indexes) is a 410 rather than a 404, but I would personally not return either a 404 or a 410 for any page that has been renamed/moved (such that the old URL *does* have a new location) and for which you are concerned about its ranking. And certainly not until you are sure where those requests are coming from.
If the page is moved, the correct response is 301, no matter how long it takes others to catch on.
I have returned 410 for a couple of pages that I either moved or collapsed into other pages, but only after a period of returning 301, and I *didn't care* about SEO or whether the PageRank of the page would be transferred to the new page.
In addition, what if those incoming requests are referrals from other sites whose links point to your old page URLs? Currently they get redirected to the correct new page. If you do a 404 or 410, those visitors won't reach the correct page, and the webmasters, if they bother to check their outgoing links at all, will probably just delete the links rather than try to track down your new corresponding page name.