Ohjelmointi

Watson wannabes: 4 avoimen lähdekoodin projektia konetiedusteluun

Viimeisen vuoden aikana osana uusia yrityspalveluja, joita IBM on ajautunut uudelleenkäsittelyynsä, Watsonista on tullut vähemmän "Jeopardy" -tapahtuma ja enemmän työkalu. Se on myös IBM: n oma luomus.

Mitkä ovat mahdollisuudet luoda luonnollisen kielen koneoppimisjärjestelmä Watsonin järjestyksessä, vaikkakin avoimen lähdekoodin komponenteilla? Jossakin määrin tämä on jo tapahtunut - osittain siksi, että Watson itse rakennettiin olemassa olevan avoimen lähdekoodin työn päälle, ja toiset ovat kehittäneet samanlaisia ​​järjestelmiä rinnakkain Watsonin kanssa. Tässä on katsaus neljään tällaiseen projektiin.

DARPA DeepDive

Joukon suurimman nimimerkin, DARPA: n DeepDive-projektin ei ole tarkoitus jäljitellä Watsonin tavallisen kielen kyselyjärjestelmää, vaan pikemminkin Watsonin kykyä parantaa päätöksentekoa ajan myötä ihmisen ohjauksella.

Lähinnä Wisconsinin yliopiston professori Christopher Re on kehittänyt projektin, joka on avoimen lähdekoodin (Apache 2.0). EE Timesin mukaan DeepDiven päätavoitteena on luoda automaattinen järjestelmä jäsentämättömän tiedon luokittelemiseksi - yhdessä esimerkissä luokittelemaan artikkelit teknisissä lehdissä. Niiden, jotka aikovat käyttää DeepDivea, tulisi tuntea SQL ja Python, mutta järjestelmä pystyy jo purkamaan tietoja useista tavanomaisista lähteistä, kuten verkkosivuilta tai PDF-dokumenteista.

Apache UIMA

Strukturoimaton tiedonhallinta (UIMA) on standardi tekstisisällön analysoimiseksi. Watson käytti UIMA-sovellusta, mutta sinun ei tarvitse käydä Watsonin läpi käyttääksesi UIMA: ta. Itse asiassa IBM: n UIMA-arkkitehtuuri oli avoimen lähdekoodin ja Apache Foundation ylläpitää sitä. Se tukee useita ohjelmointikieliä, päivityksiä lisätään säännöllisesti (viimeksi lokakuussa 2014).

Apache UIMA on nykyään kaukana täydestä koneoppimisratkaisusta; se on vain yksi - vaikkakin tärkeä - osa kokonaisuutta, jonka IBM loi. Jos et halua käyttää paljaita luita, voit poimia yhden sen johdannaisprojekteista, kuten YodaQA, joka hyödyntää UIMA: ta prosessoinnissaan ja käyttää Wikipediaa ensisijaisena tietolähteenä.

OpenCog

OpenCog "pyrkii tarjoamaan tutkijoille ja ohjelmistokehittäjille yhteisen alustan tekoälyohjelmien rakentamiseen ja jakamiseen". Avoin lähde GNU Affero -lisenssillä, projektin tavoitteena on tuottaa polttoainetta vähemmän kuin mitä sen luojat kutsuvat "yleisesti älykkäiksi" järjestelmiksi, tekoälyksi, jolla on laaja, inhimillinen käsitys maailmasta toimialukeskeisten erikoisuuksien (kuten hyvin hyvä shakissa, mutta ei mitään muuta).

OpenCogin luojat väittävät, että niiden kehystä käytetään jo "luonnollisen kielen sovelluksissa sekä tutkimukseen että kaupallisiin yrityksiin". Se vie sen hieman kauempana taivaan piirrosta koskevista tekoälykonsepteista ja lähemmäksi Watsonin asuttamaa käytännön Q & A-aluetta.

OAQA (kysymysten vastausjärjestelmien avoin eteneminen)

Kuten nimestä voi päätellä, OAQA: n tehtävä on "avoin eteneminen kysymysvastausjärjestelmien suunnittelussa - kieliohjelmistojärjestelmät, jotka tarjoavat suoria vastauksia luonnollisella kielellä esitettyihin kysymyksiin". Kuulostaako yksi Watsonin tavoitteista? Yup, varsinkin kun OAQA: n aloittivat yhdessä IBM ja Carnegie Mellon University. Kuten Apache UIMA, OAQA toteuttaa UIMA-kehyksen, mutta älä ajattele sitä käyttövalmiina ratkaisuna; se on työkalupakki.

Kuten arvata voi, jokaisen projektin yksi merkittävä haittapuoli on, että niitä ei tarjota melkein yhtä hienostuneessa tai kiillotetussa paketissa kuin Watson. Vaikka Watson on suunniteltu käytettäväksi välittömästi liiketoimintaympäristössä, nämä ovat raakoja työkalupaketteja, jotka vaativat raskasta nostamista.

Lisäksi Watsonin palvelut on jo koulutettu reaalimaailman kuratoidulla aineistolla. Näiden järjestelmien avulla sinun on toimitettava tietolähteet, jotka voivat osoittautua paljon suuremmaksi projektiksi kuin itse ohjelmointi.