Wednesday, September 15, 2010

Prediction API: Make smart apps even smarter

Since its announcement at Google I/O, the Google Prediction API has seen an outstanding response from the developer community. Developers participating in the Prediction API preview are already using it to identify spam, categorize news, and more.

Today we’re adding new features to the Prediction API to make your apps even smarter:

Multi-category prediction: Imagine you’re writing a news aggregator that suggests articles based on the kinds of stories the user has read before. Previously, using the Prediction API, each article could only be tagged with one label - the most pertinent one. For example, an article about a new truck might be labeled as “truck,” but not “roomy” or “quiet.” Now articles can be tagged with all of those labels, with the labels ranked by pertinence, enabling your app to make better recommendations.

Continuous Output: You’d like to create a wine recommendation app. Matching a wine to personal preferences is a tricky task, dependent on many factors, including origin, grape, age, growing environment, and flavor presence. Previously, your app could only label wine as “good,” “decent,” “bad,” or some other set of pre-defined values. Using the new continuous output option, your app can provide a fine-grained ranking of wines based on how well they fit the user’s preferences.

Mixed Inputs: You’re creating an automatic moderator for your blog. You could already classify incoming posts automatically based on comment text and the username of the poster (text inputs), but not the number of times they’ve posted before or the number of users that have liked their posts (numeric inputs). We’ve now added support for mixed inputs, so both numeric and text data can be incorporated in your moderation helper, greatly improving accuracy and letting you get back to making content rather than managing it.

Combining Continuous Output with Mixed Inputs: To further enhance your automatic moderator, you can use continuous output to set thresholds for automatic posting, automatic rejection and manual moderation, further reducing your workload.

You can get all the details about these and other new features on the Prediction API website. We are continuing to offer the Prediction API as a preview to a limited number of developers. There is no charge for using the service during the preview. To learn more and sign up for an invitation, please join the waitlist.

Tuesday, September 14, 2010

The Birds Are Back


I have mentioned before that birds can be viewed on weather radar, and we have a great example tonight.

It seems like the big migrations tend to occur at night (less chance of being caught by predators?). Here is the radar image that shows the amount scattered by targets in the atmosphere (we call this reflectivity) at 5 PM. Not much there, just ground clutter and some weak returns from a few birds, planes, density discontinuities in the atmosphere.

But here is at 8 PM....the sky is filled with echos..the birds!


And which way are the birds going? We can tell, because we have Doppler Radars, which reveal the velocity towards or away from the radar. Cold colors (e.g., green) indicate a velocity towards the radar, warm colors (e.g, yellow) motion away. Clearly, the birds are generally heading to the south or southeast, just what one would expect.


This is is good time for the birds to get going---it is about to get wet here again, as a frontal system makes landfall later tomorrow.

Increase your productivity with the Google Analytics API

(Cross-posted from the Google Analytics Blog)

Back in Episode 10 of Web Analytics TV, (32:00), Lisa C from Melbourne asked how to pull a trending report from Google Analytics for the top organic search landing pages. This was such a great question, that we wrote 2 articles and released sample code describing how you can automate retrieving this data from Google Analytics Data Export API. But first let’s look at the results.

Here is a graph plotting traffic to the top 100 landing pages for organic search for all of June for www.googlestore.com.

Let’s Analyze:
This is the typical trend graph you can find across the Google Analytics web interface. By itself, all you can tell is that something happened during the spike. what you can’t figure out is which page actually increased in traffic; to do so would require lots more digging.

Now let’s try again:
Here is a stacked area graph of each of the top 100 landing pages for organic search.

Let’s Analyze:
Awesome right! So obvious why this is cooler. But let me explain.

Lisa’s graph, above, presents significantly simplified insights. Notice how much more we can get from this graph. We can see the green page is what caused the big spike. Also we see that the blue and orange pages had interesting changes in traffic patterns; changes we couldn’t identify from the graph on the left. Being able to break down the totals graph is indeed a gold mine for analysis.

Typical actions you, or Lisa (!), can take from this data are to get the organic search keyword to send traffic to the blue page. Then to identify the keywords sending traffic to the green and orange page and see if we can increase traffic to other pages.

Exporting the Data from the web interface:
Anybody can pull this data from the Google Analytics web interface. You simply create a custom report with landing pages and entrances. Then drill into each landing page, and export the data to a csv file. Finally you go through all csv files and compile them into a single file for analysis. Let's illustrate:

Going through each report individually is a LOT of manual work, but we can automate all of this using the Data Export API; reducing hours of work into a few minutes!

Using the Data Export API to Automate:
In part one of our series, we demonstrate how to use the Data Export API to automate the exact task above. A user specifies 1 query to determine the top landing pages. The for each landing page, a separate query is used to get the data over time.

This is great and we built it to work with any query with a single dimension. But notice that the number of queries grows with the number dimensions. In fact this program requires n + 1 queries so if you want data for 1,000 dimensions, it will take 1,001 queries.

This is bad because there is a daily quota of 10,000 queries for the Data Export API. So if you ran this program 10 times, with 1,000 dimensions, it would require 10,010 queries completely using your quota. ouch!

Optimizing Data Export API Requests:
To reduce the number of queries requires, the second part of this series describes an alternate approach to retrieving the same data, but minimizes the number of queries required. In the second approach, we use Data Export API filter expressions to return data for multiple dimensions in each request.

This approach dramatically reduces the amount of quota required. In the best case, only 2 queries are required.

Using this second approach, analysts can now run this report to their hearts content. They can do this for different time frames, and different dimensions, comparing organic vs paid traffic, trends of keywords by search engine, even compare traffic by geography.

As we mentioned, we wrote two articles describing both approaches and released the sample code for the application. Let us know the amazing insights you find through using this tool.

Have fun!

Fun With Twitter: Machete Facts

Sometimes you have a bit of a boring afternoon, so you just start riffing. I had such an afternoon today.

In my case, I just decided it would be fun to start spouting Machete facts on Twitter, and since I know that some of my readers don't follow me on that site, so I thought I would share them here, along with a few that wouldn't fit in 140 characters.



The reason Machete wasn't in The Expendables is he would have killed the bad guys in the first 5 minutes, and then there'd be no movie. #machetefacts

Machete performed his own caesarean, and then sewed up his own mother before allowing himself to cry #machetefacts

Machete don't Twitter. If he wants you to know something real quick, he'll carve it into a bad guy and send it your way #machetefacts

Machete has a wrinkle for every man he's killed. #machetefacts

Machete doesn't have tattoos. His skin is filled with grains of awesomeness which have identifiable shapes. #machetefacts

Machete plays Danny Trejo, much like Superman plays the role of Clark Kent. #machetefacts

Machete Beat Battletoads. Not the game. The actual Battletoads. #machetefacts

Machete has Chuck Norris and Jack Bauer buried in his basement. #machetefacts

And my favorite one:

Machete once drank a mixture of gasoline and kerosene just so he could use his stream of urine as a flamethrower. #machetefacts

So, can you come up with any Machete Facts?

Back to School and Homework

The children are back at school and continuing their enjoyment of the US educational system. To me the most dreaded words I can hear with respect to homework are: "graded on effort." When my 11 year old (now in 7th grade) gets a project with this qualifier, I know we are in for a long night. Her view is that the total possible amount of effort is equal to the time she gets home from school to the time she leaves for school the next day. Our view is moderation is in order. I suspect that is the teacher's view too but she is going to be handed 12 flashcards -- each a separate work of art -- today.

Child No.1 takes homework serious. She does it early and she does it often. In the US, responding to studies that demonstrated that over the long, three month summer break, children lost some large amount of knowledge, the children all received summer homework. Of course, for Child No.1 this meant doing the 30 pages (!) of maths problems in the first two days of summer which, if I am to take the studies seriously, was exactly not the point. It took her longer to get through her 5 books and book reports. Put simply, we are in the unusual position of having to regulate the amount of homework she does. Our threats are in bizarro land: "if you spend more than 3 hours on this, there will be no TV for you." Suffice it to say, we may have to actually pay her to stop.

This is not an issue we face with our young two. Our 9 year old son (now in 5th grade) keeps forgetting he has homework but that is fine as he can do whatever it is in less than 5 minutes. He is speedy although I pity the teacher that has to read his handwriting. They really need to let him type it up; if only for their own sakes. He had to be badgered to reading his summer books as he took offense to the restriction on his liberty. He ended up liking the books but it was the principle of the thing.

Our youngest didn't have to read any books but she did have a summer math calendar. with activities for everyday in July and August. Sadly, we didn't discover it until half way through August which meant that there was an intense amount of activity. Suffice it to say, recording the temperatures for 5 days was tricky! Nonetheless, in contrast to Child No.1's summer work, at least this was back-loaded.

All this does make me wonder how many other families actually completed the summer activities. It is challenging; what with camp and all.

Monday, September 13, 2010

DevFest Asia Pacific Tour -- Registrations Open!

We’re gearing up for the next round of Google DevFest events, and we’re excited to be back in Asia! Android, HTML5/Chrome, Social Web, and Geo are among the topics we’ll be covering. Our Developer Advocates, along with local speakers, will be on hand to give sessions, answer questions, and check out what each of you are building.

Visit the DevFest site to see the full list of DevFest events.

You can also follow us on Buzz and Twitter.

Space is limited at each location, so register early. Please note that registering does not guarantee you a spot at the event, so check for the email confirmation.

Hope to see you all there!

So Let Me Get This Straight

So let me get this straight. Disney owns The Muppets. But Warner Music owns Mah Na Mah Na.

I guess you learn something new every day.