An automatic swimming training teaching method applied to a portable electronic device
By extracting rhythm feature vectors from sensor motion data and performing cluster analysis to generate motion rhythm fingerprints, calculating similarity to filter user groups, and selecting and adapting training modules, the problem of matching training module supply with users' personalized needs in existing systems is solved, thus realizing personalized recommendations.
Patent Information
- Application Number
- CN202610427598.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-02
- Publication Date
- 2026-07-03
Smart Images

Figure CN122332989A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of swimming training and teaching technology, and in particular to an automated swimming training and teaching method applied to portable electronic devices. Background Technology
[0002] In existing swimming training and teaching systems, when users write training modules on their personal electronic devices, the module templates provided by the system are usually derived from preset templates by professional coaches or the system's default template library. Users can select modules from the template library to combine according to their own needs, or start from scratch and fill in the parameters one by one to create a new module.
[0003] In the aforementioned prior art, the supply of training modules relies on two methods: a pre-set template library and manual creation by the user. The number of modules in the pre-set template library is limited, and updates depend on manual maintenance, making it difficult to cover the personalized needs of users with different training levels and styles. Creating modules from scratch requires a high level of professional swimming training knowledge from the user, and ordinary users find it difficult to reasonably set the ratio between various parameters.
[0004] The aforementioned shortcomings of the existing technology lead to the following technical problems: the system lacks a way to automatically discover and recommend suitable training modules based on the user's actual motion characteristics, resulting in a matching gap between the supply of training modules in the system and the user's personalized needs. Summary of the Invention
[0005] The purpose of this invention is to provide an automated swimming training and teaching method applicable to portable electronic devices in order to solve the above-mentioned problems.
[0006] To achieve the above objectives, the present invention adopts the following technical solution:
[0007] An automated swimming training and teaching method for use with portable electronic devices includes:
[0008] The system acquires sensor motion data recorded by wearable electronic devices from multiple users during the execution of training plans. The motion data of each user is segmented according to the execution time of the training module, and the motion rhythm features within each segment are extracted to generate a rhythm feature vector.
[0009] Cluster analysis is performed on the rhythm feature vector sequence generated by each user in multiple training sessions, and the cluster center is used as the user's motion rhythm fingerprint. The motion rhythm fingerprint represents the user's inherent motion rhythm pattern under different swimming strokes and intensities.
[0010] Calculate the similarity between the current user's motion rhythm fingerprint and the motion rhythm fingerprints of other users in the system, filter users whose similarity is higher than a preset threshold, and generate a group of users with similar rhythms;
[0011] Training modules are extracted from the historical training records of the user groups with similar rhythms. The usage frequency of each training module is counted and sorted in descending order of usage frequency to generate a candidate recommendation module list.
[0012] The training parameters of each training module in the candidate recommendation module list are matched with the current user's personal ability parameters. The training parameters of training modules with a matching degree lower than a preset lower limit are scaled and adjusted according to the current user's personal ability parameters to generate recommendation modules and output them to the current user's personal electronic device.
[0013] Preferably, the rhythm feature vector is composed of features in the following four dimensions: identifying the start and end points of the stroke cycle based on acceleration sensor data within the segment, counting the number of strokes per unit time, and calculating the average stroke frequency.
[0014] The variance of the stroke frequency is calculated based on the deviation between the stroke frequency of each stroke cycle within the segment and the mean stroke frequency.
[0015] Extract the peak value of the acceleration signal in each stroke cycle within the segment, and calculate the mean and standard deviation of the acceleration peak values for all stroke cycles. The mean and standard deviation constitute the acceleration peak value distribution.
[0016] Calculate the coefficient of variation of the duration of adjacent stroke cycles within a segment, and use the reciprocal of the coefficient of variation as the cycle rhythm stability, wherein the coefficient of variation is the ratio of the standard deviation to the mean of the duration of all stroke cycles.
[0017] Before combining them into a rhythm feature vector, each feature dimension is standardized using Z-score.
[0018] Preferably, the identification of the start and end points of the stroke cycle includes: synthesizing the triaxial acceleration signals collected by the accelerometer, extracting the periodic peak points in the synthesized acceleration signals, and determining the time interval between two adjacent peak points as a stroke cycle, wherein the peak points are the start and end points of the stroke cycle; the average stroke frequency is the arithmetic mean of the frequency values corresponding to all stroke cycles within the segment, and the frequency value of a single stroke cycle is the reciprocal of the cycle duration.
[0019] Preferably, in the calculation of the cycle rhythm stability, when the standard deviation of the duration of all paddling cycles is zero, the cycle rhythm stability is assigned a preset upper limit value by the system.
[0020] Preferably, the step of performing cluster analysis on the rhythm feature vector sequence generated by each user in multiple training sessions includes: grouping the rhythm feature vectors according to swimming stroke category and training intensity level, performing K-means clustering algorithm within each group, and merging the cluster center vectors of each group to form the user's exercise rhythm fingerprint; wherein, the swimming stroke category is determined according to the swimming stroke parameters marked in the training module, and the training intensity level is determined according to the target pace range or heart rate range marked in the training module.
[0021] Preferably, the calculation of the similarity between the current user's motion rhythm fingerprint and the motion rhythm fingerprints of other users in the system includes: calculating the cosine similarity of the cluster center vectors of corresponding groups in the motion rhythm fingerprints of the two users respectively, and taking the weighted average of the similarity of each group as the comprehensive similarity between the two users, wherein the weight of each group is determined according to the proportion of training frequency of the current user in the corresponding swimming stroke category and intensity level of each group, and the sum of the weights of all groups is one; when the historical training record of one party is missing the swimming stroke category or intensity level corresponding to a certain group, the cosine similarity of the missing group is set to zero, and the weight of the missing group is redistributed to the remaining valid groups, and normalized again according to the proportion of training frequency of the valid groups.
[0022] Preferably, the step of extracting training modules from the historical training records of the user group with similar rhythms includes: filtering training module records with a completion rate higher than a preset completion rate threshold, wherein the completion rate is the ratio of the actual amount of training completed by the user when executing the training module to the amount of training set by the training module; the step of sorting by usage frequency in descending order is replaced by: calculating the average completion quality score of each training module in the user group with similar rhythms, and sorting the candidate recommended modules in descending order by the weighted comprehensive value of usage frequency and average completion quality score, wherein the weighted comprehensive value is obtained by weighted summation of usage frequency after maximum-minimum normalization and average completion quality score after maximum-minimum normalization, and the average completion quality score is the arithmetic mean of the completion quality scores of all users executing the training module in the user group with similar rhythms.
[0023] Preferably, the weighting coefficients in the weighted composite value are determined based on the current user's historical training stage: when the cumulative number of times the training module is executed in the current user's historical training record is lower than a preset novice threshold, the weighting coefficients are set such that the average completion quality score accounts for a higher proportion in the ranking than the usage frequency; when the cumulative number of times the training module is executed is higher than the preset novice threshold, the weighting coefficients are set such that the usage frequency accounts for a higher proportion in the ranking than the average completion quality score.
[0024] Preferably, the fit calculation includes: comparing each training parameter value of the candidate recommendation module with the personal ability parameter value of the current user's corresponding swimming stroke item by item, calculating the deviation ratio of each parameter, wherein the deviation ratio is the absolute value of the difference between the training parameter value and the personal ability parameter value divided by the personal ability parameter value, and taking the maximum value among the deviation ratios as the comprehensive deviation of the candidate recommendation module; the scaling adjustment includes: for candidate recommendation modules whose comprehensive deviation exceeds a preset deviation threshold or whose single deviation ratio exceeds the single deviation limit, calculating the ratio of the current user's corresponding swimming stroke's personal ability parameter value to the original training parameter value of the candidate recommendation module as a scaling factor, multiplying the training parameters of the candidate recommendation module by the scaling factor to obtain the adjusted training parameters, and re-performing the fit calculation on the adjusted training parameters; the personal ability parameters include the maximum single continuous distance of each swimming stroke, the average pace of each swimming stroke, and the historical maximum training volume; when a certain personal ability parameter value cannot be statistically analyzed, the deviation ratio corresponding to that parameter is not included in the calculation of the comprehensive deviation.
[0025] In summary, due to the adoption of the above technical solution, the beneficial effects of the present invention are:
[0026] 1. This invention solves the technical problem in existing swimming training and teaching systems that the training module supply depends on a fixed template library and is difficult to adapt to users' personalized needs. It extracts rhythm feature vectors from sensor motion data and generates motion rhythm fingerprints through cluster analysis, calculates cross-user motion rhythm fingerprint similarity to screen users with similar rhythms, filters and ranks candidate recommendations based on completion rate and completion quality scores, and calculates and scales the fit based on personal ability parameters.
[0027] 2. This invention reduces the system's reliance on manually maintained template libraries by transforming them into actual training records from user groups with similar learning rhythms; it reduces the likelihood of recommending unexecutable training modules to users by filtering based on completion rates; and it reduces the requirement for users' professional training knowledge by automatically generating parameter combinations that match the current user's ability level through parameter scaling adjustments. Attached Figure Description
[0028] Further details, features, and advantages of this application are disclosed in the following description of exemplary embodiments in conjunction with the accompanying drawings, in which:
[0029] Figure 1 This is a flowchart of the method of the present invention. Detailed Implementation
[0030] Several embodiments of this application will now be described in more detail with reference to the accompanying drawings to enable those skilled in the art to implement this application. This application may be embodied in many different forms and for various purposes and should not be limited to the embodiments set forth herein. These embodiments are provided to make this application thorough and complete, and to fully convey the scope of this application to those skilled in the art. The embodiments described do not limit this application.
[0031] Unless otherwise defined, all terms used herein (including technical and scientific terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains. It will be further understood that terms such as those defined in commonly used dictionaries shall be interpreted as having a meaning consistent with their meaning in the relevant field and / or the context of this specification, and shall not be interpreted in an idealized or overly formal sense unless expressly defined herein.
[0032] Example 1
[0033] In this embodiment, it includes:
[0034] Step 1: Acquire and segment sensor motion data from multiple users, and extract rhythm feature vectors.
[0035] The system acquires sensor motion data recorded by wearable electronic devices from multiple users during the execution of training plans. The motion data of each user is segmented according to the execution time of the training module, and the motion rhythm features within each segment are extracted to generate a rhythm feature vector.
[0036] It should be noted that the above segmentation based on the execution time of the training module refers to dividing the continuously collected sensor motion data into data segments corresponding to each training module according to the start and end time markers of each training module in the training plan. Each training module corresponds to an execution time period, and the sensor motion data within an execution time period constitutes an independent segment unit.
[0037] It should be noted that the rhythm feature vector mentioned above is a vector representation composed of multiple dimensions of motion rhythm indicators. Specifically, the following four dimensions of features are extracted from the sensor motion data within each segment unit:
[0038] Step 101: Based on the acceleration sensor data within the segmented unit, identify the start and end points of the stroke cycle, count the number of strokes per unit time, and calculate the average stroke frequency. The average stroke frequency represents the user's average stroke rate within the segmented time period.
[0039] Furthermore, the aforementioned identification of the start and end points of the stroke cycle refers to synthesizing the triaxial acceleration signals collected by the accelerometer, extracting the periodic peak points from the synthesized acceleration signals, and defining the time interval between two adjacent peak points as one stroke cycle. The peak points are the start and end points of the stroke cycle. The average stroke frequency is the arithmetic mean of the frequency values corresponding to all stroke cycles within the segmented unit, where the frequency value of a single stroke cycle is the reciprocal of the cycle duration.
[0040] Step 102: Calculate the stroke frequency variance based on the deviation between the stroke frequency and the mean stroke frequency of each stroke cycle within the segmented unit. The stroke frequency variance characterizes the degree of fluctuation in stroke rate within the segmented time period.
[0041] Step 103: Extract the peak value of the acceleration signal in each stroke cycle within the segmented unit, statistically analyze the distribution characteristics of the acceleration peak values across all stroke cycles, and generate an acceleration peak distribution. This acceleration peak distribution characterizes the statistical distribution characteristics of the user's stroke force intensity.
[0042] Furthermore, the above-mentioned acceleration peak distribution is generated as follows: the maximum value of the synthetic acceleration signal in each stroke cycle is extracted as the acceleration peak value of the cycle, the acceleration peak values of all stroke cycles in the segmented unit are used to form a peak sequence, the mean and standard deviation of the peak sequence are calculated, and the mean and standard deviation are used as statistical descriptions of the acceleration peak distribution to participate in the subsequent combination of rhythm feature vectors.
[0043] Step 104: Calculate the coefficient of variation of the duration of adjacent stroke cycles within the segmented unit, and use the reciprocal of the coefficient of variation as the cycle rhythm stability. The cycle rhythm stability characterizes the consistency of the duration of adjacent stroke cycles; a higher value indicates a more stable rhythm. Specifically, assume there are a total of [number missing] stroke cycles within the segmented unit. The first paddling cycle, the first The duration of each paddling cycle is ,in The total number of paddling cycles. Let be the sequence number of the paddling cycle, then the coefficient of variation of the duration of adjacent paddling cycles is... This is the ratio of the standard deviation to the mean of adjacent period duration sequences, i.e.:
[0044]
[0045] in, For all The arithmetic mean of the duration of each stroke cycle For all Standard deviation of stroke cycle duration. Cycle rhythm stability. Defined as the reciprocal of the coefficient of variation:
[0046]
[0047] in, For the stability of the cycle rhythm, The coefficient of variation is 1. For all The arithmetic mean of the duration of each stroke cycle For all The standard deviation of the stroke cycle duration.
[0048] Furthermore, when When the stroke duration is exactly the same across all stroke cycles within a segment, the rhythm is absolutely stable. , It tends towards infinity. To avoid division by zero exceptions, when... At that time, directly The system is given a preset upper limit value to characterize the state of completely stable rhythm within the segmented unit.
[0049] The mean stroke frequency, variance stroke frequency, peak acceleration distribution, and periodic rhythm stability are combined sequentially to generate rhythm feature vectors corresponding to segmented units. Since the four dimensions have different dimensions, Z-score standardization is applied to each dimension before combining them into rhythm feature vectors to eliminate the impact of dimensional differences on subsequent clustering analysis and similarity calculations.
[0050] Step 2: Perform cluster analysis on the rhythm feature vector sequence to generate a motion rhythm fingerprint.
[0051] Cluster analysis is performed on the rhythm feature vector sequence generated by each user during multiple training sessions, and the cluster centers are used as the user's motion rhythm fingerprint. The motion rhythm fingerprint represents the user's inherent motion rhythm pattern under different swimming strokes and intensities.
[0052] It should be noted that the clustering analysis described above uses the K-means clustering algorithm. The input to the K-means clustering algorithm is all the rhythm feature vectors generated by the user during multiple training sessions, and the output of the K-means clustering algorithm is several cluster center vectors. Each cluster center vector corresponds to a typical movement rhythm pattern of the user under a certain training condition, and the set of all cluster center vectors constitutes the user's movement rhythm fingerprint.
[0053] In this embodiment, to ensure that the clustering results reflect the differences in movement rhythm under different swimming strokes and training intensities, the rhythm feature vectors are grouped according to swimming stroke category and training intensity level before performing clustering analysis. Within each group, a K-means clustering algorithm is executed, and the cluster center vectors of each group are merged to form the user's movement rhythm fingerprint. The swimming stroke category is determined based on the swimming stroke parameters labeled in the training module, and the training intensity level is determined based on the target pace range or heart rate range labeled in the training module. Through grouped clustering, interference between rhythm features of different swimming strokes and intensity levels within the same cluster space can be avoided, thereby obtaining a more discriminative movement rhythm fingerprint.
[0054] Step 3: Calculate the similarity of the current user's movement rhythm fingerprint with other users, and filter out user groups with similar rhythms.
[0055] Receive the current user's motion rhythm fingerprint, calculate the similarity between the current user's motion rhythm fingerprint and the motion rhythm fingerprints of other users in the system, filter the set of users with similarity higher than a preset threshold, and generate a group of users with similar rhythms.
[0056] It should be noted that the above similarity calculation uses the cosine similarity algorithm. This applies to the current user's motion rhythm fingerprint. Movement rhythm fingerprint of another user When the motion rhythm fingerprint is a single cluster center vector, the cosine similarity The calculation formula is:
[0057]
[0058] in, This is the fingerprint vector of the current user's movement rhythm. For another user's motion rhythm fingerprint vector, The inner product of two motion rhythm fingerprint vectors. and These are the Euclidean norms of the two motion rhythm fingerprint vectors, respectively. The range of values is The closer the value is to This indicates that the more similar the movement rhythm patterns of the two users, the better.
[0059] It should be noted that when the exercise rhythm fingerprint contains multiple cluster center vectors grouped by swimming stroke category and training intensity level, the cosine similarity of the cluster center vectors of the corresponding groups in the exercise rhythm fingerprints of the two users is calculated separately. Then, the weighted average of the similarities of each group is taken as the comprehensive similarity between the two users. Overall similarity The calculation formula is:
[0060]
[0061] in, Number of groups The group number. The range of values is to positive integers, For the current user in the first Cluster center vectors in each group For another user in the first Cluster center vectors in each group For the first The weights of each group, and satisfying The weight of each group is determined based on the proportion of training frequency of the current user in each group under the corresponding swimming stroke category and intensity level. The higher the training frequency, the greater the weight of the group.
[0062] Furthermore, when a swimming stroke category or intensity level corresponding to a certain group is missing in the historical training record of one of the two users, the corresponding group... Unable to calculate. For such missing groups, set the cosine similarity of the missing groups to 0. And the weights of the missing groups The data are then reassigned to the remaining valid groups and renormalized according to the training frequency proportion of each valid group to ensure overall similarity. It still satisfies the weight normalization constraint.
[0063] Step 4: Extract and sort training modules from the historical training records of user groups with similar rhythms to generate a candidate recommendation module list.
[0064] Training modules are extracted from the historical training records of user groups with similar rhythms. The frequency of use of each training module in user groups with similar rhythms is counted and sorted in descending order of frequency of use to generate a list of candidate recommendation modules.
[0065] In this embodiment, to ensure the recommended modules are practically executable, when extracting training modules from historical training records, records with completion rates higher than a preset completion rate threshold are selected. The completion rate refers to the ratio of the actual training amount completed by the user when executing the training module to the set training amount of the training module. By filtering by completion rate, training modules that are selected but difficult for users to actually complete are excluded, ensuring that the training modules in the candidate recommended module list are all training modules that have been actually executed and can be completed by user groups with similar learning paces.
[0066] In this embodiment, to further improve the rationality of the training module ranking in the candidate recommendation module list, in addition to usage frequency, the average completion quality score of each training module in a user group with similar pace is also calculated, and the modules are sorted in descending order by a weighted composite value of usage frequency and average completion quality score. The average completion quality score is the arithmetic mean of the completion quality scores of all users executing the training module in a user group with similar pace. The completion quality score is a score calculated by the system based on indicators such as the user's pace achievement rate and the degree of standardized movement when executing the training module. Weighted composite value The calculation formula is:
[0067]
[0068] in, For the first The weighted sum of the values of each training module. This is the sequence number of the training module. For the first The frequency of use of each training module after max-min normalization. For the first The average completion quality score of each training module after max-min normalization. The weighting coefficient has a range of values. Max-min normalization maps usage frequency and average completion quality score to... The interval is used to eliminate the impact of the difference in dimensions between the two on the weighted summation operation. Through weighted summation, the ranking is based on two dimensions: the usage breadth of the training modules among user groups with similar rhythms and the actual completion quality.
[0069] Furthermore, the aforementioned weighting coefficients Determined based on the current user's historical training stage: When the cumulative number of training module executions in the current user's historical training record is lower than a preset beginner threshold, the current user is determined to be in the early stages of training. To increase the weight of completion quality scores in the ranking, smaller values are selected, prioritizing higher-quality training modules completed by users with similar learning paces; when the cumulative number of training module executions exceeds the preset beginner threshold... To increase the proportion of usage frequency in the ranking, larger values are preferred, and training modules with a wider range of usage are recommended for user groups with similar rhythms.
[0070] Step 5: Calculate the fit and adjust the parameters of the candidate recommendation module, and output the recommendation results to the current user's mobile device.
[0071] The training parameters of each training module in the candidate recommendation module list are matched with the current user's personal ability parameters. The recommendation module is generated based on the matching result and output to the current user's personal electronic device.
[0072] It should be noted that the above personal ability parameters are a set of ability indicators obtained by the system based on the current user's historical training records, including the maximum sustained distance of each swimming stroke, the average pace of each swimming stroke, and the historical maximum training volume.
[0073] It should be noted that the above-mentioned fit calculation involves comparing the training parameters of each candidate recommendation module with the personal ability parameters corresponding to the current user, and calculating the degree of deviation between the two. The training parameters include a set distance, a set interval time, and a set number of sets. For each candidate recommendation module, the training parameter values of the candidate recommendation module are compared item by item with the personal ability parameter values of the current user's corresponding swimming stroke, and the deviation ratio of each parameter is calculated. The maximum value among the deviation ratios is taken as the comprehensive deviation of the candidate recommendation module. The smaller the comprehensive deviation, the higher the fit. Specifically, suppose there are a total of [number missing] candidate recommendation modules. The training parameter, the first The parameter values of the training parameters are The current user's corresponding personal ability parameter value is ,in The total number of training parameters. Let be the index of the training parameter, then the th Deviation ratio of the term parameter for:
[0074]
[0075] in, For the first The parameter values of the training parameters, For the current user, the corresponding number The individual ability parameter value of the item. and For training parameters of the same type, with identical dimensions, the deviation ratio... This is a dimensionless relative deviation. The overall deviation of the candidate recommendation module. for:
[0076]
[0077] in, For the overall deviation, For the first The deviation ratio of the parameter, The total number of training parameters. Overall deviation. The smaller the value, the better the candidate recommendation module matches the current user's ability level.
[0078] Furthermore, the aforementioned deviation ratio The calculation requires individual ability parameter values. Not zero. This refers to a situation where insufficient historical training records lead to a certain individual ability parameter value being zero. In cases where statistics are unavailable, the deviation ratio corresponding to the item parameter. Excluded from overall deviation The calculation, i.e., the overall deviation. Only the maximum value among the currently calculable deviation ratios is taken.
[0079] In this embodiment, to address the potential issue of parameters incompatibility between training modules directly reused from user groups with similar rhythms and the current user's skill level, the parameters of training modules with a fit below a preset lower limit are scaled and adjusted according to the current user's individual skill parameters. Specifically, the scaling adjustment includes the following sub-steps:
[0080] Step 501: Identify training parameter items in the candidate recommendation module whose fit is lower than the preset lower limit, and determine the set of parameters that need to be adjusted.
[0081] Furthermore, the criterion for judging the above-mentioned fit degree being lower than the preset lower limit is: the comprehensive deviation of the candidate recommendation module. Exceeding the preset deviation threshold, or having a certain deviation ratio The deviation exceeds the upper limit for a single parameter. Candidate recommendation modules that meet any of the above conditions enter the parameter scaling adjustment process, where the deviation ratio... Parameters that deviate from the upper limit for a single item are included in the set of parameters that need to be adjusted.
[0082] Step 502: For the set distance parameter that needs to be adjusted, calculate the ratio of the maximum continuous distance of a single stroke for the current user's corresponding swimming stroke to the original set distance of the candidate recommendation module, and use it as the distance scaling factor. :
[0083]
[0084] in, This represents the maximum sustained distance in a single stroke for the current user's corresponding swimming style. The initial distance is set for the candidate recommendation module; both have the same dimensions. This is a dimensionless scaling factor.
[0085] Step 503: Multiply the set distance parameter of the candidate recommendation module by the distance scaling factor. This yields the adjusted set distance. Simultaneously, the set interval time parameter is scaled using the same distance scaling factor. Make proportional adjustments to maintain the ratio between training parameters.
[0086] Step 504: Recalculate the fitness for the adjusted training parameters to verify whether the adjusted parameters meet the preset lower limit of fitness.
[0087] In this embodiment, to facilitate the current user's understanding of the recommendation criteria and their independent judgment of the applicability of the recommendation module, a recommendation reason tag is generated along with the output of the recommendation module. The recommendation reason tag includes the following information: the rhythm similarity value between the current user and a user group with similar rhythms, and the average completion quality score of the recommendation module within the user group with similar rhythms. The recommendation module with the recommendation reason tag is then transmitted to the current user's personal electronic device for presentation.
[0088] Technical effects of this embodiment
[0089] According to an embodiment of this method, the swimming training module recommendation method extracts a rhythm feature vector from sensor motion data, consisting of the mean stroke frequency, variance of stroke frequency, peak acceleration distribution, and periodic rhythm stability. This vector is then used to generate a motion rhythm fingerprint through cluster analysis, establishing a quantitative representation based on the user's actual motion characteristics. Furthermore, cross-user matching is performed by calculating the cosine similarity between motion rhythm fingerprints, using user groups with similar motion rhythm patterns as the recommendation source for the training module. Therefore, the recommendation source for the training module shifts from a fixed preset template library to the actual training experience of user groups with similar rhythms within the system. The diversity of the recommendation module naturally increases with the system's user base and the accumulation of training data, eliminating the need for manual maintenance and updates of the template library. This overcomes the limitations of existing systems where the number of templates is limited and updates are lagging.
[0090] In addition, historical training modules of users with similar rhythms are screened and sorted by completion rate and completion quality score to ensure that the training modules entering the candidate recommendation module list are all training modules that have been actually executed and effectively completed by users with similar rhythms, thereby reducing the possibility of recommending unexecutable training modules to users.
[0091] Furthermore, by calculating and scaling the fit based on the user's current personal ability parameters, parameters in the candidate recommendation module that exceed the user's current ability range are adjusted proportionally while maintaining the balance between parameters. Therefore, users do not need to manually determine the appropriate proportions between parameters; the system automatically generates parameter combinations that match the user's current ability level through scaling adjustments, thereby reducing the requirement for users to possess specialized training knowledge.
[0092] As can be seen, this implementation method, through three levels of processing—extraction of motion rhythm fingerprints and cross-user similarity matching, selection and ranking of training modules based on completion quality, and scaling adjustment based on personal ability parameters—narrows the gap between the supply of system training modules and users' personalized needs without requiring users to have professional training knowledge.
[0093] During its operation in the spring of 20XX, a swimming training platform accumulated historical training data from hundreds of registered users. The current user (user_A) is an adult swimming enthusiast with a certain training foundation, whose smartwatch has recorded sensor motion data from multiple training sessions over the past few weeks. The goal of this recommendation process is to: based on user_A's movement rhythm fingerprint, match users with similar rhythms within the system, extract personalized training module recommendations suitable for user_A from the user group's historical training records, and output these recommendations to user_A's smartwatch.
[0094] The system divides the continuous acceleration and gyroscope data collected from user_A's smartwatch into several independent segment units based on the start and end times of each module marked in the training plan. Taking a freestyle swimming medium-intensity segment unit from a certain training session of user_A as an example, the segment identified a total of 12 stroke cycles, and the duration and peak acceleration of each cycle are shown in the table below.
[0095] Table 1. Duration and peak acceleration of each stroke cycle in the freestyle stroke segment for user_A
[0096] Periodic number Period duration (seconds) Peak acceleration (m / s²) Period 1 1.42 12.31 Period 2 1.38 12.75 Period 3 1.45 11.98 Period 4 1.41 12.54 Period 5 1.39 13.02 Period 6 1.43 12.44 Period 7 1.40 12.67 Period 8 1.44 11.87 Period 9 1.38 13.15 Period 10 1.42 12.33 Period 11 1.41 12.58 Period 12 1.39 12.91
[0097] Based on the data in the table above, the four rhythmic feature dimensions are calculated sequentially:
[0098] Average stroke frequency: Average duration of each cycle seconds, corresponding to the average stroke frequency is times per second.
[0099] Cyclical rhythm stability: The standard deviation of the 12 cycle durations was calculated. The deviations of each cycle duration from the mean were small, resulting in... seconds, then:
[0100]
[0101] Peak acceleration distribution: mean peak value over 12 cycles Standard deviation .
[0102] Stroke frequency variance: The variance of the frequency values (reciprocal of the cycle length) for each cycle reflects the degree of fluctuation in stroke rate. (times / second)².
[0103] After Z-score normalization, the rhythmic feature vector of the segmented unit is The six components correspond to the mean of stroke frequency, the variance of stroke frequency, the mean of peak acceleration, the standard deviation of peak acceleration, and the standardized value of periodic rhythm stability (the mean and standard deviation of the peak acceleration distribution contribution).
[0104] The system aggregates rhythm feature vectors from 47 segmented units of user_A over the past few weeks, and divides them into 4 effective groups according to swimming style (freestyle, breaststroke) and training intensity level (low intensity, medium intensity, high intensity). K-means clustering is performed within each group to obtain the cluster center vector of each group. The combined vectors form the motion rhythm fingerprint of user_A.
[0105] Table 2 User_A's motion rhythm fingerprint (cluster center vectors for each group, standardized space)
[0106] Group numbering swimming strokes Intensity level Frequency mean component Frequency variance components Peak mean component Peak standard deviation component Rhythm stability component Training frequency percentage Group 1 Freestyle medium intensity 0.63 -0.71 0.55 -0.35 1.26 42% Group 2 Freestyle High strength 1.15 0.48 0.98 0.22 0.74 28% Group 3 breaststroke low strength -0.82 -0.55 -0.43 -0.61 1.54 18% Group 4 breaststroke medium intensity -0.31 0.12 -0.18 0.09 0.93 12%
[0107] The weights of each group are determined based on the proportion of training frequency: Group 1 has a weight of 0.42, Group 2 has a weight of 0.28, Group 3 has a weight of 0.18, and Group 4 has a weight of 0.12, so that the sum of the weights of the four groups is 1.
[0108] The system calculates the overall similarity between user_A's motion rhythm fingerprint and the motion rhythm fingerprints of all other users in the system. Taking the similarity calculation between user_A and user_B as an example, the group cosine similarity between the two in the four groups is shown in the table below.
[0109] Table 3 shows the cosine similarity and overall similarity between user_A and each candidate user group.
[0110] User ID Group 1 similarity Group 2 similarity Group 3 similarity Group 4 similarity Overall similarity Whether or not they are included in the user group with similar rhythm user_B 0.94 0.91 0.87 0.89 0.916 yes user_C 0.96 0.88 0.85 0.83 0.907 yes user_D 0.78 0.72 0.81 0.76 0.763 no user_E 0.93 0.90 0.88 0.91 0.912 yes user_F 0.61 0.58 0.65 0.63 0.614 no
[0111] Taking user_B as an example, the overall similarity is calculated as follows:
[0112]
[0113] The preset similarity threshold is 0.88. The combined similarity of user_B, user_C, and user_E all exceeds the threshold, forming a rhythm-similar user group to user_A.
[0114] The system extracts training module records with completion rates higher than a preset completion rate threshold (80%) from the historical training records of users B, C, and E. It then calculates the usage frequency and average completion quality score of each module and calculates a weighted composite value (weight coefficient). (This is because user_A has exceeded the novice threshold by executing the training module more times).
[0115] Table 4. Statistics and Ranking of Candidate Recommendation Modules
[0116] Module Number Module Description Frequency of use Average completion quality score Normalized frequency Normalized quality score Weighted composite value Sort MOD-07 100m freestyle x 6 sets, with 45s intervals between each set. 14 88.3 1.00 0.83 0.907 1 MOD-12 75m freestyle x 8 sets, with 40s intervals between each set. 11 91.5 0.73 1.00 0.878 2 MOD-03 50m freestyle strokes x 10 sets, with 35s intervals between each set. 9 86.7 0.55 0.75 0.660 3 MOD-19 Breaststroke 50m x 6 sets, with 50s intervals between each set. 7 84.2 0.36 0.55 0.465 4 MOD-24 Breaststroke 75m x 4 sets, with 60s intervals. 4 82.6 0.00 0.37 0.204 5
[0117] Taking MOD-07 as an example, the weighted average value is calculated as follows:
[0118]
[0119] The candidate recommendation module list is arranged in descending order of weighted comprehensive value, with MOD-07, MOD-12, and MOD-03 ranking in the top three.
[0120] The system extracts user_A's personal ability parameters and performs fit calculations on each candidate recommendation module.
[0121] Table 5 User_A's Personal Ability Parameters
[0122] Parameters Freestyle breaststroke Maximum duration distance in a single attack 80m 60m Average pace 1 minute 52 seconds / 100m 2 minutes 18 seconds / 100m Maximum training volume in history 1800m / time 900m / time
[0123] Taking the top-ranked MOD-07 (freestyle 100m x 6 sets, 45s intervals) as an example, calculate the deviation ratios for each item:
[0124] The distance is set to 100m. User_A's maximum sustained distance in a single freestyle stroke is 80m. Distance deviation ratio:
[0125]
[0126] The number of sets is set to 6, with the upper limit estimated based on ability parameters as 6 (historical maximum training volume of 1800m divided by 100m). The deviation ratio of the number of sets is... .
[0127] The overall deviation is the maximum value of the deviation ratios of each item: If the deviation exceeds the preset deviation threshold (0.20), parameter scaling adjustment is triggered.
[0128] Calculate the distance scaling factor:
[0129]
[0130] Adjust the set distance to The interval time was adjusted synchronously to The number of groups remained unchanged. After adjustment, the fit was re-verified, and all deviation ratios decreased to 0, resulting in a comprehensive deviation. It meets the preset lower limit of compatibility.
[0131] Table 6. Results of candidate recommendation module fit calculation and parameter adjustment
[0132] Module Number Original setting distance Original interval time Overall deviation Trigger adjustment? Adjusted distance Adjusted interval time Recommendation reasons (rhythm similarity / average completion quality score) MOD-07 100m 45s 0.25 yes 80m 36s Rhythm similarity: 0.916 / Execution quality: 88.3 points MOD-12 75m 40s 0.00 no 75m 40s Rhythm similarity: 0.916 / Execution quality: 91.5 points MOD-03 50m 35s 0.00 no 50m 35s Rhythm similarity: 0.916 / Execution quality: 86.7 points
[0133] Finally, the three recommendation modules (MOD-07 modified version, MOD-12, MOD-03) with the recommendation reason tag are transmitted to user_A's smartwatch for presentation.
[0134] The entire data stream starts with the raw sensor signals collected by user_A's smartwatch, and generates a rhythm feature vector through segmentation and feature extraction (Step 1). This vector is then refined into a motion rhythm fingerprint through grouping and clustering (Step 2). The motion rhythm fingerprint serves as the carrier for cross-user comparison, driving cosine similarity calculation and selecting three rhythmically similar users: user_B, user_C, and user_E (Step 3). Candidate training modules are extracted and sorted from the user group's historical training records (Step 4). Finally, the over-limit modules are scaled and adjusted based on user_A's own ability parameters to ensure that the recommendation results are both derived from real training experience and adapted to user_A's current capabilities (Step 5). The output data of each step is directly used as the input for the next step, ensuring a complete logical chain from raw sensor data to the final recommendation result.
[0135] The foregoing has only described certain exemplary embodiments of the present invention by way of illustration. Undoubtedly, those skilled in the art can modify the described embodiments in various ways without departing from the spirit and scope of the present invention. Therefore, the foregoing drawings and descriptions are illustrative in nature and should not be construed as limiting the scope of protection of the claims of the present invention.
[0136] It should be noted that, in this document, the use of relational terms such as "first" and "second" is merely for distinguishing one entity or operation from another, and does not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.
[0137] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0138] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0139] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0140] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0141] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0142] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0143] The foregoing has only described certain exemplary embodiments of the present invention by way of illustration. Undoubtedly, those skilled in the art can modify the described embodiments in various ways without departing from the spirit and scope of the present invention. Therefore, the foregoing drawings and descriptions are illustrative in nature and should not be construed as limiting the scope of protection of the claims of the present invention.
Claims
1. An automated swimming training teaching method applied to a wearable electronic device, characterized by, include: The system acquires sensor motion data recorded by wearable electronic devices from multiple users during the execution of training plans. The motion data of each user is segmented according to the execution time of the training module, and the motion rhythm features within each segment are extracted to generate a rhythm feature vector. Cluster analysis is performed on the rhythm feature vector sequence generated by each user in multiple training sessions, and the cluster center is used as the user's motion rhythm fingerprint. The motion rhythm fingerprint represents the user's inherent motion rhythm pattern under different swimming strokes and intensities. Calculate the similarity between the current user's motion rhythm fingerprint and the motion rhythm fingerprints of other users in the system, filter users whose similarity is higher than a preset threshold, and generate a group of users with similar rhythms; Training modules are extracted from the historical training records of the user groups with similar rhythms. The usage frequency of each training module is counted and sorted in descending order of usage frequency to generate a candidate recommendation module list. The training parameters of each training module in the candidate recommendation module list are matched with the current user's personal ability parameters. The training parameters of training modules with a matching degree lower than a preset lower limit are scaled and adjusted according to the current user's personal ability parameters to generate recommendation modules and output them to the current user's personal electronic device.
2. The automated swimming training method for a wearable electronic device according to claim 1, wherein The rhythm feature vector is composed of features in the following four dimensions: identifying the start and end points of the stroke cycle based on acceleration sensor data within the segment, counting the number of strokes per unit time, and calculating the average stroke frequency. The variance of the stroke frequency is calculated based on the deviation between the stroke frequency of each stroke cycle within the segment and the mean stroke frequency. Extract the peak value of the acceleration signal in each stroke cycle within the segment, and calculate the mean and standard deviation of the acceleration peak values for all stroke cycles. The mean and standard deviation constitute the acceleration peak value distribution. Calculate the coefficient of variation of the duration of adjacent stroke cycles within a segment, and use the reciprocal of the coefficient of variation as the cycle rhythm stability, wherein the coefficient of variation is the ratio of the standard deviation to the mean of the duration of all stroke cycles. Before combining them into a rhythm feature vector, each feature dimension is standardized using Z-score.
3. The automated swimming training method for a wearable electronic device according to claim 2, wherein Identifying the start and end points of the stroke cycle includes: synthesizing the triaxial acceleration signals collected by the accelerometer, extracting the periodic peak points in the synthesized acceleration signals, and determining the time interval between two adjacent peak points as a stroke cycle, wherein the peak points are the start and end points of the stroke cycle; the average stroke frequency is the arithmetic mean of the frequency values corresponding to all stroke cycles within the segment, and the frequency value of a single stroke cycle is the reciprocal of the cycle duration.
4. The automated swimming training method for a wearable electronic device according to claim 2, wherein In the calculation of cycle rhythm stability, when the standard deviation of the total stroke cycle duration is zero, the cycle rhythm stability is assigned a preset upper limit value by the system.
5. The automated swimming training method for a wearable electronic device according to claim 1, wherein Cluster analysis is performed on the rhythm feature vector sequence generated by each user in multiple training sessions. This includes grouping the rhythm feature vectors according to swimming stroke category and training intensity level, performing K-means clustering algorithm within each group, and merging the cluster center vectors of each group to form the user's exercise rhythm fingerprint. The swimming stroke category is determined according to the swimming stroke parameters marked in the training module, and the training intensity level is determined according to the target pace range or heart rate range marked in the training module.
6. The automated swimming training method for a wearable electronic device according to claim 5, wherein Calculating the similarity between the current user's motion rhythm fingerprint and the motion rhythm fingerprints of other users in the system includes: calculating the cosine similarity of the cluster center vectors of corresponding groups in the motion rhythm fingerprints of the two users, and taking the weighted average of the similarities of each group as the comprehensive similarity between the two users. The weight of each group is determined according to the proportion of training frequency of the current user in each group's corresponding swimming stroke category and intensity level, and the sum of the weights of all groups is one. When the historical training record of one party is missing a swimming stroke category or intensity level corresponding to a certain group, the cosine similarity of the missing group is set to zero, and the weight of the missing group is redistributed to the remaining valid groups and normalized again according to the proportion of training frequency of the valid groups.
7. The automated swimming training and teaching method applied to a portable electronic device according to claim 1, characterized in that, Extracting training modules from the historical training records of the user group with similar rhythms includes: filtering training module records with a completion rate higher than a preset completion rate threshold, where the completion rate is the ratio of the actual training amount completed by the user when executing the training module to the training amount set by the training module; the sorting by usage frequency in descending order is replaced by: calculating the average completion quality score of each training module in the user group with similar rhythms, and sorting the candidate recommended modules in descending order by the weighted comprehensive value of usage frequency and average completion quality score, where the weighted comprehensive value is the weighted sum of the usage frequency after maximum-minimum normalization and the average completion quality score after maximum-minimum normalization, and the average completion quality score is the arithmetic mean of the completion quality scores of all users executing the training module in the user group with similar rhythms.
8. The automated swimming training and teaching method applied to a portable electronic device according to claim 7, characterized in that, The weighting coefficients in the weighted composite value are determined based on the current user's historical training stage: when the cumulative number of times the training module is executed in the current user's historical training record is lower than the preset novice threshold, the weighting coefficients are set such that the average completion quality score accounts for a higher proportion in the ranking than the usage frequency. When the cumulative number of times the training module is executed exceeds the preset novice threshold, the weight coefficient is set such that the proportion of usage frequency in the ranking is higher than the proportion of average completion quality score.
9. The automated swimming training and teaching method applied to a portable electronic device according to claim 1, characterized in that, The fit calculation includes: comparing each training parameter value of the candidate recommendation module with the personal ability parameter value of the current user's corresponding swimming stroke item by item, calculating the deviation ratio of each parameter, where the deviation ratio is the absolute value of the difference between the training parameter value and the personal ability parameter value divided by the personal ability parameter value, and taking the maximum value among the deviation ratios as the comprehensive deviation of the candidate recommendation module; the scaling adjustment includes: for candidate recommendation modules whose comprehensive deviation exceeds a preset deviation threshold or where a single deviation ratio exceeds the single deviation limit, calculating the ratio of the current user's personal ability parameter value for the corresponding swimming stroke to the original training parameter value of the candidate recommendation module as a scaling factor, multiplying the training parameters of the candidate recommendation module by the scaling factor to obtain the adjusted training parameters, and re-performing the fit calculation on the adjusted training parameters; the personal ability parameters include the maximum single-run duration distance for each swimming stroke, the average pace for each swimming stroke, and the historical maximum training volume; when a certain personal ability parameter value cannot be statistically determined, the deviation ratio corresponding to that parameter is not included in the calculation of the comprehensive deviation.