Patents by Inventor Wenli Zhu
Wenli Zhu has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9619379Abstract: A data storage device is disclosed comprising a non-volatile memory (NVM). During a read operation, a sequence of signal samples is generated representing codewords stored in the NVM. The signal samples are buffered to generate buffered signal samples. The buffered signal samples are processed at a first frequency to detect a data sequence, and a bottleneck condition is detected associated with processing the buffered signal samples at the first frequency. When the bottleneck condition is detected, the buffered signal samples are processed at a second frequency higher than the first frequency to detect the data sequence.Type: GrantFiled: March 6, 2013Date of Patent: April 11, 2017Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Tom Sai-Cheung Chan, Wenli Zhu, Jaedeog Cho, Thao Hieu Banh
-
Patent number: 8489537Abstract: Described is a technology in which a finite state machine-based method segments original sequential data into high level units. Segments with similar sub-sequences are treated as the same unit. In general, the finite state machine indentifies sub-sequences in the sequential data that have similar tree-like microstructures. One described finite state machine operates by entering a path state when an input is a path command corresponding to a non-leaf node; the state machine remains in the path state until another command comprises an action command corresponding to a leaf node, whereby it outputs an action unit, or until the other command comprises a path command that is not the parent or the sibling of a next command, whereby a browsing unit is output. Also described is aggregating sub-sequences of a same unit to produce an access structure corresponding to the unit.Type: GrantFiled: January 26, 2009Date of Patent: July 16, 2013Assignee: Microsoft CorporationInventors: Jie Su, Min Chu, Wenli Zhu, Jian Wang
-
Patent number: 8335757Abstract: Described is a technology in which sequential data, such as application program command sequences, are processed into patterns, such as for use in analyzing program usage. In one aspect, sequential data may be first transformed via state machines that remove repeated data, group similar data into sub-sequences, and/or remove noisy data. The transformed data is then segmented into units. A pattern extraction mechanism extracts patterns from the units into a pattern set, by calculating a stability score (e.g., a mutual information score) between succeeding units, selecting the pair of units having the most stability (e.g., the highest score), and adding corresponding information for that pair into the pattern set. Pattern extraction is iteratively repeated until a stopping criterion is met, e.g., the pattern set reaches a defined size, or when the stability score is smaller than a pre-set threshold.Type: GrantFiled: January 26, 2009Date of Patent: December 18, 2012Assignee: Microsoft CorporationInventors: Jie Su, Min Chu, Wenli Zhu, Jian Wang
-
Patent number: 8176476Abstract: Described is a technology by which software instrumentation data collected from user program sessions are analyzed to output an analysis report or the like via example methods and an architecture configured for efficient operation. A client component queries a service for analysis related information. To process the query, the service works with a data manager, and via a high dimensional analysis component may use information processed from the software instrumentation data, such as in the form of one or more inverted indexes and/or raw value files. The service may include a usage analysis component, a feature recognition component that locates features from command sequences, a user recognition component and/or a program reliability component. One or more counterpart components at the client may generate analysis reports or the like based on the query results. The client also may maintain user libraries and feature libraries to facilitate analyses.Type: GrantFiled: June 15, 2007Date of Patent: May 8, 2012Assignee: Microsoft CorporationInventors: Yantao Li, Adnan Azfar Mahmud, Wenli Zhu, Haidong Zhang, Shuguang Ye, Bing Sun, Qiang Wang, Yingnong Dang, Guowei Liu, Min Wang, Jian Wang
-
Publication number: 20100191753Abstract: Described is a technology in which sequential data, such as application program command sequences, are processed into patterns, such as for use in analyzing program usage. In one aspect, sequential data may be first transformed via state machines that remove repeated data, group similar data into sub-sequences, and/or remove noisy data. The transformed data is then segmented into units. A pattern extraction mechanism extracts patterns from the units into a pattern set, by calculating a stability score (e.g., a mutual information score) between succeeding units, selecting the pair of units having the most stability (e.g., the highest score), and adding corresponding information for that pair into the pattern set. Pattern extraction is iteratively repeated until a stopping criterion is met, e.g., the pattern set reaches a defined size, or when the stability score is smaller than a pre-set threshold.Type: ApplicationFiled: January 26, 2009Publication date: July 29, 2010Applicant: Microsoft CorporationInventors: Jie Su, Min Chu, Wenli Zhu, Jian Wang
-
Publication number: 20100191693Abstract: Described is a technology in which a finite state machine-based method segments original sequential data into high level units. Segments with similar sub-sequences are treated as the same unit. In general, the finite state machine indentifies sub-sequences in the sequential data that have similar tree-like microstructures. One described finite state machine operates by entering a path state when an input is a path command corresponding to a non-leaf node; the state machine remains in the path state until another command comprises an action command corresponding to a leaf node, whereby it outputs an action unit, or until the other command comprises a path command that is not the parent or the sibling of a next command, whereby a browsing unit is output. Also described is aggregating sub-sequences of a same unit to produce an access structure corresponding to the unit.Type: ApplicationFiled: January 26, 2009Publication date: July 29, 2010Applicant: Microsoft CorporationInventors: Jie Su, Min Chu, Wenli Zhu, Jian Wang
-
Patent number: 7765216Abstract: Described is a technology by which high dimensional data may be efficiently analyzed, including by filtering, grouping, aggregating and/or sorting operations to provide an analysis result. For efficiency in the analysis, an inverted index may be built (e.g., as part of filtering), and/or a hash structure (e.g., as part of grouping). Analysis parameters specify dimensions, on which union and/or intersection operations are performed to provide a final dataset. The analysis tool provides a user interface for inputting analysis parameters and outputting information corresponding to an analysis result. The analysis tool may sort the information corresponding to the analysis result, e.g., to output the topmost or bottommost results.Type: GrantFiled: June 15, 2007Date of Patent: July 27, 2010Assignee: Microsoft CorporationInventors: Yantao Li, Guowei Liu, Haidong Zhang, Adnan Azfar Mahmud, Bing Sun, Min Wang, Wenli Zhu, Jian Wang
-
Patent number: 7747988Abstract: Described is a technology for analyzing usage of a software program's features. Software instrumentation data is collected during actual user program usage sessions. The collected data is then processed to determine various feature usage counts and other information, cross-feature usage (e.g., among users who use a feature, how many use another feature or program), and characteristics of feature users, e.g., how long, how much, how often and how extensive feature users use a program. Session analysis may be performed to provide information about the number of sessions in which a set of features occur. Feature usage trends over time may also be determined via analysis. A user interface is described for facilitating selection of one or more features to analyze, for facilitating selection of a group of users, and/or for outputting results corresponding to the analysis.Type: GrantFiled: June 15, 2007Date of Patent: June 29, 2010Assignee: Microsoft CorporationInventors: Wenli Zhu, Yantao Li, Qiang Wang, Haidong Zhang, Bing Sun, Guowei Liu, Shuguang Ye, Min Wang, Adan Azfar Mahmud, Jian Wang
-
Patent number: 7739666Abstract: Described is a technology by which software instrumentation data collected from user program sessions are analyzed, including by determining program usage metrics and/or command usage metrics. Information representative of the program usage metrics and/or the command usage metrics is output, such as in the form of a report. The software instrumentation data may be further analyzed, such as to determine at least one usage trend over time, and to determine user groups. For example, a usage subset of sessions that meet specified session usage criteria based on a set of session data may be located, along with a subset of users based on users whose sessions meet specified user criteria. The usage and user subsets may be combined via Boolean logic to produce a result set.Type: GrantFiled: June 15, 2007Date of Patent: June 15, 2010Assignee: Microsoft CorporationInventors: Wenli Zhu, Yantao Li, Qiang Wang, Haidong Zhang, Bing Sun, Shuguang Ye, Min Wang, Jian Wang
-
Patent number: 7681085Abstract: Described is a technology by which software instrumentation data collected during software program usage sessions is analyzed to identify potential problems with software program usage, such as based on frequency of problem occurrence during the usage sessions. Reliability metrics may be calculated from the information. Failure data additionally collected during the usage sessions may be accessed to derive details that correspond to the potential problems. In one example, the information may be analyzed to determine which alerts and/or asserts occurred most often, and/or to determine a relationship between user interface control operations (e.g., clicks and usage of commands) and alerts or asserts.Type: GrantFiled: June 15, 2007Date of Patent: March 16, 2010Assignee: Microsoft CorporationInventors: Adnan Azfar Mahmud, Yingnong Dang, Haidong Zhang, Qiang Wang, Wenli Zhu, Yantao Li, Jian Wang
-
Patent number: 7680645Abstract: Described is a technology by which software program feature usage is located within a sequence of commands collected during program usage sessions. For example, feature generally corresponds to a series of commands, such as copy and paste. A visual modeling component is controlled via drag-and-drop operations to describe a feature model, which is then compiled by a compiler into a finite state machine. Noise models may be used to exclude any command in the sequence that is irrelevant to the feature usage. A recognition process uses the finite state machine to locate program feature usage within the sequence of recorded commands by matching command sub-sequences corresponding to the feature model via the state machine. An analyzer may then use the located matches to provide an analysis report on feature usage.Type: GrantFiled: June 15, 2007Date of Patent: March 16, 2010Assignee: Microsoft CorporationInventors: Yantao Li, Bing Sun, Shuguang Ye, Guowei Liu, Wenli Zhu, Haidong Zhang, Min Wang, Jian Wang
-
Patent number: 7561737Abstract: A mechanism for recognizing and inputting handwritten mathematical expressions into a computer by providing a multi-path framework is described. The framework may include symbol grouping and recognition, tabular structure analysis, subordinate sub-expression analysis, subscript/superscript analysis and character determination, and semantic structure analysis components. A method for recognizing a handwritten mathematical expression includes receiving a plurality of input strokes corresponding to a handwritten mathematical expression and providing a candidate list of recognized candidate expressions based upon the input strokes. Input strokes are grouped into symbols, tabular structures are determined, dominant symbol candidates and subordinate symbols are determined, and subscript and superscript structures are determined.Type: GrantFiled: June 20, 2005Date of Patent: July 14, 2009Assignee: Microsoft CorporationInventors: Yu Zou, Lei Huang, Mingqing Xu, Jian-Lai Zhou, Yue Li, Dongmei Zhang, Xiaohui Hou, Wenli Zhu, Hongyun Yang, Xianfang Wang, Jiang Wu, Jian Wang
-
Patent number: 7506271Abstract: Systems, methods, and computer-readable media for processing electronic ink receive an electronic ink input; convert the electronic ink input to a first machine-generated object using handwriting recognition; display the first machine-generated object on a display; receive speech input; convert the speech input to a second machine-generated object using speech recognition; generate a list of machine-generated objects based on the electronic ink input, the list including the first machine-generated object and alternative machine-generated objects and functioning as a dictionary for converting the speech input; and replace the first machine-generated object with the second machine-generated object. A user may confirm that the second machine-generated object should replace the first machine-generated object.Type: GrantFiled: December 15, 2003Date of Patent: March 17, 2009Assignee: Microsoft CorporationInventors: Jian Wang, Jian-Lai Zhou, Jiang Wu, Hongyun Yang, Xianfang Wang, Wenli Zhu
-
Publication number: 20080313633Abstract: Described is a technology for analyzing usage of a software program's features. Software instrumentation data is during actual user program usage sessions. The collected data is then processed to determine various feature usage counts and other information, cross-feature usage (e.g., among users who use a feature, how many use another feature or program), and characteristics of feature users, e.g., how long, how much, how often and how extensive feature users use a program. Session analysis may be performed to provide information about the number of sessions in which a set of features occur. Feature usage trends over time may also be determined via analysis. A user interface is described for facilitating selection of one or more features to analyze, for facilitating selection of a group of users, and/or for outputting results corresponding to the analysis.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Wenli Zhu, Yantao Li, Qiang Wang, Min Wang, Adnan Azfar Mahmud, Jian Wang, Haidong Zhang, Bing Sun, Guowei Liu, Shuguang Ye
-
Publication number: 20080313507Abstract: Described is a technology by which software instrumentation data collected during software program usage sessions is analyzed to identify potential problems with software program usage, such as based on frequency of problem occurrence during the usage sessions. Reliability metrics may be calculated from the information. Failure data additionally collected during the usage sessions may be accessed to derive details that correspond to the potential problems. In one example, the information may be analyzed to determine which alerts and/or asserts occurred most often, and/or to determine a relationship between user interface control operations (e.g., clicks and usage of commands) and alerts or asserts.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Adnan Azfar Mahmud, Yingnong Dang, Haidong Zhang, Qiang Wang, Wenli Zhu, Yantao Li, Jian Wang
-
Publication number: 20080312899Abstract: Described is a technology by which software program feature usage is located within a sequence of commands collected during program usage sessions. For example, feature generally corresponds to a series of commands, such as copy and paste. A visual modeling component is controlled via drag-and-drop operations to describe a feature model, which is then compiled by a compiler into a finite state machine. Noise models may be used to exclude any command in the sequence that is irrelevant to the feature usage. A recognition process uses the finite state machine to locate program feature usage within the sequence of recorded commands by matching command sub-sequences corresponding to the feature model via the state machine. An analyzer may then use the located matches to provide an analysis report on feature usage.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Yantao Li, Bing Sun, Shuguang Ye, Guowei Liu, Wenli Zhu, Haidong Zhang, Min Wang, Jian Wang
-
Publication number: 20080313617Abstract: Described is a technology by which software instrumentation data collected from user program sessions are analyzed, including by determining program usage metrics and/or command usage metrics. Information representative of the program usage metrics and/or the command usage metrics is output, such as in the form of a report. The software instrumentation data may be further analyzed, such as to determine at least one usage trend over time, and to determine user groups. For example, a usage subset of sessions that meet specified session usage criteria based on a set of session data may be located, along with a subset of users based on users whose sessions meet specified user criteria. The usage and user subsets may be combined via Boolean logic to produce a result set.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Wenli Zhu, Yantao Li, Qiang Wang, Haidong Zhang, Bing Sun, Shuguang Ye, Min Wang, Jian Wang
-
Publication number: 20080313149Abstract: Described is a technology by which software instrumentation data collected from user program sessions are analyzed to output an analysis report or the like via example methods and an architecture configured for efficient operation. A client component queries a service for analysis related information. To process the query, the service works with a data manager, and via a high dimensional analysis component may use information processed from the software instrumentation data, such as in the form of one or more inverted indexes and/or raw value files. The service may include a usage analysis component, a feature recognition component that locates features from command sequences, a user recognition component and/or a program reliability component. One or more counterpart components at the client may generate analysis reports or the like based on the query results. The client also may maintain user libraries and feature libraries to facilitate analyses.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Yanato Li, Adnan Azfar Mahmud, Wenli Zhu, Haidong Zhang, Shuguang Ye, Bing Sun, Qiang Wang, Yingnong Dang, Guowei Liu, Min Wang, Jian Wang
-
Publication number: 20080313184Abstract: Described is a technology by which high dimensional data may be efficiently analyzed, including by filtering, grouping, aggregating and/or sorting operations to provide an analysis result. For efficiency in the analysis, an inverted index may be built (e.g., as part of filtering), and/or a hash structure (e.g., as part of grouping). Analysis parameters specify dimensions, on which union and/or intersection operations are performed to provide a final dataset. The analysis tool provides a user interface for inputting analysis parameters and outputting information corresponding to an analysis result. The analysis tool may sort the information corresponding to the analysis result, e.g., to output the topmost or bottommost results.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Yantao Li, Guowei Liu, Haidong Zhang, Adnan Azfar Mahmud, Bing Sun, Min Wang, Wenli Zhu, Jian Wang
-
Publication number: 20060062466Abstract: A mechanism for recognizing and inputting handwritten mathematical expressions into a computer by providing a multi-path framework is described. The framework may include symbol grouping and recognition, tabular structure analysis, subordinate sub-expression analysis, subscript/superscript analysis and character determination, and semantic structure analysis components. A method for recognizing a handwritten mathematical expression includes receiving a plurality of input strokes corresponding to a handwritten mathematical expression and providing a candidate list of recognized candidate expressions based upon the input strokes. Input strokes are grouped into symbols, tabular structures are determined, dominant symbol candidates and subordinate symbols are determined, and subscript and superscript structures are determined.Type: ApplicationFiled: June 20, 2005Publication date: March 23, 2006Applicant: Microsoft CorporationInventors: Yu Zou, Lei Huang, Mingqing Xu, Jian-Lai Zhou, Yue Li, Dongmei Zhang, Xiaohui Hou, Wenli Zhu, Hongyun Yang, Xianfang Wang, Jiang Wu, Jian Wang