Salve a tutti voi. Nel 1985 in linguaggio basic sono riuscito a costruire un sistema esperto per il riconoscimento degli animali in base alle caratteristiche specifiche di ognuno di essi. Oggi, dopo tanto tempo, vorrei imbastire un sistema esperto magari per il riconoscimento di piante in base alle loro caratteristiche, ma non saprei neppure da dove partire con il linguaggio python.
Mi servirebbe un aiuto da qualcuno per iniziare.
Grazie.
Grazie, proverò a controllare meglio.
Ciao Romeo, sono nuovamente a chiederti un aiuto.
Ho fatto alcuni esperimenti su un sistema esperto medico aggiungendo una malattia con relativi sintomi ma purtroppo mi da sempre errore che non riesco a capire.
Ho semplicemente aggiunto una regola e la relativa nuova malattia.
Ti allego il dettaglio dell'errore.
Purtroppo non riesco a caricare i due script python.
Chiedo scusa ma non riesco a venirne a capo.
Grazie
Grazie come sempre della tua disponibilità, ora devo integrare questa routine all'interno dello script SE.
A presto...
Ezio
O nel browser o con tkinter, ad esempio.... (python lavora come terminale di solito....) ma puoi usare qualcosa del genere per il web:
... from http import server PAGE="""\ <html> <head> <title>ESEMPIO</title> </head> <body> <h1>testo</h1> <img src="stream.mjpg" width="800" height="600"/> </body> </html> """ .... try: address = ('', 8000) server = StreamingServer(address, StreamingHandler) server.serve_forever() finally: camera.stop_recording()
Ciao, ho una domanda un po' particolare.
Faccio girare un sistema esperto e tutti i dialoghi e risultati mi appaiono nella finestra del terminale.
Se volessi che apparissero in una finestra aperta ad ok come dovrei modificare lo script del S.E. ?
Grazie come sempre.
Ezio
Grazie ancora per il link.
A presto con altre notizie.
Ezio
Ciao Romeo, sono riuscito a trovare alcuni sistemi esperti in python qui: https://github.com/topics/pyknow ed è esattamente quello che desideravo perchè posso sperimentare cambiamenti ed ottenere quello che mi aspettavo.
Sono felice per questo.
A presto con nuove notizie....(se non ti disturbo)
Ezio
Ci tengo, fammi sapere e se vuoi contattami pure... Buon lavoro...
Grazie per il sostegno, ne ho veramente bisogno. Ho iniziato a vedere un breve tutorial sul python e a modificare brevi codici per vedere cosa succede.
Sono sicuro che, data la mia ignoranza totale sul linguaggio, dovrò accontentarmi di trovare qualche codice che ricordi un sistema esperto e poi modificarlo per il mio uso.
Ti terrò informato sui progressi. Grazie per lo spunto.
A presto.
Ezio
Quando vuoi, sai che qualche dritta, se ci riesco te la posso indicare, tieni presente che, forse, per fare ciò da te richiesto, l percorso è lungo e dovrai approcciarti a TensorFlow, Keras, Pandas e ad altri moduli basilari per il trattamento dei dati e delle immagini. In questo senso, potresti prendere una spunto ad esempio da qui: https://amslaurea.unibo.it/17606/1/tesi.pdf
Per il momento grazie, certo che il sumero mi affascina....scherzo naturalmente. Proverò a comprendere qualcosa del python seguendo le tue indicazioni e leggendo quà e là (ho scoperto che esiste una libreria che si chiama experta appositamente studiata per costruire sistemi esperti !).
A presto
Non ti preoccupare e non sentirti un allievo.... siamo due amici che si aiutano a vicenda, incominciamo con andare a cercare degli help... tipo: https://docs.python.org/3/tutorial/ e poi incominciamo dalla riga di comando, seguendo alcuni esempi che trovi quì: https://docs.python.org/3/tutorial/interpreter.html
Sappimi dire, che .... assieme potremmo anche studiare il sumero ( e non per scherzo)... Vedi che in questo modo con python si usa il CLI (terminale).... infatti questo linguaggio ha il pregio di essere formalmente testuale..... e immediato (in quanto non viene compilato ma interpretato)..... poi non avere nessun problema a fare delle domande, se non rispondo io ci sarà sicuramente qualcuno più bravo di me...
Come allievo devo dire che sono una frana, completamente, perchè quel piccolo esempio che mi hai fatto è come far comprendere il greco ad un turco (che non abbia studiato greco!).
Voglio dire che se non riesco ad afferrare l'uso, non riesco a capire.
Ho trovato qualche porzione di codice per sistemi esperti, che naturalmente non girano, perchè ci sono sempre errori, e non riesco a comprenderli.
Ho l'impressione di essermi messo in un'impresa titanica.....
Sono un coraggioso ma non fino a questo punto.
Abbi tanta pazienza....
Come ti ho detto, mi farebbe piacere condividere con te questa esperienza e, visto che conosci poco il linguaggio, ma abbiamo probabilmente in comune una certa età, e visto che io ho smesso tanti anni fa di fare il "professore", diciamo che da moderni "perennial", ci possiamo anche intendere al volo, quindi, compatibilmente con il tempo a mia disposizione, non considero la nostra interazione, una fonte di stress, anzi! Sono sicuro che il nostro percorso assieme, potrà darci delle belle soddisfazioni, ed essere molto interessante per tutti e due. Ora, se vuoi, potremmo anche continuare in questa sede la nostra relazione epistolare di informatica dedicata a python e al tuo progetto, ma se vuoi, puoi anche contattarmi in privato, che per me va altrettanto bene, ma forse, se continuiamo su queste pagine, magari ci sarà anche qualcun'altro che saprà aiutarti meglio di me. In qualsiasi caso, volendo partire dalle basi, e condividendo la mia esperienza, le prime difficoltà con Python le ho incontrate, all'inizio, con la sintassi, ovvero con l'identazione dei comandi.
Indentare il codice è una pratica comune in tutti i linguaggi, perché semplifica la lettura del codice e la comprensione della sua struttura, questa scelta ha diversi aspetti positivi, tra cui:
il linguaggio risulta più chiaro e leggibile;
la struttura del programma coincide sempre con quella dell’indentazione;
lo stile di indentazione è necessariamente uniforme in qualsiasi listato.
Questo significa che, in Python, l’indentazione è significativa, e che indentare in modo incorretto può portare a comportamenti sbagliati del programma o a errori.
Un esempio di codice identato:
for i in range(colonne):
for j in range(righe):
x = matrix1[i,j]
y = matrix2[i,j]
if x != y:
Num_Diff+=1
print("riscontrati N_pixel differenti = ", Num_Diff)
l'identazione consiste nei "4 spazi" che vengono anteposti alle righe di programma:
in questo caso una semplice procedura di controllo matricale per rilevare la differenza di pixel in due matrici
relative a due immagini monocromatiche.
Per quanto riguarda l'interfaccia grafica in python, esiste e si chiama tkinter, è un modulo del linguaggio, ma è una cosa che prenderei in considerazione più avanti. Alla mia età correre diventa un po' complicato.... Dimmi se trovi difficoltà nel fare qualche esercizio simile a questo.... che sembra semplice ma non lo è...
Ciao Romeo. Ho installato python 3.10.4 e non so nulla di programmazione orientata agli oggetti purtroppo. Diciamo che oltre al basic non conosco altri linguaggi di programmazione. Mi sembra che il basic fosse molto semplice anche da comprendere ma dai pochi esempi di python che ho visto anche questo linguaggio non dovrebbe essere molto ostico.
Ho cercato, con poco successo, di far girare quei semplici programmini in python, ma hanno sempre quale errore che non so correggere.
Ho molte domande in proposito ma non posso "stressarti" come farebbe un ragazzo con il suo professore, e comunque una cosa te la voglio chiedere: perchè il python non viene eseguito in una finestra?
Ormai è passato molto tempo e direi che il mio cervello non è più all'altezza di un tempo per cui mi limito a leggere qualche listato in python cercando di modificarlo per vedere altri usi, in genere con risultati non gratificanti.
A presto.
Ezio
Sono felice di leggerti, e sicuramente in passato ho condiviso il piacere di usare Mac, il mio primo computer professionale, che vendevo e usavo, il mio mi era costato 7.500.000 lire: un MAC SE, con stampante ecc... anno di grazia 1987.... quando passavo dai negozi di informatica a studio di impianti elettrici e automazioni di cui ho ancora il blog del sito: https://www.cyberservices.it/ ,quindi, tornando a noi, credo che Atom sia proprio indicata allo scopo, credo inoltre che tu abbia installato una versione di Python3, se vuoi mi saprai dire quale, credo inoltre che, sotto il profilo informatico tu sia anche molto più preparato di me, anche se non conosci il linguaggio, che a mio avviso è abbastanza semplice, la sua particolarità principale è "lidentazione", e a mio avviso è sicuramente meno macchinoso di "C++" o altri. Prima di partire a razzo nel mondo della I.A. con particolare riferimento ai classificatori, deep learning, ecc... volevo chiederti se hai confidenza con linguaggi OOP... classi, funzioni ecc... che in python sono di casa.... così come dizionari, tuple, liste... ecc.... se vuoi, a me farebbe proprio piacere poter condividere con te qualche esperienza in questo settore.
Ciao Romeo, gentile come sempre. Per tornare un attimo (con una macchina del tempo virtuale) a quei fascinosi anni 80, ti dirò che dopo aver usato i vari Sinclair ZX 80, 81, sono passato ai vari Sharp e finalmente approdato in Apple perchè ho vinto un concorso di programmazione progettando una contabilità per azienda agraria partendo da un testo che trattava questo argomento. In palio c'era un Mac 128 k, che ho espanso, poi passato a tutti i tipi di mac da allora, e finalmente all' iMac attuale.Mi sono anche lanciato nella musica elettronica di cui sono un grande appassionato, costruendo sintetizzatori, organi, batterie elettroniche e diavolerie varie per non farmi mancare nulla. Il Commodore 64, che adoro, l'ho nuovamente usato durante il lockdown del 2020 e ne sono ancora ammirato ora!
Venendo all'interfaccia io uso Atom, e per allargare ancora un po' il discorso sulle mie aspettative ti dirò che mi piacerebbe arrivare ad un progetto che, partendo da una base di conoscenza sui vegetali, che riporti le caratteristiche specifiche di ogni specie, la scandagliasse in base alle mie richieste e al termine sapesse indicarmi la specie con quelle particolari caratteristiche.
In basic era stato abbastanza semplice, ma non so nulla di python e quindi ho bisogno di aiuto.
Grazie per avermi letto e spero che la cosa mi riesca, con il tuo aiuto.
Ezio
Grazie per la fiducia, cercherò di rendermi utile.... il libro uscirà, quanto prima, in italiano, in spagnolo ed in inglese, poi in altre lingue... Si tratta di un testo abbastanza eterogeneo in quanto dedicato alla robotica "Human friendly", come riportato dal sito https://thecorpora.com/a-book-on-robotics-in-education-by-romeo-ceccato/ ma se vuoi incominciare dalle basi, intanto vediamo di scegliere una GUI, io ad esempio, al momento uso VS Code, ma ce ne sono altre che possono essere utilizzate per iniziare a fare coding con python. L'ambiente di lavoro che utilizzo, al momento è Ubuntu, e come avrai intuito, sono a favore del software libero (Linux). In questo periodo sto lavorando al progetto di Q.bo STEM e quindi uso raspberry come HW di riferimento per le mie applicazioni, che comprendono anche il riconoscimento di immagini, oltre che NLP. Mi ha incuriosito il fatto del tuo approccio del 1985.... il che significa che "non sei di primo pelo"... io all'epoca vendevo i Commodore 64... i Vic 20.... e credo che anche tu abbia qualche capello bianco come me.... quindi è un piacere, per me, se ti posso essere utile.
Grazie, i tuoi suggerimenti sono bene accetti. Il libro è in italiano oppure solo inglese?
Grazie.
Se non hai tanta fretta, a breve dovrebbe uscire questo libro in edicola, che forse potrebbe esserti utile, ma se hai tanta fretta allora il mio consiglio è quello di vedere alcuni tutorial su python, se credi, ti posso dare dei suggerimenti.