èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 ·...

5
29 II +1 èúĉðöÞćµĂéüãĉüiGBÇc CbF }}}z óìðĆĉàýïÙØL 9 ČYJM$č ĂéüãĉüÃȧøĄÚÿĉ²n;ÆÔ» ÁØàæĀćÕÒ·ÃÂe[ºÒãĉü¬Ҩ ƧØàæĀćstÇ>K¸ÆÏÑ(@²P ¸Ó§¼ÇØàæĀćÕÃÒ½ÍÇI!ÆÅÒ0 ²ĂéüãĉüÂÈŸÓÁÒ¨ gÇçþćăÇôïßãĉüÇiGÆȧ¼ ÇçþćăµÆA¹½iGB²¬Ò¨¹± ¹§ĂéüãĉüÕiGºÒ½ÍÆȧ£¦ ÅÄ ÇãĉüÝćçćÕD¹Á±ÐiGÕ[ÔÅ µÓÉÅÐŨ 8JMÂȧĂéüãĉüÇiGÆA¹½i GBÇ1:Õ¹§iGíĉăÇcÕ[Å¿½¨ ĂéüãĉüÆȧãĉüùÁÆ|ÀÇ^Q ²¬Ò¨øĄÚÿĉ²ãĉüÕøĄÚºÒóÇI !ÃÅÒ^Qsn;ĈI!ÃÅÒØòýĉæĀćt§N .+Ç^Qsèäاäćù3§"t§ãĉüÇe ['ÆÏ¿ÁØòýĉæĀćÅÄÂøĄÚÿĉÕ; ¹Ë»ÒÝćëĉîÚýćðÇ^Q¬Ҩ 8JMÂȧĂéüãĉüÇI!ÃÅÒØòýĉ æĀćÇa"Õù½iGBÕ1:ºÒ¨ %*) êöðÛÜØÇ#]ÆÈ £¦ ÕD¹½¨£¦ ÈSiGBÕZ¹½ãĉüÝćçć¬ѧ =©ÅøāìðöÞĉüÆ%*¹ÁÒ¨£¦ Âãĉüß÷çÜàðÃÉÓÒ=©ÅØÚîüÕ hT¹Á§Ċ¼Çãĉüß÷çÜàðÇ/Õ `dºÒ¨Ë½§W5ÇEÕa"ºÒgÂȧ ÇEö×ÚăÕ-(ºÒ½ÍÆ £¥v Â`d¸Ó½øāáÚćÕ&¹ÁÒ¨ £¦ ÆÏÑ,¹½øąçÜàðÕ µÆ ôăñ¹Á§ôăñ¸Ó½ øąçÜàðÕ Â µÆôăñºÒ·ÃÂ#]¹Á Ò¨ zÈiGíĉăÇa"EmÕ\º¨··Âã ĉüøĄÚ4ÇĄĉćsØÚäćÇ?ÓÒftÇ3§ W5§ĄĉćÇèëĉðĈåĉăTOÇa"Õ 3ĈñāìáċñąìøOÇ2Âa"ºÒ ·Ã²Â³Ò¨ÝïÙìðÕ[®·Ã¯ɧ{Ç Ï®ÅĂéüãĉüÕ,ºÒ·Ã²Â³Ò¨ ,³ÒĂéüãĉüȧ4jHÅoÆÏ Ñ=+²qÃ_l´§AÆ<^Â/¶½Ý ćëĉîÚýćð+Ç^QÆk¹ÁÈÊÃÖÄa" ³Ũ ¹±¹§ ÇØøĂâĉæĀćÇÌÂiGºÒ ·Ã²XŽÍøąáāûćáÇ)^²Å´§ø ąáāûćá7RpVΧĂéüãĉüiGÆ°µ ÒøąðëÚõćáÆÈ6D¾ÃU¯ÐÓÒ¨ z ª«u ££ xxw¡¢wx{yz~xzzx{zx ¤£¦vv ¡w£ { ª«u££ xx¡wxz{|yx , %*) "'!$(&#(

Transcript of èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 ·...

Page 1: èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 · 語群と比較する。プロセス2 で拾いきれなかった 大幅な文字数の増減に対応する。

29 II

���+1

èúĉðöÞć�µĂéüãĉüiGB�Çc�r

CbF�r}}}z��r r óìðĆĉàýïÙØ Lr r �9r �ČY�JM$čr

r

���� ��

ĂéüãĉüÃȧøĄÚÿĉ²n;Æ�Ô»

ÁØàæĀćÕ�Ò·ÃÂe[ºÒãĉü¬Ҩ

�ƧØàæĀćs��tÇ>K¸ÆÏÑ(@²�P

¸Ó§¼ÇØàæĀćÕÃÒ½ÍÇI!ÆÅÒ0�

²ĂéüãĉüÂÈŸÓÁ­Ò¨r

�gÇçþćăÇôïßãĉüÇiGÆȧ¼

Ççþćă�µÆA�¹½iGB�²¬Ò¨¹±

¹§ĂéüãĉüÕiGºÒ½ÍÆȧ���£¦ ÅÄ

ÇãĉüÝćçćÕ�D¹Á�±ÐiGÕ[ÔÅ

µÓÉÅÐÅ­¨r

8JMÂȧĂéüãĉüÇiGÆA�¹½i

GB�Ç1:Õ¹§iGíĉăÇc�Õ[Å¿½¨r

r

�����

ĂéüãĉüÆȧãĉüùÁ�Æ|ÀÇ^Q

²¬Ò¨øĄÚÿĉ²ãĉüÕøĄÚºÒóÇI

!ÃÅÒ^Qsn;ĈI!ÃÅÒØòýĉæĀćt§N

.+Ç^Qsèäاäćù3§�"t§ãĉüÇe

['ÆÏ¿ÁØòýĉæĀćÅÄÂøĄÚÿĉÕ;

¹Ë»ÒÝćëĉîÚýćðÇ^Q¬Ҩr

8JMÂȧĂéüãĉüÇI!ÃÅÒØòýĉ

æĀćÇa"Õ�ù½iGB�Õ1:ºÒ¨r

r

��%*)����

êöðÛÜØÇ#]ÆÈ���£¦Õ�D¹½¨���£¦

ÈS�iGB�Õ Z¹½ãĉüÝćçć¬ѧ

=©ÅøāìðöÞĉüÆ%*¹Á­Ò¨���£¦ �

Âãĉüß÷çÜàðÃ�ÉÓÒ=©ÅØÚîüÕ

hT¹Á§�Ċ¼Çãĉüß÷çÜàðÇ/�Õ

`dºÒ¨Ë½§W5ÇE�Õa"ºÒg�Âȧ

��� ÇE�ö×ÚăÕ-(ºÒ½ÍÆ �����£�¥�v

� Â`d¸Ó½øāáÚćÕ&�¹Á­Ò¨r

���£¦ ÆÏÑ�,¹½øąçÜàðÕ ��� �µÆ

ôăñ¹Á§ôăñ¸Ó½ ����� øąçÜàðÕ

����� � ��� �µÆôăñºÒ·ÃÂ#]¹Á

­Ò¨r

�zÈiGíĉăÇa"EmÕ\º¨··Âã

ĉüøĄÚ4ÇĄĉćsØÚäćÇ?ÓÒftÇ3§

W5§ĄĉćÇèëĉðĈåĉă�TOÇa"Õ

3��ĈñāìáċñąìøOÇ2�Âa"ºÒ

·Ã²Â³Ò¨ÝïÙìðÕ[®·ÃÂ�¯É§�{Ç

Ï®ÅĂéüãĉüÕ�,ºÒ·Ã²Â³Ò¨r

r

r

r r r r r r

r

r

r r r r r

r

r

r

r

r

r

r r

r

r

r

r

r

r

r

r

���� �

�,³ÒĂéüãĉüȧ4jHÅ�oÆÏ

Ñ�=+²q­Ã_­l´§AÆ<^Â/¶½Ý

ćëĉîÚýćð+Ç^QÆk¹ÁÈÊÃÖÄa"

³ŭ¨r

¹±¹§��� ÇØøĂâĉæĀćÇÌÂiGºÒ

·Ã²�XŽÍøąáāûćáÇ)^²Å´§ø

ąáāûćá7RpVΧĂéüãĉüiGÆ°µ

ÒøąðëÚõćáÆÈ6D¾ÃU¯ÐÓÒ¨r

r

� ��

�z�rª�������«ur

��££ �xx����w����¡�����¢w���x{yz~xzzx{zx

¤��£¦v�����vr ����¡w�£���r

�{� ª�������«u��££ �xx���¡���w���xz{|yx�r

�,����%*)�����

����"'!$(��&#(��

Page 2: èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 · 語群と比較する。プロセス2 で拾いきれなかった 大幅な文字数の増減に対応する。

29 II

���;��

"�� �., ��# &�%�$!"� , �,�0�

"CYF�` kklgil` ÀãÑßÊÁãÒÉËÑÛ"J` >`+�` åR�HL$æ`

`

�� -(1+�

` s{�~�r�{���} ° �{}vw D®�·º¥ p ¯ÄÞ

Ö¿ÐÃÞÀ×Þߪ�¸��vw�ª���£¹�«�

ª�­��²¥��vw �ª s{�~�r�{���} ¯¶�®

��ª�¹ÞÀ×Þß°&­��ØâÄÞÚãÄ�"

P�V� ¥�s{�~�r�{���} ½�D ¥ØâÄÞ

Û½ �vw �ª�B¡¹¯°] ��8HLª°�

�vw �ª�� s{�~�r�{���} ½�¸��{}vw @

s{�~�r�{���} ª�§¥ØâÄÞÛÆäÓ½& 5

�2�¹¦�ª��vw �ª�Bª�¹¶�® ¥�`

`

����# &�%�$!"� ,��* ���

` BA¯ s{�~�r�{���} ¯#U½� h ®I¡�

s{�~�r�{���} ° p « v|��}����dp ª5�º©�

¸��)½TI¡¹ÇäÔas�q����{���b«�1E

½0I¡¹ÃÞÀ¾ãÒas�p�����b¯��� i ¨®

�º©�¹�v|��}����dp ¯ rxt ØâÄÞÛ°

#S)'¯ÕÐÅäÊ�«ÙàÏËáÐÓ%.�

,Wª�¹�¤¯¥³�ÝäÈØâÄÞÛ°�Øâ

ÍË«­§©�¹�²¥�s{�~�r�{���} ª_O

®�D ©�¹ÃÞË` auwp����}���� ­¬b` ¯�

6«­¹=Q��vw¯ÞÀ×Þß®�[!�£¢�

=:G®ÆäÓK;¡¹¦�ª°�Bª�­��`

� he`s{�~�r�{���} ¯#U`

`

��"�� �. ��# &�%�$!"� 2 ��

` 8HLªV� ¥ÞÀ×Þ߯#U½� i ®I

¡�8ÞÀ×Þß° w���� ªV� ©�¸�pªXZ

�º¥ s{�~�r�{���} ¯ÎäËÆäÓ° w���� ±�

2¡¹,W��¹�`

`

� ie`�vw @ s{�~�r�{���} ¯#U`

`

�� ��835892��')6:487�

` 8ÞÀ×Þß½�D �s{�~�r�{���} ¯ÂÀÓyhz

¯�[¯ÇãØàØâÄÞÛ½ �vw �±K; �

¤¯#SN9½� j ®I¡�`

` ` `� je`�vw �±K; ¥ØâÄÞÛ#S�`

`

�� /*1�

` 8ÞÀ×Þß½D�¹�«ª�s{�~�r�{���} «�

M­=Q½��vw�ª�B¡¹�«��Q«­§¥�

��V� ¥ÞÀ×Þß®°�\4)µ��3 «

�§¥�8G­��®���^<¯�C=Q´

¼§©�¹� � �áÀÜä­¬¯�[¯=Q

�7¦#Uª�©�­�¥³��*/( ©��

,W��¹¦»��`

`

����

yhz` R�`�-c`s{�~�`r�{���} ÝäÈäÌÂÀÓc`

����off���n{e|����|�e��e��f�����{�{fs�f���

~�}��f���~�gemke�~�`aighnfifm`�?be`

Page 3: èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 · 語群と比較する。プロセス2 で拾いきれなかった 大幅な文字数の増減に対応する。

平成 29 年度 コンピュータ理工学特別研究 II 報告書抄録 京都産業大学 コンピュータ理工学部

荻原研-3

音声認識を用いた百人一首暗唱用

アプリケーションの開発 学生証番号 445188 ネットワークメディア学科 藤井 楽人 (荻原研究室)

1 はじめに

ゲームや学習用アプリではユーザに選択肢を

選ばせる方法を採用していることが多い。この方

法ではアプリの自由度が少なく、また、学習目的と

しても効果が期待できない。

本研究では、音声入力をインタラクションの手段

として活用する学習アプリの実装について検討を

行なった。

2 概要

今回は暗唱の一例として、百人一首を用いた。

ユーザには歌番号を選択してもらい、選択された

和歌の上の句を画面上に表示する。その下の句

を解答として発話してもらい、その内容を判定した

正誤評価を出力する。

3 実験

今回は入力に関していくつか課題がある。まず、

今回利用した音声認識 API は複数ある言語から

決められた一つの言語を話されることを前提とし

ているため、古文のような特殊な語彙は認識しづ

らい。

また、単語を認識出来たとしても助詞の一部が

異なる場合があり、ユーザの入力を 100%等しく受

け取ることは困難である。そのため、その誤認識を

考慮した上で正しく判定するため以下の 3つの判

定プロセスを実装した。

[プロセス-1] 入力と解答群との単純比較

[プロセス-2] 1文字ずつの列として前後の文字も

参照し比較する。文字数の増減に対応できる。

[プロセス-3] 単語ごとに分け、解答に含まれる単

語群と比較する。プロセス 2 で拾いきれなかった

大幅な文字数の増減に対応する。

4 評価

以上の実装により、ほとんどの入力パターンで

正しい発話に対して正答であるという評価を下す

ことが可能となった。スピーチやプレゼンテーショ

ンの内容暗記としては概ね有用に利用出来るで

あろう。

ただしまだ曖昧な誤答というパターンに対して

は正答であるという評価を下してしまうことが起き

てしまったため、より厳密な一致度合いの判定値

の調整や別の判定プロセスの追加が必要である

と感じた。

5 まとめ

今回は使用目的を一つに絞ったが、ユーザに

判定内容を設定してもらえるようにすることで上記

のような話すことのテストツールとして活用できる

のでそのような機能の追加、より複雑な判定基準

の設定が今後の課題である。

参考文献

[1]Forrest Smith: Sublime Textの「あいまい一致

をリバースエンジニアリング」

http://postd.cc/reverse-engineering-sublime-te

xt-s-fuzzy-match/ (2016)

Page 4: èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 · 語群と比較する。プロセス2 で拾いきれなかった 大幅な文字数の増減に対応する。

平成29年度 コンピュータ理工学特別研究II 報告書抄録                   京都産業大学 コンピュータ理工学部 

Reactive ProgrammingのMVCへの適用に関する考察

学生証番号 445502 コンピュータサイエンス学科 渡辺 大稀 (荻原研究室)

1 はじめに

 リアクティブプログラミングはインタラクティブなプログラムの実装に有効なプログラミングパラダイムである。リアクティブプログラミングの具体的な手法である関数型リアクティブプログラミングがGUIなどの設計に用いられるMVCアーキテクチャにおいて適用されることで、どのようなメリットとデメリットが存在するのか実際にFRPのライブラリを用いてプログラミングし調査する。

2 仕様 

 大学の履修登録のような機能をもつアプリケーションを開発する。仕様は次のように定義する。

● 学生の情報の提示。

● 講義に関する選択メニューの設置

● 現在の単位数の提示

● 履修登録後の単位数の提示

● 履修登録を確定するボタンを設置

3 実装

 仕様を満たすアプリケーションの完成図を下記に示す。

 図1:アプリケーションの完成図

 MVCアーキテクチャのModelとViewの関係はObserverパターンで実装される。FRPはObserverパターンの問題を解決した代替手法として用いることができる。

図2:イベントのロジック

4 評価

 一度FRPシステムのデータ型に変換することができれば、その後そのデータの状態を気にする必要がなくなる。そのため、解決すべき問題だけを考えてプログラミングをすることができる。

 デメリットは本研究で取り扱った仕様のプログラムでは見えなかった。アニメーションやゲームなどのさらにインタラクティブ性の高い仕様のプログラム開発に用いた場合に見えてくるのかもしれない。

5 まとめ

 FRPを用いることでObserverパターンの問題を解決することができる。さらに状態を管理する必要がないので問題空間でプログラミングすることができる。よって、MVCアーキテクチャにおいてModelとViewの関係をプログラミングする手法として、関数型リアクティブプログラミングが有効である。

 

参考文献

1) Stephen Blackheath, Anthony Jones

(2017) 『関数型リアクティブプログラミング』翔泳社

2) 「FRP explanation using

reactive-banana」<https://wiki.haskell.org/FRP_explanat

ion_using_reactive-banana>

荻原研-4

Page 5: èú ðöÞ µ éüã üiGB Çc rogihara/lab/H29_ogihara_labo.pdf · 2018-03-22 · 語群と比較する。プロセス2 で拾いきれなかった 大幅な文字数の増減に対応する。

29 II

����5

事前学習の結果を反映できるプレゼンテーションツールの提案 1h�m �¨©ª¥¥«� ÿĝďėĞĆĀúûĝă1u� �|���� ğ��rv4Ġ�

�1 はじめに ĒĜĄĝĉĞāĘĝĈĞěèÌ��ÓòéA�

÷�×�ô_�÷�ó õãÌ�P$é@,�H

÷3fÝôĈĞěÔG\ÚõãÏô´¦µÍØéñÐ

ç_�êÌøüĉùđęĞčĝý÷êÜîÌ01ð

�[éF^äU�è�jäÕôå�ÑòõôÍ�

WrväêØéBZ÷ïåèÌ01é�}xä

1hé��1~÷�ÚÞôåÏÐ�cÓòÌ�

��é�Oè6ÝôA�ðÌg�9éDI÷p

oåÛà_�E:÷G\ÝôÍ�

2 機能の概要 <YrvéĒĜĄĝĉĞāĘĝĈĞěêøĝþ

Ğċ_�åÌßé{ZéýęĐ�é_�÷�Ñã

ÏôÍÛÓÛÌØõòé_�êÌÎòÓÜîjAÛ

à7jéēĞĂ÷�sÛàQcäÛÓ�jäÕ

çÏÍØéàîÌ�O��èöàô��Óòé�

�oçA�ð�)÷DIÝôpoèê��äê

çÓáàÍ�

WrväêÌ���Óò��è�×åáà@

,÷ÎòÓÜîĊĞĆåÛã�ÑãÒÕÌĒĜĄĝ

ĉĞāĘĝÔ��Ýôéè"öÞãÌßé@,÷

n��è�sÝôĈĞě÷G\ÝôÍßéēĞ

Ăè6Ýô@,é�N÷�qÝô_�Ì@,é

�5÷�åÛã�sÝô_�éġâ÷��ÛàÍ

3�èê ®¶Ê¶²¸Æ¾ÅÈ ÷�jÛà´§µ´¨µÍ�

3 Notify 機能 ��è�×�áà!ăęúČè6ÝôA�÷í

åîÌn�é�ÌăęúČÙåè�N÷�qÝô_

�äÎôÍăęúČéēĞĂ÷�óTÑàåÕèÌß

éēĞĂè6Ýô@,é�NÔn���él�

�è�sÚõôğ+¦ĠÍ�

Øõèñón��êÌ���ÓòéA�èĚø

ěĆúĕä6?äÕôÍíàÌēĞĂÙåé�q�

NéëòâÕçæ÷Ì�OéóPé]�XOè

äÕôåV;ÚõôÍ�

4 Tabulator 機能 �Oè6ÝôA�÷��è�×�óÌ�åÛã

�sÝô_�äÎôğ+§ĠÍæéyCè6ÝôA

�Ó÷�ÝēĞĂm ÌA��5Ìa#Ì1h

m çæé�pÔÎóÌ�pê���è�bÝô

@,`wä.ðÝØåïäÕôÍ+ġéĖčėĞä

�2÷/R��äÎôÍ�

Øõèñón��êēĞĂ��ä��oçA

�ð���ég�9÷DIÔäÕôÍ�êąĞċ

ï��äÎôàîÌæé1hÔñÖA�÷ÛãÖõ

ãÏôÓçæ÷qôØåÔäÕôĖĚćċïÎôÍ�

5 まとめ WrväE:Ûàġâé_�èñóÌ��Óò

é��oç@,÷=ôØåÔ��èçôÍF^ä

�jÛà-"ÌM(�Óòê1hÔ�ÓóèÖÏ

c÷DIÛðÝÖçôìÓÌ1hè6Ûã��1

~÷ÝÕáÓ×åçôØåÔV;äÕôÍ�

feäêÌWĈĞě��Ô��Óòé@,÷

�×�ôñÐèçáãÏôàîÌĀĞĎäĊĞĆ÷

zgäÕôñÐçL*Ô>�äÎôÍ�

参考文献 ´¦µ�'kt%¬��P$ÿĔėčþĞ

āĘĝÔ��çĒĜĄĝĉĞāĘĝ

KJĈĞěÌ��i^01ÿĝď

ėĞĆg81�d�rv,&S

 §¥¦ª¡�

´§µ�®¶¾Âº�±¾ÁÁÄƶ¬�¯ÄȾ»Ë£¿Ç¢�½ÈÈÅǬ�

¤¤¼¾È½É·£¸Ä¤¿Å¾ÁÁÄƶ¤ÃÄȾ»Ë¿Ç�

´¨µ�°Á¾�­ÄÁÀºÆ¹¬�³¶·ÉÁ¶ÈÄÆ¢�½ÈÈÅǬ�

¤¤¼¾È½É·£¸Ä¤ÄÁ¾»ÄÁÀºÆ¹¤È¶·ÉÁ¶ÈÄÆ�

図 1 Notify 機能の利用時

図2 Tabulator 機能の表示例