Kev kawm tshuab algorithms thiab qauv tau dhau los ua ntau dua. Muaj ntau qhov laj thawj rau qhov no, tab sis nws tag nrho los ntawm kev nkag mus tau yooj yim, yooj yim thiab ua tiav cov txiaj ntsig tau zoo. Puas yog pawg lossis txawm tias neural network qauv ua qauv tshiab?
Tau kawg tsis yog, tab sis tam sim no tsis tas yuav tsum sau ntau pua txhiab kab ntawm cov lej los khiav ib tus qauv, thiab tus nqi ntawm kev tsim thiab siv cov qauv tau dhau los ua tsawg dua.
Cov cuab yeej hloov zuj zus - thaum peb tsis muaj tag nrho GUI-centric AI / ML cov cuab yeej, qhov kev vam meej peb tau pom nrog ntau lwm chav kawm ntawm cov ntaub ntawv xov xwm, xws li BI (los ntawm kev sau cov cai mus rau kev siv lub moj khaum thiab GUI-centric configurable daws teeb meem), yog kuj pom nyob rau hauv cov cuab yeej tsim AI/ML. Peb twb dhau theem ntawm kev sau code thiab niaj hnub no peb siv lub moj khaum los tsim thiab cob qhia cov qauv.
Lwm yam kev txhim kho, xws li kev muaj peev xwm los faib cov qauv ua ntej kev cob qhia uas cov neeg siv kawg tsuas yog ua kom tiav kev cob qhia tus qauv ntawm lawv cov ntaub ntawv tshwj xeeb, kuj ua rau nws yooj yim dua los pib nrog kev kawm tshuab. Cov kev nce qib no ua rau kev kawm tshuab kev kawm yooj yim dua rau cov kws tshaj lij thiab rau cov tuam txhab feem ntau.
Ntawm qhov tod tes, peb tab tom sau cov ntaub ntawv ntau thiab ntau dua. Nrog rau cov ntaub ntawv sib koom ua ke xws li InterSystems IRIS, tag nrho cov ntaub ntawv no tuaj yeem npaj tam sim thiab siv los ua cov tswv yim rau cov qauv kev kawm tshuab.
Nrog rau kev txav mus rau huab, pib AI / ML tej yaam num tau yooj yim dua puas tau. Peb tsuas tuaj yeem siv cov peev txheej uas peb xav tau. Ntxiv mus, ua tsaug rau qhov sib piv uas muab los ntawm huab platforms, peb tuaj yeem txuag lub sijhawm siv.
Tab sis li cas txog cov txiaj ntsig? Qhov no yog qhov uas tej yam yuav nyuaj dua. Muaj ntau yam cuab yeej rau kev tsim qauv, uas kuv yuav tham txog tom ntej. Kev tsim tus qauv zoo tsis yog yooj yim, tab sis yuav ua li cas ntxiv? Ua kom tau nyiaj los ntawm kev siv tus qauv ua lag luam kuj yog ib txoj haujlwm tsis tseem ceeb. Lub hauv paus ntawm qhov teeb meem yog kev sib cais ntawm kev txheeb xyuas thiab kev ua haujlwm ua haujlwm, thiab cov qauv ntaub ntawv. Thaum peb cob qhia tus qauv, peb feem ntau ua nws ntawm cov ntaub ntawv keeb kwm. Tab sis qhov chaw rau tus qauv tsim yog nyob rau hauv kev lag luam cov ntaub ntawv ua. Yuav ua li cas zoo yog qhov zoo tshaj plaws kev dag ntxias kev lag luam qauv yog tias peb khiav nws ib hnub? Cov scammers tau ntev los lawm nrog cov nyiaj. Peb yuav tsum tau cob qhia tus qauv ntawm cov ntaub ntawv keeb kwm, tab sis peb kuj yuav tsum tau siv nws nyob rau lub sijhawm ntawm cov ntaub ntawv tuaj tshiab kom peb cov txheej txheem kev lag luam tuaj yeem ua raws li qhov kev kwv yees ua los ntawm tus qauv.
ML Toolkit yog ib txheej ntawm cov cuab yeej uas lub hom phiaj ua li ntawd: sib koom ua qauv thiab ib puag ncig kev lag luam kom cov qauv tsim tau yooj yim siv ncaj qha rau hauv koj cov txheej txheem kev lag luam. Python Gateway yog ib feem ntawm ML Toolkit thiab muab kev koom ua ke nrog cov lus Python (zoo ib yam li R Gateway, yog ib feem ntawm ML Toolkit muab kev koom ua ke nrog R hom lus).
Cov Cuab Yeej Siv
Ua ntej peb mus ntxiv, kuv xav piav ob peb yam cuab yeej Python thiab cov tsev qiv ntawv uas peb yuav siv tom qab.
ntawm technology
Python yog ib qho kev txhais lus, qib siab, cov hom phiaj dav dav dav dav. Qhov zoo ntawm cov lus yog nws lub tsev qiv ntawv loj ntawm lej, ML thiab AI cov tsev qiv ntawv. Zoo li ObjectScript, nws yog hom lus taw qhia, tab sis txhua yam yog txhais tsis muaj zog es tsis yog statically. Tsis tas li ntawd txhua yam yog khoom. Cov ntawv tom qab ntawd suav tias yog kev paub dhau los ntawm cov lus. Yog tias koj xav pib kawm, kuv xav kom pib nrog cov ntaub ntawv.
AI / ML thev naus laus zis ua rau kev lag luam muaj txiaj ntsig thiab hloov tau. Tsis tas li ntawd, niaj hnub no cov thev naus laus zis tau dhau los ua yooj yim los tsim thiab siv. Pib kawm txog AI/ML technologies thiab lawv yuav pab tau koj lub koom haum loj hlob li cas.
Tshawb xyuas qhov no series ntawm cov khoom Yog xav paub ntxiv txog kev siv Docker nrog InterSystems cov khoom.
Tag nrho Python Gateway tsim yog tam sim no ntim raws li 2019.4.
Npaj duab
Khiav: docker run -d -p 52773:52773 --name irispy intersystemscommunity/irispy-community:latestrub tawm thiab khiav Python Gateway nrog InterSystems IRIS Community Edition. Yog tag nrho.
Tsim koj tus kheej saib
Txhawm rau tsim cov duab docker, khiav hauv lub hauv paus ntawm qhov chaw cia khoom: docker build --force-rm --tag intersystemscommunity/irispy:latest ..
Los ntawm lub neej ntawd, daim duab yog tsim raws li daim duab store/intersystems/iris-community:2019.4.0.383.0, txawm li cas los xij koj tuaj yeem hloov qhov no los ntawm kev teeb tsa qhov sib txawv IMAGE.
Txhawm rau tsim los ntawm InterSystems IRIS, khiav: 'docker tsim --build-arg IMAGE=store/intersystems/iris:2019.4.0.383.0 --force-rm --tag intersystemscommunity/irispy:latest ".
Thaum koj tau teeb tsa Python Gateway, nws tsim nyog xyuas tias nws ua haujlwm. Ua cov cai no hauv InterSystems IRIS davhlau ya nyob twg:
set sc = ##class(isc.py.Callout).Setup()
set sc = ##class(isc.py.Main).SimpleString("x='HELLO'", "x", , .var).
write var
Qhov tshwm sim yuav tsum yog: HELLO - Python tus nqi sib txawv x. Yog cov xwm txheej rov qab los sc yog ib qho yuam kev los yog var npliag, check Readme - Kev daws teeb meem seem.
API
Python Gateway tau teeb tsa thiab koj tau txheeb xyuas tias nws ua haujlwm. Nws yog lub sijhawm los pib siv nws!
Lub ntsiab interface rau Python yog isc.py.Main. Nws muaj cov pab pawg hauv qab no ntawm txoj kev (txhua qhov rov qab los %Status):
Txoj Cai Ua Haujlwm
Kev hloov ntaub ntawv
Subsidiary
Txoj Cai Ua Haujlwm
Cov txheej txheem no tso cai rau koj los ua kom tiav Python code arbitrary.
code - kab code los ua. Line feed character: $c(10).
returnVariable - lub npe ntawm qhov hloov pauv rov qab.
serialization - yuav ua li cas serialize returnVariable. 0 β txoj hlua (default), 1 β repr.
result - ByRef siv rau qhov sib txawv uas tus nqi sau returnVariable.
Ua ntej peb tau ua:
set sc = ##class(isc.py.Main).SimpleString("x='HELLO'", "x", , .var).
Hauv qhov piv txwv no, peb muab rau Python sib txawv x lub ntsiab lus Hello thiab xav rov qab tus nqi ntawm Python sib txawv x mus rau qhov sib txawv ntawm ObjectScript var.
ExecuteCode
ExecuteCode yog ib qho kev nyab xeeb dua thiab tsis muaj kev txwv tsawg dua SimpleString.
Cov kab hauv InterSystems IRIS platform txwv rau 3 tus cim, thiab yog tias koj xav ua kom tiav cov lej ntev dua, koj yuav tsum siv cov xov.
Ob qhov kev sib cav raug lees txais:
code - kab lossis kwj ntawm Python code yuav tsum tau ua.
variable - (yeem) muab cov txiaj ntsig ntawm kev ua tiav code no Python variable.
Piv txwv rau siv:
set sc = ##class(isc.py.Main).ExecuteCode("2*3", "y").
Hauv qhov piv txwv no, peb muab 2 los ntawm 3 thiab sau cov txiaj ntsig mus rau Python sib txawv y.
Kev hloov ntaub ntawv
Hla cov ntaub ntawv mus thiab los ntawm Python.
Python -> InterSystems IRIS
Muaj 4 txoj hauv kev kom tau txais tus nqi ntawm Python sib txawv hauv InterSystems IRIS, nyob ntawm seb koj xav tau dab tsi:
String rau hom ntaub ntawv yooj yim thiab debugging.
start - thawj subscript ntawm lub ntiaj teb no. Yuav tsum tau %Integer.
end - qhov kawg subscript ntawm lub ntiaj teb no. Yuav tsum tau %Integer.
mask - lub ntsej muag muaj nuj nqis thoob ntiaj teb. Lub npog ntsej muag tuaj yeem luv dua li cov teb hauv ntiaj teb (qhov twg cov teb thaum kawg yuav hla). Yuav ua li cas format lub npog ntsej muag:
+ hla tus nqi raws li yog.
- hla tus nqi.
b - Hom Boolean (0 - False, tag nrho cov so - True).
d - Hnub tim (los ntawm $ horolog, ntawm Windows los ntawm 1970, ntawm Linux los ntawm 1900).
t - Sijhawm ($ horolog, vib nas this tom qab ib tag hmo).
m - Lub Sijhawm Teev Sijhawm (hloov txoj hlua YEAR-HNUB-HNUB HOUR: MINUTE: SECOND).
labels -% Cov npe ntawm kab npe. Thawj lub ntsiab yog lub npe ntawm cov ntawv sau npe.
GetFunctionInfo(function, .defined, .type, .docs, .signature, .arguments) - tau txais cov ntaub ntawv hais txog kev ua haujlwm.
Kev sib koom tes
Koj tau kawm yuav ua li cas hu rau Python Gateway ntawm lub davhlau ya nyob twg, tam sim no cia peb pib siv nws hauv kev tsim khoom. Lub hauv paus rau kev cuam tshuam nrog Python hauv hom no yog isc.py.ens.Operation. Nws tso cai rau peb:
Ua tus lej hauv Python
Txuag/Restore Python ntsiab lus
Load thiab txais cov ntaub ntawv los ntawm Python
Qhov tseeb, kev ua haujlwm Python yog qhov qhwv dhau isc.py.Main. Kev ua haujlwm isc.py.ens.Operation muab lub peev xwm los cuam tshuam nrog Python txheej txheem los ntawm InterSystems IRIS cov khoom. Tsib queries tau txais kev txhawb nqa:
isc.py.msg.ExecutionRequest los khiav Python code. Rov qab los isc.py.msg.ExecutionResponse nrog cov txiaj ntsig kev ua tiav thiab cov txiaj ntsig ntawm qhov thov hloov pauv.
isc.py.msg.StreamExecutionRequest los khiav Python code. Rov qab los isc.py.msg.StreamExecutionResponse qhov tshwm sim ntawm kev ua tiav thiab cov txiaj ntsig ntawm qhov kev thov hloov pauv. Analogue isc.py.msg.ExecutionRequest, tab sis lees txais thiab xa rov qab kwj es tsis txhob siv cov hlua.
isc.py.msg.QueryRequest xa cov txiaj ntsig ntawm kev ua tiav cov lus nug SQL. Rov qab los Ens.Response.
isc.py.msg.GlobalRequest/isc.py.msg.ClassRequest/isc.py.msg.TableRequest kom dhau cov ntaub ntawv thoob ntiaj teb / chav kawm / rooj. Rov qab los Ens.Response.
isc.py.msg.SaveRequest kom txuag Python ntsiab lus. Rov qab los Ens.StringResponse nrog cov ntsiab lus ID.
isc.py.msg.RestoreRequest los kho cov ntsiab lus Python.
Tsis tas li, isc.py.ens.Operation muaj ob txoj kev:
PythonLib - (Linux nkaus xwb) yog tias koj pom qhov yuam kev thaum thauj khoom, teeb tsa nws tus nqi rau libpython3.6m.so los yog txawm nyob rau hauv tag nrho txoj kev mus rau lub tsev qiv ntawv Python.
Tsim cov txheej txheem kev lag luam
Muaj ob chav kawm uas pab txhawb kev txhim kho cov txheej txheem kev lag luam:
isc.py.ens.ProcessUtils tso cai rau koj rho tawm cov lus piav qhia los ntawm kev ua ub no nrog kev hloov pauv hloov pauv.
isc.py.util.BPEmulator ua kom yooj yim rau kev sim cov txheej txheem lag luam nrog Python. Nws tuaj yeem ua tiav cov txheej txheem ua lag luam (Python qhov chaw) hauv cov txheej txheem tam sim no.
Hloov pauv hloov pauv
Tag nrho cov txheej txheem lag luam tau txais los ntawm isc.py.ens.ProcessUtils, tuaj yeem siv txoj kev GetAnnotation(name) kom tau txais cov haujlwm annotation tus nqi los ntawm nws lub npe. Cov lus piav qhia ua haujlwm tuaj yeem muaj qhov sib txawv uas yuav suav nrog ntawm InterSystems IRIS sab ua ntej xa mus rau Python. Nov yog cov syntax rau kev hloov pauv hloov pauv:
${class:method:arg1:...:argN} - txoj kev hu
#{expr} - Ua cov cai hauv ObjectScript lus.
Ib qho piv txwv muaj nyob rau hauv cov txheej txheem kev ua lag luam isc.py.test.Process, piv txwv li, hauv kev ua si Correlation Matrix: Graph: f.savefig(r'#{process.WorkDirectory}SHOWCASE${%PopulateUtils:Integer:1:100}.png'). Hauv qhov piv txwv no:
#{process.WorkDirectory} rov qab cov cuab yeej WorkDirectory ntawm cov khoom process, uas yog ib qho piv txwv ntawm chav kawm isc.py.test.Process cov. txheej txheem kev lag luam tam sim no.
${%PopulateUtils:Integer:1:100} hu ib txoj kev Integer chav kawm %PopulateUtils, hla kev sib cav 1 ΠΈ 100, rov qab ib qho random integer hauv qhov ntau 1...100.
Kuaj cov txheej txheem ua lag luam
Cov khoom kuaj thiab kuaj cov txheej txheem ua lag luam yog muaj los ntawm lub neej ntawd ua ib feem ntawm Python Gateway. Yuav siv lawv:
Hauv OS davhlau ya nyob twg, khiav: pip install pandas matplotlib seaborn.
Hauv InterSystems IRIS davhlau ya nyob twg, khiav: do ##class(isc.py.test.CannibalizationData).Import() los sau cov ntaub ntawv xeem.
Tua tawm cov khoom isc.py.test.Production.
Xa hom thov Ens.Request Π² isc.py.test.Process.
Cia peb saib seb nws ua haujlwm li cas ua ke. Qhib isc.py.test.Process hauv BPL editor: