Commit Graph

1114 Commits (4c45fff2404b274cf6345221412671a81f0dba46)

Author SHA1 Message Date
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 a84f7848d8 Merge "Fix: The top left key is a proximity of nonexistent keys." 2014-03-05 10:27:27 +00: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 e784148ae6 Separate utility methods from BinaryDictionary.
Bug: 8187060
Change-Id: Ice2984e332b7bd3bb17174aefc80b5635b72fc50
2014-03-05 18:19:34 +09:00
Keisuke Kuroyanagi 9e51c6c0c6 Separate utility methods from BinaryDictionary in native code.
Bug: 8187060
Change-Id: I099de557d2aaee95c6b809450108139550e9b0aa
2014-03-05 12:49:04 +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
Keisuke Kuroyanagi 6112cc26a7 Read and write forgetting curve header attributes.
Bug: 13197276
Change-Id: I6c38a127e1745903594b7bf0ec80ef179e794feb
2014-02-26 18:04:12 +09:00
Keisuke Kuroyanagi 94080a37e8 Merge "Check header attributes for forgetting curve." 2014-02-26 08:58:48 +00:00
Keisuke Kuroyanagi 57816c7a8b Check header attributes for forgetting curve.
Bug: 13197276
Change-Id: Ib360010f309fd1ed3e81cf23aa10c1cfe82781a6
2014-02-26 17:41:31 +09:00
Keisuke Kuroyanagi 7b496a5861 Add boundary check for ver4 bigram/shortcut reading.
Bug: 13185316
Change-Id: I5236222e2a5acda69821062a140c9e36a3024bd2
2014-02-26 14:03:24 +09:00
Keisuke Kuroyanagi 33e38096ad Fix: -1 can be used as a code point of most probable string.
Bug: 11797518
Change-Id: Id2e8bce92d000f39d506af7cb844447696bcc019
2014-02-24 20:40:16 +09:00
Keisuke Kuroyanagi d934fb43ad Remove corrupted ver4 dictionaries.
Bug: 12916055
Change-Id: I2c390ab1dc483915691b47a605772cbc2dfeaf09
2014-02-21 15:09:37 +09:00
Keisuke Kuroyanagi be81b75dec Add boundary check for ver2 dict reading.
Bug: 12916055
Change-Id: I78ad1f98a5401f920dcfc3379aa431eb2311ae02
2014-02-21 13:26:01 +09:00
Keisuke Kuroyanagi b96012acef Record reading error during traversing dictionaries.
Bug: 12916055
Change-Id: I439f21aa87cfa1f71e0354370a1514af03d68f6c
2014-02-20 19:12:32 +09:00
Keisuke Kuroyanagi 303e767728 Fix: crash when opening a broken dictionary.
Bug: 13085169
Change-Id: Icfb6184dfefc6a336432203c071d9e30ae8bf990
2014-02-19 22:11:09 +09:00
Keisuke Kuroyanagi f2a6f2db3e Merge "Fix: using wrong method to call ArrayList.add." 2014-02-19 02:27:33 +00:00
Keisuke Kuroyanagi 14fe931362 Fix: using wrong method to call ArrayList.add.
bug: 13072808
Change-Id: I60dc5ae1e535f2f0b3784a12c40ac082560a436f
2014-02-19 11:24:39 +09:00
Ken Wakasa 7e79814aa3 Fix wrong Java method call function
bug: 13072808

Change-Id: I189fda85b59ce40e3657bfbbcc313e7e1225a0da
2014-02-18 23:40:24 +09:00
Jean Chalard 2046bd6b85 Merge "Make dotted i the base character of dotless i." 2014-02-17 09:44:17 +00:00
Jean Chalard 220dc2d7a8 Make dotted i the base character of dotless i.
This is already the case for the capital version, and natives
Turkish speakers seem to think it should be the case. An
important reason to make it so is that the Turkish keyboard
has only the dotless i as a "more keys" key, so it's really
hard to type words with a dotless i without this, especially
those with several of them.

Bug: 11519119
Change-Id: I4df2a289783e4eb3c1291b8ad0a2ba5947bf7671
2014-02-17 18:24:28 +09:00
Keisuke Kuroyanagi 0fc93fe445 Implement PatriciaTriePolicy::getNextWordAndNextToken().
Bug: 12810574
Change-Id: Id1d44f90de9455d9cbe7b6e0a161cae91d6d422c
2014-02-15 17:39:20 +09:00
Keisuke Kuroyanagi 8fa7a09f1e Merge "Implement PatriciaTriePolicy::getWordProperty()." 2014-02-14 09:08:09 +00:00
Keisuke Kuroyanagi c63d183473 Implement PatriciaTriePolicy::getWordProperty().
Bug: 12810574
Change-Id: I7bcccfd3641ebbcf2b8d857d33bb4734c42af5eb
2014-02-14 17:56:45 +09:00
Keisuke Kuroyanagi 6890246259 Fix reading uninitialized memory in BloomFilter.
Bug: 12967899

Change-Id: I180b9d728c887c480b6d956bbc4599079c1c359f
2014-02-14 12:37:03 +09:00
Keisuke Kuroyanagi a000a32c80 Fix reading uninitialized memory.
Bug: 12967899

Change-Id: Ia17e4ca9dd8c1e0b24b0fb7e73d07b97c5d81c0c
2014-02-13 21:18:02 +09:00
Keisuke Kuroyanagi be61170588 Create Ver2PtNodeArrayReader.
Bug: 12810574
Change-Id: I7708d24d735680b2fe9e6700316076018e88c98d
2014-02-10 21:09:55 +09:00
Keisuke Kuroyanagi cf2b075146 Stop passing buffer directly to DynamicPtReadingHelper.
Bug: 12810574
Change-Id: I656d99f504d8cf4e057080713b174943afd9dd4c
2014-02-10 21:06:09 +09:00
Keisuke Kuroyanagi 1e2752924d Create Ver2ParticiaTrieNodeReader.
Bug: 12810574

Change-Id: I7d3298b5f419d557755ae433c8b8cc0d145f4cc3
2014-02-10 21:06:09 +09:00
Keisuke Kuroyanagi 1d6afa179c Refactoring: extract PtNode array reading logic form helper.
Bug: 12810574
Change-Id: I2d2660871862f11630c3ad7bf04bb49ade57c1e7
2014-02-10 21:06:07 +09:00
Keisuke Kuroyanagi fc9ca59cc1 Implement getHeaderInfoNative.
Bug: 11281877
Bug: 12810574
Change-Id: Ia3d85ae2cfdb486e74b8636a62431eae883c85da
2014-02-06 18:19:42 +09:00
Jean Chalard 43cf9076b2 [HD04] Make the locale mandatory.
Bug: 11281748
Change-Id: I69281b0053bec404c3e3c713ade3f65a140f51b1
2014-02-05 17:35:25 +09:00
Keisuke Kuroyanagi c488048634 Merge "Check isEligibleForAutoCommit when batch input is ended." 2014-02-05 03:34:46 +00:00
Keisuke Kuroyanagi 8c5c01e981 Check isEligibleForAutoCommit when batch input is ended.
Bug: 11951198
Change-Id: Ibbe09fa38eaa3ebf8f9b69f744a29db7ac598975
2014-02-05 11:40:17 +09:00
Keisuke Kuroyanagi ad37cddd79 Merge "Add jni interface to get header information from native." 2014-02-04 12:52:50 +00:00
Keisuke Kuroyanagi 927aff72bc Add jni interface to get header information from native.
Bug: 12810574
Change-Id: I2508483bcb3157f04cc1fe13f24f864d301f1f28
2014-02-04 21:42:09 +09:00
Keisuke Kuroyanagi 1d3058daa1 Merge "Don't boost exact matches for personalized dicts." 2014-02-04 09:13:48 +00:00
Keisuke Kuroyanagi 54622d38c2 Don't boost exact matches for personalized dicts.
Bug: 12800726
Change-Id: Ia3a2f82db6cdc9645cad0e329c0b79328d7452cc
2014-02-04 17:47:14 +09:00
Keisuke Kuroyanagi 941734695b Implement Ver4PatriciaTriePolicy::getNextWordAndNextToken.
Bug: 12810574
Change-Id: Idea44f03c477964f58e65fbf2b55e3fcd77a2934
2014-02-04 12:42:14 +09:00
Keisuke Kuroyanagi 38f341a2a5 Add a jni method to iterate words in a dictionary.
Bug: 12810574
Change-Id: I87b13559765f0262dfd06c2ba40d43af6437ea7f
2014-02-03 14:51:58 +09:00
Keisuke Kuroyanagi 9221772ab7 Get bigram information via getWordProperty().
Bug: 12810574
Change-Id: I2750a5659ccbc3e31307c28e35dd9a1dbdffbeee
2014-02-03 11:47:26 +09:00
Keisuke Kuroyanagi 94d9a2309f Extend jni interface to get bigrams in WordProperty.
Bug: 12810574
Change-Id: Ia4b88d02ea8790a5c47d32376cc0b84c3e071ddd
2014-01-31 20:32:44 +09:00
Keisuke Kuroyanagi 17e7768a3e Fetch bigram information in getWordProperty().
Bug: 12810574
Change-Id: Ic67e964b01c2753f2eec82b079dc0e5650f340bb
2014-01-31 20:24:23 +09:00
Keisuke Kuroyanagi 20b7786ece Add BigramProperty and ShortcutProperty in WordProperty.
Bug: 12810574
Change-Id: Ia9e497c49bb2cf10897bae3a79317113325db819
2014-01-31 15:26:43 +09:00
Jean Chalard b0df28f4cc Merge "[HD02] Make the date header attribute mandatory." 2014-01-31 03:58:55 +00:00
Keisuke Kuroyanagi 748f32feba Merge "Rename UnigramProperty to WordProperty." 2014-01-31 03:06:44 +00:00
Keisuke Kuroyanagi e9085da8cb Merge "Simplify UnigramProperty." 2014-01-31 03:06:33 +00:00
Keisuke Kuroyanagi 080a35e959 Rename UnigramProperty to WordProperty.
Bug: 12810574
Change-Id: If5ddd803948aaf6e491ddcbaa5436fb3af3f7257
2014-01-31 11:06:42 +09:00
Jean Chalard a137c21c9c [HD02] Make the date header attribute mandatory.
Bug: 11281748
Change-Id: I48a6f3d95ca89ced0c51335527201ecabfb7998e
2014-01-30 18:19:21 +09:00
Keisuke Kuroyanagi 5f7f6a1615 Simplify UnigramProperty.
Bug: 12810574
Change-Id: I606f559b5dd340b7525280ecead2c2c7ec920a78
2014-01-30 17:10:23 +09:00
Jean Chalard 324adefca3 [HD01] Small initial refactoring
Bug: 11281748
Change-Id: I3c64c75ecd17729bdacf03048311d76ca9f37ae2
2014-01-30 17:08:13 +09:00
Keisuke Kuroyanagi 21e2380234 Improve the double letter word promotion logic.
The old logic only checks the top 3 suggestions before the
final adjustment. It leads to instability in scores.

Bug: 10700674
Change-Id: I986aed2aefd66c1fba6196a8f100fcb5bc838a38
2014-01-28 16:33:20 +09:00
Keisuke Kuroyanagi 51c5ec10f9 Add length check for dict update operations.
Bug: 12602903
Change-Id: I6835dee8bf8b356f0f1cf6c0531bee5b3415a13f
2014-01-24 16:32:42 -08:00
Keisuke Kuroyanagi 3e0777e726 Use memmove for all place src and dest can be same.
Change-Id: I03e5c8f95cb22c7096ff545f1181f914b80a6c58
2014-01-20 11:27:01 -08:00
Keisuke Kuroyanagi d78a447d10 Add a dedicated method to control time in native code.
Bug: 12443085
Change-Id: I41a5cf6c895cb59e54af98b40efded36afcd3247
2014-01-15 14:55:57 -08:00
Tadashi G. Takaoka 20a8a4a3d9 Fix native method signature
Change-Id: Ia2d566f162f746c6b2b2b874f7278d86abd9e839
2014-01-15 18:56:40 +09:00
Keisuke Kuroyanagi 9638693479 Fix native crash in BigramDictionary::addWordBigram()
Bug: 12479653
Change-Id: I7d263f744f711202000524a47769dc2d3d0e0de6
2014-01-14 18:51:49 -08:00
Keisuke Kuroyanagi 84c52a3c81 Boundary check for ProximityInfoState::getProximityTypeG().
Bug: 12481052
Change-Id: Ic0b64d2fa17eb8f65f3ad1a7b468cdf6dddf7e70
2014-01-10 20:15:36 +09:00
Keisuke Kuroyanagi 05113c1847 Check whether the word is OOV or not for amanatto update.
Bug: 11736529
Change-Id: I27973212da7e922b2185dbb4febfb5bb4dfbdcbb
2014-01-08 21:02:35 +09:00
Keisuke Kuroyanagi b68dd6cd0b Merge "Differentiate exact matches' minor errors." 2013-12-19 04:14:11 +00:00
Keisuke Kuroyanagi afa6c07d30 Differentiate exact matches' minor errors.
Bug: 8844931
Change-Id: I06754643188ccd28ba8c873878f7761787d91ff6
2013-12-19 12:37:56 +09:00
Ken Wakasa abe3a35abf Add C++ compiler warning options
Change-Id: I0d79d450c5cca887d02a1087128c1d3eb0bf0b7f
2013-12-19 00:12:01 +09:00
Keisuke Kuroyanagi d8f35f7b4c Move methods for outputting from Suggest.
Bug: 8844931
Change-Id: I83dde6c37b75ed1e1ae4e0972e169d30ada8faf5
2013-12-18 16:47:23 +09:00
Keisuke Kuroyanagi 9ee9095528 Move methods for scoring from Traversal to Scoring.
Bug: 8844931

Change-Id: I6137d06e597f4e7b81aaf29555199e18984f2c39
2013-12-18 07:13:44 +00:00
Keisuke Kuroyanagi d5f5dd74c2 Quit suggest words that do not include proximity chars.
Bug: 10416722

Change-Id: I74d27c6a22b4ca47d02eb238b2fbcc49f5dee99c
2013-12-18 14:31:10 +09:00
Keisuke Kuroyanagi b5215d456a Increment version number of ver4 format to 401.
Bug: 11073222
Change-Id: I3878aef02040b1ef73165645fc70ede586289c51
2013-12-16 23:02:54 +09:00
Keisuke Kuroyanagi 9b08a9e611 Fix: incompatibility of sparse table.
Bug: 11073222
Change-Id: Id17178efd8f9f3828d821cc718d35606e8bd4b1a
2013-12-16 22:46:29 +09:00
Keisuke Kuroyanagi c1163c8518 Align block sizes for ver4 format to java side.
Bug: 11073222
Change-Id: I09646cbc81529576d5e34dcfa7bc29083a64076f
2013-12-16 20:42:32 +09:00
Jean Chalard a245d15da5 Have dicttool use the native library to generate v4 dicts.
Yay !

Change-Id: Iea8ced9e81031b9ab7eff05ad9ef7215be248de9
2013-12-13 18:18:20 +09:00
Ken Wakasa 2fa3693c26 Reset to 9bd6dac470
The bulk merge from -bayo to klp-dev should not have been merged to master.

Change-Id: I527a03a76f5247e4939a672f27c314dc11cbb854
2013-12-13 17:13:32 +09:00
Keisuke Kuroyanagi 6bc5acaa79 Fix: Suggested words from user history are invalid.
- Suggestions form user history can contain invalid words.
- isValidWord always returns false.

Bug: 11139426
Change-Id: I6075b275603332ddb00f4a9284afcaa82d824270
2013-10-22 05:23:48 -07:00
Keisuke Kuroyanagi 6d91e4ce74 Fix offdevice test build.
Change-Id: I42143bdc4f6f5aa4f55530de84819ab722a22f72
2013-10-08 16:05:42 +09:00
Keisuke Kuroyanagi 6d3d53955e Merge "Fix a bug: wrong parent position is written when moving." 2013-10-08 04:48:53 +00:00
Keisuke Kuroyanagi 802e6383ea Fix a bug: wrong parent position is written when moving.
Change-Id: I93d33ba9105eb85327108cca5706d8db3399de6a
2013-10-08 12:44:00 +09:00
Jean Chalard 86f7711407 Merge "Don't auto-correct to non-whitelist shortcuts" 2013-10-07 10:04:18 +00:00
Jean Chalard f309f2288b Don't auto-correct to non-whitelist shortcuts
Bug: 11076722
Change-Id: I0de10ab24d33ec31f45664fe92d80d5a7bec9c20
2013-10-07 19:01:57 +09:00
Keisuke Kuroyanagi cfb018ba6d Fix bug and Add large test for decaying dictionary.
- GC gets failure when the dictionary become empty.
- Useless unigrams are sometimes not removed.

Bug: 10197478
Change-Id: I8d1479c01efba61a81f03bc077da6bcb4797a940
2013-10-07 17:31:01 +09:00
Keisuke Kuroyanagi 15b1a0fd14 Parameter optimization.
[Category diff]
+1     194
-1      21
+2      15
-2       1
+3       1
-3      15
+4     152
-4      90
+5     108
-5     197
+6      94
-6     136
+7      28
-7     132

[Weighted category diff]
+1     230
-1      23
+2      15
-2       1
+3       1
-3      15
+4     180
-4     106
+5     122
-5     224
+6     107
-6     158
+7      29
-7     157

show diff for ./en_user_log_phones_2011_08.csv
+1     171
-1       9
+2       7
-2       1
+3       1
-3       7
+4     123
-4      76
+5      84
-5     157
+6      66
-6     119
+7      20
-7     103

Before
---- count ----
Count(1):75.64%, 177913
Count(2):1.06%, 2510
Count(3):0.56%, 1319
Count(4):6.63%, 15612
Count(5):9.87%, 23223
Count(6):2.79%, 6580
Count(7):3.41%, 8038
---- weight ----
Weight(1):96.88%, 2009907
Weight(2):0.24%, 5157
Weight(3):0.09%, 2025
Weight(4):0.77%, 16095
Weight(5):1.11%, 23077
Weight(6):0.39%, 8172
Weight(7):0.48%, 10146
---- score ----
Conservative score = 66.406
Normal score = 81.512
Agressive score = 89.064
Insane score = 92.841

After
---- count ----
Count(1):75.71%, 178087
Count(2):1.07%, 2524
Count(3):0.55%, 1305
Count(4):6.66%, 15677
Count(5):9.83%, 23133
Count(6):2.78%, 6539
Count(7):3.37%, 7930
---- weight ----
Weight(1):96.89%, 2010118
Weight(2):0.24%, 5171
Weight(3):0.09%, 2011
Weight(4):0.78%, 16184
Weight(5):1.1%, 22972
Weight(6):0.39%, 8109
Weight(7):0.48%, 10014
---- score ----
Conservative score = 66.431
Normal score = 81.531
Agressive score = 89.08
Insane score = 92.855

No diffs for 10+ freq user log.

Change-Id: Ica4a7604507a2c91aaa7daf5bacf4fce4039f547
2013-10-07 12:39:51 +09:00
Keisuke Kuroyanagi 3e5f4b53b0 Merge "Check the elapsed time for decaying." 2013-10-04 07:16:17 +00:00
Keisuke Kuroyanagi 67c855ea6f Check the elapsed time for decaying.
Bug: 6669677
Change-Id: I0401a4c0908c702ce65abfa5e017dd16cb1296f9
2013-10-04 16:11:11 +09:00
Xiaojun Bi 0b62621446 Merge "Optimize the parameters for the typing algorithm" 2013-10-04 03:25:43 +00:00
Xiaojun Bi 2ed09c214a Optimize the parameters for the typing algorithm
The new set of parameters are optimized for both
keystroke savings and regression test scores.

This change is corresponding to the patch 6 of
Change-Id: Ib8439a85de26cbbba58837344717f0acbfcf0ab0
in the regression test repository.

Here is the link to the doc analyzing the
“nnow → know” case:
https://docs.google.com/a/google.com/document/d/1XIHfAHLlP1f3F8R-u7yxPGWcP58tokygzN_lQKXFFgM/edit

Here is the link to the spreadsheet showing
the diff of the words with frequencies >= 10
in en_user_log_phones_2011_08.csv.
https://docs.google.com/a/google.com/spreadsheet/ccc?key=0Am_RQlV4zC6SdFFVTlhJT0RLUENCWWZOZ3JQTUpMQ2c&usp=drive_web#gid=0

Updated TRT Results for this change:
[Category diff]
+1     783
-1     717
+2      20
-2      34
+3      34
-3      20
+4     575
-4     777
+5     765
-5     755
+6     785
-6     666
+7     479
-7     472

[Weighted category diff]
+1     999
-1     965
+2      21
-2      35
+3      35
-3      21
+4     804
-4     980
+5     970
-5     971
+6     954
-6     831
+7     645
-7     625

Bug: 10613502

Change-Id: I5cd447673a196ad5af641a2118602bec879bdefb
2013-10-03 19:30:26 -07:00
Keisuke Kuroyanagi 864ee881bd Merge "Fix UserHistoryDictionaryTests." 2013-10-03 12:02:34 +00:00
Keisuke Kuroyanagi 11f7cae094 Fix UserHistoryDictionaryTests.
Bug: 6669677
Bug: 10667710

Change-Id: I6cdc6a6c9cacc7f276fda3a26ec31e3eb928471c
2013-10-03 20:55:34 +09:00
Keisuke Kuroyanagi 9cb1e78a44 Fix: Native crash when an empty attribute is written.
Bug: 10964805
Change-Id: Ia3cd891d20aee2226092f0f646d8f280901786fc
2013-10-03 17:30:54 +09:00
Keisuke Kuroyanagi 3d92954120 Fix build.
Change-Id: Ib33b27214e67378646e44f5b45bda298f960524f
2013-10-02 23:02:42 +09:00
Keisuke Kuroyanagi 7c4dcf1e91 Use probability table for decaying dictionaries.
Bug: 6669677
Change-Id: Ib5994a2e343dfcdaf23755e523f52846709b1c6c
2013-10-02 18:01:47 +09:00
Keisuke Kuroyanagi c76bbceedc Stochastic decay.
Bug: 6669677
Change-Id: Ib2d9228b951c77dab7a8675ce9db60677e87e771
2013-10-02 17:51:12 +09:00
Keisuke Kuroyanagi 13d5dc914a Change name of DecayingUtils.
Bug: 6669677
Change-Id: I97839b2184b95ae1659c55a9b31d22e2d601cba1
2013-10-02 16:23:44 +09:00
Jean Chalard 74577bedb3 Merge "Implement the heuristic for auto-commit." 2013-10-01 12:10:57 +00:00
Jean Chalard ff9476f10a Merge "Fix typos" 2013-10-01 12:10:37 +00:00
Jean Chalard 3e954347e3 Fix typos
I think I may pass out from the sheer ugliness

Change-Id: I1e709f03ef47ec713552d41fd9e37e01b810ae88
2013-10-01 21:08:14 +09:00
Jean Chalard 459cd6f8ef Implement the heuristic for auto-commit.
Bug: 9059617
Change-Id: I066abf018df5aaeabf415425dd822ebe233e6008
2013-10-01 21:00:40 +09:00
Keisuke Kuroyanagi 6995310996 Separate "GC" and "GC with decay".
Bug: 6669677
Change-Id: I9d6aba76cef2616f0549e612db9701e1d6a19467
2013-10-01 18:09:31 +09:00
Jean Chalard bb57090f1d Create the wiring for auto-commit confidence computation.
Bug: 9059617
Change-Id: I7e4e05ffa8c68cfebbe362a977fd176555cad12a
2013-10-01 15:04:15 +09:00
Jean Chalard bf1beefd08 Merge "Surface the distance after first word for autocommit." 2013-09-30 14:06:02 +00:00
Jean Chalard da06e385f5 Surface the distance after first word for autocommit.
Bug: 9059617
Change-Id: Ie9b4cc8148ae8e0ff437b3337ab6c1bde95500f5
2013-09-30 23:02:04 +09:00
Keisuke Kuroyanagi fd02b2d6ee Implement simple dictionary decay.
Groundwork and implement simple decay.
Increment probability when typed and decrement probability
at GC.

Bug: 6669677

Change-Id: Ib12caead0cbeef4ce7808fe8ac0b00ee331523fe
2013-09-30 20:53:35 +09:00
Keisuke Kuroyanagi c18510049a Prepare dictionary decay.
Bug: 6669677
Change-Id: I8fbae190dd44a6bdbee7e9b6d3a16208322727f7
2013-09-30 13:57:54 +09:00
Keisuke Kuroyanagi 1cf4789ba6 Merge "Set header attributes for ExpandableBinaryDictionary." 2013-09-29 05:14:22 +00:00
Keisuke Kuroyanagi 5ed30a7660 Set header attributes for ExpandableBinaryDictionary.
Bug: 6669677

Change-Id: I2462777eaa07600f1c774226adfc4f351882f523
2013-09-28 12:50:09 +09:00
Keisuke Kuroyanagi 68bc4ba5c2 Merge "Add boundary checking for PtNode Array reading." 2013-09-27 14:25:24 +00:00
Keisuke Kuroyanagi 8b580819a5 Merge "Add unigram/bigram counting." 2013-09-27 14:14:49 +00:00
Keisuke Kuroyanagi 31097a57cc Add unigram/bigram counting.
Bug: 6669677
Change-Id: I05ea2201d822dddf062b08c8467daa336760e16c
2013-09-27 23:12:12 +09:00
Keisuke Kuroyanagi 67cb282b64 Add boundary checking for PtNode Array reading.
Bug: 6669677
Change-Id: Iea5e19d98d2fc26f137046dd5f8e339239672351
2013-09-27 22:28:54 +09:00
Keisuke Kuroyanagi 85463c7f40 Merge "Use base lower character to get point to key length." 2013-09-26 08:28:41 +00:00
Keisuke Kuroyanagi e639d7346c Use base lower character to get point to key length.
Bug: 9490364
Change-Id: I3755f00ab22f926f087fc917b95a2db7d722fa00
2013-09-26 16:36:05 +09:00
Keisuke Kuroyanagi 5ef6209656 Create empty dictionary file in native code.
Bug: 6669677
Change-Id: I46d23deee1fd091678f4593561cb8687eb815212
2013-09-26 12:59:02 +09:00
Keisuke Kuroyanagi 10b56df486 Merge "Prepare dictionary file creating in native code." 2013-09-26 02:38:19 +00:00
Keisuke Kuroyanagi c6015327fb Merge "Add empty PtNode checking for PatriciaTriePolicy." 2013-09-26 02:32:03 +00:00
Keisuke Kuroyanagi 9155eec0d9 Add empty PtNode checking for PatriciaTriePolicy.
Bug: 9503570
Change-Id: I784d29c307c1040699fa0aadfc6a47d97f03ffe4
2013-09-26 11:19:04 +09:00
Keisuke Kuroyanagi 36f4592128 Merge "Refactoring header attribute reading." 2013-09-26 01:57:22 +00:00
Keisuke Kuroyanagi 1592eb8a3a Prepare dictionary file creating in native code.
Bug: 6669677
Change-Id: I7c476a6e99ec7ac883f05d84ef306265255154da
2013-09-26 10:48:43 +09:00
Keisuke Kuroyanagi 989596844e Refactoring header attribute reading.
Bug: 6669677
Change-Id: Ifc11da614d5c331ac61019a324e3a0ff187329cd
2013-09-26 10:45:03 +09:00
Keisuke Kuroyanagi 009dcac33f Boundary check for children creating of PatriciaTriePolicy.
Bug: 10537529
Change-Id: I0cd8b6de230795498395ca08789ccc1c74780f2c
2013-09-25 19:54:31 +09:00
Keisuke Kuroyanagi 3d2802ef2e Allow large memory space for GC.
Bug: 6669677
Change-Id: I021c92a1ca5cd28f745cbfe729c99e346c58074d
2013-09-24 19:21:17 +09:00
Keisuke Kuroyanagi f3cd38f2c7 GC step 5. Add large tests and fix bugs.
Bug: 6669677
Change-Id: I41e44a64730f9c66645995095a7ecff51ffd5351
2013-09-24 16:32:25 +09:00
Keisuke Kuroyanagi 2cfe7f9e3b GC step 4. Update all positions in new dict and add a test.
Bug: 6669677
Change-Id: I035d848a210653dcd3c1a1f21781968adced9225
2013-09-24 15:29:56 +09:00
Keisuke Kuroyanagi 0355bf2d4c GC step 3. Place and write valid PtNodes.
Bug: 6669677

Change-Id: Id2b7359bafb34acf12dc3bf4c595a03073fda805
2013-09-20 21:11:49 +09:00
Keisuke Kuroyanagi 77ef75cbe6 GC step 2. Finding garbage bigram entries.
Bug: 6669677
Change-Id: Ie3f406776ab56bf589ac10e15e2534ff8cb1f275
2013-09-20 20:04:57 +09:00
Keisuke Kuroyanagi 2a64726a16 Step 1 to implement GC. Finding garbage PtNodes.
Bug: 6669677
Change-Id: I3551fe2f16a09d2bf7761f4e1d73ebd4a03380e7
2013-09-20 15:37:14 +09:00
Keisuke Kuroyanagi b7e8a9abf5 Groundwork for implementing GC.
Bug: 6669677

Change-Id: Ia2b2f338795ab62cc9eef73731285b2a5a0ac5e4
2013-09-19 14:48:59 +09:00
Keisuke Kuroyanagi e28927dfb6 Change name of header_reading_utlis.*
Bug: 6669677
Change-Id: I91389050148237580ef640d3a58b935ea752954e
2013-09-18 18:27:01 +09:00
Keisuke Kuroyanagi 484fa7b59c Add dictionary header writing methods.
Bug: 6669677
Change-Id: I392ac4776b55779903cbaa17e683005d80017a41
2013-09-18 18:08:33 +09:00
Keisuke Kuroyanagi 72e53a1e38 Merge "Implement dictionary flush." 2013-09-18 05:20:05 +00:00
Keisuke Kuroyanagi 1560543754 Implement dictionary flush.
Bug: 6669677
Change-Id: I1d70ac6319fb6d8700074de382568c2108887960
2013-09-18 13:19:14 +09:00
Keisuke Kuroyanagi 9465819cf6 Merge "Add BinaryDictionary.getBigramProbabilityNative()." 2013-09-18 04:10:38 +00:00
Keisuke Kuroyanagi 4d02a2d44d Add BinaryDictionary.getBigramProbabilityNative().
Bug: 10197478
Change-Id: Id16e3ee22a17679c46cc7a0199a9e28065177aa3
2013-09-18 11:18:28 +09:00
Keisuke Kuroyanagi 4e17b42d0f Output input index of second word's first char.
This is for partial commit.

Bug: 9059617

Change-Id: I77a0245b63c29b7234fd9b06d362e05aebf30051
2013-09-17 20:31:34 +09:00
Keisuke Kuroyanagi ac7e005ef0 Merge "Prepare dictionary saving in native code." 2013-09-17 09:18:32 +00:00
Keisuke Kuroyanagi d0246277fd Prepare dictionary saving in native code.
Bug: 6669677

Change-Id: I0787f66409e2b183c6328fa05805945520e1e93a
2013-09-17 18:07:16 +09:00
Keisuke Kuroyanagi d9f450ef00 Implement removeBigramWords() for DynamicPatriciaTrie.
Bug: 6669677
Change-Id: I99cb517511b4c968b8bf937baab5d7f42b0f534e
2013-09-17 18:05:32 +09:00
Keisuke Kuroyanagi 78b55a31cb Fix handling multi-bytes characters and add a test.
Bug: 6669677

Change-Id: Id2154db47adea2929559a4187a726f9dfa83363e
2013-09-17 15:11:24 +09:00
Keisuke Kuroyanagi 6d1a29eaab Fix build.
Change-Id: I1c3c2996ca11bfe8864df774e9280893cf17c0d4
2013-09-17 13:03:12 +09:00
Keisuke Kuroyanagi cd6a0430c7 Implement addBigramWords() for DynamicPatriciaTrie.
Bug: 6669677
Change-Id: Ia6aa76c212165690191c65fee9dacdc44be5acd5
2013-09-17 12:52:21 +09:00
Keisuke Kuroyanagi cb816e5e16 Merge NOT_A_VALID_WORD_POS into NOT_A_DICT_POS.
Change-Id: I2ac3aa2a19d14e8c4159a59334e7816bd1409688
2013-09-16 18:37:23 +09:00
Keisuke Kuroyanagi 9ea9c61c99 Move methods using ByteArrayUtils from .h to .cpp.
Bug: 10402083
Change-Id: Ic5f1aa11eb403f5bdc83de8e38a6457200519cae
2013-09-16 18:37:08 +09:00
Keisuke Kuroyanagi f874728496 Add boundary check for PtNode reading position.
Bug: 10743878
Change-Id: I6727b12b0ef98bb9cfb3ca95aeab2c79749f47a2
2013-09-16 18:34:34 +09:00
Jean Chalard 41aaff6cdf Merge "[AC4] Add native methods necessary for auto-commit" 2013-09-13 11:41:55 +00:00
Jean Chalard 24aad5a4d5 [AC4] Add native methods necessary for auto-commit
Bug: 9059617
Change-Id: I7a47b0675446fc4f39628c60d16de9aea90d1b4d
2013-09-13 20:15:15 +09:00
Keisuke Kuroyanagi 04bf3cd4e0 Merge "Employ "bigram link" for handling moved bigram target." 2013-09-13 09:46:27 +00:00
Keisuke Kuroyanagi 8c69ddb53e Employ "bigram link" for handling moved bigram target.
Bug: 6669677

Change-Id: I9a6c0cdb28265e3215ced88f38344df12c25a76d
2013-09-13 18:36:29 +09:00
Keisuke Kuroyanagi ebe3b3e8fd Merge "Fix bug related to dynamic patricia trie bigram adding." 2013-09-13 05:49:26 +00:00
Keisuke Kuroyanagi 0243c9ae3d Update children's parent position when the node get moved.
Bug: 6669677
Change-Id: Ifcaf784afd218c7afd70167045cd2aed8b7909c2
2013-09-13 14:26:00 +09:00
Keisuke Kuroyanagi 1c0fc852f6 Fix bug related to dynamic patricia trie bigram adding.
Bug: 6669677

Change-Id: Ia1216a1860a7c5c12a0d8a0816dda8d6a3bea123
2013-09-13 11:38:53 +09:00
Keisuke Kuroyanagi 4c2767857a Change cache capacity depending on the dictionary size.
Bug: 10699291

Change-Id: I7042d4c1307da2d991d4dd10d637f18026acb996
2013-09-12 18:47:56 +09:00
Keisuke Kuroyanagi 1b80a45e79 Merge "Make terminal cache small." 2013-09-12 05:21:49 +00:00
Keisuke Kuroyanagi 80ca7abea3 Make terminal cache small.
Bug: 10699291

Before:
(0)  2997.63 (0.98%)
(1)  303760.77 (98.92%)
(2)  274.94 (0.09%)
(66)  0.38 (0.00%)
Total 307062.27 (sum of others 307033.73)

After:
(0)  2953.22 (0.96%)
(1)  304633.86 (98.93%)
(2)  293.76 (0.10%)
(66)  0.38 (0.00%)
Total 307915.65 (sum of others 307881.22)

Change-Id: I6905abeb590ef50d48ddfcd8ef8b5351af399150
2013-09-12 14:18:48 +09:00
Keisuke Kuroyanagi f1233b58c2 Use same session id for typing and gesture.
Bug: 10699291
Change-Id: I7c8a3a57e8d189b72a17e4b9c6831becee6ec146
2013-09-12 12:08:22 +09:00
Keisuke Kuroyanagi f38969f3f8 Fix bug of dictionary dynamic updating methods.
Bug: 6669677
Change-Id: I5483adb03e1ac0c27bbfd99d5f4d7cc29809d70a
2013-09-10 22:32:30 +09:00
Keisuke Kuroyanagi e531c2241e Move a flag about switching dynamic update to java.
Bug: 6669677

Change-Id: I6aa99cae4a227f9202179c2873d13473a773e024
2013-09-10 18:45:53 +09:00
Keisuke Kuroyanagi 210669605a Merge "Fix: ExtendableBuffer" 2013-09-10 06:45:41 +00:00
Keisuke Kuroyanagi 4e79fb24ab Fix: ExtendableBuffer
Bug: 6669677
Change-Id: I73142fdabac1cbd4128b83c3b26b642b4b4f4da7
2013-09-10 15:40:11 +09:00
Keisuke Kuroyanagi 216617062a Merge "Implement split and create node methods." 2013-09-10 06:38:05 +00:00
Keisuke Kuroyanagi fdcd67ba15 Implement split and create node methods.
Bug: 6669677
Change-Id: Iac4afb637a8ba3d55f7a88f4a532831c1731f93e
2013-09-10 15:27:19 +09:00
Keisuke Kuroyanagi c5f35a9c86 Merge "Calculate parent offset from the head of moved node." 2013-09-10 06:08:56 +00:00
Keisuke Kuroyanagi 9c820de7a1 Calculate parent offset from the head of moved node.
Bug: 6669677
Change-Id: I710453f1c37ec14e5b6830595c1afb2caff83cf2
2013-09-10 15:03:44 +09:00
Keisuke Kuroyanagi 1d4a07f6c7 Merge "Re-call getBuffer after writing in bigram/shortcut policy." 2013-09-10 03:27:30 +00:00
Keisuke Kuroyanagi c987120cbc Re-call getBuffer after writing in bigram/shortcut policy.
Bug: 6669677
Change-Id: I35dc290aa9582e019681b8aae49db3f8d37c90d4
2013-09-10 12:12:42 +09:00
Keisuke Kuroyanagi a159ad473c Implement create children array and add child method.
Bug: 6669677
Change-Id: Ic89c3dfe01937e771db8fc59d5259496a9464a47
2013-09-09 16:44:17 +09:00
Keisuke Kuroyanagi 7bd7dc5d0d Implement update node probability method.
Bug: 6669677
Change-Id: I61ac0d05e362fc7d8a967ddd8286580998c70487
2013-09-09 15:29:11 +09:00
Keisuke Kuroyanagi 3fbc5ef196 Implement inserting new node into PtNode array.
Bug: 6669677

Change-Id: I0171476231181e41234dde76ac9061febb2e8c35
2013-09-06 20:40:08 +09:00
Keisuke Kuroyanagi 40182c737d Merge "Compute probability using structure policy." 2013-09-06 08:10:07 +00:00
Keisuke Kuroyanagi 65d19946be Compute probability using structure policy.
Bug: 6669677
Change-Id: Icd50fc30274cce65ebeb2e7cc8368b59e5cda05a
2013-09-06 16:50:09 +09:00
Keisuke Kuroyanagi e4dcebe0c3 Add node flags creating methods.
Bug: 6669677
Change-Id: Ieb4178da61fa38f6b32baefa099cc0724f9fb6be
2013-09-06 14:56:59 +09:00
Keisuke Kuroyanagi 96a0631664 DynamicPatriciaTrieWritingUtils to write PtNodes.
Bug: 6669677
Change-Id: I67cce3c1d338cf747ed2204c96768907d990d269
2013-09-05 20:12:56 +09:00
Keisuke Kuroyanagi 2a41a35635 Add code point writing methods for updatable dictionaries.
Bug: 6669677
Change-Id: If7ab6fefdb9a7f0d21c397edbb7d9e7fddc0e0db
2013-09-05 14:24:07 +09:00
Keisuke Kuroyanagi 5901b5e1bd Check usesForgettingCurve in HeaderPolicy.
Bug: 6669677
Change-Id: I47ebfc50f477b2a6514fba6fad421dd90f29ecb1
2013-09-05 12:28:38 +09:00
Keisuke Kuroyanagi 91486bdb3d Merge "Employ a header attribute map in headerPolicy." 2013-09-04 10:06:05 +00:00
Keisuke Kuroyanagi 5754817a5e Employ a header attribute map in headerPolicy.
Bug: 6669677
Change-Id: I4a084cdd7fcd7a8ed3a70fb7e365031eedd981e5
2013-09-04 19:00:53 +09:00
Keisuke Kuroyanagi 5d8fd5457d Change name of bigram_list_reading_utils.* .
Bug: 6669677
Change-Id: Ifd2baa11fb4ee083be1d23e8235f6f903c1b5747
2013-09-03 20:44:58 +09:00
Keisuke Kuroyanagi 202e416b51 Add bigram writing methods.
Bug: 6669677

Change-Id: Ib62f6c31c4bcbb41ac200dccccb13e366b3c2173
2013-09-03 20:44:51 +09:00
Keisuke Kuroyanagi 9e3082e016 Add DynamicShortcutListPolicy::copyAllShortcuts().
Bug: 6669677
Change-Id: I74959fe3ca59d77ba0279c75f4d72db13735322f
2013-09-03 18:36:53 +09:00
Keisuke Kuroyanagi f1cd7a081c Implement reading side of updating methods of dpt.
Reading methods are used to determine the position to
be updated in dynamic patricia trie.

Bug: 6669677

Change-Id: Ie9acdcdbc73aa3fd4294c97aa39451a96b165ed9
2013-09-03 14:47:30 +09:00
Keisuke Kuroyanagi 75d1cb667d Add buffer writing methods.
Bug: 6669677

Change-Id: Ic3345e36a7842b77598c21de9b54f7c2863df38f
2013-09-02 19:27:01 +09:00
Keisuke Kuroyanagi 2660f83a12 Change name of extendable_buffer.h to buffer_with_... .
Bug: 6669677

Change-Id: Id2bd79d8f86c690d5c16d1ab726c5f6fa28ba5e3
2013-09-02 17:18:41 +09:00
Keisuke Kuroyanagi 3e76487c6c Consolidating dict buffers into BufferWithExtendableBuffer.
Bug: 6669677

Change-Id: Ied58c123b68199bddb91293ff5cf5d96691e1f6b
2013-09-02 17:18:41 +09:00
Keisuke Kuroyanagi 4d814bfcb7 Introduce DynamicPatriciaTrieReadingHelper.
It supports iterating nodes and dealing with additional
buffer. It counts nodes and node arrays to avoid infinite
loop.

Bug: 6669677

Change-Id: I322e7263c0535e098635a1e5de098838de09467d
2013-08-30 19:41:58 +09:00
Keisuke Kuroyanagi 69ebca0643 Fix children position reading for dynamic patricia trie.
Bug: 6669677
Change-Id: I68ad68361676f952bd25903c253c22617d3ce361
2013-08-29 18:31:15 +09:00