prepare for next time
DESCRIPTION
Prepare for next time. No need to buy the book Free online at http://www.nltk.org/book Read Chapter 1 http://nltk.googlecode.com/svn/trunk/doc/book/ch01.html Install NLTK (see next slide) Warning: It might not be easy (and it might not be your fault) Let us know how it goes - PowerPoint PPT PresentationTRANSCRIPT
Prepare for next time
• No need to buy the book– Free online at http://www.nltk.org/book
• Read Chapter 1 – http://nltk.googlecode.com/svn/trunk/doc/book/ch01.html
• Install NLTK (see next slide)– Warning: It might not be easy (and it might not be your fault)– Let us know how it goes
• (both positive and negative responses are more appreciated)
Installing NLTKhttp://nltk.googlecode.com/svn/trunk/doc/book/ch01.html
• Chapter 01: pp. 1 - 4– Python– NLTK– Data
Homework
George Miller’s Example: Erode
• Exercise: Use “erode” in a sentence:– My family erodes a lot.
• to eat into or away; destroy by slow consumption or disintegration – Battery acid had eroded the engine.– Inflation erodes the value of our money.
• Miller’s Conclusion:– Dictionary examples are more helpful than defs
Definition
Examples
George Miller: Chomsky’s Mentor & Wordnet
Introduction to ProgrammingTraditional(Start with Definitions)• Constants: 1• Variables: x• Objects:
– lists, strings, arrays, matrices• Expressions: 1+x• Statements: Side Effects
– print 1+x;• Conditionals:
– If (x<=1) return 1;• Iteration: for loops• Functions• Recursion • Streams
Non-Traditional(Start with Examples)
• Recursiondef fact(x):
if(x <= 1): return 1else: return x * fact(x-1)
• Streams:– Unix Pipes
• Briefly mentioned– Everything else
Pythondef fact(x):
if(x <= 1): return 1else: return x * fact(x-1)
def fact2(x):result=1for i in range(x):result *=(i+1);return result
• Exercise: Fibonacci in Python
Recursion
Iteration
Lists
Strings
Subscripting
Python Objects
Lists>>> sent1['Call', 'me', 'Ishmael', '.']>>> type(sent1)<type 'list'>>>> sent1[0]'Call'>>> sent1[1:len(sent1)]['me', 'Ishmael', '.']
Strings>>> sent1[0]'Call'>>> type(sent1[0])<type 'str'>>>> sent1[0][0]'C'>>> sent1[0][1:len(sent1[0])]'all'
First
Rest
Flatten: Inverse of Split
>>> def flatten(list):if(len(list) == 1): return list[0];else: return list[0] + ' ' + flatten(list[1:len(list)]);
First
Rest
flatten = split-1
Types & Tokens
PolymorphismPolymorphism
Polymorphism(From Wikipedia)
Flatten: Inverse of Split
>>> def flatten(list):if(len(list) == 1): return list[0];else: return list[0] + ' ' + flatten(list[1:len(list)]);
+