Mesterségesintelligencia- (AI-) architektúra tervezése
A mesterséges intelligencia (AI) a számítógép azon képessége, hogy utánozza az intelligens emberi viselkedést. A mesterséges intelligencián keresztül a gépek képeket elemezhetnek, beszédet írhatnak, természetes módon kommunikálhatnak, és előrejelzéseket készíthetnek adatok használatával.
AI-fogalmak
Algoritmus
Az algoritmusok számítások és szabályok sorozatai, amelyeket egy probléma megoldására vagy egy adatkészlet elemzésére használnak. Ez olyan, mint egy folyamatábra, amely részletes utasításokat tartalmaz a felteendő kérdésekhez, de matematikai és programozási kódban van megírva. Egy algoritmus leírhatja, hogyan állapítható meg, hogy egy kisállat macska, kutya, hal, madár vagy gyík-e. Egy másik sokkal bonyolultabb algoritmus leírhatja, hogyan azonosíthat egy írott vagy beszélt nyelvet, elemezheti a szavait, lefordíthatja őket egy másik nyelvre, majd ellenőrizheti a fordítás pontosságát.
Gépi tanulás
A gépi tanulás (ML) egy olyan AI-technika, amely matematikai algoritmusokkal hoz létre prediktív modelleket. Az algoritmusok az adatmezők elemzésére és az adatokból való "tanulásra" szolgálnak a benne található minták használatával modellek létrehozásához. Ezeket a modelleket ezután arra használják, hogy tájékozott előrejelzéseket vagy döntéseket hozzanak az új adatokról.
A prediktív modellek ellenőrzése ismert adatok alapján, meghatározott üzleti forgatókönyvekhez kiválasztott teljesítménymetrikák alapján mérve, majd szükség szerint módosítható. Ezt a tanulási és ellenőrzési folyamatot betanításnak nevezzük. Az időszakos újratanítás révén az ML-modellek idővel javulnak.
Deep learning
A mély tanulás olyan gépi tanulási típus, amely képes meghatározni, hogy az előrejelzései pontosak-e. Algoritmusokat is használ az adatok elemzéséhez, de ez nagyobb léptékben történik, mint az ML.
A mély tanulás mesterséges neurális hálózatokat használ, amelyek több algoritmusrétegből állnak. Minden réteg megvizsgálja a bejövő adatokat, saját speciális elemzést végez, és olyan kimenetet hoz létre, amelyet más rétegek is megérthetnek. Ezt a kimenetet ezután átadja a következő rétegnek, ahol egy másik algoritmus végzi a saját elemzését, és így tovább.
Az egyes neurális hálózatok számos rétege és néha több neurális hálózat használata esetén a gépek saját adatfeldolgozással tanulhatnak. Ehhez sokkal több adatra és sokkal nagyobb számítási teljesítményre van szükség, mint az ML.
Python scikit-learn- és mélytanulási modellek betanítása az Azure-ban
Python scikit-learn- és mélytanulási modellek valós idejű pontozása az Azure-ban
Robotok
A robot egy automatizált szoftverprogram, amelyet egy adott feladat végrehajtására terveztek. Úgy képzeld el, mint egy robotot test nélkül. A korai robotok viszonylag egyszerűek voltak, és viszonylag egyszerű algoritmikus logikával kezelték az ismétlődő és terjedelmes feladatokat. Ilyenek például a keresőmotorok által a webes tartalmak automatikus feltárására és katalógusára használt webbejárók.
A robotok sokkal kifinomultabbá váltak, mi és más technológiák használatával utánozzák az emberi tevékenységet és a döntéshozatalt, gyakran pedig közvetlenül kommunikálnak az emberekkel szövegen vagy akár beszéden keresztül. Ilyenek például a vacsorafoglalásra alkalmas robotok, az ügyfélszolgálati interakciókat segítő csevegőrobotok (vagy beszélgetési AI), valamint a közösségi oldalakra friss híreket vagy tudományos adatokat közzétévő közösségi robotok.
A Microsoft az Azure Bot Service kínál, amely egy nagyvállalati szintű robotfejlesztésre tervezett felügyelt szolgáltatás.
Azure-referenciaarchitektúra: Nagyvállalati szintű beszélgetési robot
Példa számítási feladat: Beszélgetési csevegőrobot szállodai foglalásokhoz az Azure-ban
Autonóm rendszerek
Az autonóm rendszerek egy fejlődő új osztály részei, amelyek túlmutatnak az alapvető automatizáláson. Ahelyett, hogy egy adott feladatot többször, alig vagy egyáltalán nem hajtanak végre (mint a robotok), az autonóm rendszerek intelligenciát hoznak a gépekre, hogy alkalmazkodjanak a változó környezetekhez a kívánt cél elérése érdekében.
Az intelligens épületek autonóm rendszereket használnak az olyan műveletek automatikus vezérlésére, mint a világítás, a szellőzés, a légkondicionáló és a biztonság. Egy kifinomultabb példa lehet egy önirányítású robot, amely egy összecsukott aknaaknát vizsgálva alaposan feltérképezi a belsejét, megállapítja, hogy mely részek szilárdak szerkezetileg, elemzik a levegőt a légáteresztő képesség érdekében, és észlelik a csapdába esett bányászok jeleit, akik mentésre szorulnak anélkül, hogy a távoli végen valós időben emberi megfigyelést kellene végezni.
Általános információk a Microsoft AI-ról
További információ a Microsoft AI-ról, és naprakészen tarthatja a kapcsolódó híreket:
Magas szintű architekturális típusok
Előre összeállított AI
Az előre összeállított AI pontosan úgy hangzik, mint a használatra kész AI-modellek, -szolgáltatások és API-k. Ezek segítségével intelligenciát adhat az alkalmazásokhoz, webhelyekhez és folyamatokhoz anélkül, hogy adatokat kellene gyűjtenie, majd saját modelleket kellene létrehoznia, betanítása és közzététele után.
Az előre összeállított AI egyik példája lehet egy olyan előre betanított modell, amely az adott módon beépíthető, vagy alapkonfigurációt biztosít a további egyéni betanításhoz. Egy másik példa egy felhőalapú API-szolgáltatás, amely bármikor meghívható a természetes nyelv kívánt módon történő feldolgozásához.
Azure Cognitive Services
A Cognitive Services lehetőséget nyújt a fejlesztőknek arra, hogy előre összeállított API-kat és integrációs eszközkészleteket használva olyan alkalmazásokat hozzanak létre, amelyek képesek megtekinteni, hallani, beszélni, megérteni, sőt akár okokat kezdeni. A Cognitive Services szolgáltatáskatalógusa öt fő pillérbe sorolható: Vision, Speech, Language, Web Search és Decision/Recommendation.
Előre összeállított AI-modellek az AI Builderben
Az AI Builder a Microsoft Power Platform új képessége, amely pont-kattintásos felületet biztosít az AI alkalmazásokhoz való hozzáadásához, még akkor is, ha nem rendelkezik kódolási vagy adatelemzési ismeretekkel. (Az AI Builder egyes funkciói még nem jelentek meg általánosan elérhetőként, és előzetes verzióban maradnak. További információt a Szolgáltatás rendelkezésre állása régiónként lapon talál.)
Saját modelleket készíthet és taníthat be, de az AI Builder előre összeállított AI-modelleket is biztosít, amelyek azonnal használatra készek. Hozzáadhat például egy összetevőt a Microsoft Power Appsben egy előre összeállított modell alapján, amely felismeri a névjegykártyákról származó kapcsolattartási adatokat.
Egyéni AI
Bár az előre összeállított AI hasznos (és egyre rugalmasabb), a legjobb módja annak, hogy az AI-ból megkapja, amire szüksége van, ha saját maga hoz létre egy rendszert. Ez nyilvánvalóan egy nagyon mély és összetett téma, de tekintsünk meg néhány alapfogalmat, amelyek túlmutatnak az imént tárgyaltakon.
Kódnyelvek
A mesterséges intelligenciának az alapvető fogalma az algoritmusok használata az adatok elemzéséhez és modellek létrehozásához az adatok leírására (vagy pontozására) hasznos módokon. Az algoritmusokat fejlesztők és adattudósok (és néha más algoritmusok) programozási kóddal írják. Az AI-fejlesztés két legnépszerűbb programozási nyelve jelenleg a Python és az R.
A Python egy általános célú, magas szintű programozási nyelv. Egyszerű, könnyen elsajátítható szintaxissal rendelkezik, amely kihangsúlyozza az olvashatóságot. Nincs fordítási lépés. A Python nagy méretű standard kódtárral rendelkezik, de támogatja a modulok és csomagok hozzáadását is. Ez ösztönzi a modularitást, és lehetővé teszi, hogy szükség esetén bővítse a képességeket. A Python AI- és ML-kódtárainak nagy és egyre bővülő ökoszisztémája van, köztük sok olyan is, amely könnyen elérhető az Azure-ban.
Bevezetés a gépi tanulásba Python és Azure Notebooks használatával
scikit-learn. Nyílt forráskódú gépi tanulási kódtár Pythonhoz
PyTorch. Nyílt forráskódú Python-kódtár gazdag ökoszisztémával, amely mély tanuláshoz, számítógépes látáshoz, természetes nyelvi feldolgozáshoz és egyebekhez használható
TensorFlow. Nyílt forráskódú szimbolikus matematikai kódtár ml-alkalmazásokhoz és neurális hálózatokhoz is
Oktatóanyag: Gépi tanulási modellek alkalmazása Azure Functions Pythonnal és TensorFlow-val
Az R a statisztikai számítástechnika és a grafika nyelve és környezete. Használható mindenre a széles körű társadalmi és marketing trendek online feltérképezésétől a pénzügyi és éghajlati modellek fejlesztéséig.
A Microsoft teljes mértékben elfogadta az R programozási nyelvet, és számos különböző lehetőséget kínál az R-fejlesztők számára a kód Azure-ban való futtatására.
Microsoft R Open. A Microsoft R továbbfejlesztett disztribúciója, amely teljes mértékben kompatibilis az R-3.5.3-zal, és további képességekkel rendelkezik a jobb teljesítmény és reprodukálhatóság érdekében, valamint támogatja a Windows- és Linux-alapú platformokat
Oktatás
A betanítás a gépi tanulás alapja. Ez egy algoritmus "tanítása" iteratív folyamata modellek létrehozásához, amelyek az adatok elemzésére, majd pontos előrejelzések készítésére szolgálnak. A gyakorlatban ez a folyamat három általános fázisból áll: betanítás, ellenőrzés és tesztelés.
A betanítási fázisban az ismert adatok minőségi készlete lesz megjelölve, hogy az egyes mezők azonosíthatók legyenek. A címkézett adatok egy adott előrejelzésre konfigurált algoritmusba lesznek beállítva. Ha elkészült, az algoritmus egy modellt ad ki, amely paraméterek készleteként a talált mintákat írja le. Az ellenőrzés során a rendszer címkével t használ a modell teszteléséhez. Az algoritmus szükség szerint van beállítva, és esetleg több betanításon is átesik. Végül a tesztelési fázis címkék és előre kijelölt célok nélkül használ valós adatokat. Feltételezve, hogy a modell eredményei pontosak, a rendszer használatra késznek tekinti, és üzembe helyezhető.
Hiperparaméterek finomhangolása
A hiperparaméterek a betanítási folyamatot szabályozó adatváltozók. Ezek konfigurációs változók, amelyek az algoritmus működését szabályozzák. A hiperparaméterek így általában a modell betanítása előtt vannak beállítva, és nem módosulnak a betanítási folyamaton belül úgy, ahogyan a paraméterek. A hiperparaméterek finomhangolása magában foglalja a próbaverziók futtatását a betanítási feladaton belül, felméri, hogy milyen jól végzik el a feladatot, majd szükség szerint módosítják őket. Ez a folyamat több modellt hoz létre, amelyek mindegyike különböző hiperparaméter-családokkal van betanítva.
A modell kiválasztása
A betanítási és hiperparaméter-finomhangolási folyamat számos jelölt modellt hoz létre. Ezek számos különböző varianciával rendelkezhetnek, beleértve az adatok előkészítéséhez szükséges erőfeszítést, a modell rugalmasságát, a feldolgozási idő mennyiségét és természetesen az eredmények pontosságát. Az igényeinek és korlátainak leginkább megfelelő betanított modell kiválasztását model selection-nek nevezzük, de ez legalább annyira a betanítás előtti előtervezésről szól, mint a legjobban működő modell kiválasztásáról.
Automatizált gépi tanulás (AutoML)
Az automatizált gépi tanulás( más néven AutoML) a gépi tanulási modellek fejlesztésének időigényes, iteratív feladatainak automatizálása. Jelentősen csökkentheti az éles üzemre kész gépi tanulási modellek beszerzéséhez szükséges időt. Az automatizált gépi tanulás anélkül segíthet a modell kiválasztásában, a hiperparaméterek finomhangolásában, a modell betanításában és más feladatokban, hogy kiterjedt programozást vagy tartományismeretet kellene igényelnie.
Pontozás
A pontozástelőrejelzésnek is nevezik, amely egy betanított gépi tanulási modellen alapuló értékek létrehozásának folyamata, néhány új bemeneti adat alapján. A létrehozott értékek vagy pontszámok jövőbeli értékek előrejelzését is jelenthetik, de egy valószínű kategóriát vagy eredményt is jelenthetnek. A pontozási folyamat számos különböző típusú értéket generálhat:
Az ajánlott elemek listája és a hasonlósági pontszám
Numerikus értékek idősorozat-modellekhez és regressziós modellekhez
Valószínűségérték, amely azt jelzi, hogy egy új bemenet egy meglévő kategóriához tartozik
Annak a kategóriának vagy fürtnek a neve, amelyhez az új elem a leginkább hasonlít
Előrejelzett osztály vagy eredmény besorolási modellekhez
A kötegelt pontozás az, amikor az adatokat bizonyos meghatározott időtartam alatt gyűjtik, majd kötegben dolgozzák fel. Ilyen lehet például az üzleti jelentések létrehozása vagy az ügyfelek hűségének elemzése.
A valós idejű pontozás pontosan az a pontozás, amely folyamatban van, és a lehető leggyorsabban történik. A klasszikus példa a hitelkártya-csalások észlelése, de a valós idejű pontozás beszédfelismeréshez, orvosi diagnózisokhoz, piaci elemzésekhez és sok más alkalmazáshoz is használható.
Általános információk az Egyéni AI-ról az Azure-ban
Microsoft AI a GitHubon: Minták, referenciaarchitektúrák és ajánlott eljárások
Egyéni AI az Azure GitHub-adattárban. Szkriptek és oktatóanyagok gyűjteménye, amelyekkel a fejlesztők hatékonyan használhatják az Azure-t az AI-számítási feladatokhoz
Azure Machine Learning Service-példajegyzetfüzetek (Python). Az Azure Machine Learning Python SDK-t bemutató példajegyzetfüzetek GitHub-adattára
Azure AI-platformajánlatok
Az alábbiakban áttekintheti azokat az Azure-technológiákat, -platformokat és -szolgáltatásokat, amelyekkel az igényeinek megfelelő AI-megoldásokat fejleszthet.
Azure Machine Learning
Ez egy nagyvállalati szintű gépi tanulási szolgáltatás a modellek gyorsabb létrehozásához és üzembe helyezéséhez. Az Azure Machine Learning webes felületeket és SDK-kat kínál, így gyorsan betanítheti és üzembe helyezheti gépi tanulási modelljeit és folyamatait nagy méretekben. Ezeket a képességeket mind használhatja olyan nyílt forráskódú Python-keretrendszerekkel, mint a PyTorch, a TensorFlow és a scikit-learn.
Az Azure Machine Learning adatarchitektúra-útmutatója – áttekintés
Mi az Azure Machine Learning? Általános tájékozódás számos képzési forrásra, SDK-ra, dokumentációra és egyebekre mutató hivatkozásokkal
Gépi tanulási referenciaarchitektúrák az Azure-hoz
Python scikit-learn- és mélytanulási modellek betanítása az Azure-ban
Python-alapú gépi tanulási modellek kötegelt pontozása az Azure-ban
Python scikit-learn- és mélytanulási modellek valós idejű pontozása az Azure-ban
Gépi tanulás operacionalizálása (MLOps) Python-modellekhez az Azure Machine Learning használatával
R machine learning-modellek valós idejű pontozása az Azure-ban
Spark machine learning-modellek kötegelt pontozása az Azure Databricksben
Azure automatizált gépi tanulás
Az Azure széles körű támogatást nyújt az automatizált gépi tanuláshoz. A fejlesztők kód nélküli felhasználói felülettel vagy kódelső jegyzetfüzetek használatával hozhatnak létre modelleket.
Oktatóanyag: Besorolási modell létrehozása automatizált gépi tanulással az Azure Machine Learningben
Oktatóanyag: Automatizált gépi tanulás használata a taxiutak árának előrejelzéséhez
Automatizált gépi tanulási kísérletek konfigurálása Pythonban
Az Azure Machine Learning parancssori felületi bővítményének használata
Gépi tanulási tevékenységek automatizálása az Azure Machine Learning parancssori felületével
Azure Cognitive Services
Ez az AI-szolgáltatások és kognitív API-k átfogó családja, amely segít intelligens alkalmazások létrehozásában. Ezek a tartományspecifikus, előre betanított AI-modellek az adatokkal testre szabhatók.
Azure Cognitive Search
Ez egy AI-alapú felhőalapú keresőszolgáltatás mobil- és webalkalmazás-fejlesztéshez. A szolgáltatás kereshet a privát heterogén tartalmak között, és lehetőség van AI-bővítésre, ha a tartalom strukturálatlan vagy nem azonosítható nyers formában.
Természetes nyelvi feldolgozási technológia kiválasztása az Azure-ban
Rövid útmutató: Azure Cognitive Search kognitív képességcsoport létrehozása a Azure Portal
Azure Bot Service
Ez egy beépített robotfejlesztési környezet, amely beépített sablonokkal rendelkezik a gyors kezdéshez.
Azure-referenciaarchitektúra: Nagyvállalati szintű beszélgetési robot
Példa számítási feladatra: Beszélgetési csevegőrobot szállodai foglalásokhoz az Azure-ban
Apache Spark az Azure-ban
Az Apache Spark egy párhuzamos feldolgozást végző keretrendszer, amely támogatja a memóriabeli feldolgozást a big data-elemző alkalmazások teljesítményének növelése érdekében. a Spark alapelemeket nyújt a memórián belüli fürtszámításhoz. A Spark-feladatok betölthetik és gyorsítótárazhatják az adatokat a memóriába, és újra lekérdezhetik őket, ami sokkal gyorsabb, mint a lemezalapú alkalmazások, például a Hadoop.
Az Apache Spark az Azure HDInsightban az Apache Spark Microsoft-implementációja a felhőben. A HDInsightban található Spark-fürtök kompatibilisek az Azure Storage-ral és a Azure Data Lake Storage, így HDInsight Spark-fürtökkel feldolgozhatja az Azure-ban tárolt adatokat.
Az Apache SparkHoz készült Microsoft Machine Learning-kódtár az MMLSpark (Az Apache Sparkhoz készült Microsoft ML). Ez egy nyílt forráskódú kódtár, amely számos mélytanulási és adatelemzési eszközt, hálózatkezelési képességet és éles szintű teljesítményt ad hozzá a Spark-ökoszisztémához. További információ az MMLSpark funkcióiról és képességeiről.
Az Azure HDInsight áttekintése. Alapvető információk a funkciókról, a fürtarchitektúráról és a használati esetekről, valamint rövid útmutatókhoz és oktatóanyagokhoz.
Oktatóanyag: Apache Spark gépi tanulási alkalmazás létrehozása az Azure HDInsightban
GitHub-adattár az MMLSparkhoz: Microsoft Machine Learning-kódtár az Apache Sparkhoz
Apache Spark gépi tanulási folyamat létrehozása a HDInsighton
Azure Databricks Runtime for Machine Learning
Az Azure Databricks egy Apache Spark-alapú elemzési platform, amely egykattintásos beállítással, egyszerűsített munkafolyamatokkal és interaktív munkaterülettel rendelkezik az adattudósok, mérnökök és üzleti elemzők közötti együttműködéshez.
A Databricks Runtime for Machine Learning (Databricks Runtime ML) lehetővé teszi egy Databricks-fürt elindítását az elosztott betanításhoz szükséges összes kódtárral. Használatra kész környezetet biztosít a gépi tanuláshoz és az adatelemzéshez. Emellett több népszerű kódtárat is tartalmaz, köztük a TensorFlow, a PyTorch, a Keras és az XGBoost. Az elosztott betanítást is támogatja a Horovod használatával.
Ügyfelek történetei
A különböző iparágak innovatív és inspiráló módon alkalmazzák az AI-t. Az alábbiakban számos ügyféleset-tanulmányt és sikertörténetet olvashat:
ASOS: Az online kiskereskedő az Azure Machine Learning szolgáltatással oldja meg a kihívásokat
Volkswagen: A gépi fordítás a Volkswagent beszéli – 40 nyelven
Buncee: A NYC-iskola minden korosztálynak és képességnek biztosít lehetőséget az Azure AI-vel
A Wix intelligens, skálázható keresést helyez üzembe 150 millió webhelyen Azure Cognitive Search
Asklepios Klinik Altona: Precíziós műtétek Microsoft HoloLens 2 és 3D vizualizációval
További AI-ügyféltörténetek tallózása
Következő lépések
A Microsofttól elérhető mesterségesintelligencia-fejlesztési termékekről a Microsoft AI platform oldalán tájékozódhat.
Az AI-megoldások fejlesztésére vonatkozó képzésért tekintse meg a Microsoft AI School című témakört.
Microsoft AI a GitHubon: Minták, referenciaarchitektúrák és ajánlott eljárások rendszerezik a Microsoft nyílt forráskód AI-alapú adattárakat, amelyek oktatóanyagokat és tananyagokat biztosítanak.