Clint Heyer pro­jects


Search­ing with mean­ing.
Fi­nal un­der­grad year, 2002.

Tib­ianna helps you search the web when you aren’t ex­actly sure how to for­mu­late what you want in a query.

By rank­ing re­sults, you can give Tib­ianna clues as to whether you want more of pages like this, but less of pages like that. Tib­ianna also al­lows you to nar­row down your query to a par­tic­u­lar mean­ing of the word. For ex­am­ple, it tells you that the word java can be used for a pro­gram­ming lan­guage, cof­fee and so on. With a click, you can dig down into one par­tic­u­lar mean­ing, or ex­clude a par­tic­u­lar mean­ing, for ex­am­ple search­ing for java help” with­out ref­er­ence to the pro­gram­ming lan­guage.

Here is the ab­stract from the the­sis:

While web search en­gine tech­nol­ogy has im­proved over time, there is of­ten a fun­da­men­tal re­liance on key­word match­ing for searches. What hap­pens how­ever, when the user does not know what key­words to use or when key­words have mul­ti­ple, dis­parate mean­ings?

This pa­per pre­sents pre­lim­i­nary learn­ing re­sults of a pro­to­type learn­ing search en­gine that at­tempts to ad­dress this prob­lem. Tib­ianna al­lows a user to man­u­ally rank a set of re­sults based on their own rel­e­vancy func­tion. Once a re­quired num­ber of re­sults are ranked, the set is down­loaded, processed and pre­sented to sup­port vec­tor ma­chines (SVMs) for learn­ing. Once trained, Tib­ianna can ac­tively re­order or dis­card search en­gine re­sults based on the model it has learned. This pro­vides a way of im­prov­ing search re­sults with­out re­quir­ing query re­fine­ment. Learn­ing out­comes from ex­per­i­men­tal tri­als with Tib­ianna are pre­sented, demon­strat­ing the im­pli­ca­tions of us­ing dif­fer­ent pre­pro­cess­ing tech­niques, and cor­pus sizes.

Re­sults can be ranked via the drop-down box next to each re­sult:

Af­ter train­ing, Tib­ianna takes over, au­to­mat­i­cally ex­clud­ing and re-rank­ing re­sults based on a ma­chine learn­ing al­go­rithm:

Tib­ianna was a fully-func­tional pro­to­type writ­ten in C#

Read More