Mesterséges intelligencia (AI) architektúra tervezése
A mesterséges intelligencia (AI) a számítógép képessége az intelligens emberi viselkedés utánzására. A mesterséges intelligencián keresztül a gépek elemezhetik a képeket, megérthetik a beszédet, természetes módon kommunikálhatnak, és adatokkal előrejelzéseket készíthetnek.
AI-fogalmak
Algoritmus
Az algoritmusok számítások és szabályok sorozata, amelyeket egy probléma megoldására vagy egy adatkészlet elemzésére használnak. Ez olyan, mint egy folyamatdiagram, amely részletes útmutatást ad 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. 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 egy olyan AI-technika, amely matematikai algoritmusokkal hoz létre prediktív modelleket. Az algoritmus az adatmezők elemzésére és az adatokból való "tanulásra" szolgál a benne található minták használatával modellek létrehozásához. Ezek a modellek ezután megalapozott előrejelzések vagy új adatokkal kapcsolatos döntések meghozatalára szolgálnak.
A prediktív modelleket ismert adatok alapján ellenőrzi a rendszer, az adott üzleti forgatókönyvekhez kiválasztott teljesítménymetrikákkal méri, majd szükség szerint módosítja. Ezt a tanulási és érvényesítési folyamatot képzésnek nevezzük. Rendszeres újratanítással az ML-modellek idővel javulnak.
Mély tanulás
A mély tanulás egy olyan gépi tanulási típus, amely meghatározhatja, hogy az előrejelzései pontosak-e. Algoritmusokat is használ az adatok elemzéséhez, de az ml-nél nagyobb léptékben teszi ezt.
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. Ez a kimenet ezután a következő rétegnek lesz átadva, ahol egy másik algoritmus saját elemzést végez, é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. Ez sokkal több adatot és sokkal nagyobb számítási teljesítményt igényel, mint az ML.
Robotok
A robot egy automatizált szoftverprogram, amelyet egy adott feladat végrehajtására terveztek. Gondolj rá úgy, mint egy test nélküli robotra. 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 kifinomultabbak lettek, 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 az emberekkel kommunikálnak 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-t kínálja, amely egy nagyvállalati szintű robotfejlesztéshez készült felügyelt szolgáltatás.
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 hajtanak végre, vagy nem változnak (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őztetés, a légkondicionáló és a biztonság. Egy kifinomultabb példa lenne egy önirányítású robot, amely feltár egy összecsukott akna akna, hogy alaposan feltérképezze a belső, meghatározza, mely részek szerkezetileg hang, elemzi a levegőt a légáteresztő, és észleli jeleit csapdába esett bányászok szüksége mentő-minden nélkül emberi monitorozás valós időben a távoli végén.
Á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ű architektúratí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 anélkül adhat hozzá intelligenciát az alkalmazásokhoz, webhelyekhez és folyamatokhoz, hogy adatokat kellene gyűjtenie, majd saját modelleket kellene létrehoznia, betanítása és közzététele érdekében.
Az előre összeállított AI-ra példa lehet egy előre betanított modell, amely beépíthető úgy, ahogyan van, vagy amely 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 igény szerint meghívható a természetes nyelv kívánt módon történő feldolgozásához.
Azure AI services
A Cognitive Services lehetőséget biztosít 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 látni, hallani, beszélni, megérteni, sőt, még okokat is kezdeni. Az Azure AI-szolgáltatások szolgáltatáskatalógusa öt fő pillérre 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ós állapotban maradnak. További információkért tekintse meg a szolgáltatás elérhetőségét régiónkénti oldalon.)
Létrehozhat és betaníthat saját modelleket, de az AI Builder olyan 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ák névjegyadatait.
Egyéni AI
Bár az előre összeállított AI hasznos (és egyre rugalmasabb), a legjobb módja annak, hogy megkapja, amire szüksége van a mesterséges intelligenciából, valószínűleg saját maga hozhat létre egy rendszert. Ez nyilvánvalóan egy nagyon mély és összetett téma, de tekintsünk meg néhány alapfogalmat az imént tárgyaltakon túl.
Kódnyelvek
Az AI alapvető fogalma az algoritmusok használata az adatok elemzésére és modellek létrehozására az adatok leírására (vagy pontozására) a 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 az olvashatóságot hangsúlyozza. Nincs fordítási lépés. A Python nagy méretű standard kódtárat tartalmaz, 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 Pythonhoz készült AI- és ML-kódtárak nagy és növekvő ökoszisztémája van, köztük sok, az Azure-ban könnyen elérhető.
scikit-learn
. Nyílt forráskódú ml-kódtár PythonhozPyTorch. Nyílt forráskódú Python-kódtár gazdag ökoszisztémával, amely használható mély tanuláshoz, számítógépes látáshoz, természetes nyelvi feldolgozáshoz és egyebekhez
Tensorflow. Nyílt forráskódú szimbolikus matematikai kódtár, amelyet ml-alkalmazásokhoz és neurális hálózatokhoz is használnak
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 leké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.
Oktatás
A betanítás a gépi tanulás alapvető eleme. 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ázissal rendelkezik: betanítás, ellenőrzés és tesztelés.
A betanítási fázis során az ismert adatok minőségi készlete fel van címkézve, hogy az egyes mezők azonosíthatók legyenek. A címkézett adatok egy adott előrejelzésre konfigurált algoritmushoz lesznek etetve. Ha elkészült, az algoritmus egy olyan modellt ad ki, amely paraméterek készleteként található mintákat írja le. Az ellenőrzés során a rendszer megjelöli a friss adatokat, és a modell tesztelésére szolgál. 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 valós adatokat használ címkék és előre kiválasztott célok nélkül. Feltéve, hogy a modell eredményei pontosak, használatra késznek tekinthető, és üzembe helyezhető.
Hiperparaméterek finomhangolása
A hiperparaméterek olyan adatváltozók, amelyek a betanítási folyamatot szabályozzák. Ezek konfigurációs változók, amelyek vezérli az algoritmus működését. 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 a paramétereknek megfelelően. A hiperparaméter-finomhangolás 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, mindegyiket különböző hiperparaméter-családokkal tanítja be.
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éseket, a modell rugalmasságát, a feldolgozási idő mennyiségét és természetesen az eredmények pontosságát. A legjobban betanított modell kiválasztását az igényeinek és korlátainak megfelelően modellválasztásnak nevezzük, de ez a betanítás előtti előtervezésről szól, mivel a legjobban működő modell kiválasztásáról van szó.
Automatizált gépi tanulás (AutoML)
Az automatizált gépi tanulás, más néven AutoML a gépi tanulási modell fejlesztésének időigényes, iteratív feladatainak automatizálása. Jelentősen csökkentheti az éles üzemre kész ML-modellek beszerzéséhez szükséges időt. Az automatizált gépi tanulás a modellek kiválasztásában, a hiperparaméterek finomhangolásában, a modell betanításában és egyéb feladatokban is segíthet, anélkül, hogy kiterjedt programozási vagy tartományi ismeretekre van szükség.
Pontozás
A pontozást előrejelzésnek is nevezik, és egy betanított gépi tanulási modellen alapuló értékek generálásának folyamata, néhány új bemeneti adat alapján. A létrehozott értékek vagy pontszámok a jövőbeli értékek előrejelzéseit jelölhetik, de 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 hozhat létre:
Ajánlott elemek listája és hasonlósági pontszám
Numerikus értékek idősorozat-modellekhez és regressziós modellekhez
Valószínűségi érték, amely annak valószínűségét 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öteg pontozása akkor történik, ha az adatokat bizonyos meghatározott időszakban gyűjtik, majd egy kötegben dolgozzák fel. Ilyen lehet például az üzleti jelentések létrehozása vagy az ügyfelek lojalitásának 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
Azure Machine Learning Python SDK-jegyzetfüzetek. Az Azure Machine Learning Python SDK-t bemutató példajegyzetfüzetek GitHub-adattára.
Azure AI-platformajánlatok
Az alábbiakban áttekintjük azokat az Azure-technológiákat, platformokat és szolgáltatásokat, amelyekkel migrálási megoldásokat fejleszthet az igényeinek megfelelően.
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.
Mi az Azure Machine Learning? Általános tájolás számos képzési erőforrásra, SDK-ra, dokumentációra és egyebekre mutató hivatkozásokkal
Gépi tanulási referenciaarchitektúrák az Azure-hoz
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
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 AI services
Ez az AI-szolgáltatások és a 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 testre szabhatók az adataival.
Azure Cognitive Search
Ez egy AI-alapú felhőalapú keresési 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 a mi-bővítésre, ha a tartalom strukturálatlan vagy nyers formában nem azonosítható.
Természetes nyelvi feldolgozási technológia kiválasztása az Azure-ban
Rövid útmutató: Azure Cognitive Search kognitív képességkészlet létrehozása az Azure Portalon
Azure Bot Service
Ez egy használatra készült robotfejlesztési környezet, amely beépített sablonokkal rendelkezik a gyors kezdéshez.
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 adatokat tölthetnek be és gyorsítótárazhatnak a memóriába, és ismételten 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 HDInsight Spark-fürtöi kompatibilisek az Azure Storage-ral és az Azure Data Lake Storage-ral, így HDInsight Spark-fürtökkel feldolgozhatja az Azure-ban tárolt adatokat.
Az Apache Spark microsoftos gépi tanulási kódtára a SynapseML (korábbi nevén MMLSpark). Ez a nyílt forráskódú kódtár számos mélytanulási és adatelemzési eszközt, hálózatkezelési képességet és termelési szintű teljesítményt ad hozzá a Spark-ökoszisztémához. További információ a SynapseML 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, gyorsútmutatókkal és oktatóanyagokkal.
Oktatóanyag: Apache Spark gépi tanulási alkalmazás létrehozása az Azure HDInsightban
GitHub-adattár a SynapseML-hez: Microsoft machine learning library for Apache Spark
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 sikertö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:
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
Asklepios Klinik Altona: Precíziós műtétek a 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ést a Microsoft AI Schoolban találja.
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.