Menggunakan Analisis Sentimen Watson untuk Membangun Smart dan Sadar Android Apps

AI mengambil alih dunia dengan cepat. Setiap segmen di tech sedang dipikirkan kembali dan merevolusi menggunakan AI. Sebagai pengembang perangkat lunak, di beberapa titik dalam karir Anda, Anda pasti akan memiliki perjumpaan dengan AI sehingga hanya masuk akal untuk memiliki beberapa pengalaman bekerja dengan di bawah ikat pinggang Anda. Bidang AI adalah ...

A+ A-

AI mengambil alih dunia dengan cepat. Setiap segmen di tech sedang dipikirkan kembali dan merevolusi menggunakan AI. Sebagai pengembang perangkat lunak, di beberapa titik dalam karir Anda, Anda pasti akan memiliki perjumpaan dengan AI sehingga hanya masuk akal untuk memiliki beberapa pengalaman bekerja dengan di bawah ikat pinggang Anda. Bidang AI sangat luas dan itu cara di luar lingkup posting ini tapi masih, saya ingin menunjukkan kepada Anda bagaimana mudahnya untuk mengintegrasikan intelijen dalam aplikasi Anda dengan pekerjaan minimal. Tentu saja, Anda akan tidak akan melatih setiap model pembelajaran mesin untuk mencapai hal ini, Anda akan menggunakan pra dibangun solusi, yang mengapa itu akan bekerja sangat minimal pada akhir Anda.

Analisis Sentimen Watson

Kami akan membangun sebuah sistem analisis sentimen yang sangat sederhana di Android menggunakan Watson API oleh IBM. IBM membangun banyak integrasi berguna yang dapat langsung digunakan oleh pengembang tanpa melalui kerumitan membangun infrastruktur pada akhir mereka. Mereka mengikat semua penawaran mereka di bawah Bluemix yang merupakan rangkaian produk untuk membangun perangkat lunak yang lebih baik. Apa yang hebat tentang Bluemix adalah kenyataan bahwa ia datang dalam gratis selama 30 hari sehingga Anda tidak perlu membuat komitmen lurus. Jika Anda tertarik untuk memeriksa penawaran mereka kepala ke situs Bluemix dan mendaftar untuk percobaan 30-hari.

Baiklah jadi mari kita mulai membangun aplikasi. Sebelum memulai inilah disclaimer cepat. Artikel ini benar-benar akan menganggap bahwa Anda memiliki beberapa pengalaman dengan pemrograman berorientasi objek dan Android. Bagian Android dari proyek ini adalah cukup minim sehingga semua yang Anda butuhkan adalah pengetahuan dasar penayangan dan bagaimana untuk memanipulasi mereka.

Sekarang kita sudah selesai dengan formalitas mari kita mulai.

Langkah 1: Setup

Jalankan Android Studio dan membuat proyek baru. Nama itu apa pun yang Anda inginkan dan menerima default di setup wizard. Setelah proyek membangun, menjalankannya pada perangkat atau emulator hanya untuk memastikan semuanya bekerja dengan baik. Jika semuanya baik sejauh Anda siap untuk melanjutkan ke langkah berikutnya.

Marek Android Studio

Langkah 2: Membangun UI

Mari kita mulai membangun tata letak. Karena aplikasi ini cukup minim mari kita mendapatkan bagian tata letak keluar dari jalan secepat mungkin. Inilah yang layar aplikasi akhir akan terlihat seperti.

App Tata Letak

Ini terdiri dari TextView sebuah EditText dan Button semua dari mereka yang terkandung dalam LinearLayout a. Setelah Anda selesai mereplikasi tata letak, hanya melompat ke file Java yang sesuai dan kawat up UI Anda sebagai berikut.

 public class MainActivity meluas AppCompatActivity {
 
    TextView TextView;
    EditText EditText;
    Tombol;
    Sentimen string;

@Mengesampingkan
    kekosongan dilindungi onCreate (Bundle savedInstanceState) {
        super.onCreate (savedInstanceState);
        setContentView (R.layout.activity_main);
 
        // menginisialisasi elemen UI
        TextView = (TextView) findViewById (R.id.textView);
        EditText = (EditText) findViewById (R.id.editText);
        tombol = (Button) findViewById (R.id.button); 

Mari kita menghubungkan tombol dengan pendengar klik sehingga merespon menyentuh peristiwa. Berikut kode untuk itu:

 button.setOnClickListener (View.OnClickListener baru () {
            @Mengesampingkan
            public void onClick (View v) {
                System.out.println ( "Logging ke konsol bahwa tombol ditekan untuk teks:" + editText.getText ());
                textView.setText ( "Menampilkan di UI sentimen yang akan diperiksa:" + editText.getText ());
 
                Tugas AskWatsonTask = baru AskWatsonTask ();
                task.execute (String baru [] {});
            }
}); 

Perhatikan AskWatsonTask? Itulah yang akan digunakan untuk mengambil hasil analisis sentimen dari Watson API. Bukan apa-apa tapi AsyncTask sederhana. Copy dan paste potongan kode berikut:

 kelas privat AskWatsonTask meluas AsyncTask <String, Void, String> { 
    @Mengesampingkan
    dilindungi String doInBackground (String ... textsToAnalyse) {               
        System.out.println (editText.getText ());               
        runOnUiThread (Runnable baru () {                 
            @Mengesampingkan                 
            public void run () {                     
                textView.setText ( "apa yang terjadi di dalam thread - kita menjalankan Watson AlchemyAPI");                 
            }             
        });       
      
        Sentimen = "Test sentimen";             
        System.out.println (sentimen);
  
        // melewati hasil yang akan ditampilkan di UI di tapak utama           
        kembali sentimen;         
    }           

    // pengaturan nilai UI luar benang         
    @Mengesampingkan         
    void dilindungi onPostExecute (String hasil) {             
        textView.setText ( "Sentimen pesan adalah:" hasil +);         
    }     
} 

The AsyncTask yang disebutkan di atas akan mengambil hasil dari Watson dalam format JSON yang akan kita mengurai nanti dan tampilan di UI. Sampai sekarang, aplikasi ini cukup bodoh tetapi bekerja. Untuk merekam pos pemeriksaan memungkinkan menyebarkan aplikasi kami telah membangun sejauh ini dan melihat apa yang dilakukannya. Tekan tombol hijau Putar dan menonton berjalan. Ia tidak melakukan apa-apa.

Android Emulator

Jika Anda mengklik Menganalisis! tombol, Anda harus dapat melihat hasilnya di lapangan TextView. Anda juga harus melihat beberapa output di jendela log kucing.

Langkah 3: Menambahkan Smarts

Sudah waktunya untuk menambahkan kemampuan kognitif untuk ini tulang telanjang dari sebuah aplikasi. Hal pertama yang perlu Anda lakukan adalah menambahkan Watson Cloud SDK untuk Java di aplikasi Anda. kepala ke link ini untuk penjelasan rinci tentang cara untuk melakukannya. Download library Java dari link ini. Dan menambahkannya ke folder libs sebagai berikut.

Watson Ketergantungan

Setelah perpustakaan terintegrasi, Anda perlu mendapatkan izin internet di aplikasi Anda. Buka AndroidManifest.xml dan tambahkan baris berikut

 <Menggunakan-izin android: name = "android.permission.WRITE_EXTERNAL_STORAGE" /> 
<Menggunakan-izin android: name = "android.permission.INTERNET" /> 

Hak akses atas akan memungkinkan Anda untuk mengakses jaringan untuk mengambil hasil dari Watson.

Langkah 3b: Ambil kunci API dari Bluemix

Dari katalog IBM Bluemix, klik Watson => AlchemyAPI => Buat. Pastikan untuk menggunakan kunci API statis seperti yang ditunjukkan pada gambar berikut:

Watson API Key Langkah 4: Menambahkan Kode untuk Invoke Watson

Sekarang saatnya untuk menambahkan beberapa kode untuk berkomunikasi dengan API Watson Alchemy. Memperluas AskWatson AsyncTask dengan kode berikut.

 AlchemyLanguage layanan = baru AlchemyLanguage ();
service.setApiKey ( "");
 
Peta <String, Object> params = new HashMap <String, Object> ();
params.put (AlchemyLanguage.TEXT, editText.getText ());
Sentimen DocumentSentiment = service.getSentiment (params) .execute ();
System.out.println (sentimen);
 
// melewati hasil yang akan ditampilkan di UI di thread utama
kembali sentiment.getSentiment () getType () nama ()..; 

Waktu untuk cepat menguji apakah aplikasi tersebut bekerja. Tekan Ctrl + R dan menonton aplikasi menjadi semua pintar!

Android Emulator Watson API
Jika Anda pikir ini adalah sihir, sebenarnya tidak. Semua itu dilakukan melalui JSON kembali yang terlihat seperti ini
 {
   "DocSentiment": {
     "Mencetak": -,42344,
     "Type": "negatif"
   },
   "bahasa Inggris",
   "TotalTransactions": 1
} 

Kesimpulan

Anda hanya melihat betapa mudahnya adalah untuk membangun aplikasi kognitif menggunakan Analisis Sentimen Watson. Aplikasi kami membangun tidak memiliki fungsi nyata per kata tapi itu menunjukkan kemampuan Bluemix dan persembahan. Anda dapat menempatkan korban ini di bawah beberapa kurung dan membangun beberapa pengalaman pengguna yang sangat kaya. Kepala ke situs Bluemix untuk mempelajari lebih lanjut tentang apa yang dapat semua Anda membangun.