Method, device and equipment for generating video slice recommendation information, and storage medium
By constructing multidimensional feature vectors and optimizing the training dataset, a neural network model is trained to generate a video slice recommendation model. This solves the problem of insufficient accuracy of video slice recommendation information in existing technologies and achieves more efficient matching of learners' learning needs.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHINA UNITED NETWORK COMM GRP CO LTD
- Filing Date
- 2026-02-13
- Publication Date
- 2026-06-05
Smart Images

Figure CN122153115A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, device, and storage medium for generating video slice recommendation information. Background Technology
[0002] Current enterprise learning platforms break down long video courses into independent knowledge point segments to meet the needs of fragmented learning. However, with the surge in the number of courses and segments, learning platforms are facing problems such as difficulty in accurately searching for massive resources and a mismatch between recommendation methods and learning requirements.
[0003] In existing technologies, entire courses are recommended by analyzing students' historical learning records or the preferences of similar user groups; or video slices are recommended using course classification tags or basic attributes based on manually defined rules. However, existing technologies suffer from problems such as coarse recommendation granularity, low feature correlation, and insufficient scene adaptability, resulting in insufficient accuracy of video slice recommendations and failing to meet students' learning requirements.
[0004] Therefore, existing technologies suffer from insufficient accuracy in generating video slice recommendation information, which fails to meet the learning requirements of students. Summary of the Invention
[0005] This application provides a method, apparatus, device, and storage medium for generating video slice recommendation information, in order to improve the accuracy of video slice recommendation information generation.
[0006] In a first aspect, embodiments of this application provide a method for generating video slice recommendation information, including:
[0007] Acquire learning behavior data and full video segment metadata of the target learners;
[0008] Based on learning behavior data and full video segment metadata, a multidimensional feature vector is constructed; the multidimensional feature vector includes student feature vector and video segment feature vector.
[0009] A training dataset is constructed based on the multidimensional feature vectors; in the training dataset, the student feature vectors are the independent variables, and the video slice identifiers of the target students are the dependent variables.
[0010] The training dataset is optimized according to the preset optimization rules to obtain the target training dataset.
[0011] Based on the target training dataset, a pre-defined neural network model is trained with independent variables as model inputs and dependent variables as model outputs to generate a video slice recommendation model. The video slice recommendation model is used to generate video slice recommendation information for the target learners based on pre-defined weights.
[0012] In one possible implementation, prior to acquiring the target learner's learning behavior data and video segment metadata, the process includes:
[0013] Obtain all learning behavior data of all students within the preset learning interval;
[0014] Calculate the completion rate for each student based on all learning behavior data.
[0015] Calculate each student's activity index based on all learning behavior data;
[0016] Calculate each student's primary comprehensive indicator based on completion rate and activity level indicators;
[0017] Based on the first comprehensive indicator and the preset first indicator threshold, determine whether the student is a target student;
[0018] If so, the learning behavior data of the target learners will be stored in the target learner database.
[0019] In one possible implementation, the learning behavior data includes at least one of the following: student identifier, affiliated organization, affiliated position, number of logins, number of learning sessions, course learning duration, video segment learning duration, course completion rate, video segment completion rate, learned course identifier, taken exam identifier, exam score, and incorrect question identifier.
[0020] In one possible implementation, the full video segment metadata includes at least one of the following: video segment identifier, course identifier, segment keywords, number of times it has been studied, segment duration, and overall segment completion rate.
[0021] In one possible implementation, before constructing the training dataset based on the multidimensional feature vectors, the following is included:
[0022] Obtain the number of times each target student has studied;
[0023] Obtain the number of times each target student has studied;
[0024] Based on the preset learning frequency level conditions, select target students from all target students whose learning frequency meets the preset learning frequency level conditions;
[0025] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency level conditions;
[0026] or,
[0027] Based on the preset learning frequency threshold, select target students whose learning frequency meets the preset learning frequency threshold from all target students.
[0028] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency threshold.
[0029] In one possible implementation, the training dataset is optimized according to a preset optimization rule to obtain a target training dataset, including:
[0030] Obtain the video slice identifiers for each data tuple in the training dataset;
[0031] Based on the video slice identifier, deduplication is performed to obtain the first set of video slices;
[0032] Obtain the first target data from the first video slice set; wherein, the first target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold;
[0033] Determine the course identifier based on the video segment identifier;
[0034] Obtain the identifiers of all video segments belonging to the same course to obtain the second set of video segments;
[0035] Obtain the second target data from the second video slice set; wherein, the second target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0036] Based on the first target data and the second target data, calculate the second comprehensive index for each data tuple in the training dataset;
[0037] The training dataset is optimized based on the second comprehensive index to obtain the target training dataset; the optimization process includes retaining data tuples whose second comprehensive index is greater than or equal to a preset second index threshold.
[0038] In one possible implementation, the training dataset is optimized according to a preset optimization rule to obtain a target training dataset, including:
[0039] Calculate the third comprehensive indicator based on the data from the first objective;
[0040] If the third comprehensive indicator meets the preset third indicator threshold, then the video slice identifier is determined as the target video slice identifier;
[0041] Determine the course identifier based on the target video slice identifier;
[0042] Obtain the identifiers of all video segments belonging to the same course to obtain the third set of video segments;
[0043] Obtain the third target data from the third video slice set; wherein, the third target data includes the number of target students corresponding to each target video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0044] Calculate the fourth comprehensive indicator based on the data from the third objective;
[0045] The data tuples in the third video slice set that satisfy the preset fourth comprehensive index threshold and the preset third comprehensive index threshold are obtained and added to the training dataset as new data tuples to obtain the target training dataset.
[0046] Secondly, embodiments of this application provide an apparatus for generating video slice recommendation information, including:
[0047] The acquisition module is used to acquire the learning behavior data of the target learners and the metadata of the full video slices.
[0048] In one possible implementation, the learning behavior data includes at least one of the following: student identifier, affiliated organization, affiliated position, number of logins, number of learning sessions, course learning duration, video segment learning duration, course completion rate, video segment completion rate, learned course identifier, taken exam identifier, exam score, and incorrect question identifier.
[0049] In one possible implementation, the full video segment metadata includes at least one of the following: video segment identifier, course identifier, segment keywords, number of times it has been studied, segment duration, and overall segment completion rate.
[0050] The first construction module is used to construct a multidimensional feature vector based on learning behavior data and full video slice metadata; the multidimensional feature vector includes student feature vector and video slice feature vector.
[0051] The second construction module is used to construct a training dataset based on multidimensional feature vectors; in the training dataset, the student feature vector is the independent variable, and the video slice identifier of the target student is the dependent variable.
[0052] The optimization module is used to optimize the training dataset according to preset optimization rules to obtain the target training dataset.
[0053] The generation module is used to train a preset neural network model based on the target training dataset, with independent variables as model inputs and dependent variables as model outputs, to generate a video slice recommendation model. The video slice recommendation model is used to generate video slice recommendation information for the target learners based on preset weights.
[0054] In one possible implementation, before acquiring the learning behavior data of the target learners and the video slice metadata, the device for generating video slice recommendation information includes a storage module, which can specifically be used for:
[0055] Obtain all learning behavior data of all students within the preset learning interval;
[0056] Calculate the completion rate for each student based on all learning behavior data.
[0057] Calculate each student's activity index based on all learning behavior data;
[0058] Calculate each student's primary comprehensive indicator based on completion rate and activity level indicators;
[0059] Based on the first comprehensive indicator and the preset first indicator threshold, determine whether the student is a target student;
[0060] If so, the learning behavior data of the target learners will be stored in the target learner database.
[0061] In one possible implementation, the acquisition module can also be used for:
[0062] Obtain the number of times each target student has studied;
[0063] Based on the preset learning frequency level conditions, select target students from all target students whose learning frequency meets the preset learning frequency level conditions;
[0064] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency level conditions;
[0065] or,
[0066] Based on the preset learning frequency threshold, select target students whose learning frequency meets the preset learning frequency threshold from all target students.
[0067] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency threshold.
[0068] In one possible implementation, the optimization module can also be used for:
[0069] Obtain the video slice identifiers for each data tuple in the training dataset;
[0070] Based on the video slice identifier, deduplication is performed to obtain the first set of video slices;
[0071] Obtain the first target data from the first video slice set; wherein, the first target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold;
[0072] Determine the course identifier based on the video segment identifier;
[0073] Obtain the identifiers of all video segments belonging to the same course to obtain the second set of video segments;
[0074] Obtain the second target data from the second video slice set; wherein, the second target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0075] Based on the first target data and the second target data, calculate the second comprehensive index for each data tuple in the training dataset;
[0076] The training dataset is optimized based on the second comprehensive index to obtain the target training dataset; the optimization process includes retaining data tuples whose second comprehensive index is greater than or equal to a preset second index threshold.
[0077] In one possible implementation, the optimization module can also be used for:
[0078] Calculate the third comprehensive indicator based on the data from the first objective;
[0079] If the third comprehensive indicator meets the preset third indicator threshold, then the video slice identifier is determined as the target video slice identifier;
[0080] Determine the course identifier based on the target video slice identifier;
[0081] Obtain the identifiers of all video segments belonging to the same course to obtain the third set of video segments;
[0082] Obtain the third target data from the third video slice set; wherein, the third target data includes the number of target students corresponding to each target video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0083] Calculate the fourth comprehensive indicator based on the data from the third objective;
[0084] The data tuples in the third video slice set that satisfy the preset fourth comprehensive index threshold and the preset third comprehensive index threshold are obtained and added to the training dataset as new data tuples to obtain the target training dataset.
[0085] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor;
[0086] The memory stores instructions that the computer executes;
[0087] The processor executes computer execution instructions stored in memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0088] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.
[0089] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0090] The method, apparatus, device, and storage medium for generating video slice recommendation information provided in this application embodiment acquire the learning behavior data of the target learner and the metadata of all video slices to construct a multi-dimensional feature vector. The multi-dimensional feature vector includes a learner feature vector and a video slice feature vector. A training dataset is constructed based on the multi-dimensional feature vector, where the learner feature vector is the independent variable and the video slice identifier of the target learner is the dependent variable. The training dataset is optimized according to preset optimization rules to obtain a target training dataset. Based on the target training dataset, a preset neural network model is trained using the independent variable as the model input and the dependent variable as the model output to generate a video slice recommendation model. This video slice recommendation model is used to generate video slice recommendation information for the target learner according to preset weights. Compared to existing technologies, the method of this application refines the recommendation unit from the entire course to video slices and introduces multi-dimensional feature vector fusion and weights, solving the problems of coarse recommendation granularity and low feature correlation in existing technologies, and improving the accuracy of video slice recommendation information generation. Attached Figure Description
[0091] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0092] Figure 1 A schematic diagram of a video slice recommendation system architecture is provided for this application;
[0093] Figure 2 Flowchart of the video slice recommendation method provided in this application Figure 1 ;
[0094] Figure 3 Flowchart of the video slice recommendation method provided in this application Figure 2 ;
[0095] Figure 4 Flowchart of the video slice recommendation method provided in this application Figure 3 ;
[0096] Figure 5 Flowchart of the video slice recommendation method provided in this application Figure 4 ;
[0097] Figure 6 Flowchart of the video slice recommendation method provided in this application Figure 5 ;
[0098] Figure 7 A schematic diagram of the video slicing recommendation device provided in this application;
[0099] Figure 8 A schematic diagram of the structure of the electronic device provided in this application.
[0100] The accompanying drawings have illustrated specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to specific embodiments. Detailed Implementation
[0101] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0102] It should be noted that all data involved in this application are information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant laws, regulations and standards, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0103] Corporate online learning platforms provide educational and training services for all employees, with video courses as the core content resource. These video courses are usually divided into class periods, with each course typically including at least one class period, and the overall duration is relatively long.
[0104] To further meet learners' precise learning needs, the enterprise online learning platform can break down a single video course into multiple video segments based on the logical structure of the video content. Each segment focuses on a specific knowledge point and has a relatively complete content system. In this way, learners can directly select the corresponding video segment to study based on their own learning goals and knowledge gaps, thereby achieving rapid location of the required content and efficiently completing the learning and mastery of knowledge points.
[0105] However, online learning platforms already have a large number of courses, and after segmentation, the total number of videos becomes even more massive. The massive amount of video resources brought about by segmentation creates a new contradiction with students' needs for precise course selection, and resource redundancy becomes a bottleneck to learning efficiency.
[0106] Meanwhile, corporate training scenarios place higher demands on the accuracy of recommendations—not only must they match the individual knowledge gaps of trainees, but they must also align with job skill standards (for example, programming-related modules should be prioritized for technical positions, while leadership modules should be emphasized for management positions). Traditional recommendation models can no longer support the platform's refined operational goals.
[0107] In existing technologies, courses are recommended by analyzing students' historical learning records or the preferences of similar user groups, or by using course category tags or basic attributes.
[0108] However, existing technologies focus on the entire course rather than individual knowledge points, resulting in coarse-grained recommendations. When students only need to learn specific knowledge points, they have to spend time searching for the corresponding segments in the complete course, making it difficult to quickly locate the target content and severely reducing learning efficiency.
[0109] Furthermore, existing technologies focus on students' current learning behavior or basic course attributes, without integrating the correlation between historical complete course learning data and slice learning data. This results in a single feature dimension, making it impossible to build an accurate matching relationship between students and slices, thus making the scenario adaptability of video slice recommendations insufficient.
[0110] Therefore, existing technologies suffer from insufficient accuracy in video slice recommendations, failing to meet the learning requirements of students.
[0111] To address the aforementioned issues, the core technical concept of this application is as follows: Obtain target learner learning behavior data and full video segment metadata; construct a multi-dimensional feature vector including learner feature vectors and video segment feature vectors; build a structured training dataset using this vector; set the learner feature vectors as independent variables and the video segment identifiers as dependent variables; optimize the dataset using preset optimization rules to obtain the target training set; then train a neural network model to obtain a video segment recommendation model; and incorporate preset weights to generate a personalized recommendation list for each learner; thus improving the accuracy and scenario adaptability of video segment recommendation information generation.
[0112] Optionally, Figure 1 This is a schematic diagram of a video slicing recommendation system architecture provided in this application. Figure 1 As shown, the video slice recommendation system architecture includes at least one of a data acquisition device 101, a processing device 102, and a display device 103.
[0113] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the above architecture. In other feasible embodiments of this application, the above architecture may include more or fewer components than illustrated, or combine some components, or split some components, or arrange different components, which can be determined according to the actual application scenario and is not limited here. Figure 1 The components shown can be implemented in hardware, software, or a combination of both.
[0114] In the specific implementation process, the data acquisition device 101 may include an input / output interface or a communication interface. The data acquisition device 101 can be connected to the processing device through the input / output interface or the communication interface. The data acquisition device 101 is used to acquire the learning behavior data of the target learners and the metadata of the full video slice.
[0115] Processing device 102 can construct multi-dimensional feature vectors based on learning behavior data and full video slice metadata; wherein, the multi-dimensional feature vectors include student feature vectors and video slice feature vectors; a training dataset is constructed based on the multi-dimensional feature vectors; wherein, in the training dataset, the student feature vector is the independent variable and the video slice identifier of the target student is the dependent variable; the training dataset is optimized according to preset optimization rules to obtain a target training dataset; based on the target training dataset, a preset neural network model is trained with the independent variable as the model input and the dependent variable as the model output to generate a video slice recommendation model; wherein, the video slice recommendation model is used to generate video slice recommendation information for the target student according to preset weights.
[0116] The display device 103 can also be a touch screen or the screen of a terminal device, used to receive user commands while displaying the above-mentioned content, so as to realize interaction with the user.
[0117] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0118] Figure 2 A flowchart illustrating the method for generating video slice recommendation information provided in this application. Figure 1,like Figure 2 As shown, the method includes:
[0119] S201. Obtain the learning behavior data of the target learners and the metadata of the full video slices.
[0120] In some embodiments, learning behavior data includes at least one of the following: student identifier, organization affiliation, job position, number of logins, number of learning sessions, course learning duration, video segment learning duration, course completion rate, video segment completion rate, learned course identifier, taken exam identifier, exam score, and incorrect question identifier.
[0121] In some embodiments, the full video slice metadata includes at least one of the following: video slice identifier, course identifier, slice keywords, number of times it has been studied, slice duration, and overall slice completion rate.
[0122] In this embodiment, for example, the course learning time can be 20 minutes, the video slice learning time can be 5 minutes, and the slice time can be 10 minutes.
[0123] In some embodiments, the full video slice metadata also includes the total course duration, for example, 45 minutes.
[0124] S202. Construct a multidimensional feature vector based on learning behavior data and full video slice metadata; the multidimensional feature vector includes student feature vector and video slice feature vector.
[0125] In this embodiment, the multidimensional feature vector may also include the trainee's job feature vector.
[0126] S203. Construct a training dataset based on the multidimensional feature vectors; where, in the training dataset, the student feature vector is the independent variable, and the video slice identifier of the target student is the dependent variable.
[0127] In this embodiment, the independent variables include at least one of the following: student identifier, organization, position, course completion rate, video segment completion rate, exam participation identifier, exam score, and incorrect question identifier.
[0128] The dependent variable includes the learned video slice identifiers.
[0129] S204. Optimize the training dataset according to the preset optimization rules to obtain the target training dataset.
[0130] In this embodiment, the optimization process includes removing invalid interfering data sources or supplementing with high-quality data sources.
[0131] S205. Based on the target training dataset, train the preset neural network model with independent variables as model inputs and dependent variables as model outputs to generate a video slice recommendation model; wherein, the video slice recommendation model is used to generate video slice recommendation information for the target learners according to preset weights.
[0132] In this embodiment, the preset weights include knowledge point association weights or job recommendation weights; job recommendation weights can be dynamically adjusted according to the student's job attributes; or knowledge point association weights can be adjusted according to the obtained student feedback information.
[0133] The method for generating video slice recommendation information provided in this application constructs a multi-dimensional feature vector by acquiring the learning behavior data of the target learner and the metadata of all video slices. This multi-dimensional feature vector includes learner feature vectors and video slice feature vectors. A training dataset is constructed based on the multi-dimensional feature vectors, where the learner feature vector is the independent variable and the video slice identifier of the target learner is the dependent variable. The training dataset is optimized according to preset optimization rules to obtain a target training dataset. Based on the target training dataset, a preset neural network model is trained using the independent variables as model inputs and the dependent variable as model outputs to generate a video slice recommendation model. This video slice recommendation model is used to generate video slice recommendation information for the target learner based on preset weights. This method solves the problems of coarse recommendation granularity and low feature correlation in existing technologies, improving the accuracy and scene adaptability of the generated video slice recommendation information.
[0134] Figure 3 A flowchart illustrating the method for generating video slice recommendation information provided in this application. Figure 2 ,like Figure 3 As shown, in this embodiment... Figure 2 Based on the embodiments, the method for generating video slice recommendation information is described in detail. The method includes:
[0135] S301. Obtain all learning behavior data of all students within the preset learning interval.
[0136] In this embodiment, the full learning behavior data includes the number of logins, the number of learning sessions, the duration of each learned course, and the total duration of each course within the preset learning period; wherein, the duration of each learned course refers to the actual time that the student completes the learning for the learned course within the preset learning period, and the total duration of each course refers to the total video duration of the course on the learning platform.
[0137] For example, for a learning platform with a student body larger than the preset number of students (e.g., 600,000), acquiring all the learning behavior data of all students would result in a huge consumption of computing power. In order to save computing resources and improve computing efficiency, the preset learning period can be the most recent year.
[0138] S302. Calculate the completion rate for each student based on the total learning behavior data.
[0139] In this embodiment, the calculation formula for the completion rate of each student is as follows:
[0140]
[0141] In the formula, s represents the student identifier, k represents the course identifier, and T represents the preset learning interval. This represents the amount of content learned by student s in course k within a preset learning interval T. Let k be the total duration of course k. This is an extreme value, capped at 1, indicating that the learned time does not exceed the total time. Let R1 and R2 be the completion rate index for student s within a preset learning interval T, and R1 and R2 be the threshold values for the completion rate index, respectively. Within the completion rate threshold, the completion rate indicator The value is 1, and else represents the completion rate index. If the completion rate is not within the threshold range, then the completion rate indicator... The value is 0.
[0142] For example, R1 can be 0.05, and R2 can be 0.9; if the completion rate index A value below 0.05 indicates that this student does not require video segment recommendations. If the completion rate indicator... A score above 0.9 indicates that the student is more suitable for a complete course recommendation.
[0143] S303. Calculate the activity index for each student based on the full learning behavior data.
[0144] In this embodiment, the formula for calculating each student's activity index is as follows:
[0145]
[0146] In the formula, For student s, The ratio of the number of times student s learns to the number of times they log in within a preset learning interval T is used to represent the activity metric. As the baseline activity threshold, For activity levels above the baseline activity threshold Average activity level of all students For adjustment coefficients, This is the extreme value, capped at 1, to avoid extreme values. Other parameters are the same as above.
[0147] S304. Calculate the first comprehensive indicator for each student based on the completion rate and activity level indicators.
[0148] In this embodiment, the formula for calculating the first comprehensive index for each trainee is as follows:
[0149]
[0150] In the formula, This is the primary comprehensive indicator for student s; other parameters are as shown above.
[0151] S305. Based on the first comprehensive indicator and the preset first indicator threshold, determine whether the student is a target student.
[0152] In this embodiment, for example, the preset first indicator threshold can be 1. If the first comprehensive indicator of student s is... If the value is greater than 1, then student s is identified as the target student; where the target student is a student whose activity level is greater than the preset activity level threshold and whose completion rate is within the preset completion rate threshold. The target student is a group suitable for video slice recommendation.
[0153] S306. If so, store the learning behavior data of the target learners in the target learner database.
[0154] In this embodiment, the learning behavior data of the target learners is acquired and stored in the target learner database. By screening the target learners, the calculation of the learning behavior data of all learners is avoided, which greatly saves computing resources and improves the efficiency of generating subsequent video slice recommendation information.
[0155] The method for generating video slice recommendation information provided in this application improves the targeting and scenario adaptability of the generated video slice recommendation information by selecting target learners suitable for video slice recommendation information generation based on the dimensions of activity level and completion rate, thereby improving the accuracy of video slice recommendation information generation.
[0156] Figure 4 A flowchart illustrating the method for generating video slice recommendation information provided in this application. Figure 3 ,like Figure 4 As shown, in this embodiment... Figure 2 Based on the examples, the video slice recommendation method is described in detail, which includes:
[0157] S401. Obtain the number of times all target students have studied.
[0158] S402. Based on the preset learning frequency level conditions, select target students from all target students whose learning frequency meets the preset learning frequency level conditions.
[0159] S403. Obtain learning behavior data corresponding to target learners whose learning frequency meets the preset learning frequency level conditions.
[0160] S404. Based on the preset learning frequency threshold, select target students from all target students whose learning frequency meets the preset learning frequency threshold.
[0161] S405. Obtain learning behavior data corresponding to target learners whose learning frequency meets the preset learning frequency threshold.
[0162] In this embodiment, after executing step S401, steps S402 to S403, or steps S404 to S405, can be executed.
[0163] For example, after the learning platform has been used for a period of time, a large amount of video courses and video clip data has been generated. Some students have studied the video clips less than the preset learning frequency threshold. Therefore, these students are less relevant to the learning platform. Then, steps S402 to S403 are executed to obtain the learning behavior data of the target students in the past three months. The preset learning frequency threshold is that the target students have studied the video clips in the top 60% of the time.
[0164] In some embodiments, if the number of learning behavior data corresponding to the selected target learners is greater than the preset maximum number of learning behavior data, then random screening is performed on the learning behavior data of the target learners in the most recent three months, and the preset maximum number of learning behavior data is retained.
[0165] In the early stages of the learning platform's application, since the number of video slice data is lower than the preset threshold and the learning amount of the target students on the video slices is lower than the preset learning amount threshold, all the data of the video slices are used as the data source, and steps S404 to S405 are executed to obtain the learning behavior data of the target students in the past three months; wherein, the preset learning number threshold condition can be that the target students have a learning number of video slices greater than 0.
[0166] After performing steps S402 to S403, or steps S404 to S405, a training dataset PX is constructed based on the learning behavior data of the target learners within the past three months; where PX = {PX1, PX2, ..., PX...} K}, where K is the number of data tuples in the training dataset PX.
[0167] The video slice recommendation information generation method provided in this application selects learning behavior data of target learners under different conditions and with different selection criteria to construct a training dataset. It fully preserves the effective learning data of video slices in the early stage of the application of the learning platform, while simplifying and filtering low-quality learning records of courses, thereby improving the representativeness and quality of the dataset. It reduces redundant data, lowers training costs, adapts to the large learner data scenario of the learning platform, and ensures the efficiency of model training and the accuracy of the generated recommendation information.
[0168] In some embodiments, for data tuples in the training dataset where the dependent variable is the video slice identifier, since the data tuples in the training dataset are all historical real learning information of students on the learning platform, there will be some low-quality data tuples. If such low-quality data tuples are used as training set data, they will have a negative interference effect on the training results. Among them, the completion rate of low-quality data tuples is less than 10%, and the same source video slices of the video slice exist in the low-quality data tuples.
[0169] Figure 5 A flowchart illustrating the method for generating video slice recommendation information provided in this application. Figure 4 ,like Figure 5 As shown, in this embodiment... Figure 4 Based on the embodiments, a detailed explanation is provided on optimizing the training dataset according to preset optimization rules to obtain the target training dataset. This method includes:
[0170] S501. Obtain the video slice identifiers of each data tuple in the training dataset.
[0171] In this embodiment, the training dataset PX={PX1, PX2, ..., PX} is obtained. K Each data tuple PX in} K The video slice identifiers that have appeared in the video.
[0172] S502. Based on the video slice identifier, perform deduplication to obtain the first video slice set.
[0173] In this embodiment, duplicate values in the video slice identifiers are removed, and the unique video slice identifiers are stored in the first video slice set, resulting in the first video slice set ClassDB={C1, C2, ..., C...}. M}; where M is the number of video slices in the first video slice set ClassDB, and C M Used as a video slice identifier.
[0174] S503. Obtain the first target data from the first video slice set; wherein, the first target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold.
[0175] In this embodiment, the identifier C of each video slice in the first video slice set is obtained. M The corresponding target number of students S1, and the learning time for each target student LT m,s The target number of students whose video segment completion rate exceeds the preset completion rate threshold (CR) m,s The preset completion rate threshold can be 90%.
[0176] Among them, the target number of students whose video segment completion rate is greater than the preset completion rate threshold (CR) m,s The calculation formula is as follows:
[0177]
[0178] In the formula, CR m,s The target number of students whose video segment completion rate is greater than the preset completion rate threshold is set, and other parameters are the same as above.
[0179] S504. Determine the course identifier based on the video slice identifier.
[0180] In this embodiment, based on the video slice identifier C M Determine the video slice identifier C M The corresponding course identifier; where one video slice identifier corresponds to one course identifier, and one course identifier can correspond to at least one video slice identifier.
[0181] S505. Obtain all video slice identifiers belonging to the same course identifier to obtain the second video slice set.
[0182] In this embodiment, the second video slice set is ; i represents the sequence number of the video slice identifier corresponding to the same course identifier, om i These are the identifiers of video slices belonging to the same course.
[0183] S506. Obtain the second target data from the second video slice set; wherein, the second target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold.
[0184] In this embodiment, the identifier om of each video slice in the second video slice set is obtained. iThe corresponding target number of students S2, and the learning time for each target student LT om,s The target number of students with a video segment completion rate of over 90% (CR) om,s .
[0185] S507. Based on the first target data and the second target data, calculate the second comprehensive index of each data tuple in the training dataset.
[0186] In this embodiment, the calculation formula for the second comprehensive index of each data tuple is as follows:
[0187]
[0188] In the formula, The second comprehensive indicator for the data tuple is A1%, which represents a percentage and the value of A1 can be adjusted. A2% also represents a percentage and the value of A2 can be adjusted. B1 and B2 are preset completion rate thresholds. Other parameters are the same as above.
[0189] For example, if A1 is 10, then top A1% CR represents the number of target students in the top 10% m,s If A2 is 30, then top A2% CR represents the number of the top 30% of target students om,s If top A1% If the average completion rate is less than a preset completion rate threshold, then video slice m is considered an interference source; if the top A2% If the average completion rate is less than the preset completion rate threshold, then the video slice om is considered to be an interference source.
[0190] S508. Based on the second comprehensive index, optimize the training dataset to obtain the target training dataset; wherein, the optimization process includes retaining data tuples whose second comprehensive index is greater than or equal to the preset second index threshold.
[0191] In this embodiment, for each data tuple in the training dataset, if the second comprehensive index of the data tuple... If the data tuple is less than the preset second indicator threshold, then this data tuple is regarded as the interference source group and a deletion operation is performed. The data tuples with the second comprehensive indicator greater than or equal to the preset second indicator threshold are retained to obtain the target training dataset.
[0192] In some embodiments, in the early stages of the application of the learning platform, due to the small number of video slices, the training dataset is insufficient to support the training of the neural network model. Therefore, video slices from the same source that are obtained from high-quality data sources are calculated as new data tuples to supplement the training dataset.
[0193] Accordingly, such as Figure 6As shown, the training dataset is optimized according to preset optimization rules to obtain the target training dataset, which also includes:
[0194] S601. Calculate the third comprehensive index based on the first target data.
[0195] In this embodiment, the calculation formula for the third comprehensive index is as follows:
[0196]
[0197] In the formula, The third comprehensive indicator is A3%, which represents the percentage. The value of A3 can be adjusted. B3 is the preset completion rate threshold. Other parameters are as shown above.
[0198] S602. If the third comprehensive indicator meets the preset third indicator threshold, then the video slice identifier is determined as the target video slice identifier.
[0199] In this embodiment, if the third comprehensive index If the value is 1, it indicates that the video slice m is a high-quality video slice, and the video slice identifier C is considered to be... M Identify the target video slice.
[0200] S603. Determine the course identifier based on the target video slice identifier.
[0201] In this embodiment, based on the video slice identifier C M Determine the video slice identifier C M The corresponding course identifier.
[0202] S604. Obtain all video slice identifiers belonging to the same course identifier to obtain the third video slice set.
[0203] In this embodiment, the third video slice set is ;i is the sequence number of the video slice identifier corresponding to the same course identifier, oM i These are the identifiers of video slices belonging to the same course.
[0204] S605. Obtain the third target data from the third video slice set; wherein, the third target data includes the number of target students corresponding to each target video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold.
[0205] In this embodiment, the identifier oM of each video slice in the third video slice set is obtained. i The corresponding target number of students S4, and the learning time for each target student LT oM,sThe target number of students with a video segment completion rate of over 90% (CR) oM,s .
[0206] S606. Calculate the fourth comprehensive index based on the third target data.
[0207] In this embodiment, the formula for calculating the fourth comprehensive index is as follows:
[0208]
[0209] In the formula, The fourth comprehensive indicator is A4%, which represents the percentage. The value of A4 can be adjusted. B4 is the preset completion rate threshold. Other parameters are as shown above.
[0210] S607. Obtain the data tuples in the third video slice set where the fourth comprehensive index meets the preset fourth index threshold and the third comprehensive index meets the preset third index threshold, and add them to the training dataset as new data tuples to obtain the target training dataset.
[0211] In this embodiment, obtain It is 1, and The data tuples that are also 1 are added to the training dataset as new data tuples to obtain the target training dataset.
[0212] The method for generating video slice recommendation information provided in this application improves the accuracy of the target training dataset by performing corresponding optimization processing methods in different scenarios, thereby making the generated video slice recommendation information more accurate.
[0213] Figure 7 A schematic diagram of the structure of the device for generating video slice recommendation information provided in this application is shown below. Figure 7 As shown, the device for generating video slice recommendation information provided in this embodiment includes:
[0214] The acquisition module 701 is used to acquire the learning behavior data of the target learners and the metadata of the full video slices.
[0215] In one possible implementation, the learning behavior data includes at least one of the following: student identifier, organization affiliation, job position, number of logins, number of learning sessions, course learning duration, video segment learning duration, course completion rate, video segment completion rate, learned course identifier, taken exam identifier, exam score, and incorrect question identifier.
[0216] In one possible implementation, the full video segment metadata includes at least one of the following: video segment identifier, course identifier, segment keyword, number of times it has been studied, segment duration, and overall segment completion rate.
[0217] The first construction module 702 is used to construct a multi-dimensional feature vector based on learning behavior data and full video slice metadata; wherein, the multi-dimensional feature vector includes student feature vector and video slice feature vector.
[0218] The second construction module 703 is used to construct a training dataset based on multidimensional feature vectors; wherein, in the training dataset, the student feature vector is the independent variable and the video slice identifier of the target student is the dependent variable.
[0219] The optimization module 704 is used to optimize the training dataset according to preset optimization rules to obtain the target training dataset.
[0220] The generation module 705 is used to train a preset neural network model based on the target training dataset, with independent variables as model inputs and dependent variables as model outputs, to generate a video slice recommendation model; wherein, the video slice recommendation model is used to generate video slice recommendation information for the target learners according to preset weights.
[0221] In one possible implementation, before acquiring the learning behavior data of the target learners and the video slice metadata, the device for generating video slice recommendation information includes a storage module, which can specifically be used for:
[0222] Obtain all learning behavior data of all students within the preset learning interval;
[0223] Calculate the completion rate for each student based on all learning behavior data.
[0224] Calculate each student's activity index based on all learning behavior data;
[0225] Calculate each student's primary comprehensive indicator based on completion rate and activity level indicators;
[0226] Based on the first comprehensive indicator and the preset first indicator threshold, determine whether the student is a target student;
[0227] If so, the learning behavior data of the target learners will be stored in the target learner database.
[0228] In one possible implementation, the acquisition module 701 can also be used for:
[0229] Obtain the number of times each target student has studied;
[0230] Based on the preset learning frequency level conditions, select target students from all target students whose learning frequency meets the preset learning frequency level conditions;
[0231] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency level conditions;
[0232] or,
[0233] Based on the preset learning frequency threshold, select target students whose learning frequency meets the preset learning frequency threshold from all target students.
[0234] Acquire learning behavior data for target learners whose learning frequency meets the preset learning frequency threshold.
[0235] In one possible implementation, the optimization module 704 can also be used for:
[0236] Obtain the video slice identifiers for each data tuple in the training dataset;
[0237] Based on the video slice identifier, deduplication is performed to obtain the first set of video slices;
[0238] Obtain the first target data from the first video slice set; wherein, the first target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold;
[0239] Determine the course identifier based on the video segment identifier;
[0240] Obtain the identifiers of all video segments belonging to the same course to obtain the second set of video segments;
[0241] Obtain the second target data from the second video slice set; wherein, the second target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0242] Based on the first target data and the second target data, calculate the second comprehensive index for each data tuple in the training dataset;
[0243] The training dataset is optimized based on the second comprehensive index to obtain the target training dataset; the optimization process includes retaining data tuples whose second comprehensive index is greater than or equal to a preset second index threshold.
[0244] In one possible implementation, the optimization module 704 can also be used for:
[0245] Calculate the third comprehensive indicator based on the data from the first objective;
[0246] If the third comprehensive indicator meets the preset third indicator threshold, then the video slice identifier is determined as the target video slice identifier;
[0247] Determine the course identifier based on the target video slice identifier;
[0248] Obtain the identifiers of all video segments belonging to the same course to obtain the third set of video segments;
[0249] Obtain the third target data from the third video slice set; wherein, the third target data includes the number of target students corresponding to each target video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than the preset completion rate threshold;
[0250] Calculate the fourth comprehensive indicator based on the data from the third objective;
[0251] Obtain data tuples from the third video slice set whose fourth comprehensive index meets the preset fourth index threshold and whose third comprehensive index meets the preset third index threshold. Add these data tuples to the training dataset to obtain the target training dataset.
[0252] The video slice recommendation information generation device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0253] Figure 8 A schematic diagram of the structure of the electronic device provided in this application. Figure 8 As shown, the electronic device provided in this embodiment includes at least one processor 801 and a memory 802. Optionally, the electronic device further includes a communication component 803. The processor 801, memory 802, and communication component 803 are connected via a bus 804.
[0254] In a specific implementation, at least one processor 801 executes computer execution instructions stored in memory 802, causing at least one processor 801 to perform the above-described method.
[0255] The specific implementation process of processor 801 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0256] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0257] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0258] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0259] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0260] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0261] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0262] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0263] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0264] 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.
[0265] In addition, the functional units in the various embodiments of the present invention 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.
[0266] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0267] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0268] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A method of generating video slice recommendation information, characterized by, include: Acquire learning behavior data and full video segment metadata of the target learners; Based on the learning behavior data and the full video segment metadata, a multidimensional feature vector is constructed; wherein, the multidimensional feature vector includes a student feature vector and a video segment feature vector; A training dataset is constructed based on the multidimensional feature vector; wherein, in the training dataset, the student feature vector is the independent variable, and the video slice identifier of the target student is the dependent variable; The training dataset is optimized according to preset optimization rules to obtain the target training dataset. Based on the target training dataset, a preset neural network model is trained using the independent variable as the model input and the dependent variable as the model output to generate a video slice recommendation model; wherein, the video slice recommendation model is used to generate video slice recommendation information for the target learner according to preset weights.
2. The method of claim 1, wherein, Before acquiring the target learner's learning behavior data and video segment metadata, the process includes: Obtain all learning behavior data of all students within the preset learning interval; Based on the full learning behavior data, calculate the completion rate index for each student; Based on the full learning behavior data, calculate the activity index for each student; Calculate the first comprehensive indicator for each student based on the completion rate indicator and the activity level indicator; Based on the first comprehensive indicator and the preset first indicator threshold, determine whether the student is a target student; If so, the learning behavior data of the target learner will be stored in the target learner database.
3. The method according to claim 2, characterized in that, The learning behavior data includes at least one of the following: student identifier, organization affiliation, job position, number of logins, number of learning sessions, course learning duration, video segment learning duration, course completion rate, video segment completion rate, completed course identifier, completed exam identifier, exam score, and incorrect question identifier.
4. The method according to claim 3, characterized in that, The full video segment metadata includes at least one of the following: video segment identifier, course identifier, segment keywords, number of times it has been studied, segment duration, and overall segment completion rate.
5. The method according to claim 4, characterized in that, Before constructing the training dataset based on the multidimensional feature vectors, the following is included: Obtain the number of times all target students have studied; Based on the preset learning frequency level conditions, select target students whose learning frequency meets the preset learning frequency level conditions from all target students; Obtain learning behavior data corresponding to target learners whose learning frequency meets the preset learning frequency level conditions; or, Based on a preset learning frequency threshold, select target students from all target students whose learning frequency meets the preset learning frequency threshold. Obtain learning behavior data corresponding to target learners whose learning frequency meets the preset learning frequency threshold condition.
6. The method according to claim 4, characterized in that, The step of optimizing the training dataset according to preset optimization rules to obtain the target training dataset includes: Obtain the video slice identifier of each data tuple in the training dataset; Based on the video slice identifier, deduplication is performed to obtain the first video slice set; Obtain the first target data from the first video slice set; wherein, the first target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold; The course identifier is determined based on the video slice identifier; Obtain all video slice identifiers belonging to the same course identifier to obtain a second video slice set; Obtain the second target data from the second video slice set; wherein, the second target data includes the number of target students corresponding to each video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold; Based on the first target data and the second target data, calculate the second comprehensive index of each data tuple in the training dataset; Based on the second comprehensive index, the training dataset is optimized to obtain the target training dataset; wherein, the optimization process includes retaining data tuples whose second comprehensive index is greater than or equal to a preset second index threshold.
7. The method according to claim 6, characterized in that, The step of optimizing the training dataset according to preset optimization rules to obtain the target training dataset includes: Calculate the third comprehensive index based on the first target data; If the third comprehensive indicator meets the preset third indicator threshold, then the video slice identifier is determined to be the target video slice identifier; The course identifier is determined based on the target video slice identifier; Obtain all video slice identifiers belonging to the same course identifier to obtain a third video slice set; Obtain the third target data from the third video slice set; wherein, the third target data includes the number of target students corresponding to each target video slice identifier, the learning time of each target student, and the number of target students whose video slice completion rate is greater than a preset completion rate threshold; Calculate the fourth comprehensive index based on the third target data; The data tuples in the third video slice set that satisfy the preset fourth indicator threshold and the preset third indicator threshold are obtained as new data tuples and added to the training dataset to obtain the target training dataset.
8. A device for generating video slice recommendation information, characterized in that, include: The acquisition module is used to acquire the learning behavior data of the target learners and the metadata of the full video slices; The first construction module is used to construct a multi-dimensional feature vector based on the learning behavior data and the full video slice metadata; wherein the multi-dimensional feature vector includes a student feature vector and a video slice feature vector; The second construction module is used to construct a training dataset based on multidimensional feature vectors; wherein, in the training dataset, the student feature vector is the independent variable, and the video slice identifier of the target student is the dependent variable; An optimization module is used to optimize the training dataset according to preset optimization rules to obtain a target training dataset. The generation module is used to train a preset neural network model based on the target training dataset, using the independent variable as the model input and the dependent variable as the model output, to generate a video slice recommendation model; wherein, the video slice recommendation model is used to generate video slice recommendation information for the target learner according to preset weights.
9. An electronic device, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-7.
11. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method of any one of claims 1-7.