[dl輪読会]svd-softmax: fast softmax approximation on large vocabulary neural networks

25
DEEP LEARNING JP [DL Papers] SVD-Softmax: Fast Softmax Approximation on Large Vocabulary Neural Networks Koichiro Tamura, Matsuo Lab http://deeplearning.jp/

Upload: deep-learning-jp

Post on 21-Jan-2018

359 views

Category:

Technology


0 download

TRANSCRIPT

DEEP LEARNING JP[DL Papers]

SVD-Softmax: Fast Softmax Approximation on LargeVocabulary Neural Networks

KoichiroTamura,MatsuoLab

http://deeplearning.jp/

PAPER INFORMATION•

• �gcV��� FVW�����W��OS �SS����Ya�� 6V�W�������V� ������J��g��� Fc��

• A�CF )�(.

• ��v�����������r��Y�v�����r��������a�T��Of�������

2

Neural Language Model• ASc�OZ��O��cO�S���RSZ�r����������–

– ����– ����

• �u��“�������~�������~rA��~��������”“�rz�����~��(% G�OW��a�S���r�������������

• EAA���r6AA����������������”�����– FS_)FS_– G�O�aT���S� 4��S��W���Wa�4ZZ���c�ASSR�

)% ����������������a�T��Of���• ���������r��������

3

outline(% �����RcQ�W��)% ESZO�SR����Y*% FI7�a�T��Of�% 8f�S�W�S����SacZ�a,% 7WaQcaaW��

4

Introduction• ASc�OZ��S����Y�r�O��cO�S���RSZW�� �����������“�����“

��–• ���������”“�r�����������”���������~��

���– ���������a�T��Of���r�����I d�QOPcZO�g�aWhS���Sf��������

���������sof$%&' () = exp(()) ∑ exp(())2

34

– �����a�T��Of���mTcZZ�a�T��Ofm”��• ���I�r��–�*�����,�������

– “�“r�����–��������������u,��� ��”���PSO��aWhSr,�(������

5

Introduction• �����r�–����–��z���a�T��Of������

– ASc�OZ��S����Y����rZ�aa��������~��– ��TcZZ�a�T��Of�����r�����a�T��Of�����– ��OW�W����W�S��������������rSdOZcO�W���Q���ZSfW�g�������”~�

�• �������aW��cZO��dOZcS�RSQ����aW�W�� FI7� ��������• ����r�����

(% G���Y����Ra���������r����������a�T��Of�����

)% *������v����”)������rFI7�a�T��Of�����*% a�T��Of��������r������������������”��

�–�������”���

6

Related work• ���ra�T��Of������������������������r��

��OW�W���a�S����������������(% FO��ZSR�POaSR�O����fW�O�W��a)% �WS�O�QVWQOZ�a�T��Of*% FSZT�����OZWhO�W���O����OQVSa�% 7WTTS�S��WO�SR�a�T��Of

• “�“�������r����Y����Ra�����–���r����������~��

7

Related work(% FO��ZSR�POaSR�O����fW�O�W��as

(% ������O�QS�aO��ZW��� �F�����������– ��aVcO �S��W����SO��F�POa�WS� FS��QOZ��S��OZ%���DcWQY���OW�W����T����POPWZWa�WQ��Sc�OZ��S�a�Pg�

W�����O�QS�aO��ZW��%�m�W��4�FG4GF��)��*%–

L677 ', 9 = − log exp(=>(', 9)) ∑ exp(=>(', 9))23

4

⇔ L677 ', 9 = −=> ', 9 + log A B A B = ∑ =>(', 9)23

– ����������M�����~���~���s

CL677 ', 9 = −C=> ', 9 + C log A B

– C log A B ������”�r��������s– I����rG�����������“r

C log A B =1EFC=> ', 9G

H

G– �����������”����~r��C=> ', 9G �����������M�������~��– ���p����I(9)���������������r����������”�������������

���x����������CE��((�����V���a������%aZWRSaVO�S%�S���O�ac�ZOP����Z((�./)--))/8

Related work(% FO��ZSR�POaSR�O����fW�O�W��a

)% A�WaS�Q����OQ�WdS�Sa�W�O�W�� A68�– 4�R�Wg ��WV O�R��SS�JVgS GSV���4�TOa��O�R�aW��ZS�OZ���W�V��T�����OW�W����Sc�OZ����POPWZWa�WQ�ZO��cO�S�

��RSZa�m�O��Wd ��S��W���O��Wd�()�-%-�)-��)�()%–– J 9 = exp(=> ', 9 + K)”�����r∑J 9 = 12

2 ��–�������Q�����”~�����– “�“rK → ∞������������·�“����r����������v�����������r�

�����������”����– �����_������������”r���v����(���������r��� RWaQ�W�W�O�������

������ :4A����������AQS�Z�aa= − log N = 1 9 − ∑ logO(N = 0|9R)2

SR∈UV

– M2(”“�����“�“�·��r ���Q����������������r��������������~��–�r�����������

– GS�a��TZ������~��������������

9

Related work(% FO��ZSR�POaSR�O����fW�O�W��a

*% AS�O�WdS�aO��ZW��– G��Oa��WY�Z�d���ZgO�Fc�aYSdS����OW�6VS���:�S��F�6���OR���O�R��STT�7SO����7Wa��WPc�SR��S��S� aS��O�W��a

�T���Ra O�R��V�OaSa�O�R��VSW��Q����aW�W��OZW�g�m�W��4RdO�QSa�W��ASc�OZ���T���O�W���C��QSaaW���Fga�S�a��)�(*����%�*(((k*((0%

– A86������������������é“r�����“–���% �ZOQY�c�

– FVWVO� �W��FIA�IWaV�O�O�VO���AORO�Vc� FO�WaV���WQVOSZ���4�RS�a����O�R�C�ORSS��7cPSg����ZOQY�c���F�SSRW���c���SQc��S����Sc�OZ��S����Y�ZO��cO�S���RSZa��W�V�dS�g�ZO��S�d�QOPcZO�� WSa�m�O��Wd ��S��W���O��Wd�(,((%�-0�0��)�(,%

– A86���������Y�����NV = 9RW, , , 9R) �g�������

• �������������������������”��“�����~r������v������”������

10

Related work)% �WS�O�QVWQOZ�a�T��Of

– 9�SRS�WQ����W��O�R���aVcO �S��W�����WS�O�QVWQOZ����POPWZWa�WQ��Sc�OZ��S����Y�ZO��cO�S���RSZ�m�W��4�FG4GF%�6W�SaSS���)��,��d�Z%�,����%�)�-k),)%

– �����������r�������������é���”�r��������������������������r����~�~�

– ������������������

O 9 = XJ(YZ 9 , [\ 9 )](S)

Z^W

– ������~·–���r����v��������–·�������������~������r���a�T��Of����~����

– :CH���������������“�

11

Related work*% FSZT�����OZWhO�W���O����OQVSa

• �OQ�P�7SdZW���EOPWV MPWP��MV���_WO�� �cO����GV��Oa��O�O���EWQVO�R�FQV�O��h��O�R���V���OYV�cZ���9Oa��O�R���Pca���Sc�OZ��S����Y���W�����RSZa�T���a�O�Wa�WQOZ��OQVW�S���O�aZO�W���m�W��46�� (�%�6W�SaSS���)�(�����%�(*.�k(*/�%

• �OQ�P�4�R�SOa���OfW��EOPW��dWQV���WQVOSZ������RO���O�R�7O���ZSW��������VS�OQQc�OQg��T�aSZT�����OZWhSR�Z���ZW�SO����RSZa�m�W��4RdO�QSa�W��ASc�OZ���T���O�W���C��QSaaW���Fga�S�a��)�(,����%�(./*k(.0(%

• ��������M�(��������Z�aa����������“–��• ����r��~�������”r��Y�v������”�������v����

����~��”����~��

12

Related work�% 7WTTS�S��WO�SR�a�T��Of

– JSZW� 6VS���7OdWR�:�O��WS���O�R��WQVOSZ�4cZW���F��O�S�WSa�T�����OW�W���ZO��S�d�QOPcZO�g��Sc�OZ�ZO��cO�S���RSZa�m�O��Wd ��S��W���O��Wd�(,()%��0�-��)�(,%

– F�T��Of����������������������x����������������r�O�S��v�������������y

– ��v����������������~�����–�r���~��”�·–��~��

13

SVD-softmax• a�T��Of���� �����������)����

(% ���������R��������I���

)% F�T��Of����r�����

14

SVD-softmax(% FW��cZO��dOZcS�RSQ����aW�W�� ������

– ��������“–�����r�������– �����

_ = `Σbc ` ∈ d3×U, Σ ∈ dU×U, b ∈ dU×U�H��I������� �����������“–���

– 8dOZcO�W������r `Σ����������������r `Σ����(�������“������

– �������1. `H = `gW

)% H � � �������~���������*% H � � �������~����������% ��� f�E� ��“� wHfw2wfw,% ��� f�g�E� ��“� Hf�Hg2f�g

15

SVD-softmax

16

)% F�T��Of O����fW�O�W��

Previewwindow������~������rN��������“��

SVD-softmax

17

SVD-softmax*% �S��WQa

– ������Ra��������cZZPOQY��SWPZS� RWdS��S�QS ��7����• �������v��”• CrD~���������

– AS�O�WdS�Z���ZWYSZWV��R A������������• 9cZZ�a�T��Of”adR�a�T��Of���~�������• �����������M�������rM������������

– �SO��aSO�QV����r��Y�v�~������“�������• G�����Q�dS�O�S� ���Y�v�����������

18

Result(% JW�R���aWhS”������7”���

– JW�R�� aWhS���7�(�/���~��x��������(�/y

19

Result)% ���”TcZZ�dWS��dSQ���a�A���

– I~��–�A���“–�~��x��,�(��

20

Result*% ��������

– �v���� TcZZ�a�T��Of������~��

21

Discussion(% J�A�7���

– ������7”�W�R���aWhS�J~����–�~���”�r7���v�“–���r������~������·����”������

22

���

���D���v�

Discussion)% �������

– ������)��*�������– bH �����“–I������d�Q aWhS��������h(Ni)����~rI~�������r

����������

23

Discussion*% ���S�V�Ra”���

– 9cZZ�a�T��Of �������– �WS�O�QVWQOZ a�T��Of���4RO��WdS�a�T��Of�r������R����������r����

����������~��– ������u�“–��xtyr��~�����������������������

�• ����“qqq

24

Appendix• Tensorflowで実装してみた– https://github.com/koichiro11/svd-softmax

• とりあえず学習は,NCEを用いるのが安定で早いのでオススメ• 推論時の時にSVD-Softmaxを用いる

25