Perkhidmatan pembelajaran mesin. Aplikasi pembelajaran mesin dalam penyumberan luar IT

Hari ini, minat dalam pakar analisis data telah mencapai tahap bahawa hanya orang yang paling sederhana tidak akan memanggil dirinya seorang Saintis Data jika dia mempunyai sekurang-kurangnya beberapa kali regresi logistik terlatih atau kumpulan pokok. Analisis data dan pembelajaran mesin khususnya bukan sekadar kata-kata yang bagus. Ini adalah keajaiban sebenar yang boleh mengubah dunia di sekeliling kita, dan dalam Yandex anda benar-benar boleh memasukinya, bertemu orang yang kuat dalam hal ini, belajar dan belajar melakukan banyak perkara baharu.

Jika anda sudah memahami bahawa model klasifikasi latihan, regresi, pengelompokan, pemeringkatan mempunyai faedah yang boleh diukur untuk perkhidmatan yang menggunakan model ini dan pengguna akhir mereka, model itu bukan sahaja "meramalkan sasaran", tetapi mengoptimumkan beberapa metrik yang penting untuk diselaraskan dengan perniagaan matlamat, maka anda mungkin akan berminat dengan kami. Jika anda masih belum berpeluang untuk mengambil bahagian dalam membina hubungan antara pembelajaran mesin dan keperluan perniagaan, tetapi benar-benar ingin, kekosongan ini juga patut diberi perhatian anda.

Satu kumpulan sedang dibuat di Yandex.Taxi yang akan melaksanakan kaedah pembelajaran mesin dalam perkhidmatan teksi terbesar di Rusia. Kami memerlukan penganalisis yang:

  • gemar dengan analisis data dan mengetahui prinsip asas dan kaedah pembelajaran mesin (boleh membezakan overfitting daripada underfitting, regresi log daripada SVM, boosting from bagging, precision from accuracy);
  • memahami mengapa penganalisis memerlukan statistik matematik;
  • mahu kerja mereka memberi kesan kepada berjuta-juta perjalanan yang dilakukan pengguna kami setiap minggu.

Keperluan wajib:

  • pengetahuan tentang statistik matematik dan teori kebarangkalian;
  • pengetahuan tentang kaedah pembelajaran terselia yang paling popular (model linear, kumpulan pokok, kNN, pengelas Bayes naif) dan pemahaman dalam kes-kes yang sesuai untuk menggunakannya dan cara mendiagnosis kerja mereka;
  • pengetahuan tentang metrik kualiti yang biasa digunakan dalam pembelajaran mesin, pemahaman tentang perbezaan di antara mereka, keupayaan untuk mentafsir nilai metrik yang berbeza;
  • latihan teknikal yang baik: penggunaan Python yang yakin dan kebiasaan dengan perpustakaan untuk bekerja dengan data - numpy, scipy, matplotlib, panda, sklearn, pengalaman menggunakan xgboost dan vowpal wabbit;
  • pengetahuan bahasa Inggeris pada peringkat membaca sastera teknikal.

selamat datang:

  • pendidikan matematik atau teknikal yang lebih tinggi;
  • pengalaman dalam menyelesaikan masalah dalam bidang analisis data dan pembelajaran mesin;
  • pengalaman dalam menggunakan statistik matematik gunaan, contohnya, menilai selang keyakinan penunjuk sasaran, kepentingan statistik keputusan ujian A/B;
  • memahami cara potensi kesan ekonomi daripada melaksanakan model berasaskan pembelajaran mesin boleh dinilai dan cara metrik kualiti boleh dikaitkan dengan kesan ini;
  • memahami cara menilai kualiti model di luar talian (menggunakan data sejarah) dan dalam talian (dalam pengeluaran);
  • pengenalan kepada Linux;
  • pengenalan kepada Map Reduce;
  • pengetahuan tentang algoritma klasik dan struktur data;
  • pengetahuan tentang SQL;
  • keupayaan untuk membaca kod C++;
  • pengalaman dalam kedudukan yang sama.

Pada suatu masa dahulu, saya memberitahu anda bagaimana saya mengikuti kursus pembelajaran mesin di Coursera. Kursus ini diajar oleh Andrew Ng, yang menerangkan segala-galanya dalam istilah yang mudah sehingga pelajar yang paling rajin pun akan memahami bahan yang agak kompleks. Sejak itu, topik pembelajaran mesin telah menjadi dekat dengan saya, dan saya secara berkala melihat projek dalam bidang Data Besar (baca lajur sebelumnya) dan dalam bidang pembelajaran mesin.

Sebagai tambahan kepada bilangan besar pemula yang menggunakan algoritma pembelajaran mesin di suatu tempat dalam diri mereka sendiri, beberapa perkhidmatan sudah tersedia yang menawarkan pembelajaran mesin sebagai perkhidmatan! Iaitu, mereka menyediakan API yang boleh anda gunakan dalam projek anda, tanpa perlu menyelidiki cara data dianalisis dan diramalkan sama sekali.

API Ramalan Google

Google adalah salah satu yang pertama menawarkan Machine Condong sebagai Perkhidmatan! Untuk masa yang agak lama, sesiapa sahaja boleh menggunakan API Ramalan Google (harfiahnya "API untuk ramalan"). Sehingga jumlah data tertentu, anda boleh menggunakannya secara percuma dengan hanya membuat akaun dengan API Ramalan Google. Apakah ramalan yang kita bincangkan? Tugas mungkin berbeza: untuk menentukan nilai masa depan parameter tertentu berdasarkan data yang tersedia atau untuk menentukan sama ada objek tergolong dalam salah satu jenis (contohnya, bahasa teks: Rusia, Perancis, Inggeris).

Selepas pendaftaran, anda mempunyai akses kepada API RESTful sepenuhnya, yang berasaskannya anda boleh membina, katakan, sistem pengesyoran, mengesan spam dan aktiviti yang mencurigakan, menganalisis tingkah laku pengguna dan banyak lagi. Projek-projek menarik telah pun muncul, dibina berdasarkan penggunaan intensif API Ramalan Google, contohnya Pondera Solutions, yang menggunakan pembelajaran mesin daripada Google untuk membina sistem anti-penipuan.

Sebagai percubaan, anda boleh mengambil model data siap sedia: pengecam bahasa untuk membina sistem yang menentukan bahasa apa teks masuk ditulis atau pengecam sentimen untuk menentukan secara automatik sentimen ulasan yang ditinggalkan oleh pengguna. Saya rasa kita akan bercakap lebih lanjut tentang API Ramalan Google pada masa hadapan.

BigML

Hari ini saya ingin menyentuh satu lagi projek serupa yang menarik perhatian saya baru-baru ini - BigML. Pada asasnya, ia menyediakan API Rehat yang sama untuk enjin MLnya sendiri, tetapi dengan satu kelebihan penting untuk pemula - kehadiran antara muka yang agak jelas. Dan fakta terakhir sangat memudahkan tugas untuk memulakan apabila anda perlu memikirkan apa dari awal.

Pemaju melakukan segala-galanya supaya seorang suri rumah boleh mengendalikan sistem. Selepas pendaftaran, anda mempunyai beberapa contoh data sumber yang boleh anda gunakan, termasuk set data buku teks "Fisher's Irises" yang sering digunakan dalam buku teks, yang dianggap klasik untuk menyelesaikan masalah klasifikasi. Set ini mengandungi 150 spesimen bunga iris daripada tiga jenis berbeza, dengan penerangan ciri-ciri. Berdasarkan data ini, anda boleh membina sistem yang akan menentukan sama ada bunga tergolong dalam salah satu spesies berdasarkan parameter yang dimasukkan.

Eksperimen

Semua tindakan dilakukan dalam panel pentadbir yang jelas (saya tidak akan menerangkan nuansa, semuanya akan sangat mudah diakses).

  1. Kami memilih fail CSV yang menyimpan baris yang menerangkan ciri pelbagai jenis bunga sebagai sumber data (Sumber).
  2. Seterusnya, kami menggunakan data ini untuk membina Set Data, menunjukkan bahawa kami perlu meramalkan jenis bunga. BigML akan menghuraikan fail secara automatik dan, selepas melakukan analisis, membina pelbagai graf untuk menggambarkan data.
  3. Berdasarkan Set Data ini, dengan satu klik, model dibina di atasnya ramalan akan berdasarkan. Selain itu, BigML sekali lagi menggambarkan model, menerangkan logik operasinya. Anda juga boleh mengeksport hasilnya sebagai skrip untuk Python atau mana-mana bahasa lain.
  4. Setelah model siap, anda boleh membuat ramalan. Dan lakukan ini dalam mod yang berbeza: segera tetapkan semua parameter bunga atau jawab soalan dari sistem, yang, berdasarkan keadaan, akan bertanya hanya apa yang diperlukannya.

Perkara yang sama boleh dilakukan tanpa UI, tetapi dengan berkomunikasi dengan BigML melalui aplikasi konsol BigMLer atau melalui REST API, berkomunikasi dari konsol dengan curl biasa.

Dua tugas utama

Tiada apa-apa yang ghaib dalam BigML dan API Ramalan Google. Dan pemaju pintar akan dapat melaksanakan enjin serupa sendiri, supaya tidak membayar perkhidmatan pihak ketiga (dan tidak memuat turun data kepada mereka, yang selalunya tidak boleh dimuat turun).

Anda berkemungkinan besar menjumpai istilah "pembelajaran mesin" lebih daripada sekali. Walaupun ia sering digunakan sebagai sinonim untuk kecerdasan buatan, pembelajaran mesin sebenarnya adalah salah satu elemennya. Selain itu, kedua-dua konsep itu dilahirkan di Institut Teknologi Massachusetts pada akhir 1950-an.

Hari ini, anda menghadapi pembelajaran mesin setiap hari, walaupun anda mungkin tidak mengetahuinya. Pembantu suara Siri dan Google, pengecaman muka di Facebook dan Windows 10, pengesyoran di Amazon, teknologi yang menghalang kereta robot daripada bertembung dengan halangan telah dicipta berkat kemajuan pembelajaran mesin.

Sistem pembelajaran mesin masih jauh dari otak manusia, tetapi mereka sudah mempunyai pencapaian yang mengagumkan, seperti menewaskan manusia dalam catur, permainan papan Go dan poker.

Perkembangan pembelajaran mesin telah menerima rangsangan besar dalam beberapa tahun kebelakangan ini hasil daripada beberapa penemuan teknologi, peningkatan kuasa pengkomputeran yang tersedia dan banyak data latihan.

Perisian pembelajaran kendiri

Jadi apakah pembelajaran mesin? Mari kita mulakan dengan apa yang tidak. Ini bukan program komputer biasa yang ditulis dengan tangan.

Tidak seperti perisian tradisional, yang hebat dalam melaksanakan arahan tetapi tidak mempunyai keupayaan untuk membuat improvisasi, sistem pembelajaran mesin pada dasarnya memprogramkan diri mereka sendiri, membangunkan arahan mereka sendiri dengan meringkaskan maklumat yang diketahui.

Contoh klasik ialah pengecaman corak. Tunjukkan sistem pembelajaran mesin dengan cukup gambar anjing berlabel "anjing", serta kucing, pokok dan objek lain yang dilabel "bukan anjing", dan ia akhirnya akan menjadi mahir dalam mengenal pasti anjing. Dan untuk ini dia tidak perlu menjelaskan dengan tepat rupa mereka.

Penapis spam dalam program e-mel anda ialah contoh pembelajaran mesin yang baik dalam tindakan. Selepas memproses ratusan juta sampel mesej yang tidak diingini dan perlu, sistem dilatih untuk mengenal pasti tanda tipikal mesej spam. Dia tidak mengendalikannya dengan sempurna, tetapi dia melakukannya dengan cukup berkesan.

Latihan dengan dan tanpa guru

Jenis pembelajaran mesin yang disebutkan dipanggil pembelajaran terselia. Ini bermakna seseorang memperkenalkan algoritma kepada sejumlah besar data latihan, melihat keputusan dan melaraskan tetapan sehingga ketepatan yang diingini dicapai dalam mengklasifikasikan data yang sistem belum "dilihat". Ini adalah sama seperti mengklik butang "bukan spam" dalam program e-mel anda apabila penapis secara tidak sengaja memintas mesej yang anda inginkan. Lebih kerap anda melakukan ini, lebih tepat penapis menjadi.

Tugas pembelajaran biasa yang diselia ialah pengelasan dan ramalan (atau analisis regresi). Pengecaman spam dan corak ialah masalah klasifikasi, manakala ramalan harga saham ialah contoh klasik regresi.

Dalam pembelajaran tanpa seliaan, sistem menyaring sejumlah besar data, mempelajari rupa data "biasa" supaya ia dapat mengenali anomali dan corak tersembunyi. Pembelajaran tanpa pengawasan berguna apabila anda tidak tahu apa yang anda cari, dalam hal ini anda boleh memaksa sistem untuk membantu anda.

Sistem pembelajaran tanpa pengawasan boleh menemui corak dalam jumlah data yang besar dengan lebih pantas daripada manusia. Itulah sebabnya bank menggunakannya untuk mengenal pasti urus niaga penipuan, pemasar untuk mengenal pasti pelanggan dengan atribut yang serupa dan perisian keselamatan untuk mengenali aktiviti berniat jahat dalam talian.

Contoh masalah pembelajaran tanpa pengawasan ialah pengelompokan dan mencari peraturan persatuan. Yang pertama digunakan, khususnya, untuk pembahagian pelanggan, dan mekanisme untuk mengeluarkan cadangan adalah berdasarkan carian peraturan persatuan.

Glosari istilah

Pembelajaran mesin hanyalah puncak gunung ais kecerdasan buatan. Istilah lain yang berkait rapat dengannya termasuk rangkaian saraf, pembelajaran mendalam, dan pengkomputeran kognitif.

Rangkaian neural.Ini adalah seni bina komputer yang meniru struktur neuron dalam otak; setiap neuron buatan bersambung dengan yang lain. Rangkaian saraf dibina dalam lapisan; neuron dalam satu lapisan menghantar data ke banyak neuron di seterusnya, dan seterusnya, sehingga lapisan output dicapai. Pada lapisan terakhir inilah rangkaian mengeluarkan tekaannya—katakan, bagaimana objek berbentuk anjing itu—bersama-sama dengan penilaian keyakinan untuk jawapannya.

Terdapat pelbagai jenis rangkaian saraf untuk menyelesaikan pelbagai jenis masalah. Rangkaian dengan sebilangan besar lapisan dipanggil dalam. Rangkaian saraf ialah salah satu alat pembelajaran mesin yang paling penting, tetapi bukan satu-satunya.

Pembelajaran yang mendalam.Ini pada asasnya ialah pembelajaran mesin pada steroid - menggunakan rangkaian berbilang lapisan (dalam atau dalam) untuk membuat keputusan berdasarkan maklumat yang tidak tepat atau tidak lengkap. Sistem pembelajaran mendalam DeepStack menewaskan 11 pemain poker profesional pada Disember lalu dengan mengira semula strategi selepas setiap pusingan pertaruhan.

Pengkomputeran kognitif.Ini adalah istilah yang dicipta di IBM oleh pencipta superkomputer Watson. IBM melihat perbezaan antara pengkomputeran kognitif dan kecerdasan buatan dalam fakta bahawa yang pertama tidak menggantikan minda manusia, tetapi melengkapkannya: sebagai contoh, mereka membantu doktor membuat diagnosis yang lebih tepat, penasihat kewangan membuat cadangan yang lebih termaklum, peguam mencari preseden yang sesuai dengan lebih cepat , dsb. P.

Had Pembelajaran Mesin

Setiap sistem pembelajaran mesin mencipta corak sambungannya sendiri, mewakili sesuatu seperti kotak hitam. Anda tidak akan dapat mengetahui dengan tepat cara klasifikasi dilakukan melalui analisis kejuruteraan, tetapi itu tidak penting, selagi ia berfungsi.

Walau bagaimanapun, sistem pembelajaran mesin hanya sebaik data latihan: jika anda memberinya "sampah" sebagai input, hasilnya akan sesuai. Jika dilatih secara tidak betul atau saiz sampel latihan terlalu kecil, algoritma mungkin menghasilkan keputusan yang salah.

HP mengalami masalah pada tahun 2009 apabila sistem pengecaman muka untuk kamera web pada komputer riba HP MediaSmart tidak dapat mengecam wajah orang Afrika-Amerika. Dan pada Jun 2015, algoritma Google Photos yang lemah memanggil dua orang kulit hitam Amerika "gorila."

Contoh lain ialah bot Twitter Microsoft Tay yang terkenal, yang telah diuji pada 2016: kemudian mereka cuba mengetahui sama ada kecerdasan buatan boleh "berpura-pura" menjadi manusia dengan belajar daripada mesej sebenar daripada orang. Dalam masa kurang dari sehari, troll Twitter mengubah Tay menjadi xenophobia - contoh tipikal data pendidikan yang rosak.

***

Oleh itu, di sebalik semua kebisingan di sekitar kecerdasan buatan, tidaklah keterlaluan untuk mengatakan bahawa pembelajaran mesin dan teknologi yang berkaitan sememangnya mengubah dunia di sekeliling kita, dan begitu cepat sehingga tepat pada masanya, mesin akan menjadi sedar diri sepenuhnya.

− Dan Tynan. Apakah pembelajaran mesin? Perisian yang diperoleh daripada data. InfoWorld. 9 Ogos 2017

Gazprom Neft akan menggunakan kecerdasan buatan Yandex

Menggunakan teknologi Big Data, pembelajaran mesin dan kecerdasan buatan, Gazprom Neft dan Yandex merancang untuk menggerudi telaga, memodelkan proses penapisan minyak dan mengoptimumkan proses pengeluaran lain.

Perjanjian yang disimpulkan oleh syarikat itu melibatkan pakar Yandex Data Factory yang menjalankan pemeriksaan bebas terhadap penyelesaian teknologi sedia ada, pembangunan bersama dan pelaksanaan projek penyelidikan dan teknologi, pertukaran maklumat saintifik dan teknikal, pengetahuan dan latihan pekerja.

Industri minyak dan gas adalah salah satu yang paling menjanjikan dari segi penggunaan teknologi baharu, kerana sejumlah besar data telah terkumpul di dalamnya, dan penyelesaian mudah untuk mengoptimumkan pengeluaran dan perniagaan telah lama digunakan. Ini mewujudkan peluang yang baik untuk mendapatkan kesan ketara daripada pelaksanaan penyelesaian berdasarkan pembelajaran mesin dan kecerdasan buatan.

Analisis hoki dalam Azure

Syarikat Rusia Iceberg Sports Analytics membentangkan penyelesaian iceberg.hockey, yang dilaksanakan pada platform Microsoft Azure. Ia membolehkan anda menjadikan pengurusan kelab hoki lebih cekap, meningkatkan peluang untuk menang dan mengoptimumkan penggunaan bajet pasukan.

iceberg.hockey menggunakan algoritmanya sendiri yang dicipta khusus untuk hoki berdasarkan analisis lanjutan, pembelajaran mesin dan teknologi penglihatan komputer. Sistem ini bertujuan untuk pengurus dan jurulatih kelab hoki. Untuk setiap permainan, penyelesaian itu mencipta kira-kira sejuta baris data, menggunakan tiga kamera video untuk merakam semua yang berlaku di padang setiap sepersepuluh saat: ini ialah kira-kira 500 parameter untuk setiap pemain. Pembangun berjaya mencapai ketepatan tinggi analisis data: ralat tidak lebih daripada 4%. Analisis membantu untuk mendapatkan maklumat tentang gabungan pemain yang optimum, teknik permainan atlet tertentu, pasukan dan pasukan secara keseluruhan.

Pelanggan syarikat itu sudah termasuk New York Islanders dan HC Sochi, serta akademi hoki Austria RedBull.

Khlynov mengoptimumkan perkhidmatan ATM

Bank Khlynov telah menukar perkhidmatan ATMnya menggunakan perkhidmatan pembelajaran mesin daripada awan Microsoft Azure. Akibatnya, bank itu dapat menggunakan 250 juta rubel yang "beku" sebelum ini.

Memandangkan rangkaian pelanggan bank sentiasa berkembang, pendekatan baharu untuk menyimpan dan bekerja dengan dana pelanggan diperlukan. Pada permulaan projek, baki bulanan purata pada kad Khlynov adalah kira-kira 800 juta rubel. Satu pertiga daripada wang ini disimpan di ATM untuk pengeluaran oleh pemegang kad.

Penggunaan perkhidmatan pembelajaran mesin daripada awan Microsoft Azure membolehkan bank mengurangkan jumlah dana simpanan dalam ATM kepada 16-20% daripada baki purata kad bulanan: ia meningkat kepada 1.2 bilion rubel, dan jumlah simpanan berjumlah 200- 230 juta rubel. Bank itu dapat menggunakan dana yang dibebaskan untuk tugas operasi lain, khususnya untuk memberi pinjaman kepada pelanggannya.

Algoritma yang dicipta bersama dengan penyepadu Rubicon, menggunakan kaedah pembelajaran mesin, membolehkan bank mengurangkan bilangan lawatan kutipan bulanan lebih daripada 1.5 kali. Setiap perjalanan ini berharga 3 ribu rubel, dan setiap seribu rubel yang diangkut tertakluk kepada komisen sebanyak 0.026%.

Dalam masa terdekat, Khlynov Bank merancang untuk memperkenalkan alat analitik ramalan tambahan daripada awan Microsoft Azure untuk menggunakan maklumat terkumpul secara produktif selama lebih daripada 25 tahun bekerja dengan pelanggan.

MoneyCare menggunakan pembelajaran mesin untuk meramalkan kelulusan pinjaman

Broker kredit bebas MoneyCare mencipta model ramalan berdasarkan perkhidmatan awan Pembelajaran Mesin Microsoft Azure. Penyelesaian itu membolehkan anda menganggarkan kebarangkalian tindak balas positif daripada bank terhadap permintaan pinjaman.

Untuk penukaran permohonan pinjaman yang lebih baik, syarikat memutuskan untuk mengurangkan jumlah data peribadi kepada minimum yang diperlukan, dan juga mencipta model yang meramalkan kemungkinan tindak balas positif daripada bank. MoneyCare mempercayakan penentuan set data minimum dan pembinaan prototaip kepada pakar Columbus.

Apabila memilih platform pembelajaran mesin, pakar MoneyCare memilih perkhidmatan awan Pembelajaran Mesin Azure, yang membolehkan anda membuat dan menggunakan model ramalan berfungsi sepenuhnya dengan cepat sebagai penyelesaian analitik.

Pada peringkat pertama projek, pengelas prototaip telah dicipta dalam Pembelajaran Mesin Azure, tugasnya adalah untuk memilih lebih daripada 60% permohonan pinjaman dengan kebarangkalian kelulusan melebihi 80%. Kaedah seperti analisis diskriminasi, analisis regresi, pengelompokan, pengelasan berdasarkan kebolehpisahan, serta algoritma pengurangan dimensi digunakan.

Peringkat kedua projek itu melibatkan latihan pekerja MoneyCare dalam prinsip operasi dan bengkel bersama untuk menambah baik prototaip. Perundingan telah diberikan tentang menyediakan model, tugas pembelajaran mesin biasa, dan langkah seterusnya untuk menambah baik prototaip telah ditentukan.

Kerajaan wilayah Murmansk akan menggunakan pembelajaran mesin dalam pengurusan dokumen

Jabatan Teknologi Pengaturcaraan Universiti Negeri St. Petersburg, bersama-sama dengan syarikat Reka Bentuk Digital, menyiasat kemungkinan menggunakan algoritma pembelajaran mesin dalam sistem pengurusan dokumen elektronik. Objek kajian adalah EDMS Kerajaan wilayah Murmansk. Lebih daripada 250 ribu dokumen tanpa nama surat-menyurat rasmi digunakan sebagai pangkalan data.

Kemungkinan menggunakan algoritma pintar yang meniru prinsip rangkaian saraf dalam EDMS telah diuji. Tugas utama rangkaian sedemikian adalah untuk menentukan kategori dokumen, secara automatik mengisi atribut utamanya, menentukan pelaksana yang paling mungkin berdasarkan analisis teks fail yang dilampirkan, dan membuat arahan draf untuk mereka.

Telah ditentukan bahawa, menggunakan algoritma pintar, adalah mungkin untuk mengautomasikan pengisihan dokumen mengikut kandungan fail yang dilampirkan dan mencipta teras semantik untuk setiap kategori, mencari dokumen yang serupa atau serupa, menentukan kebergantungan beberapa atribut dokumen pada yang lain, malah mengautomasikan pembinaan model kebarangkalian untuk meramalkan nilai atribut. Semasa kajian, adalah mungkin untuk mencapai ketepatan 95 peratus dalam menentukan kategori dokumen berdasarkan kandungan teks. Pada peringkat seterusnya, ujian akan dijalankan ke atas kumpulan sempit pengguna utama EDMS Kerajaan Wilayah Murmansk, memproses sejumlah besar dokumen.

Pembelajaran mesin ialah kaedah pengaturcaraan di mana komputer itu sendiri menghasilkan algoritma tindakan berdasarkan model dan data yang dimuat naik oleh seseorang. Latihan adalah berdasarkan mencari corak: mesin ditunjukkan banyak contoh dan diajar untuk mencari ciri biasa. Orang, dengan cara, belajar dengan cara ini. Kami tidak memberitahu kanak-kanak itu apa itu kuda belang, kami menunjukkan kepadanya gambar dan memberitahunya apa itu. Jika anda menunjukkan program seperti ini sejuta gambar merpati, ia akan belajar membezakan burung merpati daripada mana-mana burung lain.

Pembelajaran mesin hari ini berfungsi untuk manfaat manusia dan membantu menganalisis data, membuat ramalan, mengoptimumkan proses perniagaan dan melukis kucing. Tetapi ini bukan hadnya, dan semakin banyak data manusia terkumpul, semakin produktif algoritma tersebut dan semakin luas skop aplikasinya.

Quentin menggunakan aplikasi mudah alih untuk log masuk ke pejabat. Mula-mula program imbasan muka pekerja, selepas itu dia meletakkan jarinya pada penderia, dan aplikasi menyemak cap jari untuk perlawanan dan membenarkannya masuk ke dalam bilik.

Mengenal teks

Di tempat kerja, Quentin perlu mengimbas kad kredit dan bekerja dengan dokumen kertas. Aplikasi dengan fungsi pengecaman teks membantunya dengan ini.

Quentin menghalakan kamera telefon pintarnya pada dokumen, aplikasi itu membaca dan mengenali maklumat itu dan memindahkannya ke dalam bentuk elektronik. Ia sangat mudah, tetapi kadangkala terdapat gangguan, kerana sukar untuk mengajar algoritma untuk mengenali teks dengan tepat. Semua teks berbeza dalam saiz fon, kedudukan pada halaman, jarak antara aksara dan parameter lain. Ini mesti diambil kira semasa membuat model pembelajaran mesin. Kami yakin akan hal ini apabila kami membuat permohonan untuk pengiktirafan penerimaan tunai .

Mengenal bunyi

Quentin tidak mahu mendapatkan kucing dan lebih suka bercakap dengan Siri. Program ini tidak selalu memahami maksud lelaki muda itu, tetapi Quentin tidak berkecil hati. Kualiti pengiktirafan dipertingkatkan melalui proses pembelajaran mesin. Wira kami tidak sabar-sabar untuk Siri belajar cara menukar pertuturan kepada teks, kemudian dia akan dapat menghantar surat secara lisan kepada saudara-mara dan rakan sekerja.

Menganalisis data daripada penderia

Quentin menyukai teknologi dan cuba menjalani gaya hidup sihat. Dia menggunakan aplikasi mudah alih yang mengira langkahnya semasa berjalan di taman dan mengukur kadar denyutan jantungnya semasa berjoging. Dengan bantuan penderia dan pembelajaran mesin, aplikasi akan meramalkan keadaan seseorang dengan lebih tepat dan tidak perlu menukar mod apabila Quentin menaiki basikal atau bertukar daripada latihan kardio kepada latihan kekuatan.

Quentin mengalami migrain. Untuk meramalkan bila serangan sakit kepala yang teruk akan berlaku, dia memuat turun aplikasi khas, yang akan berguna untuk penyakit kronik yang lain. Aplikasi ini menganalisis keadaan seseorang menggunakan penderia pada telefon pintar, memproses maklumat dan meramalkan sawan. Jika risiko timbul, program menghantar mesej kepada pengguna dan orang tersayangnya.

Bantuan dengan navigasi

Dalam perjalanan ke tempat kerja pada waktu pagi, Quentin sering terperangkap dalam kesesakan lalu lintas dan lewat, walaupun pada hakikatnya dia memilih laluan yang paling menguntungkan dalam pelayar. Ini boleh dielakkan dengan memaksa navigator menggunakan kamera dan menganalisis keadaan trafik dalam masa nyata. Dengan cara ini anda boleh meramalkan kesesakan lalu lintas dan mengelakkan detik berbahaya di jalan raya.

Buat ramalan yang tepat

Quentin suka memesan piza melalui aplikasi mudah alih, tetapi antara muka tidak begitu mesra pengguna dan ia menjengkelkan. Pembangun menggunakan perkhidmatan analitik mudah alih Amazon Dan Google, untuk memahami perkara yang Quentin tidak suka tentang apl mudah alih. Perkhidmatan menganalisis gelagat pengguna dan mencadangkan perkara yang perlu diperbaiki untuk membuat pesanan pizza mudah dan mudah.

Siapa yang akan mendapat manfaat

  • syarikat Internet. Perkhidmatan e-mel menggunakan algoritma pembelajaran mesin untuk menapis spam. Rangkaian sosial sedang belajar untuk menunjukkan hanya berita yang menarik dan cuba mencipta suapan berita yang "sempurna".
  • Perkhidmatan keselamatan. Sistem pas adalah berdasarkan algoritma pengecaman data foto atau biometrik. Pihak berkuasa trafik menggunakan pemprosesan data automatik untuk menjejaki pelanggar.
  • Syarikat keselamatan siber sedang membangunkan sistem untuk melindungi daripada penggodaman peranti mudah alih menggunakan pembelajaran mesin. Contoh yang menarik - Snapdragon daripada Qualcomm .
  • Peruncit. Apl mudah alih peruncit boleh melombong data pelanggan untuk membuat senarai beli-belah yang diperibadikan, meningkatkan kesetiaan pelanggan. Satu lagi aplikasi pintar boleh mengesyorkan produk yang menarik kepada orang tertentu.
  • Organisasi kewangan. Apl perbankan mengkaji tingkah laku pengguna dan menawarkan produk serta perkhidmatan berdasarkan ciri pelanggan.
  • Rumah pintar. Aplikasi berdasarkan pembelajaran mesin akan menganalisis tindakan manusia dan menawarkan penyelesaiannya. Contohnya, jika di luar sejuk, cerek akan mendidih, dan jika rakan menghubungi interkom, aplikasi memesan pizza.
  • Institusi perubatan. Klinik akan dapat memantau pesakit yang berada di luar hospital. Dengan menjejaki penunjuk badan dan aktiviti fizikal, algoritma akan mencadangkan membuat temu janji dengan doktor atau menjalani diet. Jika anda menunjukkan algoritma sejuta imej tomografi dengan tumor, sistem akan dapat meramalkan kanser pada peringkat awal dengan ketepatan yang tinggi.

Jadi, apa yang seterusnya?

Pengguna akan mempunyai peluang baharu untuk menyelesaikan masalah mereka, dan pengalaman menggunakan aplikasi mudah alih akan menjadi lebih peribadi dan menyeronokkan. Kereta tanpa pemandu dan realiti tambahan akan menjadi perkara biasa, dan kecerdasan buatan akan berubah kehidupan kita.

Teknologi pembelajaran mesin menarik pelanggan, menganalisis sejumlah besar data dan membuat ramalan. Menggunakan Pembelajaran Mesin, anda boleh membina aplikasi mudah alih yang akan menjadikan kehidupan lebih mudah untuk anda dan pelanggan anda. Di samping itu, ia akan menjadi kelebihan daya saing untuk perniagaan anda.

Kami perlu berdepan dengan cabaran merekod dan memproses permintaan pelanggan setiap hari. Selama bertahun-tahun bekerja, kami telah mengumpul sejumlah besar penyelesaian yang didokumenkan, dan kami tertanya-tanya bagaimana kami boleh menggunakan jumlah pengetahuan ini. Kami cuba menyusun pangkalan pengetahuan dan menggunakan carian terbina dalam Meja Perkhidmatan, tetapi semua teknik ini memerlukan banyak usaha dan sumber. Akibatnya, pekerja kami lebih kerap menggunakan enjin carian Internet daripada penyelesaian mereka sendiri, yang, secara semula jadi, kami tidak boleh membiarkannya seperti itu. Dan teknologi yang tidak wujud 5-10 tahun yang lalu datang untuk menyelamatkan kami, tetapi kini ia agak meluas. Ini mengenai cara kami menggunakan pembelajaran mesin untuk menyelesaikan masalah pelanggan. Kami menggunakan algoritma pembelajaran mesin dalam tugas mencari insiden serupa yang pernah dihadapi sebelum ini, untuk menggunakan penyelesaiannya pada insiden baharu.

Tugas pengendali meja bantuan

Help desk (Service Desk) ialah sistem untuk merekod dan memproses permintaan pengguna yang mengandungi penerangan tentang kerosakan teknikal. Tugas pengendali Help Desk ialah memproses permintaan sedemikian: dia memberikan arahan untuk menyelesaikan masalah atau membetulkannya secara peribadi, melalui akses jauh. Walau bagaimanapun, resipi untuk menghapuskan masalah mesti disediakan terlebih dahulu. Dalam kes ini, pengendali boleh:

  • Gunakan pangkalan pengetahuan.
  • Gunakan carian terbina dalam meja Perkhidmatan.
  • Buat keputusan sendiri, berdasarkan pengalaman anda.
  • Gunakan enjin carian rangkaian (Google, Yandex, dll.).

Mengapa pembelajaran mesin diperlukan?

Apakah produk perisian yang paling maju yang boleh kami gunakan:

  • Meja perkhidmatan pada platform 1C: Perusahaan. Terdapat hanya mod carian manual: mengikut kata kunci, atau menggunakan carian teks penuh. Terdapat kamus sinonim, keupayaan untuk menggantikan huruf dalam perkataan, dan juga penggunaan operator logik. Walau bagaimanapun, mekanisme ini boleh dikatakan tidak berguna dengan jumlah data seperti kami - terdapat banyak hasil yang memenuhi permintaan, tetapi tiada pengisihan berkesan mengikut kaitan. Terdapat pangkalan pengetahuan yang memerlukan usaha tambahan untuk menyokong, dan pencarian di dalamnya adalah rumit oleh kesulitan antara muka dan keperluan untuk memahami pengkatalogannya.
  • JIRA daripada Atlassian. Meja Perkhidmatan Barat yang paling terkenal ialah sistem dengan carian lanjutan, berbanding pesaingnya. Terdapat sambungan tersuai yang menyepadukan ciri kedudukan hasil carian BM25 yang digunakan oleh Google dalam enjin cariannya sehingga tahun 2007. Pendekatan BM25 adalah berdasarkan penilaian "kepentingan" perkataan dalam mesej berdasarkan kekerapan kejadiannya. Lebih jarang perkataan yang sepadan, lebih banyak kesannya terhadap cara keputusan diisih. Ini membolehkan anda sedikit meningkatkan kualiti carian dengan jumlah permintaan yang besar, tetapi sistem tidak disesuaikan untuk memproses bahasa Rusia dan, secara umum, hasilnya tidak memuaskan.
  • Enjin carian internet. Pencarian untuk penyelesaian itu sendiri mengambil masa purata dari 5 hingga 15 minit, dan kualiti jawapan tidak dijamin, begitu juga ketersediaannya. Ia berlaku bahawa perbincangan yang panjang di forum mengandungi beberapa arahan yang panjang, dan tiada satu pun daripada mereka yang sesuai, dan ia mengambil masa sehari penuh untuk menyemak (ini akhirnya boleh mengambil banyak masa tanpa jaminan keputusan).
Kesukaran utama mencari mengikut kandungan permintaan ialah gejala kerosakan yang pada dasarnya sama diterangkan dalam perkataan yang berbeza. Selain itu, huraian selalunya mengandungi slanga, kesalahan tatabahasa dan bentuk surat, kerana... Kebanyakan permohonan diterima melalui e-mel. Sistem Meja Bantuan moden menyerah kepada kesukaran sedemikian.

Apakah penyelesaian yang kami buat?

Ringkasnya, tugas carian berbunyi seperti ini: untuk permintaan masuk baharu, anda perlu mencari permintaan makna dan kandungan yang paling serupa daripada arkib, dan menyediakan penyelesaian yang diberikan kepada mereka. Persoalannya timbul - bagaimana untuk mengajar sistem untuk memahami makna umum alamat? Jawapannya ialah analisis semantik komputer. Alat pembelajaran mesin membolehkan anda membina model semantik arkib hits, mengekstrak semantik perkataan individu dan keseluruhan hits daripada huraian teks. Ini membolehkan anda menilai secara berangka tahap kedekatan antara aplikasi dan memilih padanan terdekat.

Semantik membolehkan anda mengambil kira makna sesuatu perkataan bergantung pada konteksnya. Ini membolehkan anda memahami sinonim dan menghapuskan kekaburan perkataan.

Walau bagaimanapun, sebelum menggunakan pembelajaran mesin, teks mesti dipraproses. Untuk melakukan ini, kami telah membina rangkaian algoritma yang membolehkan kami memperoleh asas leksikal kandungan setiap rujukan.

Pemprosesan terdiri daripada membersihkan kandungan permintaan daripada perkataan dan simbol yang tidak perlu dan memecahkan kandungan menjadi leksem yang berasingan - token. Memandangkan permintaan datang dalam bentuk e-mel, tugas yang berasingan ialah membersihkan borang mel, yang berbeza dari huruf ke huruf. Untuk melakukan ini, kami telah membangunkan algoritma penapisan kami sendiri. Selepas menerapkannya, kita ditinggalkan dengan kandungan teks surat tanpa kata pengantar, salam dan tandatangan. Kemudian, tanda baca dikeluarkan daripada teks, dan tarikh serta nombor digantikan dengan tag khas. Teknik generalisasi ini meningkatkan kualiti mengekstrak hubungan semantik antara token. Selepas ini, perkataan mengalami lemmatisasi - proses mengurangkan perkataan kepada bentuk biasa, yang juga meningkatkan kualiti melalui generalisasi. Kemudian bahagian pertuturan dengan beban semantik rendah dihapuskan: preposisi, kata seru, zarah, dll. Selepas ini, semua token huruf ditapis melalui kamus (korpus kebangsaan bahasa Rusia). Untuk penapisan disasarkan, kamus istilah IT dan slanga digunakan.

Contoh hasil pemprosesan:

Sebagai alat pembelajaran mesin, kami menggunakan Vektor Perenggan (word2vec)– teknologi untuk analisis semantik bahasa semula jadi, yang berdasarkan perwakilan vektor teragih bagi perkataan. Dibangunkan oleh Mikolov et al bersama-sama dengan Google pada tahun 2014. Prinsip operasi adalah berdasarkan andaian bahawa perkataan yang terdapat dalam konteks yang serupa mempunyai makna yang hampir. Sebagai contoh, perkataan "Internet" dan "sambungan" sering ditemui dalam konteks yang serupa, contohnya, "Internet telah hilang pada pelayan 1C" atau "Sambungan telah hilang pada pelayan 1C." Vektor Perenggan menganalisis data teks ayat dan membuat kesimpulan bahawa perkataan "internet" dan "sambungan" adalah rapat secara semantik. Lebih banyak data teks yang digunakan oleh algoritma, lebih tinggi kecukupan kesimpulan sedemikian.

Jika anda mendalami butiran:

Berdasarkan kandungan yang diproses, "beg perkataan" disusun untuk setiap rayuan. Beg perkataan ialah jadual yang menunjukkan kekerapan kejadian setiap perkataan dalam setiap rujukan. Baris mengandungi nombor dokumen, dan lajur mengandungi nombor perkataan. Di persimpangan terdapat nombor yang menunjukkan berapa kali perkataan itu muncul dalam dokumen.

Berikut ialah contoh:

  • Pelayan Internet 1C hilang
  • Sambungan pelayan 1C hilang
  • ranap pelayan 1C

Dan ini adalah rupa beg perkataan:

Menggunakan tetingkap gelongsor, konteks setiap perkataan dalam edaran ditentukan (jiran terdekatnya di kiri dan kanan) dan set latihan disusun. Berdasarkannya, rangkaian saraf tiruan belajar untuk meramalkan perkataan dalam edaran, bergantung pada konteksnya. Ciri semantik yang diekstrak daripada hits membentuk vektor berbilang dimensi. Semasa latihan, vektor terbentang di angkasa dengan cara yang kedudukannya mencerminkan hubungan semantik (makna yang dekat adalah berdekatan). Apabila rangkaian menyelesaikan masalah ramalan dengan memuaskan, ia boleh dikatakan telah berjaya mengekstrak makna semantik tuntutan. Perwakilan vektor membolehkan anda mengira sudut dan jarak antara mereka, yang membantu menganggarkan ukuran kedekatannya secara berangka.

Cara kami nyahpepijat produk

Oleh kerana terdapat sejumlah besar pilihan untuk melatih rangkaian saraf tiruan, tugas timbul untuk mencari nilai optimum parameter latihan. Iaitu, model yang paling tepat mengenal pasti masalah teknikal yang sama yang diterangkan dalam perkataan yang berbeza. Disebabkan fakta bahawa ketepatan algoritma sukar untuk dinilai secara automatik, kami mencipta antara muka penyahpepijatan untuk penilaian kualiti manual dan alat untuk analisis:

Untuk menganalisis kualiti latihan, kami juga menggunakan visualisasi sambungan semantik menggunakan T-SNE, algoritma pengurangan dimensi (berdasarkan pembelajaran mesin). Ia membolehkan anda memaparkan vektor berbilang dimensi pada satah sedemikian rupa sehingga jarak antara titik rujukan mencerminkan kedekatan semantiknya. Contoh akan menunjukkan 2000 hits.

Di bawah adalah contoh latihan model yang baik. Anda dapat melihat bahawa beberapa permintaan dikumpulkan ke dalam kelompok yang mencerminkan topik umum mereka:

Kualiti model seterusnya jauh lebih rendah daripada yang sebelumnya. Modelnya kurang terlatih. Pengagihan seragam menunjukkan bahawa butiran hubungan semantik dipelajari hanya dalam istilah umum, yang telah didedahkan semasa penilaian kualiti manual:

Akhir sekali, demonstrasi graf latihan semula model. Walaupun terdapat pembahagian kepada topik, model ini berkualiti sangat rendah.

Kesan memperkenalkan pembelajaran mesin

Terima kasih kepada penggunaan teknologi pembelajaran mesin dan algoritma pembersihan teks kami sendiri, kami menerima:

  • Tambahan kepada sistem maklumat industri standard, yang menjimatkan masa dengan ketara untuk mencari penyelesaian kepada tugas meja perkhidmatan harian.
  • Kebergantungan kepada faktor manusia telah berkurangan. Permohonan itu boleh diselesaikan secepat mungkin bukan sahaja oleh seseorang yang telah menyelesaikannya sebelum ini, tetapi juga oleh seseorang yang tidak biasa dengan masalah itu sama sekali.
  • Pelanggan menerima perkhidmatan yang lebih baik, jika sebelum ini menyelesaikan masalah yang tidak diketahui oleh jurutera mengambil masa dari 15 minit, kini ia mengambil masa sehingga 15 minit jika seseorang telah menyelesaikan masalah ini sebelum ini.
  • Memahami bahawa kualiti perkhidmatan boleh dipertingkatkan dengan mengembangkan dan menambah baik asas penerangan dan penyelesaian kepada masalah. Model kami sentiasa dilatih semula apabila data baharu tiba, yang bermaksud kualitinya dan bilangan penyelesaian siap sedia semakin meningkat.
  • Kakitangan kami boleh mempengaruhi sifat model dengan sentiasa mengambil bahagian dalam menilai kualiti carian dan penyelesaian, yang membolehkannya dioptimumkan secara berterusan.
  • Alat yang boleh menjadi rumit dan dibangunkan untuk mengeluarkan lebih banyak nilai daripada maklumat sedia ada. Seterusnya, kami merancang untuk menarik penyumber luar lain kepada perkongsian dan mengubah suai penyelesaian untuk menyelesaikan masalah yang sama untuk pelanggan kami.

Contoh mencari permintaan yang serupa (ejaan dan tanda baca pengarang dikekalkan):

Permintaan masuk Permintaan yang paling serupa daripada arkib % persamaan
“Re: PC diagnostics PC 12471 masuk ke but semula selepas menyambungkan pemacu denyar. Semak log. Diagnosis, fahami apa masalahnya.” “PC but semula, apabila anda menyambung pemacu kilat, PC but semula. PC 37214 Semak apa masalahnya. PC dalam jaminan.” 61.5
“Pelayan dalaman tidak but selepas bekalan elektrik terputus. BSOD" "Selepas but semula pelayan, pelayan tidak dimuatkan dan berbunyi bip" 68.6
"Kamera tidak berfungsi" “Kamera tidak berfungsi” 78.3
"RE: E-mel Bat tidak dihantar, ia mengatakan folder itu penuh. Re: mel tidak diterima Limpahan folder dalam THE Bat! folder lebih daripada 2 GB 68.14
“Ralat semasa memulakan 1C - Tidak mustahil untuk mendapatkan sijil pelayan lesen. Saya melampirkan tangkapan skrin. (komputer 21363)” 1C CRM tidak bermula, 1C tidak bermula pada PC 2131 dan 2386, ralat berikut: Tidak mustahil untuk mendapatkan sijil pelayan pelesenan. Pelayan lesen tidak dapat ditemui dalam mod carian automatik.” 64.7

Pada mulanya, penyelesaian itu dirancang secara seni bina seperti berikut:

Penyelesaian perisian ditulis sepenuhnya dalam Python 3. Pustaka yang melaksanakan kaedah pembelajaran mesin sebahagiannya ditulis dalam c/c++, yang membolehkan anda menggunakan versi kaedah yang dioptimumkan, yang memberikan kelajuan kira-kira 70 kali ganda berbanding dengan pelaksanaan Python tulen. Pada masa ini, seni bina penyelesaian kelihatan seperti ini:

Sistem untuk analisis kualiti dan pengoptimuman parameter latihan model juga dibangunkan dan disepadukan. Antara muka maklum balas dengan pengendali juga dibangunkan, membolehkan beliau menilai kualiti pemilihan setiap penyelesaian.

Penyelesaian ini boleh digunakan untuk sejumlah besar tugas berkaitan teks, sama ada:

  • Carian semantik dokumen (mengikut kandungan dokumen atau kata kunci).
  • Analisis nada komen (pengenalpastian perbendaharaan kata yang bermuatan emosi dalam teks dan penilaian emosi pendapat berhubung dengan objek yang dibincangkan dalam teks).
  • Mengekstrak ringkasan teks.
  • Cadangan pembinaan (Penapisan Kolaboratif).

Penyelesaian ini mudah disepadukan dengan sistem pengurusan dokumen, kerana operasinya hanya memerlukan pangkalan data dengan teks.

Kami berbesar hati untuk memperkenalkan teknologi pembelajaran mesin kepada rakan sekerja IT dan pelanggan dari industri lain, hubungi kami jika anda berminat dengan produk tersebut.

Arah pembangunan produk

Penyelesaiannya berada dalam peringkat ujian alfa dan sedang giat membangun ke arah berikut:

  • Mencipta perkhidmatan awan
  • Pengayaan model berdasarkan penyelesaian sokongan teknikal dalam domain awam dan dengan kerjasama syarikat penyumberan luar lain
  • Penciptaan seni bina penyelesaian yang diedarkan (data kekal dengan pelanggan, dan penciptaan model dan pemprosesan permintaan berlaku pada pelayan kami)
  • Sambungan model untuk bidang subjek lain (perubatan, undang-undang, penyelenggaraan peralatan, dll.)

Apa lagi yang perlu dibaca