
Watson NLCに学習データを投入できる画面をPythonで実装する方法
こんにちは。
AI coordinatorの清水秀樹です。
Watson NLCに学習データを投入できる簡単な画面を開発したので、その作り方を紹介します。

Watson NLCに学習データを投入する作業はコマンドラインで投入することが基本になります。
コマンドラインやプログラミングになれている技術屋さんであれば苦にならない仕様ではありますが、そうでない方からしたらWatsonに学習データを投入する作業はなかなかハードルの高いやり方になります。
そんなわけで、簡単に学習データを投入できる画面を作成してみたので紹介したいと思います。
事前準備
Watson NLCをBluemix上で作成しておく必要があります。
Watson NLCの作成方法については以下の記事を参考にしてください。
その他、Pythonの開発環境が必要になります。
開発環境の準備は以下の記事を参考にしてください。
Pepper用Python 2.7 SDK(WIN)セットアップ方法
Pepper用Python 2.7 SDK(MAC)セットアップ方法
ソースコード
以下、ソースコードになります。
# -*- coding: utf-8 -*-
import json
import time
from Tkinter import*
import tkMessageBox
import tkFileDialog
from watson_developer_cloud import NaturalLanguageClassifierV1
class nlc_file_in():
def __init__(self):
#ウインドウ定義
root = Tk()
root.option_add('*font', 'FixedSys 18')
root.option_add('*Button.background', 'green')
root.geometry("700x150")
root.title(u"Natural Language Classifier")
#アプリ名表示------------
Label(text=u'NLC',font=(u'MS ゴシック', 24)).place(x=25,y=10)
#CSVファイル入力ボタン--------------------
Button(root,text = "CSV入力",command=self.file_in_btn).place(x=100,y=12)
root.mainloop()
def file_in_btn(self):
#ファイルの指定 askopenfilename 一つのファイルを選択する。
fTyp=[('csvファイル','*.csv')]
iDir='CSV入力ボタンを押下したときに初期表示させるディレクトリのパス'
filename=tkFileDialog.askopenfilename(filetypes=fTyp,initialdir=iDir)
#NLCの作成
natural_language_classifier = NaturalLanguageClassifierV1(
username='サービス資格情報のusername',
password='サービス資格情報のpassword')
with open(filename, 'rb') as training_data:
classifier = natural_language_classifier.create(
training_data=training_data,
name='nlc test',
language='ja')
print(json.dumps(classifier, indent=2))
#ステータスの確認
Label(text="学習ステータス:").place(x=180,y=20)
status = natural_language_classifier.status(classifier["classifier_id"])
while True:
if status["status"] == "Available":
break
time.sleep(10)
status = natural_language_classifier.status(classifier["classifier_id"])
print status["status"]
#Label(text=status["status"],font=(u'MS ゴシック', 16,'underline')).place(x=130,y=100)
Label(text='学習完了').place(x=310,y=20)
nlc_file_in()
iDirにはCSVファイルを選択するときに、デフォルトで表示するディレクトリパスを指定してください。
特筆する点はそれぐらいです。
ソースコードを直接ダウンロードしたい方はこちらから → file_in.zip
それではまた。
LEAVE A REPLY