Commit graph

987 commits

Author SHA1 Message Date
Keisuke Kuroyanagi
03dc44f543 Add/Get n-gram probability entry in languageModelDictContent
Bug: 14425059
Change-Id: I7926c3812f89b9a71fe1873a5bc32f793f91b640
2014-08-06 00:42:56 +00:00
Keisuke Kuroyanagi
851e0458fe Remove ProbabilityDictContent and use LanguageModelDictContent
Bug: 14425059
Change-Id: I1bb9e78ecb24139b87c99be6722e37eec0a2285d
2014-08-05 14:13:07 +09:00
Keisuke Kuroyanagi
0889484266 Add methods for unigrams to LanguageModelDictContent.
Bug: 14425059
Change-Id: I0a6b480a3d4735787ffac68c47b4ffefc3f1b8a5
2014-08-05 12:38:55 +09:00
Keisuke Kuroyanagi
c4696b2eb6 Save language model in the body buffer.
Bug: 14425059
Change-Id: Iaec277f7bed03d6c6780c6ce90fbe5fe799e175e
2014-08-01 20:19:16 +09:00
Keisuke Kuroyanagi
c0c674cdc0 Make MmappedBuffer use byte array view.
Bug: 16691311
Change-Id: I2122c01ee27c33e11dec52643925c069927bea2b
2014-08-01 19:26:01 +09:00
Keisuke Kuroyanagi
0257e40345 Use ReadWriteByteArrayView in BufferWithExtendableBuffer.
Bug: 16691311
Change-Id: Ibd68354a53cebf284a886d76bd8ce9848a51346f
2014-08-01 08:44:32 +00:00
Keisuke Kuroyanagi
df11f9b8e6 Merge "Add LanguageModelDictContent." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
dc3856d758 Add LanguageModelDictContent.
This class will replace BigramDictContent and
ProbabilityDictContent.

Bug: 14425059
Change-Id: I3d15c833957e27b2f5999386db042188272bbb4b
2014-08-01 12:45:00 +09:00
Keisuke Kuroyanagi
90b7c1729f Remove DictContent.
Bug: 14425059
Change-Id: I74fa4b6ba4605447c1c87427371e4be5eb8e7ae6
2014-08-01 12:06:21 +09:00
Keisuke Kuroyanagi
0e6a1d1020 Remove getBigramsIteratorOfPtNode from structure policy.
Bug: 14425059
Change-Id: I427fbfd026c1e33b5e9cf78949fe862d8748b7ec
2014-08-01 12:06:21 +09:00
Keisuke Kuroyanagi
35c62b2cc9 Use NgramListener in MultiBigramMap.
Bug: 14425059
Change-Id: I425536290111f2a8172f31370706f858a1e07f6e
2014-08-01 02:51:07 +00:00
Keisuke Kuroyanagi
de5c3a2562 Construct TrieMap from existing buffer.
Bug: 14425059
Change-Id: Ia1c58d88540f55fb38fe0bdfcd7c0a34ebc7415e
2014-07-31 09:06:22 +00:00
Keisuke Kuroyanagi
e7c9415688 Merge "Remove DictContent." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
4a1ed92ea8 Merge "Remove getBigramsIteratorOfPtNode from structure policy." into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
3437032a91 Merge "Add TrieMap.save()." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
60ae3e0be5 Add TrieMap.save().
Bug: 14425059
Change-Id: Ie0b4fe8b9a157da0401bb277c703ab084d5bf9cc
2014-07-31 06:01:52 +00:00
Keisuke Kuroyanagi
5c1decfbb9 Add entry iteration method to TrieMap.
Bug: 14425059
Change-Id: I79420b755f29f651d8eed61e7e48b6eb001d8dd2
2014-07-30 19:04:07 +09:00
Keisuke Kuroyanagi
57574b98c2 Merge "Remove doesAutoCorrectValidWord()." into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
5b69472d56 Remove doesAutoCorrectValidWord().
Possibly offensive words are wrongly demoted when input by
gesture.

Change-Id: Ibb2eb73d4191dea6cb767643341fe96465c1f70c
2014-07-31 14:48:16 +09:00
Keisuke Kuroyanagi
d3d7c31ca9 Fix native debug build.
Change-Id: I95ff6b14d7f444911ec76698381b8d2d8da94776
2014-07-31 14:36:12 +09:00
Keisuke Kuroyanagi
d624091afb Merge "Fix native debug build." into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
211370a3da Merge "Add memory view class for int and uint8_t." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
75d8c20d03 Add memory view class for int and uint8_t.
Bug: 16691311
Change-Id: I32eb692cdb758861e24b772fdcda57642b95ae1b
2014-08-01 12:39:31 +09:00
Keisuke Kuroyanagi
f40adc97cb Merge "Add a method to iterate ngram entries." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
2d57b3339a Add a method to iterate ngram entries.
Bug: 14425059
Change-Id: I9962c546504288f6c22b1a7368f775decd229c62
2014-07-30 10:52:56 +09:00
Keisuke Kuroyanagi
5a7b634aaf Merge "Add entry iteration method to TrieMap." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
a704ad254e Merge "Remove PrevWordsInfo.getBigramsIteratorForPrediction()." into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
bd1f59bda5 Remove PrevWordsInfo.getBigramsIteratorForPrediction().
This changes the behavior of predictions for some rare cases.
For example, let's consider the case of the prev word is
"ABC", "ABC" and "abc" is in the dict, "ABC" doesn't have
any bigrams, and "abc" has bigrams.
Without this change, "abc"'s bigrams are used for
prediction. But, with this change, "abc"'s bigrams are not
used for prediction. This strategy is the same as the the
current way of bigram probability computation during
traversal (for suggestion).

Bug: 14425059
Change-Id: I857ff39aa70aea265efa651451a63b759bb47d48
2014-07-30 17:26:26 +09:00
Ken Wakasa
0b1fa0c1c7 Cleanup: C++11 doesn't require a space between angle brackets
Change-Id: Id0777cf3deac94395bd63aee40b49375dff3e35a
2014-07-30 11:32:05 +09:00
Keisuke Kuroyanagi
6c3b0d3caa Merge "Add TrieMap." into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
de3121dead Add TrieMap.
Bug: 14425059
Change-Id: Ief36f808ed4f3e35bfab07837ea314d2564973ab
2014-07-29 17:00:29 +09:00
Keisuke Kuroyanagi
2e32e83b6e Merge "Get n-gram probability in structure policy." into lmp-dev 2014-07-24 16:04:26 +00:00
Keisuke Kuroyanagi
1229879e7c Get n-gram probability in structure policy.
Bug: 14425059
Change-Id: Id955a2e07dbdfb90ae55720f0c92597e0594c0d9
2014-07-29 12:01:18 +09:00
Keisuke Kuroyanagi
96d47fe745 Change getUnigramProbabilityOfPtNode to getProbabilityOfPtNode()
Bug: 14425059
Change-Id: I92403d750d2979408b41554dcd79b0ed31b41161
2014-07-29 11:35:57 +09:00
Keisuke Kuroyanagi
179f38cc8c Merge "Change getUnigramProbabilityOfPtNode to getProbabilityOfPtNode()" into lmp-dev 2014-07-25 11:19:20 +00:00
Keisuke Kuroyanagi
3225b6fe66 Add boundary check for ver2 bigram reading.
Bug: 16330528
Change-Id: I6aca6c7a735e2a652eb325572d44dff660789cff
2014-07-28 21:48:00 +09:00
Keisuke Kuroyanagi
d4c9d50ef0 Add BufferWithExtendablebufferTest
Bug: 13754552
Change-Id: Ib9c330dc85bdb5d4d3d5bc15cc3ce5f28faa0b12
2014-07-25 07:02:10 +09:00
Keisuke Kuroyanagi
ff6ca09905 Add BufferWithExtendableBuffer::extend()
Bug: 14425059
Change-Id: I13dd8412ba4d16a1325ac2210b3852d580e71ad3
2014-07-25 07:02:05 +09:00
Keisuke Kuroyanagi
6810e8df1e Refactoring checkAndPrepareWriting.
Bug: 14425059
Change-Id: I98940f3841a6c61b0482440b4da21f415dc843f6
2014-07-24 10:24:42 +09:00
Keisuke Kuroyanagi
b22f95ec8a Remove isUpdatable from constructors of dict contents.
Change-Id: I2d54f477d9b341e944e265786a734f23d152bb81
2014-07-11 15:23:55 +09:00
Keisuke Kuroyanagi
2ac934296c Concatenate dict buffers other than header to a single file.
Bug: 13664080
Change-Id: I34c9d8046b339c9b855be378a5fad907382d1359
2014-07-11 15:15:47 +09:00
Keisuke Kuroyanagi
198be3a6c5 Fix: wrong bigram entry pos can be used during GC.
Bug: 14425059
Change-Id: I4e7c977c5ef184953682175b118de5473cdb64a6
2014-07-09 11:18:35 +09:00
Keisuke Kuroyanagi
3b8f2ece40 Merge "Move phrase gesture from additional features to public." 2014-07-02 20:35:42 +00:00
Keisuke Kuroyanagi
b8a9479b57 Move phrase gesture from additional features to public.
Bug: 15758242
Change-Id: I703dc2703afdf9402c5d2ac27411b74ece993dba
2014-07-08 16:36:06 +09:00
Keisuke Kuroyanagi
b00973952f Get bigrams iterator via dict structure policy.
Bug: 14425059
Change-Id: Ie4c6afbb6a3b707b5aa8e9e4f941c9da6e6bcdbf
2014-07-08 16:23:31 +09:00
Keisuke Kuroyanagi
804f7450fc Use linked list for bigram list.
BinaryDictionaryTests for VERSION4_DEV:
Before
Time: 36.461
After
Time: 33.031

Bug: 14425059

Change-Id: I9ca2714f450f61f713df6ebd34c953dece991cdb
2014-07-07 21:09:25 +09:00
Keisuke Kuroyanagi
6afd14dc94 Remove unused method.
Bug: 13664080
Change-Id: I47fd90f01ea9a18b11037c966150fa5fd926101b
2014-06-27 15:23:38 +09:00
Keisuke Kuroyanagi
05b1e0d42f Extend jni method to use multiple previous words.
Bug: 14425059
Change-Id: I8150e8812ee32f8c713315a234b52e5b3a79d7a0
2014-06-26 18:47:25 +09:00
Keisuke Kuroyanagi
8681bef03c Remove BigramDictionary form native code.
Bug: 14425059
Change-Id: I48d1a4ae6a4317afaaf67748060618f8f9485d40
2014-06-26 15:15:13 +09:00
Keisuke Kuroyanagi
d58a07666e Merge "Rename jni method for n-gram supporting." 2014-06-24 01:52:26 +00:00
Keisuke Kuroyanagi
83b6ee2538 Rename jni method for n-gram supporting.
Bug: 14425059
Change-Id: I242d1de5d9db37344f02d8fba9035829794a56c8
2014-06-25 14:14:40 +09:00
Keisuke Kuroyanagi
0aef59746c Make Beginning-of-Sentence prediction require two exposures.
Bug: 15868192
Change-Id: I4b577ad11c992d872d6f902fd50527d9ca5cc1ba
2014-06-25 20:20:44 +09:00
Keisuke Kuroyanagi
88fa47a27d Support migration/dump of Beginning-of-Sentence entries.
Bug: 14119293
Change-Id: Ie975138f819794d5c34a7a547be5a6117050e084
2014-06-24 12:37:07 +09:00
Keisuke Kuroyanagi
f7322b166b Make getNextWordAndNextToken output code point count.
Bug: 14425059
Change-Id: Id1c2927c8a1be0b1680206d444dbdf0c9453dceb
2014-06-23 19:08:30 +09:00
Keisuke Kuroyanagi
24d49ee577 Remove hasBigrams/hasShortcut flags from ver4 PtNode.
Always check bigram/shortcut content instead of having
flags in each PtNode.

Bug: 14425059
Change-Id: I9eb816681bf22fc12e3ab3c92a178a7990b90e93
2014-06-23 16:49:49 +09:00
Keisuke Kuroyanagi
0fbca1ac23 Remove word from personalized dicts when it's canceled.
Bug: 15555552
Bug: 15552347
Change-Id: Ia4d8c79d079e3ce233d46d4bbad4fff1be5c5c39
2014-06-20 14:46:13 +09:00
Keisuke Kuroyanagi
89899e14df Merge "Update unit test for beginning-of-sentence." 2014-06-10 22:31:57 +00:00
Keisuke Kuroyanagi
e041bfab5c Update unit test for beginning-of-sentence.
Bug: 14119293
Change-Id: I594a1ca1096f0c12c678dd30eb75de905e55c5bb
2014-06-12 16:07:39 +09:00
Keisuke Kuroyanagi
22931cd941 Enable Beginning-of-Sentence prediction for contextual dict.
Bug: 14161647
Bug: 14119293
Change-Id: I0c00f13966db88e4de85e245e7bced43c9d474b2
2014-06-12 12:26:18 +09:00
Keisuke Kuroyanagi
86fe8081b3 Merge "Add removeUnigramEntry() to native dictionary policy." 2014-06-10 22:29:12 +00:00
Keisuke Kuroyanagi
f12985245c Add removeUnigramEntry() to native dictionary policy.
Bug: 15552347
Change-Id: Ic713f79ef26b5963060304df9c0a3a402c3cc6d4
2014-06-12 12:14:11 +09:00
Keisuke Kuroyanagi
447c19364a Merge "Enable Beginning-of-Sentence prediction for contextual dict." 2014-06-10 22:31:57 +00:00
Keisuke Kuroyanagi
59ed0c2db2 Block offensive words in native code.
Bug: 15300452

Change-Id: Ic6c91c47453e19fb5db2c62b66659619e72b1ecf
2014-06-12 11:36:00 +09:00
Keisuke Kuroyanagi
07e1412631 Purge dict reading code for 401 and create for 402.
Change-Id: Ib0150b3306bb2db8aff443d1158fecc8464cbbdb
2014-06-10 19:22:40 +09:00
Keisuke Kuroyanagi
d9b8602f48 Implement getMaxProbabilityOfExactMatches().
Bug: 13142176
Bug: 15428247
Change-Id: I5be6d683be95505412615ca7c88260de1ea05f54
2014-06-06 17:37:46 +09:00
Keisuke Kuroyanagi
7852765a50 Add length check for attaching a BoS marker.
Bug: 15297872
Change-Id: I7b0a27409b81b76561d19c6caa18a5011d3e90f6
2014-05-28 20:20:39 +09:00
Keisuke Kuroyanagi
f9ce867d80 Add boundary check for v4 bigram reading.
Bug: 14496386
Change-Id: Iedd3445c3222a777a2476beed7d9eb53773f406c
2014-05-27 19:29:35 +09:00
Keisuke Kuroyanagi
dfca51726e Return whether the dynamic dict operation was success.
Bug: 12184250
Change-Id: Iee7e00c1e84c95551a077f4dd023c0a9b9ac9466
2014-05-27 17:30:00 +09:00
Keisuke Kuroyanagi
a6278eb9c1 Use whether it's exact match to detect distracters.
Bug: 13142176
Change-Id: Id5b7286d28897931f7bfe571be45d46ffeef4adf
2014-05-26 21:56:20 +09:00
Keisuke Kuroyanagi
a37f374ad1 Version up dynamic dict format from 401 to 402.
Change-Id: Ibea36af905ade773ae3db3a5456f7b5a0ad7d220
2014-05-23 20:20:56 +09:00
Keisuke Kuroyanagi
1adca93381 Extend jni methods and enable Beginning-of-Sentence.
Bug: 14119293
Change-Id: I78fc877367dd0d6240eeacb750b6d2d0b93cba83
2014-05-23 19:58:58 +09:00
Keisuke Kuroyanagi
96990ca773 Support Beginning-of-Sentence in native code
Bug: 14119293
Change-Id: I0f382e33a19bf481823b23405d454de61ec835ff
2014-05-23 17:23:08 +09:00
Keisuke Kuroyanagi
6600340af5 Fix: PtNodeParams.representsNonWordInfo()
Change-Id: I7ab4fb280e8ac89f81d0b32b0663a86c9b69aa5d
2014-05-23 13:49:18 +09:00
Keisuke Kuroyanagi
2a015dcb25 Add Beginning-of-Sentence info in UnigramProperty.
Bug: 14119293
Bug: 14425059
Change-Id: I8a894352568377d32468e5563f4e89af00d22944
2014-05-23 00:07:14 +09:00
Keisuke Kuroyanagi
9f8c9a0161 Use PrevWordsInfo to add/remove n(bi)-gram in native code.
Bug: 14119293
Bug: 14425059
Change-Id: I4b9a46bfd670b35195418eaee51456d44fb91b6d
2014-05-21 18:30:34 +09:00
Keisuke Kuroyanagi
fa7db65dec Support multiple previous words in DicNode.
Bug: 14425059
Change-Id: Ib8682befe4d7d9fe5122eb538e7c804f75ded463
2014-05-19 11:47:10 +09:00
Keisuke Kuroyanagi
45d1a936a7 Move prev word related logic to PrevWordsInfo.
Bug: 14119293
Bug: 14425059
Change-Id: I1bbd7ab4ace2c475f27bc468cb7b4d67e1ae2f9f
2014-05-16 22:31:45 +09:00
Keisuke Kuroyanagi
b94ec1437b Introduce MAX_PREV_WORD_COUNT_FOR_N_GRAM.
Bug: 14425059
Change-Id: I587f90df026a14359d2ee452040bbfaf02c1ae51
2014-05-15 18:45:49 +09:00
Keisuke Kuroyanagi
b87fffb8be Refactoring: Move prev word information into PrevWordsInfo.
Bug: 14119293
Bug: 14425059

Change-Id: I5a5f81c6b189e3ad1da093343a3121463f87c21c
2014-05-15 18:39:23 +09:00
Keisuke Kuroyanagi
d6fdd58cc0 Cleanup DicTraverseSession.
Change-Id: I953665e1958e7214e9365e2bc9d3f3843016dc81
2014-05-15 17:41:23 +09:00
Keisuke Kuroyanagi
e810a266fd Merge "Quit use bigram probability diff for ver4 dict." 2014-05-15 07:07:25 +00:00
Keisuke Kuroyanagi
64341927d2 Quit use bigram probability diff for ver4 dict.
Change-Id: I2cfcfbcf351877d1dff466a24974dbb05908f14e
2014-05-15 16:02:58 +09:00
Keisuke Kuroyanagi
a709bc7f93 Merge "Reduce the cost for handling intentional omission." 2014-05-15 03:31:39 +00:00
Keisuke Kuroyanagi
39e5a15af0 Merge "Always keep PtNodes that represent non-word info during GC." 2014-05-15 02:38:57 +00:00
Keisuke Kuroyanagi
91d7538225 Merge "Add VERSION_4_DEV(402) in native code." 2014-05-14 13:40:10 +00:00
Keisuke Kuroyanagi
7116ea98f4 Add VERSION_4_DEV(402) in native code.
Bug: 13406708
Change-Id: I96cfacf524d670a6a5637a96a63bcd47aaf09ca0
2014-05-14 22:37:05 +09:00
Keisuke Kuroyanagi
cf700695ea Always keep PtNodes that represent non-word info during GC.
Bug: 14119293
Change-Id: Ie50b341a512be6a6efe3e05b60e1d09560b01d1f
2014-05-14 22:29:21 +09:00
Keisuke Kuroyanagi
2dc8e36f8e Use nullptr instead of MmappedBufferPtr(nullptr).
Change-Id: I9bc35f723f1c105ef6155a49630b8cd492900bc8
2014-05-14 22:05:00 +09:00
Keisuke Kuroyanagi
32bdf9f344 Merge "Use JniDataUtils::putXxxToArray() to output a value." 2014-05-14 11:12:09 +00:00
Keisuke Kuroyanagi
5c00bde9bc Merge "Filter out control characters and non-unicode code points." 2014-05-14 11:07:32 +00:00
Keisuke Kuroyanagi
304a71d171 Use JniDataUtils::putXxxToArray() to output a value.
Change-Id: Ifb7bed6623b01acb524566a0fe00dcbdf7273888
2014-05-14 20:05:15 +09:00
Keisuke Kuroyanagi
e9121a68a6 Filter out control characters and non-unicode code points.
Bug: 14119293
Bug: 13758761
Change-Id: I6b79cff0714152807f5e20b7a75060a0a772b28b
2014-05-14 20:05:10 +09:00
Keisuke Kuroyanagi
728141d55a Merge "Generate dict code for version 401." 2014-05-14 10:51:12 +00:00
Keisuke Kuroyanagi
6bf268132d Generate dict code for version 401.
Bug: 13406708
Change-Id: I769ac84d54d997e7aefab0c9c16727455a132e0b
2014-05-14 19:09:01 +09:00
Keisuke Kuroyanagi
72d6061efb Merge "Use JniDataUtils::outputCodePoints() to output code points" 2014-05-14 09:07:45 +00:00
Keisuke Kuroyanagi
ed16af72e3 Restrict the permission of dict files created on device.
Bug: 13497304
Change-Id: I7bf67e2e81bc63a67bd91cbc0f753ecac88349f6
2014-05-14 17:48:28 +09:00
Keisuke Kuroyanagi
d2f7cd28ae Use JniDataUtils::outputCodePoints() to output code points
Bug: 14119293
Bug: 13758761

Change-Id: I516d2f96e219e6e65246f502186ccb9bd5f0670f
2014-05-14 17:42:47 +09:00
Keisuke Kuroyanagi
c1e86d3f49 Merge "Skip PtNodes with non-Unicode code points for suggestion." 2014-05-14 06:22:22 +00:00
Keisuke Kuroyanagi
14dd663fe5 Reduce the cost for handling intentional omission.
Bug: 14602770

Change-Id: I3a678a3e9b227fc4c3b8d23012aba18ca2e52da5
2014-05-14 13:54:32 +09:00
Keisuke Kuroyanagi
0c8ce96bec Add "// namespace latinime"
Bug: 13406708
Change-Id: I0fa85875fb5b98b4e40a149e3e33e5f56bee9a97
2014-05-13 15:16:43 +09:00
Keisuke Kuroyanagi
6e4b674f83 Move files under bigram/shortcut to under structure.
Bug: 13406708
Change-Id: I48e9d4ff30a8b50d4f1694ebbefb02cf189f7713
2014-05-13 15:16:43 +09:00
Keisuke Kuroyanagi
d0d0113983 Code cleanup.
Change-Id: Ic31b66cccfd77348f2ff7961959a3eaf9f7ad5d8
2014-05-13 01:32:38 +09:00
Keisuke Kuroyanagi
620a05ae59 Support bigram historical information migration.
Bug: 13406708
Change-Id: I4bae53e43cb7653eac3b5bd13da2d2bc8aaf88a9
2014-05-13 01:28:30 +09:00
Keisuke Kuroyanagi
79ba633402 Skip PtNodes with non-Unicode code points for suggestion.
Bug: 14119293
Change-Id: Id1d3b789b5f18757070878dba35a7980bfb44591
2014-05-12 19:38:26 +09:00
Keisuke Kuroyanagi
9d7e8c717f Support unigram historical information migration.
Bug: 13406708
Change-Id: Ibed15b3bc5d5ae68faefa379028dbe10d32b0c0f
2014-05-12 19:21:06 +09:00
Keisuke Kuroyanagi
6b74f516dc Merge "Refactoring: Use UnigramProperty to add/update unigram." 2014-05-09 11:39:17 +00:00
Keisuke Kuroyanagi
b7f71cdf8c Merge "Avoid copying bigram list if possible." 2014-05-09 10:09:54 +00:00
Keisuke Kuroyanagi
b636e25e95 Refactoring: Use UnigramProperty to add/update unigram.
Bug: 13406708
Change-Id: I26fd541fb465d3543faa5f155becc455ddbb6c9c
2014-05-09 17:22:17 +09:00
Keisuke Kuroyanagi
eaa347bc1a Merge "Add VERSION4_TEST for testing." 2014-05-09 07:06:06 +00:00
Keisuke Kuroyanagi
455dc84cf2 Add VERSION4_TEST for testing.
Bug: 13406708
Change-Id: I0b434717ea3edbb131650af634c53cfbfe113c3e
2014-05-09 15:17:01 +09:00
Keisuke Kuroyanagi
08ea74eb2c Merge "Implement migrateNative()." 2014-05-08 05:21:06 +00:00
Keisuke Kuroyanagi
ad518d9a5b Avoid copying bigram list if possible.
Constructing en_US main dict using dicttool:
Before:
real    1m8.699s
user    1m10.600s
sys     0m2.390s
After:
real    0m17.204s
user    0m20.560s
sys     0m0.720s


Bug: 13406708
Change-Id: I3b0476be57e5cb93c6497025b3ffa7064ac326c6
2014-05-08 14:19:33 +09:00
Keisuke Kuroyanagi
8a9d9de72a Implement migrateNative().
Bug: 13406708
Change-Id: Ie786a68e780baa298fedf82d21390ba45d871a52
2014-05-08 12:31:32 +09:00
Keisuke Kuroyanagi
ad8f2201e2 Make initial additional buffer size 0.
Bug: 14113369
Change-Id: I3b7b3a452544725577101dc3b9bcb85b3e08afe9
2014-05-07 23:44:32 +09:00
Keisuke Kuroyanagi
8e8a5a58c4 Merge "Add new bigram entry at the tail of existing list." 2014-05-01 11:19:36 +00:00
Keisuke Kuroyanagi
8d8fb396a0 Add new bigram entry at the tail of existing list.
Bug: 13406708
Change-Id: If3162e65fc9aa2c47f046aee528276cb51fad9f4
2014-05-01 19:29:43 +09:00
Keisuke Kuroyanagi
ab5839ae0b Merge "Add CODE_POINT_BEGINNING_OF_SENTENCE in native code." 2014-05-01 02:08:27 +00:00
Keisuke Kuroyanagi
4162cfdc59 Add CODE_POINT_BEGINNING_OF_SENTENCE in native code.
Bug: 14119293
Change-Id: Ib101435e2840172ba004ead081022669647a8ad9
2014-04-30 20:40:02 +09:00
Ken Wakasa
fc2858c55b Small clean up for LARGEST_INT_DIGIT_COUNT
Change-Id: I4a61c037370bf57b396d80ba7212d94328eaf7b9
2014-04-30 19:41:42 +09:00
Keisuke Kuroyanagi
8dac7ce2e2 Move PatriciaTrieReadingUtils under pt_common.
Change-Id: Ib8ec62b97318563785a2aafb854aabdc3f46f187
2014-04-30 14:28:08 +09:00
Ken Wakasa
9e15b4551e Small clean up on MAX_LOCALE_STRING_LENGTH
Change-Id: I77f93879e841f33b81f6d193d1bd5782ad2124f5
2014-04-28 16:50:06 +09:00
Keisuke Kuroyanagi
3b7984752c Support creating BinaryDictionary without creating dict file.
Bug: 14166482
Change-Id: Ic8c78ec2c8f39358a1f085a041b608972a380eef
2014-04-22 13:18:34 -07:00
Keisuke Kuroyanagi
ce76821dce Revert "Support creating BinaryDictionary without creating dict file."
This reverts commit 89939b8708.

Change-Id: I8ca1b55609ad305a93178063bd88bd1cede872af
2014-04-22 19:34:44 +00:00
Keisuke Kuroyanagi
89939b8708 Support creating BinaryDictionary without creating dict file.
Bug: 14166482
Change-Id: Ib065279f96e227ab0fee7c8141560c4ada744d3b
2014-04-22 12:01:33 -07:00
Keisuke Kuroyanagi
903be5bbd3 Implement latinime_BinaryDictionary_createOnMemory().
Bug: 14166482
Change-Id: If7ec3345ab34edcd6bc5cef9e72580ced894a0e3
2014-04-22 12:01:22 -07:00
Keisuke Kuroyanagi
edc7d02d76 Separate JniDataUtils::constructAttributeMap().
Bug: 14166482
Change-Id: Ic2dc407231743ea668fe0ab8869eb8a7f8b9625f
2014-04-21 19:59:21 -07:00
Keisuke Kuroyanagi
7b43d987fa Pass max trie structure size to on memory Ver4DictBuffers.
Bug: 14166482
Bug: 14161647

Change-Id: I3b0dd192d7a81c3809f1873bb66ef8fe637f8af0
2014-04-18 17:57:28 -07:00
Keisuke Kuroyanagi
d4e54af0ba Merge "Make addUnigramWord use UnigramProperty." 2014-04-14 11:03:30 +00:00
Keisuke Kuroyanagi
793124855d Make addUnigramWord use UnigramProperty.
Bug: 13406708
Change-Id: I10c108dd7047fe230c60495f13800f32fdc46d0d
2014-04-14 18:49:19 +09:00
Ken Wakasa
8ca9be17db s/hash_map_compat/unordered_map/
Change-Id: Icce5f9a12b04bdd7540c52750d303a585d71f28a
2014-04-11 18:07:59 +09:00
Keisuke Kuroyanagi
63d33f42c8 Increase terminal cache size for gesture.
Before:
(0)  670.00 (10.52%)
(1)  5530.00 (86.81%)
(2)  120.00 (1.88%)
Total 6370.00 (sum of others 6320.00)

After:
(0)  730.00 (11.06%)
(1)  5750.00 (87.12%)
(2)  100.00 (1.52%)
Total 6600.00 (sum of others 6580.00)

Bug: 13773693
Bug: 10701902
Bug: 9505397
Change-Id: Ie53640994180a7acabe05da544ab2166403e2394
2014-04-09 16:50:31 +09:00
Keisuke Kuroyanagi
bc9500fb14 Quit limiting gesture search space by distance.
Before:
(0)  470.00 (8.25%)
(1)  5160.00 (90.53%)
(2)  50.00 (0.88%)
(66)  10.00 (0.18%)
Total 5700.00 (sum of others 5690.00)

After:
(0)  670.00 (10.52%)
(1)  5530.00 (86.81%)
(2)  120.00 (1.88%)
Total 6370.00 (sum of others 6320.00)

Bug: 13773693
Bug: 10701902
Bug: 9505397

Change-Id: Ie168ac4ae0ca0e954512b08e3cc0f6399a3c163d
2014-04-09 16:50:31 +09:00
Keisuke Kuroyanagi
26c806620c Use 2D normal distribution for gesture.
Bug: 13799846
Bug: 10701902
Bug: 9505397

Change-Id: I6c3f84f035f2310f2f7dfec4432ebdb6e50d5df0
2014-04-09 16:50:31 +09:00
Keisuke Kuroyanagi
e3d57ae792 Merge "Use bitset for BloomFilter." 2014-04-09 07:39:49 +00:00
Keisuke Kuroyanagi
2fd0bf9a37 Use bitset for BloomFilter.
Before:
(0)  660.00 (1.43%)
(1)  45320.00 (98.18%)
(2)  80.00 (0.17%)
Total 46160.00 (sum of others 46060.00)

After:
(0)  620.00 (1.34%)
(1)  45310.00 (98.05%)
(2)  130.00 (0.28%)
Total 46210.00 (sum of others 46060.00)

Change-Id: I936b639c50e15208aee999a929b33983c6caa59d
2014-04-09 16:18:23 +09:00
Yohei Yukawa
b417d7d69f Make NELEMS type-safe
Change-Id: I867271665b3c595dc40ac63e93e68c87dc213d08
2014-04-09 15:51:39 +09:00
Keisuke Kuroyanagi
e41b2ed8d3 Separate unigram/bigram property from WordProperty.
Bug: 13406708

Change-Id: I48e9fccedd9dcdc1a35ffe027745b58966a83315
2014-04-08 18:24:06 +09:00
Ken Wakasa
cafab169cd s/stdint.h/cstdint/
Somehow, we were not able to use cstdint gcc target build. That's no
longer the case with Clang.

Removed unnecessary header inclusions too.

Change-Id: Ic83a4adf696f1d5ec7a9809253f3c95804e622e1
2014-04-07 12:39:07 +09:00
Keisuke Kuroyanagi
3bf9647a26 Separate NormalDistribution from ProximityInfoUtils.
Bug: 13773693
Change-Id: I9e835cc92e16f8ae0e0492af0715d0ef5cd84a35
2014-04-04 18:49:12 +09:00
Keisuke Kuroyanagi
5f6a247744 Remove unused code.
Bug: 13773693
Change-Id: Ic9d7f81b0eed40e945b04a91fd97ba40fa1cd262
2014-04-03 14:09:25 +09:00
Keisuke Kuroyanagi
de2b312c6d Use same language weight for all dictionaries.
Bug: 8187060
Change-Id: Ib9d8a8aed2c141137c1bb3c748a89fb8216293e7
2014-04-03 01:43:36 +09:00
Keisuke Kuroyanagi
77de3a4b65 Change wrongly used "lookahead" to "completion".
Change-Id: I111cf59d0d24fa869217788c314fffa94ee9f9f9
2014-04-02 12:44:41 +09:00
Keisuke Kuroyanagi
543fea98a4 Merge "Parameter tuning for typing." 2014-04-01 09:45:17 +00:00
Keisuke Kuroyanagi
7dc7a9a398 Parameter tuning for typing.
accidently -> accidentally (top suggest)
convienent -> convenient (top suggest)
dissapear -> disappear (top suggest)

Execution time: +31%

Before:
(0)  610.00 (1.66%)
(1)  35820.00 (97.66%)
(2)  130.00 (0.35%)
Total 36680.00 (sum of others 36560.00)

After:
(0)  820.00 (1.69%)
(1)  47200.00 (97.50%)
(2)  210.00 (0.43%)
Total 48410.00 (sum of others 48230.00)

Bug: 13588483
Bug: 13456384
Bug: 9816611

Change-Id: Ia17491e135a63aaca6e980c3a59bd829441dac40
2014-04-01 17:25:43 +09:00
Keisuke Kuroyanagi
da93bc54b2 Merge "Remove useless methods from DicNode." 2014-04-01 05:40:29 +00:00
Keisuke Kuroyanagi
94c7bd471f Merge "Separate DicNodePool from DicNodePriorityQueue." 2014-04-01 05:36:35 +00:00
Keisuke Kuroyanagi
ef1d4ddc8f Remove useless methods from DicNode.
Change-Id: I6ea5eb7e848dbce0f0d468160c16e5da76b23b20
2014-04-01 14:09:02 +09:00
Keisuke Kuroyanagi
67ff21f321 Separate DicNodePool from DicNodePriorityQueue.
Change-Id: Ie500a4185792c2ffa0f5185ea5919626fe31c6fe
2014-04-01 14:08:59 +09:00
Keisuke Kuroyanagi
ff1b3947c6 Split SuggestionsOutputUtils::outputSuggestions.
Bug: 13333066
Change-Id: Ie5e513dacdc5502e7263ddf709824bbd6bc6b74a
2014-03-28 20:11:27 +09:00
Keisuke Kuroyanagi
a0ea92f76c Remove mPartiallyCommited.
Bug: 13333066

Change-Id: I4e3aa31aa501866c23cc4b86093b866306161bfd
2014-03-28 20:08:51 +09:00
Keisuke Kuroyanagi
655b65cb0b Cleanup DicNodePriorityQueue.
Change-Id: Ia44ca0e14f8aad090ae2b8007771dea6d9b41221
2014-03-28 17:19:53 +09:00
Keisuke Kuroyanagi
144b9a6336 Remove DicNode.managedDelete.
Change-Id: I8146975d72878ba34d1c5054a7cf5fdcc41a3332
2014-03-28 17:19:28 +09:00
Keisuke Kuroyanagi
d73edf23ac Use SuggestionResults to get suggestion.
Bug: 8187060
Bug: 13333066
Change-Id: I435096ecf8422453f9b167adb0ca3b9c8a840018
2014-03-27 20:05:33 +09:00
Keisuke Kuroyanagi
a83b013eec Remove DicNodeUtils::appendTwoWords().
Change-Id: I7402793b3f71ef5d786abea2f97bd4b624e4405f
2014-03-27 17:54:14 +09:00
Keisuke Kuroyanagi
90f6411899 Remove DicNode.isFirstWord().
Change-Id: I825c0f7cf1fcf66c6309e0bab8e0fdd767170107
2014-03-25 18:07:14 +09:00
Keisuke Kuroyanagi
eddbb7ac88 Merge DicNodeStatePrevWord into DicNoteStateOutput.
Before:
(0)  2232.70 (0.86%)
(1)  255258.50 (98.89%)
(2)  585.73 (0.23%)
(66)  0.26 (0.00%)
Total 258126.46 (sum of others 258077.18)

After:
(0)  2249.23 (0.93%)
(1)  239883.63 (98.83%)
(2)  554.82 (0.23%)
(66)  0.35 (0.00%)
Total 242734.38 (sum of others 242688.04)

Change-Id: I9760cae5b98b3d1f4804b6b60317887eaa3ff71c
2014-03-25 18:07:09 +09:00
Keisuke Kuroyanagi
cf88cf6593 Add a check for ForgettingCurveUtils::decodeProbability.
Bug: 13607383
Change-Id: I1a56c52173d0e458864e65fb1c1f4603c0c81c6f
2014-03-24 11:11:07 +00:00
Keisuke Kuroyanagi
ef665816d0 Add boundary check for SparseTable.
Bug: 13592288
Change-Id: I8bc4ff778c6073d22f86b6050a880b6fb69de31e
2014-03-24 09:17:53 +00:00
Keisuke Kuroyanagi
4c93770430 Fix: wrong size checking in SparseTable.
Bug: 13592288
Change-Id: I52f03081c5abf25e3c160e2b8fff5e98f8448499
2014-03-24 14:28:36 +09:00
Keisuke Kuroyanagi
7c20f140e0 Merge "Remove unused partial commit." 2014-03-20 09:54:15 +00:00
Keisuke Kuroyanagi
5a0381f7d0 Remove unused partial commit.
Change-Id: Ia9341a5cb24947d93056810890d94c1f66481d8c
2014-03-20 18:47:45 +09:00
Keisuke Kuroyanagi
18ba146b72 Stop apply Completion for DicNodes without any proximity chars.
Bug: 13538127
Change-Id: Ifffc0cde1ea8a0ceb13e4e4e57c151b3ea33a522
2014-03-20 18:06:06 +09:00
Ken Wakasa
622589ab43 Several cleanups
Remove obsolete comment and unused macros. Cosmetic fixes as well.

Change-Id: I9843331c8ce90d9b10b54f425ea1c7416b57c541
2014-03-17 16:33:37 +09:00
Keisuke Kuroyanagi
73a2426d45 Change default decaying parameters.
Bug: 13458617
Change-Id: I4942af4a48881fb6ca866c74140b262e6d323f4a
2014-03-14 12:23:24 +09:00
Keisuke Kuroyanagi
4bc35daaa2 Check "." and ".." to delete all files in a dir.
Bug: 13421999
Change-Id: I9d0f65cfc9a0f18c7affc152a5b54f9970048e9c
2014-03-12 15:31:49 +09:00
Keisuke Kuroyanagi
5dc17c22ca Fix: wrong suggestion comparator.
Change-Id: I8829c7cb3060955e345fbdc003cf77f8469d37c0
2014-03-11 11:57:56 +00:00
Keisuke Kuroyanagi
34ab038414 Merge "Stop new BigramDictionary." 2014-03-11 09:38:14 +00:00
Keisuke Kuroyanagi
e7ddf49d50 Merge "Use emplace_back in getWordProperty()." 2014-03-11 09:38:00 +00:00
Keisuke Kuroyanagi
ed72a768d6 Merge "Make getWordProperty return reconstructed bigram probability." 2014-03-11 09:37:49 +00:00
Keisuke Kuroyanagi
ca42ec0f44 Use emplace_back in getWordProperty().
Change-Id: If164d2b897bd6ad9c89baf0e9a90356100c5087b
2014-03-11 15:21:55 +09:00
Keisuke Kuroyanagi
a34bdc395b Make getWordProperty return reconstructed bigram probability.
Bug: 13403530
Change-Id: I7ed95a54344d8b77b88922093cf3ef0e530fcae6
2014-03-11 15:20:12 +09:00
Keisuke Kuroyanagi
b43ea5c335 Use isFirstCharUppercase instead of get first code point.
Change-Id: I0a28305397bfc1e7218e16df00839781a74f5599
2014-03-10 18:39:45 +09:00
Keisuke Kuroyanagi
0a5efa31de Add getter methods for public member variables.
Change-Id: Ic6656bb3db6db992b37923db53816e0a73a7621f
2014-03-10 18:39:45 +09:00
Keisuke Kuroyanagi
6066069f35 Move initialization logic for from DicNode to DicNodeState.
Change-Id: Ic7075349e2e9c7f4ca707efa12ad1d24b49a2c87
2014-03-10 18:39:43 +09:00
Keisuke Kuroyanagi
258260bef2 Remove unused member of DicNodeStatePrevWord.
Change-Id: I265855da58e3a2e070e525e116ac0d18d1a10d18
2014-03-10 18:39:15 +09:00
Keisuke Kuroyanagi
632c9aca5b Improve DicNode handling.
- Stop creating useless DicNode and DicNodeVector.
- Remove useless virtual.
- Implement copy constructor and assignment operator of DicNodeState.
- Remove useless memset.

Before:
(0)  2266.21 (0.79%)
(1)  285422.05 (98.97%)
(2)  642.62 (0.22%)
(66)  0.19 (0.00%)
Total 288384.35 (sum of others 288331.07)

After:
(0)  2232.70 (0.86%)
(1)  255258.50 (98.89%)
(2)  585.73 (0.23%)
(66)  0.26 (0.00%)
Total 258126.46 (sum of others 258077.18)


Change-Id: I0bb1e9de8b38a6743a11aaeb2b17bd0da5b7ad34
2014-03-10 17:57:53 +09:00
Keisuke Kuroyanagi
87db47d175 Use emplace_back to push DicNode to vector.
Before:
(0)  2234.43 (0.71%)
(1)  310083.71 (99.07%)
(2)  626.88 (0.20%)
(66)  0.26 (0.00%)
Total 312995.33 (sum of others 312945.28)

After
(0)  2266.21 (0.79%)
(1)  285422.05 (98.97%)
(2)  642.62 (0.22%)
(66)  0.19 (0.00%)
Total 288384.35 (sum of others 288331.07)


Change-Id: I5ab98076c54d147ff7ec2a29280859f4558e24d0
2014-03-10 15:41:33 +09:00
Keisuke Kuroyanagi
66cc9dec55 Stop new BigramDictionary.
BigramDictionary is allocated inside of Dictionary.

Change-Id: If224b4c408403f43eb3d2e292c0e0ecb86429290
2014-03-10 05:42:36 +00:00
Keisuke Kuroyanagi
e137ec0a91 Introduce SuggestionResults and use it for predictions.
Bug: 8187060
Bug: 13333066
Change-Id: I1ead897024508b7e40fbd93af7d14bfe74b93826
2014-03-07 19:36:19 +09:00
Keisuke Kuroyanagi
c36c97b4f7 Merge "Use unique_ptr." 2014-03-07 09:06:58 +00:00
Ken Wakasa
6767f88e3c Address warnings pointed out by clang
Change-Id: I7943f6c7f9ba08f283a3116adc2af29495f04a21
2014-03-07 17:05:09 +09:00
Keisuke Kuroyanagi
4ce480d5ce Use unique_ptr.
Change-Id: Id92a5b07da4f7f95e2cd293ce8dc1a5f979b7853
2014-03-07 14:31:54 +09:00
Keisuke Kuroyanagi
865e6cf497 Revert "Revert "Use std::min() and std::max()""
This reverts commit f63000abea.

Change-Id: I6056d176a13c6ecad38e658ab8778bd898291d02
2014-03-07 14:19:56 +09:00
Keisuke Kuroyanagi
a1e0ef4836 Fix: point to line segment distance can be NaN.
Change-Id: I7db6bfea925a0eda82bfb1f7b5e1110b193dabdb
2014-03-07 14:19:52 +09:00
Keisuke Kuroyanagi
3339224813 Merge "Use nullptr instead of 0 for pointers." 2014-03-07 03:56:56 +00:00
Ken Wakasa
f63000abea Revert "Use std::min() and std::max()"
This somehow breaks TRT.

bug: 13350753

This reverts commit cf612a3abf.

Change-Id: I812f067e7cc8106b054527732dc6fe4efd7cc0fe
2014-03-07 02:30:18 +00:00
Keisuke Kuroyanagi
6c7ebc4023 Use nullptr instead of 0 for pointers.
Change-Id: Ic9425de07b896f940ca11c51968c637ebb897514
2014-03-07 10:04:44 +09:00
Ken Wakasa
cf612a3abf Use std::min() and std::max()
Change-Id: I2992fa16692ace2a6febedc4393812faf763638f
2014-03-06 23:19:54 +09:00
Yohei Yukawa
72c362985c Use C++11 deleted functions to implement DISALLOW_ macros
With C++ deleted functions, compilers can generate more
descriptive error messages when we are doing something disallowed.

Change-Id: I48d23e5eced545732558e56f5ff9ff70c95a6ff0
2014-03-06 20:48:43 +09:00
Ken Wakasa
ca0a0da864 Switch to C++11
Change-Id: Ib2970327c36422d7b11103d52ba7e9e52db5554f
2014-03-06 20:32:20 +09:00
Keisuke Kuroyanagi
9fd50e34a8 Fix: Bug of I39e905b6ddfc8d3.
primaryKey have to be the first elemnet of the proximities.

Bug: 13315755
Change-Id: I6c94408a2ef2750fa85ff12b93bed8b8d874717e
2014-03-06 18:25:15 +09:00
Keisuke Kuroyanagi
2c7e97dcdd Merge "Create suggest/core/result directory." 2014-03-06 07:32:19 +00:00
Keisuke Kuroyanagi
fb1588dd3c Create suggest/core/result directory.
Bug: 8187060
Bug: 13333066
Change-Id: I185c93bd4542d997be101b61561a00d69111c00d
2014-03-06 14:35:47 +09:00
Keisuke Kuroyanagi
6501255111 Fix: The top left key is a proximity of nonexistent keys.
Bug: 13315755
Change-Id: I39e905b6ddfc8d3510c408a3bea853390a75d088
2014-03-05 19:06:18 +09:00
Keisuke Kuroyanagi
5128935ac4 Add header attributes for evaluation.
Bug: 13197276
Change-Id: Ib5247da691ff24a73e13485288237ccc51bb54f0
2014-02-28 21:06:03 +09:00
Keisuke Kuroyanagi
3d70932857 Use MAX_PROBABILITY for the limit of probabilities.
Bug: 13197276
Change-Id: Ic3f855e566603b395395dff1f860f3d76ecb019c
2014-02-26 20:48:53 +09:00
Keisuke Kuroyanagi
7919a594fc Merge "Create more aggressive probability tables." 2014-02-26 11:18:44 +00:00
Keisuke Kuroyanagi
b368089dbf Stop dividing unigram probability by 2 for backoff.
Bug: 13197276
Change-Id: I8eaa24b6f710383a8d257e3ec28c37a1a1da8e31
2014-02-26 19:40:18 +09:00
Keisuke Kuroyanagi
70566266be Create more aggressive probability tables.
Bug: 13197276

Change-Id: I1451dcbe61088d7301bbef5ceedc72f5649e6764
2014-02-26 19:36:57 +09:00
Keisuke Kuroyanagi
2b27e06733 Merge "Read and write forgetting curve header attributes." 2014-02-26 09:06:56 +00:00