J'ai appelé l'analyse de la syntaxe de l'API COTOHA 100 fois en Java pour mesurer les performances.

Création de la classe CotohaNlpService

Post 1 Essayer d'utiliser l'analyse syntaxique de l'API COTOHA en Java

Quand

Post 2 Analyse syntaxique de l'API COTOHA en Java

Sur la base de, j'ai créé les classes suivantes afin que l'API COTOHA puisse être utilisée facilement. (Il sera publié sur le référentiel Maven à une date ultérieure)

CotohaNlpService.java https://github.com/oyahiroki/nlp4j/blob/master/nlp4j/nlp4j-cotoha/src/main/java/nlp4j/cotoha/CotohaNlpService.java

En utilisant cette classe, vous pouvez facilement obtenir le résultat de l'analyse morphologique comme suit. (Définissez les variables requises pour l'appel d'API en tant que variables d'environnement) Séparément, j'ai créé une classe qui formate JSON et l'enregistre dans un fichier texte séparé par des sauts de ligne, il est donc possible d'enregistrer le nombre d'appels.

CotohaNlpService service = new CotohaNlpService();
DefaultNlpServiceResponse response = service.nlpV1Parse("J'ai couru à l'école aujourd'hui.");
//Le JSON de la réponse est généré. Il existe également une méthode à renvoyer en tant que classe de mots-clés.
System.err.println(response.getOriginalResponseBody()); 

Préparation des données

Nous avons téléchargé les données du ministère des Terres, des Infrastructures, des Transports et du Tourisme «Informations sur les rappels / défauts d'automobiles» et utilisé 100 cas. Copier du HTML à la main est naturellement gênant, donc [Gonyogonyo](https://github.com/oyahiroki/nlp4j/blob/master/nlp4j/nlp4j-webcrawler/src/main/java/nlp4j/webcrawler/mlit /MlitCarInfoCrawler.java) ^ _ ^;

Ministère des Terres, des Infrastructures, des Transports et du Tourisme "Informations sur les rappels / défauts de voitures" http://carinf.mlit.go.jp/jidosha/carinf/opn/index.html

Appelez-moi 100 fois

Le résultat de l'appel 100 fois est le suivant.

L'axe horizontal correspond au nombre d'essais et l'axe vertical correspond au temps de traitement. Il inclut le traitement d'analyse JSON côté client, mais vous pouvez le considérer comme quelques ms. Au départ, cela prenait environ 2000 ms, mais cela inclut également l'obtention d'un jeton. C'est généralement dans les 200-300 ms, mais parfois il semble ralentir soudainement. Je pense qu'il y a une forte possibilité qu'il soit lent pour l'environnement DEV, et bien sûr cela dépend de l'environnement réseau.

image.png

Vient ensuite un graphique de la longueur de la chaîne et du temps de traitement. Apparemment, il ne semble y avoir aucune corrélation entre la longueur de la chaîne et le temps de traitement. (Je pense que les caractères extrêmement longs sont susceptibles de changer)

image.png

Voici les données brutes.

length,time
61,2001
73,337
54,310
79,349
58,274
51,269
41,660
21,263
38,283
74,295
52,4472
70,1138
68,3074
31,243
39,251
15,219
11,258
14,259
62,293
66,276
27,272
18,220
63,278
62,428
68,284
50,288
43,250
45,264
70,273
58,250
157,593
88,280
66,264
26,272
38,1514
8,237
42,256
53,1472
42,2668
35,230
32,235
36,241
116,325
17,254
102,309
59,268
21,220
43,278
64,249
32,246
31,247
27,252
70,3698
61,340
51,233
23,225
20,226
60,310
50,1685
72,281
37,270
45,253
13,224
54,243
64,302
52,1876
90,3251
30,9501
73,2323
70,3689
70,1304
61,303
67,262
17,3032
128,302
63,272
33,238
32,257
106,3906
57,261
103,299
82,270
71,268
158,803
41,255
36,284
62,304
36,234
38,1778
19,1478
90,345
22,239
62,310
72,2555
66,256
25,927
33,242
39,283
24,237
42,247

c'est tout

Recommended Posts

J'ai appelé l'analyse de la syntaxe de l'API COTOHA 100 fois en Java pour mesurer les performances.
Analyser l'analyse syntaxique de l'API COTOHA en Java
Essayez d'utiliser l'analyse syntaxique de l'API COTOHA en Java
J'ai essayé d'implémenter la méthode de division mutuelle d'Eugrid en Java
Je souhaite utiliser l'API Java 8 DateTime lentement (maintenant)
Je souhaite simplifier l'instruction if-else de la branche conditionnelle en Java
[java8] Pour comprendre l'API Stream
[Java] Je veux effectuer distinctement avec la clé dans l'objet
Exemple de code pour appeler l'API Yahoo! Local Search en Java
J'ai essayé d'utiliser l'API Elasticsearch en Java
Référence Java à comprendre dans la figure
Essayez d'utiliser l'API Stream en Java
Appelez l'API de notification Windows en Java
J'ai essayé le nouveau yuan à Java
Comment obtenir la date avec Java
J'ai essayé de résumer l'API Stream
Je suis allé au Java Women's Club # 1
Je souhaite obtenir l'adresse IP lors de la connexion au Wi-Fi avec Java
ChatWork4j pour l'utilisation de l'API ChatWork en Java
Je souhaite envoyer un e-mail en Java.
J'ai essayé d'organiser la session en Rails
Mesurer la taille d'un dossier avec Java
Je voulais que (a == 1 && a == 2 && a == 3) vrai en Java
rsync4j --Je veux toucher rsync en Java.
Quand j'ai voulu créer une méthode pour Premium Friday, c'était déjà dans l'API standard Java 8
J'ai essayé de sortir quatre-vingt-dix-neuf en Java
J'ai essayé de créer une compétence Alexa avec Java
Je veux obtenir la valeur en Ruby
[Android Studio] Je souhaite définir des restrictions sur les valeurs enregistrées dans EditText [Java]
La partie à laquelle j'étais accro dans "Introduction à Ajax dans les applications Web Java" de NetBeans
# 1_JAVA Je veux obtenir le numéro d'index en spécifiant un caractère dans la chaîne de caractères
J'étais accro à NoSuchMethodError dans Cloud Endpoints
Essayé l'API Toot et Streaming de Mastodon en Java
[Java] Comment omettre le constructeur privé dans Lombok
Je veux faire quelque chose comme "cls" en Java
[Java] Je souhaite calculer la différence par rapport à la date
Je veux intégrer n'importe quel TraceId dans le journal
Tokoro j'ai réécrit dans la migration de Wicket 7 à 8
J'ai essayé d'implémenter la notification push Firebase en Java
# 2 [Note] J'ai essayé de calculer quatre-vingt-dix-neuf avec Java.
Source utilisée pour obtenir l'URL de la source de redirection en Java
J'ai essayé de créer une compétence Clova en Java
J'ai essayé de créer une fonction de connexion avec Java
Classes et instances Java comprises dans la figure
[Java] J'ai essayé de mettre en œuvre la recherche de produits de l'API Yahoo
~ J'ai essayé d'apprendre la programmation fonctionnelle avec Java maintenant ~
J'ai essayé de découvrir ce qui avait changé dans Java 9
API Zabbix en Java
J'ai fini de regarder les roses de Versailles, alors j'ai essayé de reproduire la chanson de fin en Java
En Java, je souhaite couper plusieurs caractères spécifiés uniquement du début et de la fin.
Comment obtenir le nom d'une classe / méthode exécutée en Java
J'ai traduit [Méthode Clone pour les tableaux Java] comme méthode Clone dans les tableaux Java.
[Java] ArrayList → La taille doit-elle être spécifiée dans la conversion de tableau?
[JDBC] J'ai essayé d'accéder à la base de données SQLite3 depuis Java.
[Débutant] J'ai créé un programme pour vendre des gâteaux en Java
[Android, Java] Méthode pratique pour calculer la différence en jours
Je voulais juste créer une propriété réactive en Java