>> Danyel Fisher: Great. Good morning everyone. ... introduce Remco Chang. He's a visiting research scientist from...

advertisement
>> Danyel Fisher: Great. Good morning everyone. I'm happy to announce and
introduce Remco Chang. He's a visiting research scientist from UNC Charlotte working
at the Charlotte Visualization Center. He's going to be talking today about his
visualization techniques.
By the way, I've seen some comment and notes, so I should point out that the "George in
a box in a corner" is not a demo for this talk; it's just a visitor to the talk. You're welcome
to go chat with him afterwards, beforehand, or anytime else.
Also, for those of you watching remotely, I'll be happy to pass on questions that you
might have for Remco via IM.
I'm Danyel Fisher. Again, I'd like to welcome and introduce Remco Chang today. He'll
be talking about visualization.
Remco?
>> Remco Chang: Thanks, Danyel. I really appreciate the opportunity to be here. So
I'm going to be talking about using interaction in visualization. So the title is: Thinking
Interactively with Visualizations.
So I'm going to start with a little background about how the visualization community
typically thinks about interaction. So this is not a rigorous study or anything, but I
believe that most people in our community believe that interactivity is essential to doing
visualization and analysis.
So I have some quotes here. The first one is from [inaudible] which is kind of the
research agenda for the vast visual analytics community. And it says: A visual analysis
session is more of a dialogue between the analyst and the data. The manifestation of this
dialogue is the analyst's interactions with the data representation.
And, similarly, there's an InfoVis paper from two years ago that says basically without
interaction a visualization is just static images that you can't really do much with, or
animated images.
So it's pretty easy to believe that's true. But as it turns out, if you kind of go through
literature, there's really been fairly limited amount of research in our community that
specifically focuses on interaction. So what ends up happening is like what Yi and
Stasko says from Georgia Tech is that people typically try to do visualization and then
add interaction to the visualization as kind of a secondary thought.
There's really been limited amount of work where the focus is on interaction and the
visualization is maybe perhaps a second role.
So the goal of this talk is to consider the role of interaction in computer graphics,
visualization -- I have to take out the word information, but visualization in general and
visual analytics.
So the first thing I have to do is take you all the way back to kind of where I got started
thinking about this problem. And it really started about 15 years ago when I was doing
my master's thesis. And back then I was doing offline rendering of animated characters.
This is at Brown University when graphics was kind of just on the rise back then. And
this is offline rendered images. And the thesis was really about kinematic motion,
deformable meshes and all that stuff.
But the point about this is it's very computationally heavy and for a 10-second sequence it
would literally take all night. So before I go home -- I'll code all day. Before I go home I
would set a bunch of patches to run on various machines, and then I'll come in the next
day to see what the results are.
So in that sense it was actually really hard to debug what I was doing because effectively
you have to remember what you saw last time or you have to review it from last time and
you really don't have a good sense of the, you know, 50 parameters you're tweaking and
what their relationships are with each other.
So there's kind of an offline process, this lack of interaction, makes it really hard to think
about the differences between each run.
So kind of thinking about what would it take to make this process more interactive, and if
you just kind of flip through literature, people would typically say about 12 frames a
second is necessary. And what that means is rendering a frame under .08 per second.
And in the case of my thesis and among many other things, this is often really, really
difficult, because you have really complex scenes with lots of polygons or a lot of
information, at which point the computation becomes heavy. So the things you have to
do is you have to simplify the scene, you remove some detail and you have hierarchies of
detail, just to keep things interactive.
And to give you an example of what I think of simplification, I'm using my example of
urban simplification that I did a few years ago. And I'm showing you first the results. So
what we have here are three images of rendering or simplifying an urban model, and you
have the original model on the left, the middle one is about 45 percent of the polygon
count, and the last one is about 18 percent.
And the key point about this is why you see subtle differences, like, for example, the last
image looks a little bit dimmer than the first one, but the key point is that during the
simplification process you retain kind of the important features of the city.
So the question then becomes, well, how did you choose the right polygons to remove.
And this is kind of the crux of what simplification in my opinion should be about.
So here I show you some examples of simplification. In the upper left corner we have the
original urban model. That's if you're looking from the topdown view. If you simplify
this model using kind of a traditional method like QSlim, which is basically all based on
geometry, what you end up having are these kind of models where it doesn't really make
a lot of sense. So semantically it's not quite the same as the original.
Whereas our approach was to say, well, using a scene polygon count instead of
decimating it, let's aggregate them, and then we slap textures onto them.
And if you compare the original with our texture model, it looks pretty similar. But
what's really interesting about this project was that we were trying to calculate
quantitatively whether or not our approach was indeed better. And it turned out that it's
not really.
So what we did was we took these three models and we ran a flag-through scene and we
counted the number of pixels that are different from the original scene. And we plotted
this in terms of a percentage, so this will be 5 percent or so. The actual number is not
really the important part, but the important part is when you look at these three images,
three models, they look really different. But quantitatively they are similar. The three
lines are almost indistinguishable.
So there's a difference between quantitative and semantic, meaning doing the
simplification process, which traditional simplification does not really take into account.
And in this particular case when we're thinking about the city, the goal of the
simplification has to be about retaining the image of the city or the semantically
important part of the city.
And basically what we did within our application was to borrow architectural theories or
urban theories. In this particular case we use this concept called urban legibility which
basically describes a city as saying the most important aspects of a city are paths, edges,
districts, nodes and landmarks.
And this is based on Kevin Lynch's work, who's an architect at MIT in the '60s. And
really he was way ahead of his time in my opinion. What he did was he sent a bunch of
grad students out to Boston and he said we'll just go out there and drive around. And
when they came back he asked them to start sketching what they remembered.
So they came up with a stack of these kind of sketch maps and Kevin Lynch basically sat
there and flipped through this and said, well, what are the most important things that
people remember during these sketches. And this is where he compiled the five
elements.
So this is really interesting work to me, but the core point about this is about the
simplification aspect. But to take a little step back in thinking about interaction and about
the semantics of a city, what we realize is that when people think about a city, they don't
necessarily just think about the geometry.
So, for example, we did an informal survey and said, well, tell me what you think about
New York. And what we get are these kind of responses where people say New York is
large, compact, and crowded, or somebody said the area where I lived there was a strong
mix of ethnicities.
So if you take these two sentences and you kind of dissect a little bit, what you realize is
that there are geometric aspect, where you talk about large and compact; there are
information aspect of a city, where you talk about crowded and talk about ethnicities; and
lastly there's a very important point about a person's perspective about a city. So there
there's this view dependence aspect to thinking about a city.
So what we did is we wanted to create a visualization that doesn't just focus on the
geometry but focuses on the overall impression of the city.
And we end up having this information visualization application that we call UrbanVis
where -- it's a coordinated multiview where on the right-hand side you have the geometry
side, and the hierarchy of the shapes are based on the rows of legibility, and we have the
information side where we try to depict the census information. And we just picked a
few categories in terms of ethnicity, in terms of income, and so on. And we have a
matrix view and the parallel coordinates view, which I'll get into a little bit later.
But lastly we have this little yellow sphere that we have which we can allow the user to
control to change their points of interest or their view dependency, so to speak.
So I'm going to run a quick video. I usually actually demo this, but it turns out that it's
pretty hard to demo this sometimes.
So what I'm going to show you is basically how this application can be used. So, for
example, the user can drag around the little ball. And what you see is that the
information side on the left -- or on the left are updated according to what the user is
interested in.
So in this particular case, I'm showing that on top of being able to drag your point of
interest, you can change the degree of detail. So what that means is if you bring the ball
all the way up then the aggregation becomes stronger, and if you bring it all the way
down you get more detail around the sphere itself.
And in terms of interaction, what the user can do is select or highlight in any of the three
views, and the other views will correspond. So, for example, in this case we highlight a
column and you see the parallel coordinates line light up, and you see the geometry
aspect line up as well.
So two examples of how we can see if this application could be used. The first is in
comparing different parts of a city, where we're comparing downtown Charlotte to a town
about 250 miles north of downtown called Davidson, and we're trying to see how they are
different.
So what the user would do is bring the little yellow ball from Charlotte to Davidson and
we look at the matrix view. So what you see here is that the areas around where there's
red, so red is closer to where your point of focus is, you see a lot of jaggies. So basically
it's -- there are tall spikes and low spikes. So this shows a great deal of heterogeneity in
terms of ethnicity and income. Whereas if you look at the Davidson area, it's basically
flat. So this is a middle-income, white suburbia kind of a town.
So while the user is exploring, they can start looking at a matrix view to kind of get a
sense of heterogeneity around their region.
And the second scenario would be, for example, looking for ethnicity pockets around the
city, and in this case what the user does is bring the ball down to downtown Charlotte and
in the parallel coordinates view will select where there's high Hispanic population.
So what's interesting about this parallel coordinate is that while the user selects these
lines, first of all you see all the white dots line up, so it tells you where the ethnic clusters
are, but if you follow these lines alone, what you start seeing is that there are
relationships between the variables.
So in this case we see that the Hispanic population has almost a 1:1 relationship with
their citizenship status. And if you come further along, you see that there's a negative
correlation with income and housing values and so on.
So taking a step back, thinking about the interaction or interactive techniques used in
these applications, we refer to a paper again by Yi and Stasko at Georgia Tech where
they kind of categorize interactions into different uses.
So what they said is you can use interactions to select, explore, reconfigure, encode,
abstract, filter and connect, which most of these are implemented within our system and a
lot of other visualization systems as well.
But what's interesting about this is if you really kind of lump it all together, what we
believe is that what Stasko is describing is that you can use interactions to help you think.
So while you're exploring you're actually thinking about what you're looking for.
So to try to convince you, I'm going to run through some applications that we've built and
hopefully at the end of it you'll believe that interactivity can be embedded into multiple
different types of applications and it actually does help with the domain experts or the
end users.
So the first case is the WireVis project, which we did with Bank of America. And this
particular project was looking for suspicious wire transactions and we're looking for the
temporal trends as well as different suspicious activities over the course of a year.
And the way that we kind of look at the problem is to consider the transactions as
relationships between keywords, so keywords within the transactions themselves to the
accounts, or keywords to the keywords, or keywords/account over time and so on.
So, for example, keyword to keyword would be if you have an entity in China who's
selling baby food but sending money to the U.S. company who supposedly is dealing in
car parts. So the keyword "baby food" and "car part" should not really show up together,
but if they do, this is something that you might be interested in, you might want to
investigate further.
And this is kind of an overall interface. And the four different coordinated views are
used as heat map view which shows the relationship between the accounts and the
keywords. We have temporal view which looks at relationships over time. We have the
keyword network graph, which talks about when keywords are not supposed to show up
together. And then lastly we have this idea about search by example which basically says
if you find a particular pattern or account that you're interested in, show me other ones
that are kind of like it.
So I'm just going to show you this application real quick. I kind of preloaded this. So
kind of the point about this application and the interaction in it is that when you're
interacting with any variable in one view the other view will correspond.
So this in case the X axis encodes a list of the keywords. So these are predefined words
by analysts at the bank. We have to use numbers to mask it because of proprietary and
security reasons. On the Y axis we have clusters of accounts. So when I say 98 here, it
means that cluster has 98 accounts in it. And you can drill down into any of these where
eventually you'll get to individual account information.
So the bottom view of course is time. And what we can show is that when I'm interacting
with let's say the keywords, I can start to see temporal patterns.
So in this case selecting the keyword of 37, what you see is that there's this strong
temporal aspect of the keyword's occurrence. It does not show up anywhere in the first
half of the year, but it shows up more frequently on the second half.
And, further on, the network graphic can see that keyword 37 shows up along with
keyword 169, and this is what the analyst has to look at and decide if that's questionable
or if that's normal.
And, similarly, you can select a particular day, so if you highlight over a day, you can see
on that day which keywords were used and which accounts actually transact on that
keyword.
Second example I want to talk about is a project that we did with University of
Maryland's Center of Excellence on the study of terrorism and response to terrorism.
This case we're looking at the Global Terrorism Database which is compiled for the past
30 or so years. It contains about 60,000 incidents over 120 dimensions. So this is
recording all terrorist activities around the world. So it's not just domestic.
And the way that we designed the visualization was to encompass this model of the 5 Ws.
So we want to encode the who, what, where, and when, and I put why in the parentheses
because the why part, it's not really visualizable, so this is a part that you're supposed to
figure out as you're interacting.
So the interaction is designed so that the user can put in as many Ws as they know and try
to see what the correlation is.
So this is a basic overall design. We have each of these boxes correlated to the who and
the what and the where and the when. And we have this box where you can always go
back to looking at the original data, as well as this evidence box which is basically kind
of a temporary save box where if you found the particular group you're interested in,
you'll put it in there and then you can compare it to other groups later on.
So just to show you a couple examples of how this is used, here we're looking at the
activity pattern of a particular group. Actually, this is Hezbollah. And what you see is
these lines are actually connecting incidents in a temporal way. So two dots that are
connected would be temporally next to each other.
So when you look at this graph, the obvious thing that shows up is, you know, you have
this outlier where something happened in South America, turns out to be Buenos Aires.
And if you look at it a little bit further, what you realize is that Hezbollah's attacks are not
actually decided on geographic locations. So that was actually news to us because we
always thought that Hezbollah is active within the Middle East. But it turns out they're
actually everywhere. In particular, they're motivated by religious believe leafs. In the
case of what happened in Buenos Aires, it was a bombing at a mosque.
And if you look at their pattern over time, what you see is that their attack patterns
actually changed as the group developed. So in the beginning you have more
kidnapping -- sorry the font's a little bit small -- which is the green stripe. And as it went
on in time around the early '90s, they started shifting to more bombing. And then
afterwards they kind of abandoned bombing and just started doing facility attacks.
So this is kind of a temporal trend where you can see how the group's behavior is actually
changing over time.
>>: Are you missing data from '93 or ->> Remco Chang: Yes. Sorry. Missing data from '93. So that's not really us. That's
actually somehow the data collection site just had '93 disappeared forever.
So a second case is where we start with the where. So let's say we're interested in the
Philippines. And if you highlight and select a region in Philippines, what you see very
quickly is that there's a very active group in the Philippines, and this is called the New
People's Army. So it's pretty obvious it's a domestic group that have never left
Philippines, they have always been active strictly within the boundary of the country.
But, again, if you look at the temporal aspect of it, what you see is that while their attack
pattern is fairly consistent, the amount of attack actually really changed. So they kind of
took a quick rise in the '80s or 90s, and then -- sorry. The late '80s. And then in the early
'90s it just kind of disappears, and then it just completely -- completely gone forever.
So we did some research into why this happened. And by research I mean literally going
to Google, going to whatever search engine and you start searching for news articles and
see what's out there.
And it turned out that the reason why they disappeared is that in '94 they elected a new
president and one of his first act was to negotiate with all the terrorist groups and issue
pardons. So this group was pardoned and they just disappeared.
So this is the why part where you're motivated by what you see but the why part you still
have to find out.
A third example I kind of just put in really for George. This is a project that we did this
year where we're looking at the analysis of biomechanical motion.
So the premise is that biomechanical motion sequences or animation are really difficult to
analyze. And to show you why that's true, I'll show you a simple video.
This is an animation or motion sequence of a pig chewing. So this is running under half
speed. And if I were to just move it forward in normal speed, this is what the pig is
doing. And basically all you see is that pig just goes open/close, open/close, open/close.
And it's really kind of hard to see what the pig is doing. And you can watch this a million
times. You can go frame by frame. And the fact is it's really hard to see the differences
within the cycles. And as it turns out, there are differences.
So the claim that we make is that watching the movie repeatedly does not actually lead to
understanding of the sequence. And actually we didn't claim this; the biologist of -- the
evolutionary biologist we used actually said this.
So this work is in collaboration with Brown University who captured the data and people
in Minnesota, and we're looking to examine the mechanics of a pig chewing but when
they're chewing different type of foods or different amounts of food.
And one of the very obvious thing that I learned is that while you think about an animal
chewing to be just kind of open and close, as it turns out that jaw joint is very, very
complex. It can actually dislocate and just kind of do this almost like a ball joint kind of
motion. So it's not just like this, it's actually kind of like -- you know.
So when that happens, the data is basically described not just as an angle, but it's actually
described as transformation, rotation and translation of the rigid bodies. So this is kind of
the overview that we have that we designed for the evolutionary biologists. A lot of this
is motivated by George's work that I'll talk about a little bit later.
But what we wanted to do was to give the user an overview about all their data, in this
case a different color. It's a little bit hard to see. But the different color segments
described or showed different takes on the experiments. So this will represent, for
example, the pig chewing nuts or this could be chewing pig feed or whatever.
And what we want to let the user do is to select and highlight anything that they see on
the screen, and then we'll have detail view pop up where you can look at that particular
segment of the sequence more carefully. And we have additional information
visualization things to help you kind of look at your data.
But one of our key focus of this project was to look at the interactive comparison part of
looking at motion cycles. And this is definitely following George's work from last year
where he talked about how to look at animation sequences and their effects.
So some of the techniques that we used are small multiples. So this is a small-multiple
view based on the previous image. In this case what we did was we took a tracer, so we
looked at the pig's jaw and we said we'll put a trace on the bottom of the jaw and we just
let the animation play out while it traces a pattern.
So this is actually really useful, because, as you see, in a small-multiple sense, you can
see when the pig is just literally opening and closing versus if it's doing a grinding, which
gives you kind of an upsidedown U shape, or if it's just kind of doing food gathering, in
which case the jaw doesn't move; it's actually a tongue that's moving. So what you see is
more like a little dot. So the jaw doesn't actually move.
So in this case you can start to see under different conditions the pig is actually doing
different things.
So we do side-by-side comparison. So in this case we're looking at different runs and
looking at the teeth distance, so this is laying the model side by side for different
conditions.
We do overlaps. So we have two different types of ways to do overlaps. One is between
two different datasets, so the yellow set versus the green set, or we can look at different
cycles within the same data.
So, again, the cycle is defined as just an open and close, is considered as a cycle. And
this is actually really neat because if you just kind of plot out the cycles so that they all
originate at zero, what you see in this case is very clearly at least two different clusters of
motion. So you have the bottom one where it's kind of longer, the middle one, and then
you have a little outlier that sticks out. So this is actually comparing the same motion
sequence but looking at cycles as a time.
And this is basically saying, well, we're going to let the user play as much as they want,
and we give them as many comparison tools as we can think of, whereas George thought
of, and see if they can actually do comparison of the data using the tools.
And the last example I'm going to talk about, actually presented this paper -- Danyel and
George heard this, I guess, from this year's EuroVis -- where we're looking at principle
component analysis.
So a little quick refresher of PCA. It basically is a regression analysis of sorts where
you're finding the most dominant eigenvectors as principle components.
And in this particular case at the bottom what you show is a bunch of data points in XYZ,
and if you perform principle component analysis, you can find PC1, PC2, and PC3. But
in this case what we can do is just kind of forget the third dimension and re-project it onto
just the first and second dimension and you don't really lose that much.
The insight about PCA is that while I can teach an undergrad how to calculate PCAs -- so
it's kind of tedious, but you can do it -- it's actually really hard to understand this
semantically. So once I compute a principle component, I can tell you there's a linear
combination of the original dimensions, but what is the semantic connection between the
two.
So if I see a data point, how does it -- where is it going to show up on the plot, on the
projection. It's really hard to kind of map in your head. And this is not just for novices;
for most people that relationship is really hard to understand.
So what we seek to do is to say, well, so we have two different spaces. We have the
original data space and we have the eigenspace. And we're going to try to see if we can
use interaction to map between those two spaces so that you can understand what their
relationships are.
So this is the interface that we have. And I'm just going to show this as a quick demo.
So we have loaded the data already. It's an 8-dimensional data. And you can zoom in,
you can do all kinds of stuff.
But the key point I want to talk about here is of the eight dimensions we have a slider for
each one. So these are the original data dimension whereas this projection is on PC1 and
PC2. So the X axis is PC1, the Y axis is PC2. You can choose the axis as you see fit, but
let's just stick with these two.
So what we want to see is how does each original data dimension affect the projection.
So in this case what I do is I can change the contribution of one of the original data
dimensions. And you can see as I'm changing this how that affects the overall projection.
So in this case, when I'm doing this, you can see a rotational affect, but you can also see
that changing a little bit of this dimension actually affects the projection greatly, whereas,
you know, I just keep playing with this, and what you will find is there is some
dimensions that really don't do very much, so in this case it really doesn't do a whole lot,
whereas in some cases the dimension is really important to the projection itself.
So we propose that the interaction actually gives you some insight into the relationship
because you can see the rotational affect around some invisible axis, whereas if I actually
just show you as a static image, in this case I'm enabling trails, you really don't see the
same rotational affect. You still see kind of a rotational affect, but it's almost as if it's
rotating around some Z axis coming out of the screen, when in fact that might not always
be the case. It's not really that -- rotating around some Z axis, but it's something a little
bit harder to describe.
So we implemented this and what we wanted to see is if people can get a more intuitive
understanding about PCA and the projection of spaces using this kind of interactive
system.
So we compared the tool to a SAS/INSIGHT, which is kind of a commercially available
mathematical package, really, and the results that we find is that our system is a little bit
more accurate, not a whole lot more, but what's interesting is people don't actually give
up on the analysis. And I'll get to that a little bit later, and we also see that using our
system is not faster.
But people do like it better. So when we asked them to assign grades in terms of how
easy is this to use and to understand, they give us more As than the other guys.
And I'll talk about the results a little bit more later. But this is an interesting result
because we had envisioned that the evaluation will blow the SAS/INSIGHT out of the
water, and that was not really the case. So I'll get to that a little bit later.
But one of the key point that I need to talk about is I've been proposing that interaction is
the same as thinking, so you can use interactions to think. And this is a pretty strong
claim. So the kind of question that we need to ask is, well, what is in the user's
interaction. And if you really believe that interaction is the same as thinking, then can we
learn something from the interactions. Or, better yet, is it possible that you can take the
thinking out of the interactions and do something with it.
So to answer this question, again, take half a step back to think about what is in the user's
interactions. And if you kind of look at the model of a user and a computer, I'm going to
assume the computer here is a visualization, what you have is a very simple model where
you have the visualization on one side, the human on the other side, and you have the
person looking at the visualization, which is kind of in the form of an output or images
through the monitor. And when the user interacts with the visualization, you have this
input through mouse and keyboard. So minus the sound and all that.
This is actually kind of an obvious relationship but it's a pretty simple relationship
between you and the computer. That's it. You have the image, and you have the mouse
and the keyboard.
But if you kind of categorize how we usually use computers, I kind of roughly categorize
into three different things. So there's the kind of type of text editing, where you do a lot
of typing, you're not really reading a lot from it, you're just verifying it really. On the
other side, you have the output heavy where you're watching a movie where you click
play and you just sit back and watch. So there's very little interaction but there's a whole
lot of output.
Whereas if you -- the way that we designed visualization and visual analytics, that
relationship is actually closer to 50/50. So you're interacting, you're seeing the result,
and, you know, create a feedback and you interact some more and you see the result
more.
And in this particular section when I talk about what's in the user's interaction, I'm
actually specially focusing on the bottom one, so I'm not talking about the other two.
So we wanted to perform -- wanted to do a study where we want to prove that there really
is thinking within the user's interactions. So this is the goal that we set out to prove. And
the experiment's a little bit complex. You kind of have to bear with me a little bit.
So what we have is we got a bunch of financial analysts, and these are analysts from
Bank of America, from Wachovia, so all the big banks -- or previously known as
Wachovia, now is something else. When I ran the study it was still called Wachovia, let's
just say that.
So we got ten of these analysts and we asked them to use the wireless tool that I talked
about earlier to perform financial fraud analysis. So we gave them a specific task and,
you know, they tried to find fraudulent, suspicious activities using the tool.
So while they're doing this we're logging everything that they're doing. And I put the
word semantic in parentheses because we're not logging XY mouse positions or key
strokes, but we're monitoring which visual element they've highlighted or which thing
that they double clicked on. So it's actually semantically more meaningful, and only
meaningful to the application; it's not meaningful at all to other type of applications.
So on the other side we have a bunch of grad students that we called coders and we gave
them another tool that we developed for looking at interaction logs. And we fed the
semantic interactions into this interaction log. And then we asked the grad students just
to take guesses about what the analyst strategies are.
So we collect that and we go back to the analysts and said, well, what were you actually
doing. Right? So we showed them the video of what they did and we just asked them to
tell us what their strategies and what their findings and methods are.
And then basically we just compare them to see how close they are. So the key point
here to mention again is that the grad students have no knowledge of financial fraud
analysis. And they have -- they didn't actually see the analysts do anything. So they're a
completely separate group that have no interaction with each other. The only interaction
is me and the co-author where we do the comparison at the end.
So what we show is that the hypothesis is that if there is a -- if you can extract a lot of
thinking, then the two will be fairly similar. And we're actually really surprised by this
result. We were expecting that you can probably extract like 25, 30 percent. And as it
turns out, the numbers blow our expectations out of the water.
So in this experiment we find that our coders can extract up to about 60 percent of the
high-level strategies, 60 percent of the mid-level methods, and 79 percent, 80 percent or
so of what the analysts actually found.
And in particular if we kind of look at this a little bit more is that we wanted to look at
what type of things that they're able to extract and what type of things that we're not able
to extract.
So what we did was we plotted the participants, or these are the financial analysts, from
one to ten, and we looked at how well their -- how accurate their finding strategy and
methods could be extracted. And the two that immediately stuck out are these two little
low bars. So, again, everything was kind of roughly about the same but ->>: Sorry. What -- this is how accurate they are in ->> Remco Chang: No. Sorry. How accurate we -- how accurate the grad students ->>: [inaudible]
>> Remco Chang: Right. Sorry. How accurate the grad students are at guessing what
they were doing. Got it. Okay. Sorry.
And so the two things that really stuck out are these two little green bars at the bottom.
And the question is why are these so much lower than the others. So the coders were
only able to recover about 15 percent of these two analysts' methods, in particular their
methods.
So we went back to watch the video to decide, well, what happened here. And what we
saw was that the analyst strategy or method in discovering fraud was looking for spikes
within the data. So in this particular case they were looking for spikes in amounts.
Spikes in amounts over time.
So if you think about the only thing that the grad students had were interaction logs, they
don't have what the analysts actually saw, so they have no way of guessing that the -- the
reason that the analysts clicked on these transactions was because of the spikes, because
they couldn't see what the analysts saw; they only had the transaction logs.
So the understanding here is that just capturing the user's interaction in this case is
insufficient. So it's not enough to just look at the interaction logs. You actually have to
kind of get a sense of what they're actually looking at, being a visualization application
and all.
Yes, sir.
>>: I'm just -- what about some of the other ones? How were they so successful?
>> Remco Chang: So that's a really good question. I think why were they so successful.
So actually let me -- there's -- I'll get to that in a little bit. Hopefully I'll answer that
without answering it directly.
But, okay, thinking about what we learned from this experiment, the first thing we can
claim is that I think we successfully have proven that a great deal of thinking is actually
encoded within the interaction logs and it's extractable and capturable. Now, I did say
anything about using a computer to do it, but at least the information is there.
So kind of projecting a little bit further, we're saying that if you can capture this type of
semantic interaction and we can collect all this stuff and we can extract all these things,
then the hypothesis is that we can actually call this kind of a knowledge base. So this is
where I start waving my hand, because I haven't done any of this work.
But the thinking is that if the interaction logs do contain thinking and you can collect all
this thinking, then why don't we put it together for future use. So we're talking about
training, guidance, verification, and all that stuff.
But as we show, not all the visualizations are interactive. So you have visualization
where is basically watching a movie. And certainly not all the thinking is reflected in the
interactions. So what we start to realize is we need some kind of understanding about
what is in fact capturable, what is extractable, and what are the things that you can do in
terms of getting the thinking out of it.
And we start working on this and we submit a paper and it got horribly rejected. We got
terrible scores. So we kind of have to go back to the thinking board to think about what
this model might be.
So this used to say "in submission to InfoVis" this year, but it got horribly rejected, so
now it says I'm thinking about sending it somewhere else.
So kind of just to wrap it up a little bit -- I'm going way faster than I normally do, but
hopefully that's okay. So some of the conclusions that we can draw from this, is first
assumption is that I hope I have shown that interactions are important for visualization
and visual analysis.
And the first thing I talked about was in considering the interactions, we must be aware
of what it takes to make something interactive. And in the case of large amount of
information, we have to do some kind of simplification level of detail, approximation, but
the key insight from my own experience is that while you do all these things, you just
have to be really careful about what you're actually taking out. And a lot of times a
quantitative measurement might not be enough. So you have to consider the semantic
and the qualitative aspect of things.
And the second thing is I hope I've shown that interactions could be useful, and we have
shown that it -- it's useful sometimes a lot of times in different domains and different
applications. And in some cases the interaction is the difference in terms of the analysis
process.
And the last point capturing and storing analyst interactions we believe have great
potential. It could potentially be aggregated into a knowledge base, which it's really -- it's
really been pretty hard to do for a lot of the discipline. So some of the things that people
have done are ontologies, formal ontologies and so on and so forth, and a lot of those
things are either like giant trees of lots of different possibilities or whatnot. And this
might be a different way of thinking about what is a knowledge base.
So while I've talked all these things about what interaction is great for, I have to talk
about the things that it's not good for.
So, first of all, it's horrible for presentation. Right? So I'm sitting up here trying to tell
you interaction. I can't -- without actually showing you a video and actually playing with
it, it's really hard to convince you of such.
But more importantly what we realize is that when you have something, a visualization
system that's just openly interactive, you have this problem of your mileage may vary.
So reproducibility is a huge problem. Even within the same user, every time they walk
up to something like this, they do something different. So two different users, totally
completely different.
And evaluation becomes a bear because sometimes you discover some things, sometimes
you don't. So when somebody says, hey, tell me how accurate your system could be in
discovering fraud and using WireVis, I have no number because sometimes they do great,
sometimes they do horribly.
I myself went through a similar process where looking at the bank data I saw something
really bizarre. It was some company that's called Red Cross something or other, but it's
not Red Cross, and it's dealing in diamonds out of Russia. And I'm like that can't be
right. And I was so excited. I was going to show it to somebody. And I closed the app
accidentally. I had to restart it, and I couldn't find it again. I was digging everywhere. I
have no idea what I saw the first time. And the path was just lost. So this makes the
evaluation incredibly challenging.
And the last point is when we develop these kind of interactive applications, we often
sacrifice accuracy. So, again, the simplification process. In the iPCA, what we did was
instead of using the traditional singular valid decomposition we have to use an
[inaudible] approximation method that's called online SVD. We didn't come up with it.
It was some mathematical journal that somebody did this.
And it's not as accurate, but it makes the computation time much, much faster.
In the WireVis case, we realized that we can't really do clustering of large datasets. So
instead we used this really dumbed-down version that we call binning. It's just basically
histograming in some ways. But the difference is now you allow people to do clustering
on the fly, but then you have to do it in a really dumb way.
So it's this balance about speed versus accuracy.
And interestingly, as I talked about earlier, when we compare interactive apps versus
noninteractive apps, we don't see really a drastic time improvement. We do not see a
great increase in terms of task performance accuracy. But we have observed empirical
evidence that, first of all, the users are more engaged.
So in this particular case what we show is these two little green bars that stands for
nonapplicable are basically participants who used SAS/INSIGHT for a while and they
just say I quit, I can't figure it out, I have no idea what's going on, so they just gave up.
Whereas using more interactive apps, they're more engaged. So they're more focused and
they kind of just lost track of time, they just keep going until they actually find some
answer.
And, by the way, the answer might not be right, but they at least will go all the way to the
end. And, you know, we show that in terms of user preference, interactive apps are much
more preferred than the other.
But the last point is the most important one, but it's also the most subtle one, is that we
find that the users have a faster learning curve. So what that means is the first time they
do it they might be horribly slow, but as they start using it more, they actually learn the
problem domain in a much faster way than if they do a static application.
So the example, this is a separate study where we looked at interactive online maps, like
in our case we're looking at Google Maps and Google Earth, and compare it to the
traditional GIS application like the ESRI, ArcMap, ArcGIS, what we realize is that where
the user is spending most of their time is in exploration. So they zoom in and out, they
pan all the time. When you give them interaction, they use it.
So if you think about what they're doing during this playing around is that they're actually
building contextual information. So now they actually have some better understanding, a
mental model about the neighbor, about the community, about what's around the point of
interest, whereas if you have the traditional one where they just create a bounding box
and zoom right in, they don't gain the contextual information.
So what this means is if you ask them to do a similar task the second time, the people
who had the Google Maps would have this stuff where they had the exploration don't
have to go through that process again; they can jump right to the answer much faster than
the original one.
But what all this says to me is that, you know, right now we can't just measure kind of the
benefit of interaction using the traditional time or accuracy. There's got to be something
else. There's got to be new ways of testing it, new measurements or new methodologies
for doing this.
So kind of wrapping it up about future work, I'm really interested in urban visualization.
So one of the things that we're trying to do is to show a new type of map where it's not
just about the street layout but showing the characteristic of a city.
So this is the kind of stuff that when you go visit a friend in a new city he draws for you
on the little napkin and hands to you and says, okay, this is roughly where everything is
so you won't get lost.
This is the kind of map that we don't have. This is the kind of map that's often the most
useful but often we do not have these things.
So one of the future work for me is to actually look at how we can create what we call
semantic maps.
And we want to apply interaction in visualization in other domains, just to condition with
this line of thinking. And we have a couple of proposals accepted to look at studying
science policies with NSF to look at civil strife, so we're looking at causality between the
government oppression of people and the people reacting by having riots and see how the
negotiation between the two pan out.
And then we wanted to evaluate the benefits of interaction more, quote/unquote,
scientifically.
And lastly, about interaction capturing, what's so-called provenance, is we wanted to look
at semantic methods for actually studying the interaction logs. So so far we've just asked
people to do it. But we want to see if we can actually do this through machine learning,
data mining, and that kind of good stuff.
And we're looking for a collaboration with the Pacific Northwest Lab to look at a more
generalizable structure for recording the provenance.
And that sums it up for me. Thank you very much for your time. Really appreciate it.
[applause]
>> Danyel Fisher: We have some time to take questions.
>> Remco Chang: 15 minutes. Yes, sir.
>>: So maybe you could elaborate a little bit on that question before which was sort of,
okay, obviously there were cases where they just really didn't get it. But can we get at a
little bit why they were so accurate at all? What were the strategies that they could look
at?
>> Remco Chang: So I've given this talk about three, four times, and every time I've
given this talk, one of our UNC grad students was with me and they're able to kind of talk
about it from the coders' perspective.
And this is actually part of the problem with this study where I deliberately did not
participate in the coder process; I actually participated in the analyst process and
therefore I did not feel right to participate in the other.
>>: But you [inaudible] WireVis but you never showed us the interaction log, so I don't
even know what ->> Remco Chang: I understand. Okay. So this is a little bit hard to see. So I just have
to talk about this very high levelly.
What we have is this visualization with the X axis, again, time. So each row here has a
different meaning and a representation. So the top, the A part, is actually for annotations.
So in this case we don't have annotations, we hid the annotations. But the subsequent
three things represent each of the views in WireVis. So this application [inaudible]
because it's really tailored for WireVis app.
So if the user interacts with one of the views or with one view, it will show up here, with
the other view it will show up here and here.
And because WireVis is designed so that the relationships or the views are really
specifically focused on one type of relationship, you can start guessing. So if they're
interacting with a heat map view, then they're looking for a relationship between time or
keywords and accounts. If you look at the temporal view, then they're probably
interested in time and so on.
And here the bottom one, these two, show you the depth of the investigation, so how far
down the hierarchy tree are they looking at. And the last one is just looking at the time
range to see which time slice that they're actually zoomed in on.
So what I observe, and this is just my observation of the coders doing this, is they just
look for [inaudible] patterns. So, for example, when I show you that you can just kind of
mouse over keywords, and if they do that just kind of repeatedly, you just see a whole lot
of that on this graph, I believe.
So when you see that, then you realize that that's what the user is trying to do, is either
looking for the relationship temporally or in terms of how they correlate.
Now, what's important is where do they go next. So if they go to the temporal view, then
it tells you something. If they go to the different view, it tells you something. If they
start clicking on the accounts, it tells you something else.
So I believe these are what they are looking for. And one of the things I didn't get to talk
a little bit about here is that what's intriguing to me is that when the students did the first
participant, they were horribly slow. So if the analysts did it for 20 minutes, they would
take like 30 minutes to analyze the dataset. So it renders that -- this method completely
useful as far as time goes. They might as well just watch the whole video.
But as it went on, so by the tenth participant that they're investigating, they're super fast.
They're going through it in matter of minutes and seconds. So there's something that they
learned while they're looking at this and they're actually just kind of learning repeated
strategies from different people. And every once in a while you get some guy who gets
stuck because it's a new behavior that's never been seen before, then they spend more
time.
But overall what's intriguing to me is that what the participant -- or what the coders found
is not a fluke, because it's learnable. As they went on, the accuracy did not decrease but
the time went up, so they're learning something. Whatever it is, they're learning
something. So it's not just ad hoc kind of flukey that they found something.
Yes, sir.
>>: I was wondering for this direction log, right, I mean, it seems what people are really
picking up on is, you know, static activity where it's people do repeated activity in the
same part of the visualization, and then there's a transition to another one.
>> Remco Chang: Yes.
>>: So would it make sense to think of these interactions kind of in a network fashion
where you have nodes where people stay in one area and do some things and then they
transition to another area and look in a different [inaudible].
>> Remco Chang: Right. That's a really good point. Now, the assumption, however,
you're making, this is what we wrote in the paper that got horribly rejected, and I really
don't understand why. They just don't see my brilliance.
I think the implication about being able to do the capturing and talking about all the
semantic is that your visualization has to be encoding those things to start with.
So the question is if I give you three views that basically all do the same thing, then your
interaction log is not going to tell you anything because you can't follow along with that
type of thinking.
And you'd be surprised at how many visualizations have redundant capabilities between
views. So the fact that our visualization was designed so that they are fairly disjointed
makes it a lot easier.
So this is the lesson learned afterwards, that, you know, thinking about how to design
better interaction capturing actually implies designing better visualizations.
>>: Well, I don't know whether it's implying better visualizations, because you might
want the redundancy in the visualization because --
>> Remco Chang: Sorry. You're right.
>>: [inaudible] -- task better.
>> Remco Chang: Absolutely.
>>: So if your goal is to be able to capture after the fact ->> Remco Chang: Absolutely. So this is where I got horribly dinged in the review
process, because I basically said -- in really thinking about this I realized that there are
times where designing a visualization for the purpose of use versus designing
visualization for capturing, sometimes they actually clash. They don't actually fit into
each other, or least I couldn't -- I wasn't smart enough to figure out how they fit into each
other.
Because you don't want that redundancy. You actually want a single pipeline flow. And
you don't want to encode three different information in the same icon. You want each
icon to be disjoint, to be precise, so the interaction would be meaningful.
Now, if you think about all visualization design in traditional, kind of the tough D design,
they're basically saying cram as many things as possible into as little space as you can.
So that could make the interaction capturing really, really challenging. So if you click on
an icon that has seven different layers of meaning, why [inaudible] click on this. I don't
know. It could be one of the seven things.
And I'm being hammered on this, and I knew I was going to be hammered on this. But
go ahead.
>> Danyel Fisher: Actually, there's a question from George first.
>> Remco Chang: Oh. Yes, sir.
>> George: It seems to me that when you're trying to evaluate interactivity, you'd have to
take into account the nature of the tools that you're using for interactivity.
So I was thinking about, for example, the task of finding the needle in the haystack, the
literal task [inaudible]. The [inaudible] interaction would be to [inaudible] through that
haystack until you find the needle. That's obviously not the way we do it.
A slightly better way would be to use a detector and use that to [inaudible]. That's better.
An even better way would be to use a thing [inaudible].
So all three of those are interaction techniques, because the tool you're using to interact
with the data changes the [inaudible]. And somehow [inaudible] evaluation of what
you've presented, you don't seem to be taking into account the nature of the tools that you
use.
>> Remco Chang: I agree. And I think part of the challenge in the future research is to
see if it is actually possible to differentiate or to isolate the factors saying this is really
coming from interaction and this is not.
So in one of the possible future studies that we're planning to do was to take, for example,
the PCA project and fix out the interactions, so just lock it out, you can't do it anymore.
So we'd have the exact same app but with more of a query typing interface versus more
of a slidy bar direct manipulation type of interface. And do task and comparisons.
So we do want to isolate the factor and what we're trying to say, again, similar to the
spirit of this interaction study or this interaction log study is to say I don't really know
what's in it, I don't know what the strategies are, but I want to know if there is some
benefit of such.
So if I can just show some applications in which you take out certain type of interaction
and all of a sudden the user can do X, Y, and Z, then we can at least say that there is
some benefit to it.
Now, I absolutely agree that this is totally application dependent. But in kind of looking
around in terms of visualization and interaction research and evaluation, I just really
haven't been able to come up -- come across that many things that actually did the
isolation clearly to the point where we think we can use.
So it's a wide-open area, and I really don't have all the answers. I think it's like a huge
problem. This is really just tiny stab No. 1.
>>: So I guess we can also think about the visualization that you use for the visualization
of the -- or of the interaction. So, for example, you happen to choose a timeline view
that's oriented towards showing you which window users were clicking in.
>> Remco Chang: Yes.
>>: Which is useful and interesting. But it would be a very different view if you showed
me, say, which object data users were interacting with.
>> Remco Chang: Yes.
>>: Or ->> Remco Chang: Yeah. I totally agree. But you have to take a step back at looking at
what our original hypothesis and goal was. The goal was to say is there any thinking, is it
extractable in any way. And the fact that I can get 60, 80 percent out of it means that
there is at least something. I don't know what's there. I don't know what I'm missing. I
don't know how I can get to a hundred percent. But at least I show that there's something
in it.
Now, I hope that part of the research is to say, well, let's beat 60 percent and let's beat 60
percent not on WireVis but on everything. And I don't know what that is.
Yes, sir.
>>: I just had a -- some clarifying question on this slide.
>> Remco Chang: Yes.
>>: So what is it exactly that the grad students were writing down and the analysts were
writing down and how did you compare them to see if they were the same?
>> Remco Chang: That's a great question. So we had to break down an analyst process
into three areas. So what we realized is that we have this kind of a hierarchy of process
in terms of the analysis. The first is kind of a strategy level, so the highest level. It's
before they come into analysis. They have some preconceived notion about what they're
going to look for.
So in the case of -- so this a synthetic data. So we're now talking about real Bank of
America data. But they would come in, they'll look at the keywords, and they'll say you
know what? I think anything with Mexico and pharmaceutical is odd. Right? So that
would be, for example, a strategy.
Now, the second tier would be the methods, which says, okay, let's say that is -- anything
related to that is questionable; what do you do, where do you start. So you can either
look at accounts that have those two things together or you can look at the temporal
pattern in which those two things are close together, or various other things that you can
actually do to implement your strategy. So that's what we call methods.
And the last thing is finding. So finding is very precise. It's about which account or
which transaction actually contains suspicious activity that the person deemed to be
questionable.
So we categorize those three types of behaviors. I mean, this is a rough categorization. I
think if you look at analytical literature, like there's a much better hierarchy of sorts. But
we kind of roughly categorize into those three areas.
Does that answer your question?
>>: Not quite. I mean, that sort of tells me -- it gives me a rough idea what the concepts
were at the three levels, but, I mean, were the grad students -- I mean, were there like a
fixed set of codes and the grad students write down saying at time A I saw this code?
>> Remco Chang: Gotcha. No, no, no. So there's no code. It's all kind of just
handwritten. It's interviewed, so there's a lot of transcribing going on here where
especially like -- so these two processes are the same. So analysts telling us what they
did, you know, we're transcribing what they told us from words into literal things, and
there's definitely quite a bit of us as the comparison people to be as unbiased as possible.
So, like I said, the study -- there's quite a bit of hand waving. But one of the things that I
can say very safely is that we took a very safe approach on this. So I generally was -genuinely was interested in what I was going to find. So anything that do not match
perfectly we toss out.
So, for example, if the analyst says my strategy was looking for Mexico, pharmaceutical,
and Brazil, and our student says, oh, Mexico and pharmaceutical. So if they miss Brazil,
we don't give partial credit; we consider it as wrong.
So we take a very -- I don't know what the right word is -- but basically anything that's
not perfectly right we consider it as wrong.
>>: Okay. So the interaction logs actually do contain the data elements themselves, not
just they were looking in this window, but they were looking at this window and focusing
on both Mexico [inaudible].
>> Remco Chang: Right.
>>: The data is encoded in the interaction logs.
>> Remco Chang: Yes. So which visual element they're highlighting or which visual
element they interacted with, that's what we're storing. We don't care about the XY
position of the mouse.
Yes.
>>: There's been a lot of research on the benefits of animation in comprehension. And -yeah [inaudible]. And I'm just wondering if you're never going to get to a hundred
percent, because possibly the design of your user interaction isn't quite right?
>> Remco Chang: Yeah, yeah.
>>: And doesn't quite match the task perfectly and leads to misunderstanding or
confusion?
>> Remco Chang: Absolutely. And I think even if you take 20 steps back and -- you can
say that a lot of analysis actually happens in someone's head. And unless you have some
FMRI thing or something -- so one of our research goal was to say, well, let's be kind of
practical about this.
So we have to imagine an environment, so the environment could be -- let's say you had
the bank. So you can't attach all these external thinks, you can't look at giant, you know,
30 cameras around the guy's desk, you can't have an FMRI stuck on his head -- or, sorry,
EEG stuck on his head or FMRI sitting [inaudible]. So all of that is out.
>>: [inaudible]
>> Remco Chang: I don't think the bank would let us. Yeah. But you're absolutely
right. So like I was saying to Danyel, part of this research was actually just to answer our
own question that says we've seen a lot of people try to do interaction capturing that fail.
And I hate to talk about this because it's almost like, you know, bombarding other
people's work, but the PNNL Glass Box was -- according Jim Thomas [phonetic] was a
complete failure, was a multimillion dollar failure. I know that [inaudible] tried to do
something that didn't work out. Google tried to do something and it didn't work out.
So there's a lot of people who tried to do this that did not work. And the first question we
had was given all the failures and very little success as far as we were able to find, is this
even reasonable to pursue. Can you actually get a thinking analysis high-level strategy
just by looking at interactions.
So that was definitely our step one. And I think once we've proven to ourselves that
using the most kind of manual way, there is something that we can think about, well,
what did we do wrong, can we improve that number and so on.
>>: You actually touched on this before, so [inaudible] what do you think makes this
particular analysis so successful in getting [inaudible].
>> Remco Chang: You should have been my reviewer, because that's what I wrote about
and nobody seemed to care.
But so I think the -- what I start today realize, like I said, was we wanted to get good
results in the capturing, at least our own experience is it starts with designing a
visualization.
So, again, we didn't design it thinking about capturing, we designed it kind of two years
beforehand. But whatever it is that I did made every visual element very straightforward.
It doesn't have multiple meanings in the same visual element. So I don't encode hue and
transparency and whatever all into one GLIF, right, because once you do that, you click
on it, and you have no idea why the user clicked on it.
And I did not do a horrible amount of redundancy. There is some redundancy between
the views, but there's, you know -- the semantic meaning behind each view is fairly clear.
Right. So when you have that kind of isolation in terms of both the window space or the
design space, then the visual elements themselves, then any sort of interaction with these
things become very obvious about what they mean.
So what I realized about the success of this is not really what we did as an experiment but
really was kind of an indication that the original design of WireVis was really suited for
capturing. It's not initially implicated as good visualization, but it's really good for
capturing.
So the question is is this generalizable, and I don't have an answer. And does it mean that
other people should design their visualization to be capturable? I don't really know. But
I think you can't separate the two. You can't say that we're going to have good capturing
techniques without thinking about what the visualization does.
All right. Is there any other questions? Thank you so much.
>> Danyel Fisher: I'd like to thank you our speaker once more.
[applause]
Download