Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ray Mooney Department of Computer Science

Similar presentations


Presentation on theme: "Ray Mooney Department of Computer Science"— Presentation transcript:

1 Generating Natural-Language Video Descriptions Using Text-Mined Knowledge
Ray Mooney Department of Computer Science University of Texas at Austin Joint work with Niveda Krishnamoorthy Girish Malkarmenkar Tanvi Motwani. Kate Saenko Sergio Guadarrama..

2 Integrating Language and Vision
Integrating natural language processing and computer vision is an important aspect of language grounding and has many applications. NIPS-2011 Workshop on Integrating Language and Vision NAACL-2013 Workshop on Vision and Language CVPR-2013 Workshop on Language for Vision

3 Video Description Dataset (Chen & Dolan, ACL 2011)
2,089 YouTube videos with 122K multi-lingual descriptions. Originally collected for paraphrase and machine translation examples. Available at:

4 Sample Video

5 Sample M-Turk Human Descriptions (average ~50 per video)
A MAN PLAYING WITH TWO DOGS A man takes a walk in a field with his dogs. A man training the dogs in a big field. A person is walking his dogs. A woman is walking her dogs. A woman is walking with dogs in a field. A woman is walking with four dogs outside. A woman walks across a field with several dogs. All dogs are going along with the woman. dogs are playing Dogs follow a man. Several dogs follow a person. some dog playing each other Someone walking in a field with dogs. very cute dogs A MAN IS GOING WITH A DOG. four dogs are walking with woman in field the man and dogs walking the forest Dogs are Walking with a Man. The woman is walking her dogs. A person is walking some dogs. A man walks with his dogs in the field. A man is walking dogs. a dogs are running A guy is training his dogs A man is walking with dogs. a men and some dog are running A men walking with dogs. A person is walking with dogs. A woman is walking her dogs. Somebody walking with his/her pets. the man is playing with the dogs. A guy training his dogs. A lady is roaming in the field with his dogs. A lady playing with her dogs. A man and 4 dogs are walking through a field. A man in a field playing with dogs. A man is playing with dogs.

6 Our Video Description Task
Generate a short, declarative sentence describing a video in this corpus. First generate a subject (S), verb (V), object (O) triplet for describing the video. <cat, play, ball> Next generate a grammatical sentence from this triplet. A cat is playing with a ball.

7 person ride SUBJECT VERB OBJECT motorbike
This can be done by correctly identifying the subject, the verb and the object in the video. SUBJECT VERB OBJECT person ride motorbike A person is riding a motorbike.

8 OBJECT DETECTIONS table 0.07 dog 0.15 aeroplane 0.05 car 0.29 cow 0.11
We start by running object detectors on each video frame. car 0.29 cow 0.11 person 0.42 motorbike 0.51 train 0.17

9 SORTED OBJECT DETECTIONS
motorbike 0.51 person 0.42 car 0.29 These detections are then sorted by their confidence scores. aeroplane 0.05

10 VERB DETECTIONS move 0.34 slice 0.13 dance 0.05 ride 0.19 hold 0.23
Similarly, we run verb detectors trained on the spatio-temporal interest points in the video. These points, indicated by yellow circles, show us where interesting events occur. ride 0.19 hold 0.23 drink 0.11 climb 0.17 shoot 0.07

11 SORTED VERB DETECTIONS
move 0.34 hold 0.23 ride 0.19 The verb detections are also sorted by their confidence scores. dance 0.05

12 SORTED OBJECT DETECTIONS SORTED VERB DETECTIONS
motorbike 0.51 move 0.34 person 0.42 hold 0.23 car 0.29 ride 0.19 Now that we have the sorted object and verb detections, aeroplane 0.05 dance 0.05

13 move 1.0 walk 0.8 pass 0.8 ride 0.8 EXPAND VERBS OBJECTS VERBS
we expand each verb with its most similar verbs to generate a larger set of potential words for describing the action.

14 OBJECTS VERBS EXPAND VERBS hold 1.0 keep 1.0

15 OBJECTS VERBS EXPAND VERBS ride 1.0 go 0.8 move 0.8 walk 0.7

16 OBJECTS VERBS EXPAND VERBS dance 1.0 turn 0.7 jump 0.7 hop 0.6

17 Web-scale text corpora
GigaWord, BNC, ukWaC, WaCkypedia, GoogleNgrams GET Dependency Parses OBJECTS VERBS A man rides a horse det(man-2, A-1) nsubj(rides-3, man-2) root(ROOT-0, rides-3) det(horse-5, a-4) dobj(rides-3, horse-5) EXPANDED VERBS Since vision detections can be noisy especially while dealing challenging YouTube videos, we need to incorporate some real world knowledge that reflects the likelihood of various entities being the subject or object of a given activity. This can be learnt from web-scale text corpora by mining for subject, verb , object triplets via dependency parses. <person, ride, horse> Subject-Verb-Object triplet

18 Web-scale text corpora
GigaWord, BNC, ukWaC, WaCkypedia, GoogleNgrams OBJECTS VERBS <person, ride, horse> <person, walk, dog> <person, hit, ball> . EXPANDED VERBS We then train a language model on these subject, verb, object triplets using Kneser-Ney smoothing. A language model assigns a probability to judge how likely a person would be to say such a sentence. This S-V-O language model is now capable of ranking triplets by their real world likelihood. SVO Language Model

19 Web-scale text corpora
GigaWord, BNC, ukWaC, WaCkypedia, GoogleNgrams OBJECTS VERBS <person, ride, horse> <person, walk, dog> <person, hit, ball> . EXPANDED VERBS We also train a regular language model on the Google n gram corpus. Regular Language Model SVO Language Model

20 Web-scale text corpora
GigaWord, BNC, ukWaC, WaCkypedia, GoogleNgrams OBJECTS VERBS SVO Language Model REGULAR Language Model EXPANDED VERBS The best triplet can now be selected by combining the vision detection scores with the score from the language model. CONTENT PLANNING: <person, ride, motorbike>

21 Web-scale text corpora
GigaWord, BNC, ukWaC, WaCkypedia, GoogleNgrams OBJECTS VERBS SVO Language Model REGULAR Language Model EXPANDED VERBS In the final step we generate a set of candidate descriptions using a template based approach on the Subject, Verb, Object triplet. The regular language model picks the best description for the video from these candidate descriptions. CONTENT PLANNING: <person, ride, motorbike> SURFACE REALIZATION: A person is riding a motorbike.

22 Object Detection Used Felzenszwalb et al.’s (2008) pretrained deformable part models. Covers 20 PASCAL VOC object categories Aeroplanes Bicycles Birds Boats Bottles Buses Cars Cats Chairs Cows Dining tables Dogs Horses Motorbikes People Potted plants Sheep Sofas Trains TV/Monitors

23 Activity Detection Process
Parse video descriptions to find the majority verb stem for describing each training video. Automatically create activity classes from the video training corpus by clustering these verbs. Train a supervised activity classifier to recognize the discovered activity classes.

24 Automatically Discovering Activity Classes
….Video Clips A puppy is playing in a tub of water. A dog is playing with water in a small tub. A dog is sitting in a basin of water and playing with the water. A dog sits and plays in a tub of water. A puppy is playing in a tub of water. A dog is playing with water in a small tub. A dog is sitting in a basin of water and playing with the water. A dog sits and plays in a tub of water. A girl is dancing. A young woman is dancing ritualistically. Indian women are dancing in traditional costumes. Indian women dancing for a crowd. The ladies are dancing outside. A girl is dancing. A young woman is dancing ritualistically. Indian women are dancing in traditional costumes. Indian women dancing for a crowd. The ladies are dancing outside. A man is cutting a piece of paper in half lengthwise using scissors. A man cuts a piece of paper. A man is cutting a piece of paper. A man is cutting a paper by scissor. A guy cuts paper. A person doing something A man is cutting a piece of paper in half lengthwise using scissors. A man cuts a piece of paper. A man is cutting a piece of paper. A man is cutting a paper by scissor. A guy cuts paper. A person doing something …. NL Descriptions .… ~314 Verb Labels play throw hit dance jump cut chop slice Hierarchical Clustering cut, chop, slice throw, hit dance, jump play # throw # hit # dance # jump # cut # chop # slice # …..

25 Automatically Discovering Activity Classes
Automatically Discovering Activities and Producing Labeled Training Data Automatically Discovering Activity Classes Hierarchical Agglomerative Clustering Using “res” metric from WordNet::Similarity (Pedersen et al.), We cut the resulting hierarchy to obtain 58 activity clusters

26 Creating Labeled Activity Data
A girl is dancing. A young woman is dancing ritualistically. A girl is dancing. A young woman is dancing ritualistically. A man is cutting a piece of paper in half lengthwise using scissors. A man cuts a piece of paper. A man is cutting a piece of paper in half lengthwise using scissors. A man cuts a piece of paper. A woman is riding horse on a trail. A woman is riding on a horse. A woman is riding horse on a trail. A woman is riding on a horse. A group of young girls are dancing on stage. A group of girls perform a dance onstage. A group of young girls are dancing on stage. A group of girls perform a dance onstage. A woman is riding a horse on the beach. A woman is riding a horse. A woman is riding a horse on the beach. A woman is riding a horse. climb, fly ride, walk, run, move, race cut, chop, slice dance, jump play throw, hit ride, walk, run, move, race cut, chop, slice dance, jump

27 Supervised Activity Recognition
Extract video features for Spatio-Temporal Interest Points (STIPs) (Laptev et al., CVPR-2008) Histograms of Oriented Gradients (HoG) Histograms of Optical Flow (Hof) Use extracted features to train a Support Vector Machine (SVM) to classify videos.

28 Activity Recognizer using Video Features
SVM Trained on STIP features and activity cluster labels Training Video STIP features A woman is riding horse in a beach. A woman is riding on a horse. ride, walk, run, move, race NL description Discovered Activity Label

29 Selecting SVO Just Using Vision (Baseline)
Top object detection from vision = Subject Next highest object detection = Object Top activity detection = Verb

30 Vision triplet: (person, ride, motorbike)
Sample SVO Selection Top object detections: person: 0.67 motorbike: 0.56 dog: 0.11 Top activity detections: ride: 0.41 keep_hold: 0.32 lift: 0.23 Vision triplet: (person, ride, motorbike)

31 Evaluating SVO Triples
A ground-truth SVO for a test video is determined by picking the most common S, V, and O used to describe this video (as determined by dependency parsing). Predicted S, V, and O are compared to ground-truth using two metrics: Binary: 1 or 0 for exact match or not WUP: Compare predicted word to ground truth using WUP semantic word similarity score from WordNet Similarity (0≤WUP≤1)

32 Experiment Design Selected 235 potential test videos that contain VOC objects based on object names (or synonyms) appearing in their descriptions. Used remaining 1,735 videos to discover activity clusters, keeping clusters with at least 9 videos. Keep training and test videos whose verb is in the 58 discovered clusters. 1,596 training videos 185 test videos

33 Baseline SVO Results Binary Accuracy WUP Accuracy Subject Verb Object
All Vision baseline 71.35% 8.65% 29.19% 1.62% WUP Accuracy Subject Verb Object All Vision baseline 87.76% 40.20% 61.18% 63.05%

34 Vision Detections are Faulty!
Top object detections: motorbike: 0.67 person: 0.56 dog: 0.11 Top activity detections: go_run_bowl_move: 0.41 ride: 0.32 lift: 0.23 Vision triplet: (motorbike, go_run_bowl_move, person)

35 Using Text-Mining to Determine SVO Plausibility
Build a probabilistic model to predict the real-world likelihood of a given SVO. P(person,ride,motorbike) > P(motorbike,run,person) Run the Stanford dependency parser on a large text corpus, and extract the S, V, and O for each sentence. Train a trigram language model on this SVO data, using Kneyser-Ney smoothing to back-off to SV and VO bigrams.

36 British National Corpus (BNC)
Text Corpora Corpora Size of text (# words) British National Corpus (BNC) 100M GigaWord 1B ukWaC 2B WaCkypedia_EN 800M GoogleNgrams 1012 Stanford dependency parses from first 4 corpora used to build SVO language model. Full language model used for surface realization trained on GoogleNgrams using BerkeleyLM

37 <person, park, bat> <person, ride, motorcycle>
<person, walk, dog> <car, move, bag> <car, move, motorcycle> <person, hit, ball> person hit ball -1.17 person ride motorcycle -1.3 person walk dog -2.18 person park bat -4.76 SVO Language Model car move bag -5.47 car move motorcycle -5.52

38 Verb Expansion Given the poor performance of activity recognition, it is helpful to “expand” the set of verbs considered beyond those actually in the predicted activity clusters. We also consider all verbs with a high WordNet WUP similarity (>0.5) to a word in the predicted clusters.

39 Sample Verb Expansion Using WUP
go 1.0 walk 0.8 pass 0.8 follow 0.8 fly 0.8 fall 0.8 come 0.8 ride 0.8 run 0.67 chase 0.67 approach 0.67 move

40 Integrated Scoring of SVOs
Consider the top n=5 detected objects and the top k=10 verb detections (plus their verb expansions) for a given test video. Construct all possible SVO triples from these nouns and verbs. Pick the best overall SVO using a metric that combines evidence from both vision and language.

41 Combining SVO Scores Linearly interpolate vision and language-model scores: Compute SVO vision score assuming independence of components and taking into account similarity of expanded verbs.

42 Baseline Vision triplet: motorbike, march, person
Sample Reranked SVOs person,ride,motorcycle -3.02 person,follow,person -3.31 person,push,person -3.35 person,move,person -3.42 person,run,person -3.50 person,come,person -3.51 person,fall,person -3.53 person,walk,person -3.61 motorcycle,come,person -3.63 person,pull,person -3.65 Baseline Vision triplet: motorbike, march, person

43 Baseline Vision triplet: person, move, dog
Sample Reranked SVOs person,walk,dog -3.35 person,follow,person -3.35 dog,come,person person,move,person -3.46 person,run,person -3.52 person,come,person -3.55 person,fall,person -3.57 person,come,dog -3.62 person,walk,person -3.65 person,go,dog -3.70 Baseline Vision triplet: person, move, dog

44 SVO Accuracy Results (w1 = 0)
Binary Accuracy Subject Activity Object All Vision baseline 71.35% 8.65% 29.19% 1.62% SVO LM (No Verb Expansion) 85.95% 16.22% 24.32% 11.35% (Verb Expansion) 36.76% 33.51% 23.78% WUP Accuracy Subject Activity Object All Vision baseline 87.76% 40.20% 61.18% 63.05% SVO LM (No Verb Expansion) 94.90% 63.54% 69.39% 75.94% (Verb Expansion) 66.36% 72.74% 78.00%

45 Surface Realization: Template + Language Model
Input: The best SVO triplet from the content planning stage Best fitting preposition connecting the verb & object (mined from text corpora) Template: Determiner + Subject + (conjugated Verb) + Preposition(optional) + Determiner + Object Generate all sentences fitting this template and rank them using a Language Model trained on Google NGrams

46 Automatic Evaluation of Sentence Quality
Evaluate generated sentences using standard Machine Translation (MT) metrics. Treat all human provided descriptions as “reference translations”

47 Human Evaluation of Descriptions
Asked 9 unique MTurk workers to evaluate descriptions of each test video. Asked to choose between vision-baseline sentence, SVO-LM (VE) sentence, or “neither.” Gold-standard item included in each HIT to exclude unreliable workers. When preference expressed, 61.04% preferred SVO-LM (VE) sentence. For 84 videos where the majority of judges had a clear preference, 65.48% preferred the SVO-LM (VE) sentence.

48 Examples where we outperform the baseline

49 Examples where we underperform the baseline

50 Discussion Points Human judges seem to care more about correct objects than correct verbs, which helps explain why their preferences are not as pronounced as differences in SVO scores. Novelty of YouTube videos (e.g. someone dragging a cat on the floor), mutes impact of SVO model learned from ordinary text.

51 Future Work Larger scale experiment using bigger sets of objects (ImageNet) and activities. Ability to generate more complex sentences with adjectives, adverbs, multiple objects, and scenes. Ability to generate multi-sentential descriptions of longer videos with multiple events.

52 Conclusions Grounding language in vision is a fundamental problem with many applications. We have developed a preliminary broad-scale video description system. Mining common-sense knowledge (e.g. an SVO model) from large-scale parsed text, improves performance across multiple evaluations. Many directions for improving the complexity and coverage of both language and vision components.

53 Examples where we outperform the baseline

54 Examples where we underperform the baseline


Download ppt "Ray Mooney Department of Computer Science"

Similar presentations


Ads by Google