Ano ang Isang Neural Network? Panimula Sa Mga Artipisyal na Neural Networks



Ang blog na ito sa kung ano ang isang Neural Networks ay magpapakilala sa iyo ng mga pangunahing konsepto ng Neural Networks at kung paano nila malulutas ang mga kumplikadong problema na hinihimok ng data.

Sa pagsulong sa Pag-aaral ng Machine, kumuha ng isang mataas na kalsada. Ang Deep Learning ay itinuturing na pinaka-advanced na teknolohiya na binuo upang malutas ang mga kumplikadong problema na gumagamit ng napakalaking mga hanay ng data. Ang blog na ito sa kung ano ang isang Neural Networks ay magpapakilala sa iyo ng mga pangunahing konsepto ng Neural Networks at kung paano nila malulutas ang mga kumplikadong problema na hinihimok ng data.

Upang makakuha ng malalim na kaalaman sa Artipisyal na Katalinuhan at Malalim na Pag-aaral, maaari kang magpatala nang live ni Edureka na may suporta na 24/7 at habang-buhay na pag-access.





Narito ang isang listahan ng mga paksa na sasakupin dito Blog:

  1. Ano ang isang Neural Network?
  2. Ano ang Deep Learning?
  3. Pagkakaiba sa pagitan ng AI, ML at, DL
  4. Kailangan Para sa Malalim na Pag-aaral
  5. Kaso ng Deep Learning Use
  6. Paano gumagana ang Neural Networks?
  7. Ipinaliwanag ang Neural Network Na May Halimbawa

Simpleng Kahulugan Ng Isang Neural Network

Na-modelo ayon sa utak ng tao, a Ang Neural Network ay itinayo upang gayahin ang pagpapaandar ng isang utak ng tao . Ang utak ng tao ay isang neural network na binubuo ng maraming mga neuron, katulad din, ang isang Artipisyal na Neural Network (ANN) ay binubuo ng maraming mga perceptron (ipinaliwanag kalaunan).



Neural Network - Ano ang Isang Neural Network - Edureka

Ang isang neural network ay binubuo ng tatlong mahahalagang layer:

  • Layer ng Input: Tulad ng iminumungkahi ng pangalan, tinatanggap ng layer na ito ang lahat ng mga input na ibinigay ng programmer.
  • Nakatagong Layer: Sa pagitan ng input at ang output layer ay isang hanay ng mga layer na kilala bilang Mga Nakatagong layer. Sa layer na ito, isinasagawa ang mga pagkalkula na nagreresulta sa output.
  • Layer ng Output: Ang mga input ay dumaan sa isang serye ng mga pagbabago sa pamamagitan ng nakatagong layer na sa wakas ay nagreresulta sa output na naihatid sa pamamagitan nito patong

Bago kami mapunta sa kalaliman ng kung paano gumana ang isang Neural Network, unawain natin kung ano ang Deep Learning.



Ano ang Malalim na Pag-aaral?

Ang Deep Learning ay isang advanced na larangan ng Pag-aaral ng Machine na gumagamit ng mga konsepto ng Neural Networks upang malutas ang mga kaso ng highly-computational na paggamit na nagsasangkot ng pagtatasa ng multi-dimensional na data. Awtomatiko nitong proseso ng pagkuha ng tampok, siguraduhin na kailangan ng kaunting interbensyon ng tao.

Kaya't ano nga ba ang Deep Learning?

Ang Deep Learning ay isang advanced sub-larangan ng Pag-aaral ng Machine na gumagamit ng mga algorithm na inspirasyon ng istraktura at pag-andar ng utak na tinatawag na Artipisyal na Mga Neural Networks.

Pagkakaiba sa pagitan ng AI, ML, at DL (Artipisyal na Intelihensiya kumpara sa Pag-aaral ng Makina kumpara sa Malalim na Pag-aaral)

Ang mga tao ay madalas na may posibilidad na isipin na , , at Malalim na Pag-aaral ay pareho dahil mayroon silang mga karaniwang application. Halimbawa, ang Siri ay isang application ng AI, Pag-aaral ng Machine at Malalim na pag-aaral.

Kaya paano nauugnay ang mga teknolohiyang ito?

  • Artipisyal na Katalinuhan ay ang agham ng pagkuha ng mga machine na gayahin ang pag-uugali ng mga tao.
  • Pag-aaral ng makina ay isang subset ng Artipisyal na Katalinuhan (AI) na nakatuon sa pagkuha ng mga machine upang gumawa ng mga desisyon sa pamamagitan ng pagpapakain sa kanila ng data.
  • Malalim na pag aaral ay isang subset ng Learning ng Machine na gumagamit ng konsepto ng mga neural network upang malutas ang mga kumplikadong problema.

Upang buuin ito ang AI, ang Pag-aaral ng Machine at ang Malalim na Pag-aaral ay magkakaugnay na mga patlang. Ang Pag-aaral ng Makina at Malalim na mga tulong sa pag-aaral ay Artipisyal na Katalinuhan sa pamamagitan ng pagbibigay ng isang hanay ng mga algorithm at neural network upang malutas mga problemang hinimok ng data.

Ngayong pamilyar ka sa mga pangunahing kaalaman, unawain natin kung ano ang humantong sa pangangailangan para sa Deep Learning.

kung paano ihinto ang programa sa java

Kailangan Para sa Malalim na Pag-aaral: Mga Limitasyon ng Mga Algorithm at Diskarte sa Pag-aaral ng Makina

Ang Machine Learning ay isang pangunahing tagumpay sa teknikal na mundo, humantong ito sa awtomatiko ng mga walang pagbabago ang tono at matagal na oras, nakatulong ito sa paglutas ng mga kumplikadong problema at paggawa ng mas matalinong mga desisyon. Gayunpaman, mayroong ilang mga kakulangan sa pagkatuto ng Machine na humantong sa paglitaw ng Deep Learning.

Narito ang ilang mga limitasyon ng Pag-aaral ng Machine:

  1. Hindi maproseso ang data ng mataas na dimensional: Maaaring maproseso ng Machine Learning ang maliit na sukat ng data na naglalaman ng isang maliit na hanay ng mga variable. Kung nais mong pag-aralan ang data na naglalaman ng 100 ng mga variable, pagkatapos ay hindi maaaring gamitin ang Pag-aaral ng Machine.
  2. Manwal ang tampok na engineering: Isaalang-alang ang isang kaso ng paggamit kung saan mayroon kang 100 mga variable ng hula at kailangan mong paliitin lamang ang mga makabuluhan. Upang magawa ito kailangan mong manu-manong pag-aralan ang ugnayan sa pagitan ng bawat isa sa mga variable at alamin kung alin ang mahalaga sa paghula ng kinalabasan. Ang gawaing ito ay labis na nakakapagod at matagal sa isang developer.
  3. Hindi perpekto para sa pagganap ng pagtuklas ng bagay at pagproseso ng imahe: Dahil ang pagtuklas ng bagay ay nangangailangan ng mataas na dimensional na data, ang Pag-aaral ng Machine ay hindi maaaring magamit upang maproseso ang mga hanay ng data ng imahe, mainam lamang ito para sa mga hanay ng data na may isang pinaghihigpitang bilang ng mga tampok.

Bago tayo mapunta sa kailaliman ng Mga Neural Networks, isaalang-alang natin ang isang kaso ng paggamit sa totoong mundo kung saan ipinatupad ang Deep Learning.

Kaso / Mga Aplikasyon ng Malalim na Pag-aaral

Alam mo bang ang PayPal ay nagpoproseso ng higit sa $ 235 bilyon sa mga pagbabayad mula sa apat na bilyong transaksyon ng higit sa 170 milyong mga customer? Gumagamit ito ng malawak na dami ng data na ito upang makilala ang mga posibleng mapanlinlang na aktibidad kasama ng iba pang mga kadahilanan.

Sa tulong ng mga algorithm ng Deep Learning, ang data ng mined ng PayPal mula sa kasaysayan ng pagbili ng kanilang customer bilang karagdagan sa pagsusuri ng mga pattern ng malamang pandaraya na nakaimbak sa mga database nito upang mahulaan kung ang isang partikular na transaksyon ay mapanlinlang o hindi.

Ang kumpanya ay umaasa sa teknolohiya ng Deep Learning & Machine Learning sa loob ng 10 taon. Sa una, ang koponan sa pagsubaybay sa pandaraya ay gumamit ng mga simple, linear na mga modelo. Ngunit sa paglipas ng mga taon ang kumpanya ay lumipat sa isang mas advanced na teknolohiya sa Pag-aaral ng Machine na tinatawag na, Deep Learning.

Tagapamahala sa peligro sa pandaraya at Data Scientist sa PayPal, si Ke Wang, na sinipi:

'Ang tinatamasa namin mula sa mas moderno, advanced na pag-aaral ng makina ay ang kakayahang ubusin ang mas maraming data, hawakan ang mga layer at layer ng abstraction at magawang 'makita' ang mga bagay na hindi makikita ng isang mas simpleng teknolohiya, kahit na ang mga tao ay maaaring hindi makakita. '

Ang isang simpleng linear na modelo ay may kakayahang pag-ubos ng halos 20 mga variable. Gayunpaman, sa teknolohiya ng Deep Learning ang isang tao ay maaaring magpatakbo ng libu-libong mga puntos ng data. Samakatuwid, sa pamamagitan ng pagpapatupad Teknolohiya ng Deep Learning, sa wakas ay maaaring suriin ang PayPal sa milyun-milyong mga transaksyon upang makilala ang anumang mapanlinlang aktibidad.

c ++ kung paano ayusin ang isang array

Pumunta tayo ngayon sa kailaliman ng isang Neural Network at unawain kung paano ito gumagana.

Paano Gumagana ang Isang Neural Network?

Upang maunawaan ang mga neural network, kailangan nating sirain ito at maunawaan ang pinakamahalagang yunit ng isang Neural Network, ibig sabihin, isang Perceptron.

Ano ang Isang Perceptron?

Ang Perceptron ay isang solong layer neural network na ginagamit upang maiuri ang linear data. Mayroon itong 4 na mahahalagang bahagi:

  1. Mga input
  2. Timbang at Bias
  3. Pag-andar sa Paglalagom
  4. Pag-aktibo o pagbabago ng Pag-andar

Ang pangunahing lohika sa likod ng isang Perceptron ay ang mga sumusunod:

Ang mga input (x) na natanggap mula sa input layer ay pinarami ng kanilang itinalagang timbang w. Ang pinaraming halaga ay idinagdag upang mabuo ang Timbang na Kabuuan. Ang bigat na kabuuan ng mga input at kani-kanilang timbang ay inilalapat sa isang nauugnay na Pag-andar ng Pag-aktibo. Ang pagpapaandar ng pagpapaandar ay mapa ng input sa kani-kanilang output.

Timbang at Bias Sa Malalim na Pag-aaral

Bakit kailangan nating magtalaga ng mga timbang sa bawat input?

Kapag ang isang variable ng pag-input ay pinakain sa network, ang isang sapalarang piniling halaga ay itatalaga bilang bigat ng input na iyon. Ang bigat ng bawat punto ng data ng pag-input ay nagpapahiwatig kung gaano kahalaga ang pag-input sa hulaan ang kinalabasan.

Ang bias parameter, sa kabilang banda, ay nagbibigay-daan sa iyo upang ayusin ang curve ng pagpapaandar ng pag-aktibo sa isang paraan na nakakamit ang isang tumpak na output.

Pag-andar sa Paglalagom

Kapag ang mga input ay nakatalaga ng ilang timbang, ang produkto ng kani-kanilang input at timbang ay kinuha. Ang pagdaragdag ng lahat ng mga produktong ito ay nagbibigay sa amin ng Timbang na Kabuuang. Ginagawa ito sa pagpapaandar ng pagbubuod.

Pag-andar ng Pag-activate

Ang pangunahing layunin ng mga pagpapaandar ng pag-aktibo ay mapa ang bigat na kabuuan sa output. Ang mga pagpapaandar sa pag-activate tulad ng tanh, ReLU, sigmoid at iba pa ay mga halimbawa ng mga pagpapaandar sa pagbabago.

Upang matuto nang higit pa tungkol sa mga pag-andar ng Perceptrons, maaari kang dumaan dito Blog.

Bago kami balutin ang blog na ito, kumuha tayo ng isang simpleng halimbawa upang maunawaan kung paano gumana ang isang Neural Network.

Ipinaliwanag ang Mga Neural Network na May Isang Halimbawa

Isaalang-alang ang isang senaryo kung saan ka bumuo ng isang Artipisyal na Neural Network (ANN) na nag-uuri ng mga imahe sa dalawang klase:

  • Klase A: Naglalaman ng mga larawan ng mga hindi may sakit na dahon
  • Klase B: Naglalaman ng mga imahe ng mga may sakit na dahon

Kaya paano ka makakalikha ng isang Neural network na nag-uuri ng mga dahon sa mga sakit na hindi may sakit?

Palaging nagsisimula ang proseso sa pagproseso at pagbabago ng input sa paraang madali itong maproseso. Sa aming kaso, ang bawat imahe ng dahon ay gagamitin sa mga pixel depende sa sukat ng imahe.

Halimbawa, kung ang imahe ay binubuo ng 30 by 30 pixel, kung gayon ang kabuuang bilang ng mga pixel ay 900. Ang mga pixel na ito ay kinakatawan bilang mga matrice, na pagkatapos ay pinakain sa input layer ng Neural Network.

Tulad ng kung paano ang aming utak ay may mga neuron na makakatulong sa pagbuo at pagkonekta ng mga saloobin, ang isang ANN ay may mga perceptron na tumatanggap ng mga input at pinoproseso ang mga ito sa pamamagitan ng pagpasa sa kanila mula sa input layer hanggang sa nakatagong at sa wakas ang output layer.

Habang ang pagpasok ay naipasa mula sa layer ng pag-input patungo sa nakatagong layer, isang paunang random na timbang ang itinalaga sa bawat input. Ang mga input ay pinarami ng kanilang kaukulang timbang at ang kanilang kabuuan ay ipinadala bilang input sa susunod na nakatagong layer.

Dito, ang isang numerong halaga na tinatawag na bias ay nakatalaga sa bawat perceptron, na nauugnay sa weightage ng bawat input. Dagdag dito, ang bawat perceptron ay ipinapasa sa pamamagitan ng pag-aktibo o isang pagpapaandar na pagbabago na tumutukoy kung ang isang partikular na perceptron ay napapagana o hindi.

ruby sa riles ng tutorial sa website

Ginagamit ang isang naka-aktibong perceptron upang magpadala ng data sa susunod na layer. Sa ganitong paraan, ang data ay naipalaganap (Forward propagation) sa pamamagitan ng neural network hanggang sa maabot ng mga perceptron ang output layer.

Sa layer ng output, maaaring makuha ang isang posibilidad na magpasya kung ang data ay kabilang sa klase A o klase B.

Simple lang ang tunog, hindi ba? Kaya, ang konsepto sa likod ng Neural Networks ay pulos batay sa paggana ng utak ng tao. Kailangan mo ng malalim na kaalaman sa iba't ibang mga konsepto at algorithm ng matematika. Narito ang isang listahan ng mga blog upang makapagsimula ka:

  1. Ano ang Deep Learning? Pagsisimula Sa Malalim na Pag-aaral
  2. Malalim na Pag-aaral gamit ang Python: Mga Gabay sa Mga Nagsisimula sa Malalim na Pag-aaral

Kung nakita mong may kaugnayan ang blog na ito, tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Ang kurso sa Edureka Deep Learning na may TensorFlow Certification Training na kurso ay tumutulong sa mga nag-aaral na maging dalubhasa sa pagsasanay at pag-optimize ng mga basic at convolutional neural network na gumagamit ng mga real-time na proyekto at takdang-aralin kasama ang mga konsepto tulad ng pag-andar ng SoftMax, Auto-encoder Neural Networks, Pinagbawalan Boltzmann Machine (RBM).