Experienta cu inteligenta artificiala


(George Ilie) #1

Salut,

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?


(Adrian) #2

Daca te referi la machine learning, matematica necesara este banala comparativ cu alte domenii.


#3

https://www.quora.com/What-math-is-needed-for-artificial-intelligence-machine-learning-research-Is-it-necessary-to-learn-everything-or-can-you-learn-just-the-specifics-such-as-matrix-multiplication

Related-stuff mai poti gasi pe canalul dansului: https://www.youtube.com/user/sentdex


(George Ilie) #4

Da, trebuia sa spun ca ma refer la machine learning.

La prerechizite spune:

Mastery of intro-level algebra. You should be comfortable with variables and coefficients, linear equations, graphs of functions, and histograms.

Mă întrebam cât este de diferit crearea unei aplicatii complexe care folosește ML față de crearea unei aplicatii web.


#5

N-as zice ca e tocmai ca o plimbare in parc


(cosmos) #6

Cred ca un curs de algebra liniara si analiza matematica de anul 1 te-ar ajuta. Eu am facut acele chestii de prin link-ul de pe quora in anul 1

Tehnici de optimizare am facut in anul 2.


Cred ca s-a mai postat pe forum, dar este o buna lectura


(Adrian) #7

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.


(Adrian) #8

Depinde de perspectiva. Fata de ce intalnesti in fizica computationala, e plimbare in parc.


(Horia Coman) #9

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ă?


(Adrian) #10

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 :slight_smile:

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.


(George Ilie) #11

Learning AI if You Suck at Math

Asta voiam sa spun de la început :slight_smile:

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?


#12

Salut. Uite o aplicație AI pentru citirea unui text cu voce, în limba română.


#13

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ă.


#14

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).

(Adavidoaiei Dumitru-Cornel) #15

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.


(cosmos) #16

La Codecamp am fost la o prezentare a unui tip de la Microsoft care a folosit tehnici de deep learning pt a descoperi zacaminte de petrol si gaz

Prezentarea aici
https://drive.google.com/open?id=1Z_HqTmrtsOkjyZLJRpowvnVdlg1tbIgn


Initial am vrut sa o pun aici ca pptx, dar Discourse nu accepta formatul. Si este mare, 17 mb


(Adavidoaiei Dumitru-Cornel) #17

@Cosmin_Popescu good job :grin:.