Ma interesează sa învăț sa folosesc inteligenta artificiala.
Am vazut ca Tensorflow are si un modul in JavaScript, deci as putea in NodeJS lucra cu el. Corect?
Pe de alta parte ma sperie partea de matematica. Am vazut intr-un ghid ca sunt necesare mai multe cunostinte de matematica cu care nu m-am întâlnit in programare.
Cine are experiența, poate spune in ce măsura este folosită de către programatori matematica?
Fata de aplicatiile web tipice sa zicem ca e mai complicat. Nu spun ca nu se poate face ceva care necesita matematica avansata si ca aplicatie web, doar ca nu e ceva cu ce sa te intalnesti in mod obisnuit.
Idk, depinde de ramura. Rețele neuronale sau copaci sunt mai light pe partea de matematica. Kernel methods, graphical models sau theoretical ML (PAC learning, convergente etc) sunt destul de matematice. Daca mai bagi și optimizare ai ceva de studiat. Nu știu ce e prin fizica computațională, dar mă întreb - e partea fizica cea grea sau partea computațională?
Poti sa te uiti la mine pe blog (dar arunca o privire si pe link-uri/articole referite, pentru ca am ascuns un pic chestiunile mai dificile) ca sa-ti faci o idee despre parti usoare din fizica computationala
Cu privire la intrebarea aia, nu-i prea inteleg sensul. Fizica computationala e fizica, doar ca (de obicei, dar nu numai) abordeaza probleme nerezolvabile analitic. Atat pentru partea fizica cat si pentru partea computationala trebuie sa intelegi si aplici exact aceeasi matematica, cu diferentierea ca in plus ai nevoie pe partea computationala de analiza numerica/matematica discreta si in general de CS.
Ma gândesc sa încerc cu TensorFlow si sa adaug un senzor de mișcare + Arduino.
Obiectivul ar fi sa obțin o estimare fidela a frecventei mișcării prin dreptul senzorului, in funcție de ore si zile ale săptămânii.
Poate postez proiectul public si ne ajutam intre noi.
E cineva interesat?
O altă aplicație este conversația cu un bot, în limba română, prin mesaje text. Notă: Activează tastatura în limba română și trimite mesaje scrise cu diacritice, deoarece platforma NLP respectivă are seturile de instruire diferite pentru fiecare limbă.
Pentru aplicații de cercetare privind limbajul uman, fără să fie nevoie de prea multă matematică, se poate folosi biblioteca AllenNLP, având un API bine documentat, care este construită cu o alternativă la Tensorflow (pe care este bazată biblioteca NLP Dialogflow), numită PyTorch (pytorch .org), în limbajul Python.
Codul sursă poate fi stocat în GitHub (github .com), și apoi încărcat într-o platformă pentru rularea aplicațiilor cloud, de exemplu Heroku (suportă unele limbaje de programare elements.heroku .com/buildpacks).
Ca temă de început se poate elabora o aplicație care să furnizeze unui bot de limba română semnificația potrivită (cea mai probabilă) contextului conversațional în care se află botul la un moment dat, preluată și aleasă din multiplele explicații ale unui cuvânt preluate cu un apel Http GET din DEX Online (dexonline .ro)
O altă temă, de nivel mediu, ar fi rezolvarea numerică a coordonatelor pentru entitățile unei imagini. Ca exemplu, este scenariul unui robot agricol care trebuie (a) să taie buruienile din jurul unei plante de cultură, sau (b) să culeagă fructul unei specii de plante, și care își controlează acțiunile pe baza fluxului video, cu număr arbitrar de cadre pe secundă, al unei camere. Similar, este necesară utilizarea unui API pentru analiză de imagine instruit (sau predispus la instruire) cu seturi mari de imagini ale plantei (sau fructului, în al doilea caz) și ale buruienii (sau celorlalte elemente, frunze, tulpină etc., în al doilea caz). În ambele cazuri, imaginea (poate) conține de mai multe ori fiecare entitate grafică care trebuie ocolită (planta în primul caz) sau țintită (fructul în al doilea caz). Recomandare pentru primul caz - o floare de grădină (înflorită sau nu) cu frunze (sau floare) ușor de deosebit, iar pentru al doilea, cireșe (pt. a discrimina folosind contrastul culorilor roșu/ verde).
AI in Games si AI in robotica este interesant, reinforcement learning, Q Learning e interesant de obicei pentru fiecare actiune obtii un reward si trebuie sa gandesti o strategie de optimizare suma reward global.
Articolul urmator este despre multiple agents reinforcement learning, agenti care concureaza unul impotriva altuia, coopereaza sau strategii mixte spune ca se pot folosi si concepte din game theory, sunt multi algoritmi din diverse research labs care vin cu propii algoritmi.
Si un documentar Rise of the Robots cu challenges in concursul de robotica DARPA si rezolvarea lor in cel mai inovativ mod: https://www.netflix.com/title/80991270
Desigur exista si sisteme gen Robotic Operating System, cel mai cunoscut este ROS http://www.ros.org/ care este un linux, a scos si Microsoft un ROS.