å½¢æ ç´ è§£æã¨ã³ã¸ã³Senã使ã
ã¼ãç¨è³æãé¢ä¿ã®ãªãæ¹ã¯ã¹ã«ã¼ãã¦ãã ãã
ã°ã¼ã°ã«æ§ã«èãã°ãã°ãããè³æããã£ã±ãåºã¾ãããã¨ããããåºããã¤ãã¾ã¨ãã¾ããã
ç¡æã®ãã®ããåç¨åãã¾ã§é常ã«å¤ãã®å½¢æ ç´ è§£æã¨ã³ã¸ã³ãéçºããã¦ããã
å½¢æ ç´ è§£æã¨ã¯ï¼
対象è¨èªã®ææ³ã®ç¥èï¼ææ³ã®ã«ã¼ã«ã®éã¾ãï¼ãè¾æ¸ï¼åè©çã®æ å ±ä»ãã®åèªãªã¹ãï¼ãæ å ±æºã¨ãã¦ç¨ããèªç¶è¨èªã§æ¸ãããæãå½¢æ ç´ ï¼Morpheme, ããã¾ãã«ããã°ãè¨èªã§æå³ãæã¤æå°åä½ï¼ã®åã«åå²ããããããã®åè©ãå¤å¥ããä½æ¥ãæãã
èªç¶è¨èªã§æ¸ãããæããå½¢æ ç´ ï¼è¨èªã§æå³ãæã¤æå°åä½ï¼ã«åå²ããæè¡ã§ãããã®éãè¾æ¸ (ãåè©ããªã©ã®æ å ±ã¤ãã®åèªãªã¹ã)ä¸ã®æ å ±ãåç §ãããã¨ã§ããåè©ãããæ´»ç¨å½¢ãããèªã¿ãçã®æ å ±ãå¾ããã¨ãå¯è½ã§ãã
- å·¥è¤ æ[MeCab æ±ç¨æ¥æ¬èªå½¢æ ç´ è§£æã¨ã³ã¸ã³]http://www.jtpa.org/files/MeCab.pdf
å½¢æ
ç´ è§£æã¢ã«ã´ãªãºã ã«ã¯ãããããªææ³ãããã製åã«ãã£ã¦æä¾ãããæ©è½ã精度ãç°ãªãã
ä¸è¬çã«å½¢æ
ç´ è§£æã¯åè©ãåèªã®æ
å ±ãæã£ãè¾æ¸ãå©ç¨ããããã®è¾æ¸ã®ä½ææ¹éã«ãã£ã¦ã精度ã«å½±é¿ã
è¾æ¸
ä»å使ç¨ããSenã§ã¯ããã©ã«ãã®IPAã®è¾æ¸ãæ¡ç¨ãä»ã«ãç¡åã§å©ç¨ã§ãããã®ã§æ°ãããã®ã ã¨ä¾ãã°ã
ã¾ããæ°èªãå°éé åã®è¨èãªã©ã¯è¾æ¸ã«ç»é²ããã¦ããªããã®ãå¤ããé«ç²¾åº¦ãªè§£æã®ããã«ã¯é©å®ç»é²ãã¦ãããã¨ãå¿
è¦ã
ä½ãã§ãã¦ä½ã®ãã¼ãã³ã°ãããã®ï¼
- å½¢æ ç´ è§£æãè¡ããã¨ã§æ¥æ¬èªãªã©åèªã®åãç®ããããã«ããã¢ã¸ã¢è«¸èªãã¢ã©ãã¢èªãªã©ãåãã¡æ¸ãã«ãããã¨ãã§ããã
- åè©æ å ±ãå©ç¨ããã¨ææ³ãå«ããæç« ã®æ§é ãæ±ããã¨ãã§ããã
- åè©ã®æ´»ç¨ãªã©ã«ãã£ã¦çãã表è¨ãããå¸åãããã¨ãã§ãã¾ããããã¾ãæ§ã®åé¿
æç« æ¤ç´¢ã»æ§æ解æã¢ã«ã´ãªãºã ã¯åèªåä½ã®å¯¾è±¡ãåæã¨ãã¦ãããã®ãå¤ãããã
ã¤ã³ãã»ã¨ã¼ãããèªæã¯åèªã®åãç®ãåããããããã容æã«åèªã¸ã®åå²ãå¯è½ã ããåªããã¢ã«ã´ãªãºã ã§ãã£ã¦ãæ¥æ¬èªãéå½èªãã¢ã©ãã¢èªãªã©ã«é©ç¨ããããã
å½¢æ
ç´ è§£æãå©ç¨ãããã¨ã§ä½¿ããã¢ã«ã´ãªãºã ãå¢ããã
使ã£ã¦ã¿ã
ã¨ãããã試ã
- MeCabã®Web service MECAPI http://api.chasen.org/mecapi/
Sen/Java
ã¤ã³ã¹ãã¼ã«ã¬ã¤ãï¼-http://www.techscore.com/tech/ApacheJakarta/Lucene/4.html
å¿
è¦ãªãã®ï¼ant, perlï¼è¾æ¸ã®ã³ã³ãã¤ã«ã«å¿
è¦ã§ãã
import java.io.IOException; import net.java.sen.StringTagger; import net.java.sen.Token; public static void main(String[] args) throws IllegalArgumentException, IOException { System.setProperty("sen.home","c:/sen"); StringTagger tagger = StringTagger.getInstance(); //解æ対象 String str = "ä»æ¥ã¯ããããè¯ã天æ°ã§ãããå³æ¸é¤¨ã§éèªãããã£ã¦ããããã¨ãããã¾ãã"; //å½¢æ ç´ ãé åã§åå¾ Token[] tokens = tagger.analyze(str); //here //åå¾ããå½¢æ ç´ ãã«è¡å¤æ ¼æ´»ç¨ã¨ãã¯ããã¦ãèªã®åºæ¬å½¢ã§åå¾ã for(int i=0; i<tokens.length; i++){ System.out.println(tokens[i].getBasicString() +"("+tokens[i].getTermInfo()+")"); } }
ä»æ¥ (åè©,å¯è©å¯è½,*,*,*,*,ä»æ¥,ãã§ã¦,ãã§ã¼)
㯠(å©è©,ä¿å©è©,*,*,*,*,ã¯,ã,ã¯)
ãããã (å¯è©,å©è©é¡æ¥ç¶,*,*,*,*,ãããã,ã½ã³ã½ã³,ã½ã³ã½ã³)
è¯ã (形容è©,èªç«,*,*,形容è©ã»ã¢ã¦ãªæ®µ,åºæ¬å½¢,è¯ã,ã¨ã¤,ã¨ã¤)
å¤©æ° (åè©,ä¸è¬,*,*,*,*,天æ°,ãã³ã,ãã³ã)
ã§ã (å©åè©,*,*,*,ç¹æ®ã»ãã¹,åºæ¬å½¢,ã§ã,ãã¹,ãã¹)
ã (å©è©,çµå©è©,*,*,*,*,ã,ã,ã)
ã (è¨å·,å¥ç¹,*,*,*,*,ã,ã,ã)
å³æ¸é¤¨ (åè©,ä¸è¬,*,*,*,*,å³æ¸é¤¨,ãã·ã§ã«ã³,ãã·ã§ã«ã³)
㧠(å©è©,æ ¼å©è©,ä¸è¬,*,*,*,ã§,ã,ã)
éèª (åè©,ä¸è¬,*,*,*,*,éèª,ã¶ãã·,ã¶ãã·)
ã (å©è©,æ ¼å©è©,ä¸è¬,*,*,*,ã,ã²,ã²)
ããã (åè©,èªç«,*,*,äºæ®µã»ã©è¡,é£ç¨ã¿æ¥ç¶,ããã,ã¡ã¯ã,ã¡ã¯ã)
㦠(å©è©,æ¥ç¶å©è©,*,*,*,*,ã¦,ã,ã)
ãã (åè©,éèªç«,*,*,ã«å¤ã»ã¯ã«,å½ä»¤ï½ï½,ãã,ã³ã¨,ã³ã¨)
ã (å©åè©,*,*,*,ä¸å¤åå,åºæ¬å½¢,ã,ã¦,ã¦)
ã (å©è©,å¯å©è©ï¼ä¸¦ç«å©è©ï¼çµå©è©,*,*,*,*,ã,ã«,ã«)
㨠(å©è©,æ ¼å©è©,å¼ç¨,*,*,*,ã¨,ã,ã)
ããã (åè©,èªç«,*,*,äºæ®µã»ã¯è¡ä¿é³ä¾¿,é£ç¨å½¢,ããã,ãªã¢ã¤,ãªã¢ã¤)
ã¾ã (å©åè©,*,*,*,ç¹æ®ã»ãã¹,åºæ¬å½¢,ã¾ã,ãã¹,ãã¹)
ã (è¨å·,å¥ç¹,*,*,*,*,ã,ã,ã)
ãã®ããã«æç« ãå½¢æ ç´ ã«åãããã¨ãã§ãããå½¢æ ç´ ã«é¢ããæ å ±ã¯ä»¥ä¸ã®ãããªãã®ãå©ç¨ã§ããã
Token.getBasicString(); //æ´»ç¨ãåãé¤ããåºæ¬å½¢ãåå¾ Token.getSurface(); //æ´»ç¨ãªã©ããã®ã¾ã¾æ®ãã¦åå¾ Token.getTermInfo(); //åè©ãªã©å½¢æ ç´ ã®æ å ±ããªããã°null
String toString() å½¢æ ç´ (表層表ç¾) String getBasicString() åºæ¬å½¢ String getPos() åè©æ å ±(åè©ãç¨è¨ãªãæ´»ç¨åããªã©) String getPronunciation() çºé³ String getReading() èªã¿ int length() é·ã int start() å½¢æ ç´ ã®å§ã¾ãã®ä½ç½® int end() å½¢æ ç´ ã®çµããã®ä½ç½®
é »åºèªã調ã¹ãæ¹æ³ï¼Hashtableã¯ã©ã¹ãå©ç¨ããå ´å
ä¸è¨ããã°ã©ã ã®
//here
ã®ã¨ããã«ä»¥ä¸ã®ããã°ã©ã ãå ¥ãã¦ã¿ãã
// åºç¾åæ°ï¼å½¢æ ç´ ï¼ Hashtable<String, Integer> frequency = new Hashtable<String, Integer>(); for(Token token : tokens){ if(token.getTermInfo() !=null && (token.getTermInfo().startsWith("åè©"))){ if(frequency.containsKey(token.toString())){ frequency.put(token.toString(), 1 + frequency.get(token.toString())); }else{ frequency.put(token.toString(), 1); } } } for(Map.Entry<String, Integer> x : frequency.entrySet()){ System.out.println(x.getKey() + ":" + x.getValue().toString()); }
å³æ¸é¤¨:1 éèª:1 天æ°:1 ä»æ¥:1
ã¬ããã³ã¹æ¼ç¿ããã°ã«é©ç¨ããã¨ã»ã»ã»
ã¬ããã³ã¹æ¼ç¿ã®ããã°(54人ï¼ã®241ã®è¨äºã«å¯¾ãã¦é »åºèªï¼å½¢æ
ç´ ï¼ãå¤ãé ã«10åé¸ã¶ã
åã
ã®é »åºèªãå«ã¾ããæã®éåã®ä¸ã§é »åºããåèªãåæ§ã«5ååå¾ããã
ããã¨ãäºç¹ã«ãªã£ã¦ããèªãã¾ããã®èªã¨ä¸ç·ã«å©ç¨ãããèªããªã¹ãã¢ããã§ããã
from:2007/04/01 0:00:00 to:2007/05/21 0:00:00
ãæµæ¾{ã西æ¥æ¬ãæ±ãæ±æ¥æ¬ãé岡ãç}
ãããã58/ 138sentence=0.42028984
ã大å¦{ãç¥ã大å¦çãèªè»¢è»ãå¦çãåºãã¤ã³ã¿ã¼ãã§ã¼ã¹}
ãããã93/ 152sentence=0.6118421
ãèªè»¢è»{ãè¦å¶ãéå¦ãé§è¼ªå ´ãç¦æ¢ããã£ã³ãã¹}
ãããã51/ 99sentence=0.5151515
ãè¦å¶{ãå¦çãå対ãæ¹åãç´å¾ã交é}
ãããã28/ 76sentence=0.36842105
ãå¦ç{ãå´ã模æ¬ãåºãå£ä½ãå¦æ ¡ãåå }
ãããã20/ 73sentence=0.2739726
ãããã°{ãææ¥ãæ¥è¨ãæ¼ç¿ã課é¡ãè©ä¾¡ãè«}
ãããã29/ 94sentence=0.30851063
ã西æ¥æ¬{ãæ±æ¥æ¬ãé岡ãçãé¢è¥¿ãé¢æ±ãæ±ãå§}
ãããã43/ 69sentence=0.6231884
ãåº{ã模æ¬ãå£ä½ãåå ãå¦å¤ãåºå¡}
ãããã56/ 90sentence=0.62222224
ãé岡{ãçãå¸ãæ±ãæ±æ¥æ¬ãç·}
ãããã41/ 55sentence=0.74545455
ãåå {ãç¥ããå£ä½ãå¿ è¦ãå½¢æãæ¡ä»¶ãå¤é¨ãæ欲ãèªç¶ãå å«ãå¦å¤ãåæãè°è«ãå§å¡}
ãããã22/ 53sentence=0.41509435899/ 4031sentence[241entry]=0.22302158
ããåç´ãªã¢ã«ã´ãªãºã ã§ãããããçµæãå¾ããã¨ãã§ããããã¬ã¤ã«åºã¦ããããã«è¦ããããã¹ãããã¯ã¼ããè¨å®ãã¦ããããµããåèªãã¯ç¡è¦ãã¦ããã
String[] ng = {"ãã®", "ãã", "ãã", "ãã", "ãã¨", "ç", "ã", "ã®", "ç§", "人", "æè¦", "ï¼", "ãã", "ä½", "ãã", "ãã", "ãã", "ãã¤", "ãã¡", "ï¼", "ãªã", "ã¿ãã", "èªå", "俺", "è ", "ã", "ã«", "ãã", "確ã", "ãª", "ä»", "ãã¨", "é", "åé¡", "ã", "æ°", "ï¼", "ãã¡", "å", "ä¸", "ç¬", "ã¿ã¤ãã«", "ã¨ã", "ä»", "話", "輪", "æ§", "æ¬", "ä»å", "å", "æ¥", "ä¸"};
ãã®ããã«åå¥ã«ä¸è¦ãªåèªãè¨å®ãã¦ããããã«ã¯ãããªããå®éã«ã¯TF-IDFãªã©ã®ã¢ã«ã´ãªãºã ãå©ç¨ãã¦ç¹å¾´çãªèªãåªå çã«å©ç¨ãããã¨ãå¿ è¦ã§ããã
ä¿ãåã
ä¿ãåããªã©ã解æãããã¨ã§ããèªãã©ã®ããã«å©ç¨ããã¦ããããåå®ãããã¨ãã§ããã
ããããè²ã¦ãããããã§éãæã¤ãããããé£ã¹ããããããå¥ããããããé£ã¹ããããããæ¨ã¦ãã
ããããããããªã©ã®åè©ã®ç´å¾ã«ç¾ããåè©ãéè¨ããã°ããããã«å¯¾ãã¦ã§ããåä½ãç¥ããã¨ãã§ããã
é£ã¹ããªã©ã®åè©ã®ç´åã«ç¾ããåè©ãéè¨ããã°ãé£ã¹ããã¨ã®ã§ãããã®ãç¥ããã¨ãã§ããã
ä¿ãåãã調ã¹ãæ¹æ³ï¼Hashtableã¯ã©ã¹ãå©ç¨ããå ´å
ä¸è¨ããã°ã©ã ã®
//here
ã®ã¨ããã«ä»¥ä¸ã®ããã°ã©ã ãå ¥ãã¦ã¿ãã
// åãï¼å½¢æ ç´ ï¼ Hashtable<String, String> target = new Hashtable<String, String>(); // ç´åã®åè© String noun = ""; for(Token token : tokens){ if(token.getTermInfo() !=null && (token.getTermInfo().startsWith("åè©"))){ noun = token.getBasicString(); }else if(token.getTermInfo() !=null && (token.getTermInfo().startsWith("åè©"))){ target.put(noun, token.toString() + "ã" + target.get(noun)); noun =""; } } for(Map.Entry<String, String> x : target.entrySet()){ System.out.println(x.getKey() + ":" + x.getValue().toString()); }
ããã:é£ã¹ããè²ã¦ããnull ããã:æ¨ã¦ããé£ã¹ããå¥ããnull é:æã¤ãnull
å©ç¨äºä¾
twitterã§ä½ãã¦tterï¼http://ryo.hayamin.com/nani/
ä½ãã¦tterã¯ãtwitterã®æ å ±ã使ã£ã¦ãããããã®ã¢ã«ãã¡ãªãã¡ããã®äººãã¡ããã¤ãä½ããã£ã¦ããããªãã¦ãã¨ãæãã¦ããã¾ãã
wkzkãããæ¥ã ä½ããã¦ããã®ããçµ±è¨ãã¦ã¿ãã
çµæï¼ï¼2007/5/11ã23ï¼45ï¼
Twitterããåæããwkzkã®æ¥ã ã®è¡å
æ©ã(2) é²ã(5) æ¸ã(1) æ¸ã(13) å ¥ã(4) å°ã(1) ã°ãã(1) åºã(1) ãã(1) ã¤ãªã(3) è½ã¡ã(1) ããã(2) èã(3) ããã°ã(1) è¨ã(1) æ»ã(2) æãã(2) æ³£ãã(1) é£ã¹ã(6) çµãã(6) ããã(1) è¦ãã(1) åã(2) ããã(3) ããã(1) æºãã(1) é»ã(1) è²·ã(1) 帰ã(7) ã»ã(3) ä½ãã(1) è¡ã(3) åã(2) æã(4) èªãã(1) æ¥ã(1) ãã(1) ä»»ãã(1) èµ°ã(1) å¿ãã(3) ã¸ã(1) å ¥ãã(1) æ¸ãã(1) ç¥ã(1) åãã(1) ããã(1) éã«åã(1) æ¸ãç´ã(1) ãµãã(1) é²ãã(1) è¦ã(3) é£ã(1) ã ããã(1) å¤ãã(1) æãã(1) ã¯ãã(1) 飲ã(2) æ¸ãè¾¼ã(1) é£ã(3) ãã(5) æ°ã¥ã(1) èªã(3) å¯ã(2) ä½ã(2) èãã(4) èµ·ãã(1) ãã¤(1) å§ã¾ã(1) ãªã(4) è¡ã(5)
Twitterããåæããwkzkãæ¥ã æ°ã«ãã¦ããã³ã
次(1) å¤(1) ããã°ã©ã (2) OS(1) èªä¸»(1) æ績(1) ãã¿(2) 帯(1) éå§(1) 説æ(1) æ(2) æ³å(1) å(1) ä»å¾(2) é°å²æ°(1) ãã§ãã¯(2) æ¬æ°(1) å¯è½(1) å®äº(1) äºæ (1) æ°(1) 奥(1) ã½ã¼ã¹(2) å¾æ¥(1) DS(1) ã¢ãããã¼ã(1) ãã¹ã(5) ééã(1) æ ¼é(1) ãµã¼ãã¼(1) Linux(1) ç¯å²(1) install(1) Web(1) æºå(1) é¸(1) 室(1) 親(2) æé¤(1) Wiki(1) ã³ã(1) ä¹(1) ã¼ã(5) ä¿®æ£(1) 俺(1) æ¹è¯(1) å±(1) æ(1) ã«(3) ãã¼ãã¼ã(1) å æ°(1) 対(1) ä¼(1) y(1) åå¼·(4) ã¯ã©ã¹(1) ç(1) SQL(1) éè¦(1) 絶æ(1) orz(6) çºè¡(1) è«(1) www(3) HP(1) 移å(1) åå(1) å¤(2) ä¸æ(1) åæ(1) 6(2) 話(1) 失æ(1) é å»(1) ç½ (1) ã¨ã³ããªã¼(1) å人(2) è奮(1) å®å®¶(1) ä½(1) ã¸ã¥ã¼ã¹(1) æ°ã(1) åå(1) ã¢ã¸ã¥ã¼ã«(1) 復活(1) ãã©ãã¯ããã¯(1) åå (1) ãã³ãã¬(2) ã·ã³ãã«(1) å(3) mixi(2) ç«ææ¥(1) ãã(2) 帰é(1) æ§ç¯(2) ä¸æ(1) åè§(1) CSS(2) ä½æ¥(2) ä½æ(1) 証æ(1) æ¸(4) 詳細(1) ä¿(1) 大å¦(1) æ§(1) ã¡ã¼ã«(4) 家(1) ä»æ§(2) ã¼(1) è¿ä¿¡(1) make(2) å¨ã(1) RSS(2) e(1) æ¹é(1) å ±å(1) è±èª(1) æè²(1) çµäº(5) 飯(4) é©ç¨(1) ã¹ãã¼ã¹(1) ã»ã³ã¹(1) é²(1) ãã¡ã¤ã«(1) ã¹ã±ã¸ã¥ã¼ã«(1) æ¥èª(1) æ©(1) åé(1) PC(1) ä¼ç¤¾(1) å¦ç(2) æ¥å(1) ããã°ã©ãã³ã°(1) å¶é(1) å®æ(1) è¿·æ(1) å®è£ (1) å¦æ ¡(1) æ¸é¡(1) å(1) ã¤ã³ã¹ãã¼ã«(1) ç¶ç¶(1) ä¾å¤(1)
é¢é£
æ©æ¢°ç¿»è¨³
NIST 2006 Machine Translation Evaluation Official Results
ä¸å½èªã¨ã¢ã©ãã¢èªã®æç« ãè±è¨³ããã½ããã¦ã¨ã¢ã®ç«¶æä¼ã«ã¯ã40ã® ããã°ã©ã ãåå ãã¦ãã¾ããããã®ãã¡ã®ä¸ã¤ãé¤ãã¦ãGoogleã¯å ¨ã¦ã® 課é¡ã§é¦ä½ãããã¯åçé¦ä½ã¨ããæ績ãåãã¾ããã競æã¯ã人éã®ç¿»è¨³è éã«ãã£ã¦ä½è£½ãããåèææ¸ã¨ãããã°ã©ã ãåºããçµæãã©ãã ãä¸è´ã㦠ããã®ããã¨ããäºãåºæºã«æ¡ç¹ããã¦ãã¾ãã
Googleã®ããã°ã©ã ãä½æãããã¼ã ã«ã¯ãä¸å½èªã話ã人ãã¢ã©ãã¢èªã 話ã人ãããªãããã§ããå½¼çã¯ç´ç²ã«ããã¢ã©ãã¢æåãããã¯æ¼¢åã®æå åãã¨ãããã«ç¸å½ããè±èªã®æååããä¸è´ããããã¨ãå¦ã¶ããã°ã©ã ã ä½è£½ããããã§ããããå¤ãã®ä¾æãã¹ããã¯ãããã®ã«ä¼´ããã翻訳ãã® æ£ç¢ºæ§ã¯é«ããªãã¾ãã
çµ±è¨çææ³ã«ãã翻訳ã«ã¯ã³ã¼ãã¹ãä¸å¯æ¬ ã§å½¢æ
ç´ è§£æãå©ç¨ããã¦ããã¯ãã
ã°ã¼ã°ã«æ§ã®FAQï¼http://www.google.com/intl/ja/help/faq_translation.html
ãã¼ã±ãã£ã³ã°
ãããä¸ã§ã®è©å¤ãå¤å®ãããã¸ãã£ã/ãã¬ãã£ã(p/n)å¤å®æè¡ãå©ç¨ãããµã¼ãã¹ãæè¿å¢ãã¦ãã¦ãããp/nå¤å®æè¡ã¯ãæç« ãå½¢æ ç´ è§£æããä¸ã§ãåè©éã®ä¿ãåããèæ ®ãã¤ã¤ããã対象èªã«å¯¾ããå±æ§å¤ã¨ãã®è©ä¾¡å¤ã®çµãæ½åºããæè¡ã§ãããã¬ã¹ãã©ã³ã®å±æ§å¤ã¨ãã¦ã¯ãå³ãå¤æ®µãé°å²æ°ãç«å°ãã¡ãã¥ã¼ãªã©ããããããè©ä¾¡å¤ã¨ãã¦ã¯ããããæªããã¾ããããããããå®ããè±å¯ãªã©ãããããããæ¥æ¬èªã§ã¯å¾ã ã«ãã¦ä¸»èªãçç¥ãããå ´åãå¤ãããæèããæãèªç¶ãªä¸»èªãè£ãææ³ã使ãããã
SPSSç
æ¦è¦
KH Coderã¨ã¯ãå 容åæï¼è¨éããã¹ãåæï¼ãããã¯ããã¹ããã¤ãã³ã°ã®ããã®ããªã¼ã½ããã¦ã§ã¢ã§ããæ°èè¨äºã質åç´èª¿æ»ã«ãããèªç±åçé ç®ãã¤ã³ã¿ãã¥ã¼è¨é²ãªã©ã社ä¼èª¿æ»ã«ãã£ã¦å¾ãããæ§ã ãªæ¥æ¬èªããã¹ãåãã¼ã¿ãè¨éçã«åæããããã«è£½ä½ããã¾ããã