Linguistica Computazionale: esercitazioni

Documenti analoghi
Comandi principali di Linux (1)

Usare Python in Linux

14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX

Uso del terminale in ambiente UNIX

Laboratorio di Informatica Generale I UD Prima esercitazione

Lezione 1: Introduzione alla Shell di Unix

Intro ad analisi. Alessandra Giordani Lunedì 5 marzo 2011

Sistema Operativo (Software di base)

Lezione 3: Programmazione della Shell di Unix

Esercitazione 1 la shell

Linux e la shell Bash

Mirko Mariotti. March 9, 2009

Esplorare e modificare il file system Compilare con gcc Lanciare un programma da linea di comando

Introduzione all uso dei laboratori aka Linux basics. October 23, 2013

Lavoriamo ora in windows

Codice Corso: UNX010. Durata: 3 giorni

Avviate l interprete Python selezionandolo dal menu dei programmi. Una volta avviato, l interprete presenta un cursore in cui inserire comandi

La Shell: esecuzione dei comandi

Si può scrivere un programma anche utilizzando un editor di testo (Blocco Note, WordPad, ) ricordandosi comunque di salvarlo con l estensione.py.

Introduzione all'uso del sistema operativo Ubuntu

Introduzione ai sistemi UNIX/Linux

SHELL: File e Filesystem

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt;

Il software del PC. Il BIOS

Esercitazioni di Informatica (CIV)

Lab. di Sistemi Operativi

File System e Interprete Comandi

Laboratorio. Sistemi Operativi: Linux/Windows. Giovanni Da San Martino

Linux e i software liberi. di Nardean Lorenzo e Redigolo Marco

Introduzione ai Laboratori di Fondamenti di Analisi dei Dati. Antonino Furnari

Sistema operativo & file system 1

01 Terminale e file system

Guida Linux. Molto rapida

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

Sviluppare un programma in FORTRAN

Gestione dei file. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico

Esempio. Le istruzioni corrispondono a quelle di sopra, ma sono scritte in modo simbolico. E indipendente dalla machina

Makefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze)

Introduzione alla. Alessandra Giordani Lunedì 27 febbraio

Corso di Laboratorio di Sistemi Operativi

Ingegneria del Software 1: Eclipse

Funzioni e moduli. Andrea Passerini Informatica. funzioni e moduli

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Classpath e Esercizi su RMI

Elaborato Shell. Elementi di architettura e sistemi operativi 2016/2017

Gestione avanzata dei file

Introduzione ai sistemi UNIX/Linux. Introduzione ai sistemi UNIX/Linux

Input/Output. Console e File.

Shell di Linux e Comandi Utente

Lab. di Sistemi Operativi - Esercitazione n 2 - a.a. 2012/2013

TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Shell. Una shell di comandi ci consente, dunque, di eseguire tutte le operazioni di cui abbiamo bisogno!

Lezione 3. Ing. Giuseppe Chiapparo - Università di Roma Tor Vergata Corso di ingegneria degli algoritmi (parte pratica) A.A.

Linux: Organizzazione filesystem

Prova Finale. Algoritmi e Strutture Dati 2016 / 2017

Linguaggi di Programmazione

Il Sistema Operativo Linux

- comando sort: con chiavi di ordinamento -

Il terminale per tutti

Esercitazione GNU/Linux n. 2

Bash: history list (I)

Lab 1: Marzo 2013

Premessa. Input /output e gestione dei file. I file e gli stream. Il puntatore al file. 21. I FILE NEL LINGUAGGIO C Versione 1.

Command line kung fu

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013

Breve introduzione al linguaggio R

Il linguaggio di programmazione Python

Laboratorio Informatica 1

Linguistica Computazionale. 22 settembre 2014

Fondamenti di GNU/Linux

Scritto da Martedì 12 Luglio :14 - Ultimo aggiornamento Venerdì 15 Luglio :47

Shell BASH. Variabili Redirezione

Esercitazione 2 GUIDA

File System I parte. File System

Info Architettura, JVM Installazione JDK (Windows, Linux) Hello world!

Introduzione a Matlab

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Esercitazione 2. Editor Utenti Permessi

Ulteriori comandi sui file

Laboratorio di Internet I Il sistema operativo Linux

C O P Y R I G H T ( C ) W W W. F O N D A M E N T I. I N F O

Lezione 1. Argomenti della lezione: Introduzione a ROOT

Prima Esercitazione. Unix e GNU/Linux. GNU/Linux e linguaggio C. Stefano Monti smonti@deis.unibo.it

Laboratorio in C su Processi e POSIX IPC (Inter Process Communications) Dalla nona lezione di laboratorio in avanti

Concetti base programmazione. Antonio Gallo

Praticamente Statistica Laboratorio di software open source

Il Sistema Operativo

Laboratorio di Reti Locali e Geografiche

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica

14. Introduzione a Linux

Provare e installare Linux

Introduzione alla programmazione

Input/Output di numeri

I Linguaggi di Programmazione

Il software di sistema

Senza Soluzioni. Può un altro utente non appartenente al gruppo di mgiorgio, eseguire gli stessi comandi?

Transcript:

Esercitazione 1 Felice Dell'Orletta ItaliaNLP Lab (www.italianlp.it) presso Istituto di Linguistica Computazionale A. Zampolli CNR felice.dellorletta@ilc.cnr.it 24 settembre 2014

Linguistica Computazionale: esercitazioni Cosa vedremo: Sviluppo di sistemi per l annotazione linguistica di base, basati su metodi simbolici e statistici: divisione del testo in frasi, tokenizzazione, analisi morfologica, analisi sintattica. Sviluppo di sistemi per l estrazione di informazione dai testi: calcolo di distribuzioni di frequenza, creazione di dizionari, estrazione di concordanze, calcolo della forza associativa tra le parole, calcolo della ricchezza lessicale, della leggibilità,...

Gli strumenti: Python Python è un linguaggio di programmazione sviluppato all inizio degli anni 90 Alcune caratteristiche: Linguaggio di programmazione ad alto livello Orientato agli oggetti Linguaggio interpretato Da www.python.it: Python è un linguaggio di programmazione dinamico orientato agli oggetti utilizzabile per molti tipi di sviluppo software. Offre un forte supporto all'integrazione con altri linguaggi e programmi, è fornito di una estesa libreria standard e può essere imparato in pochi giorni

Gli strumenti: NLTK Natural language ToolKit (NLTK: www.nltk.org): Progetto Open Source iniziato nel 2002 Project Leaders: Steve Bird, Edward Loper, Ewan Klein NLTK è un insieme di moduli Python che possono essere importati all interno dei programmi I moduli presenti in NLTK permettono un facile sviluppo di algoritmi per il trattamento del linguaggio naturale basati su metodi simbolici, statistici, sull apprendimento automatico, etc. NLTK viene distribuito insieme a diversi corpora annotati molto utilizzati all interno della comunità NLP (>di 850Mb di dati)

Python e NLTK Python è particolarmente adatto allo sviluppo di sistemi per il trattamento di dati testuali: Molte funzioni di base sono già presenti nelle librerie standard del linguaggio NLTK potenzia ed estende le funzioni di analisi e trattamento dei testi di Python, così da rendere facile anche l implementazione di moduli di analisi linguistica più complessi

Prima di iniziare: alcuni cenni su Linux GNU/Linux è un sistema operativo libero di tipo Unix (unix-like), sviluppato dal 1991 da Linus Torvalds Il più importante esempio di software libero ed open-source A differenza di Windows, in Linux c è una netta distinzione tra il kernel space e lo user space: Lo user space è l ambiente a disposizione degli utenti, in cui vengono eseguiti i processi; il kernel space è l ambiente in cui viene eseguito il kernel.

Prima di iniziare: le directory Una directory è un contenitore che può contenere sia file che altre directory Le directory vengono gestite attraverso una gerarchia ad albero La directory / è detta directory radice (o root) La directory home è la directory nella quale ci sono i programmi ed i dati inseriti o creati dagli utenti Attraverso un path (o percorso) si indica la posizione di un file o di una directory. Es.: /home/felice/filemiei/file2

Prima di iniziare: la shell di Linux La shell (o terminale) è un interprete di comandi ed è il metodo più rapido ed efficace per interagire con il sistema operativo Linux La shell stessa è un comando Linux Attraverso la shell si possono eseguire i vari comandi Nel file unixxtesto.doc (in http://moodle.humnet.unipi.it) trovate una breve lista di comandi utili per il trattamento dei file di testo attraverso la shell di Linux I comandi possono prendere degli input e restituire degli output sullo standard output (la shell stessa)

Prima di iniziare: esempi di comando linux ls: mostra il contenuto di una directory aggiungendo l opzione al vengono dati i dettagli del contenuto cd: cambia la directory (i vari elementi del path devono essere separati da slash, /) Es: cd miadirectory/.. indica la directory padre;. indica la directory corrente mkdir: crea una nuova directory (es: mkdir nuovadirectory) pwd: stampa il nome della directory corrente ed il proprio path

Prima di iniziare: esempi di comando linux grep: ricerca in uno o più file di testo le linee che corrispondono ad uno o più modelli specificati con espressioni regolari rm: elimina uno o più file (attenzione: l eliminazione è irreversibile!), es: rm nomefile rmdir seguito dal nome di una directory elimina la directory se è vuota man: seguito dal nome di un comando restituisce una pagina di manuale per il comando specificato (es: man nomecomando)...

Prima di iniziare: Emacs Emacs è il più famoso editor di testo per linux, serve per creare, modificare file di testo e per scrivere programmi. Creato nel laboratorio di intelligenza artificilale del MIT nel 1984 da Richard Stallman. Per avviare emacs basta digitare il comando emacs sulla shell di Linux, se il comando emacs è seguito dal nome di un file ed il file esiste tale file viene aperto ed è possibile modificarlo, se il file non esiste viene creato un nuovo file nella directory corrente con il nome usato nel comando. Digitando il comando emacs nomefile & il carattere & manda in background l esecuzione di emacs restituendoci l uso della shell.

Come creare ed eseguire un programma Python Esistono 2 metodi principali per creare ed eseguire un programma in python: scrivendo il programma direttamente nella shell, dopo aver eseguito il comando python (comando che avvia l interprete del python) creando (ad esempio utilizzando emacs) un file con estensione.py contenente il programma e passandolo come parametro al comando python

Python: alcuni esempi da shell Somma tra 2 numeri: Prodotto con variabile:

Python: alcuni esempi da shell Funzione range() e ciclo for: NB: a differenza di tanti altri linguaggi di programmazione il python non usa parentesi o delimitatori di inizio o fine blocco, ma usa l indentazione, che quindi acquisisce un valore semantico.

Python: le stringhe Le stringhe Il ciclo for scorre la stringa carattere per carattere

Python: le stringhe Il metodo split() e le stringhe: Il metodo split(delimitatore) divide la stringa sulla base del carattere (o caratteri) delimitatore e la trasforma in un vettore

Python: apertura di un file La funzione open(): In questo caso il for scorre il file riga per riga Il metodo endswith(str) controlla se la stringa finisce con str

Python: importare i moduli Import serve per importare i moduli: Il modulo sys contiene delle funzionalità specifiche del sistema, ad esempio sys.stdin è lo standard input

Python: stdin e stdout Il programma programma.py prende in input il file prova.txt Il carattere < redirige lo standard input nel programma Per salvare l output di un comando (o programma) in un file bisogna aggiungere > nomefileoutput. Il carattere > redirige lo standard output nel file nomefileoutput