Back to Courses

Computer Science Courses - Page 160

Showing results 1591-1600 of 2309
I/O-efficient algorithms
Operations on data become more expensive when the data item is located higher in the memory hierarchy. An operation on data in CPU registers is roughly a million times faster than an operation on a data item that is located in external memory that needs to be fetched first. These data fetches are also called I/O operations and need to be taken into account during the design of an algorithm. The goal of this course is to become familiar with important algorithmic concepts and techniques needed to effectively deal with such problems. We will work with a simplified memory hierarchy, but the notions extend naturally to more realistic models. Prerequisites: In order to successfully take this course, you should already have a basic knowledge of algorithms and mathematics. Here's a short list of what you are supposed to know: - O-notation, Ω-notation, Θ-notation; how to analyze algorithms - Basic calculus: manipulating summations, solving recurrences, working with logarithms, etc. - Basic probability theory: events, probability distributions, random variables, expected values etc. - Basic data structures: linked lists, stacks, queues, heaps - (Balanced) binary search trees - Basic sorting algorithms, for example MergeSort, InsertionSort, QuickSort - Graph terminology, representations of graphs (adjacency lists and adjacency matrix), basic graph algorithms (BFS, DFS, topological sort, shortest paths) The material for this course is based on the course notes that can be found under the resources tab. We will not cover everything from the course notes. The course notes are there both for students who did not fully understand the lectures as well as for students who would like to dive deeper into the topics. The video lectures contain a few very minor mistakes. A list of these mistakes can be found under resources. If you think you found an error, report a problem by clicking the square flag at the bottom of the lecture or quiz where you found the error.
Edit and retouch images with Canva
At the end of this project, you will have all the basic skills to retouch and modify your images professionally using Canva, an online tool for creating and editing Marketing designs. You will be able to use the various image editing tools offered by Canva. This project is intended for beginners, people who have no knowledge of graphic design and especially those who would like to edit and retouch images in a professional and artistic way.
Building Conversational Experiences with Dialogflow
PLEASE NOTE: This course will close for new learner enrollment on January 22nd, 2021. If you would prefer to engage with our latest courses related to this material, please see the following courses: Contact Center AI: Conversational Design Fundamentals: https://www.coursera.org/learn/contact-center-ai-conversational-design-fundamentals/home/welcome. Contact Center AI: Building a Dynamic Virtual Agent: https://www.coursera.org/learn/contact-center-ai-building-a-dynamic-virtual-agent/home/welcome The Contact Center AI: Conversational Design Fundamentals and Contact Center AI: Building a Dynamic Virtual Agent courses have similar learning objectives to the ones in the course being deprecated in this notice. They walk learners through the process of identifying a use case, creating intents and entities for conversational agents, and using context and fulfillment for conversation awareness and third party system integrations. Since many use cases for virtual agents happen in the context of contact centers, we invite you to extend your expertise by taking additional courses in the Contact Center AI Specialization, although this is not required if your interest is solely on building automated conversational agents. Thanks, and happy learning, The Google Cloud Learning Services team Course Description: This course provides a deep dive into how to create a chatbot using Dialogflow, augment it with Cloud Natural Language API, and operationalize it using Google Cloud tools. >>> By enrolling in this course you agree to the Qwiklabs Terms of Service as set out in the FAQ and located at: https://qwiklabs.com/terms_of_service <<<
Bike Rental Sharing Demand Prediction with Machine Learning
In this 1-hour long project-based course, you will learn how to predict bike sharing demand with machine learning. Bike sharing services enable people to rent a bike from one location and drop it off at another location on an as-needed basis. The objective of this guided project is to predict bike sharing rental usage based on inputs such as temperature, season, humidity, wind speed. Note: This course works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.
Agile Project: App Development Acceptance Criteria inClickUp
By the end of this guided project, you will be fluent in creating acceptance criteria for mobile app features and tasks. You will utilise wireframe porotype segments in an agile project environment based on the customer journey with the products. This will enable you to identify and classify the required test cases for each functionality prior to development. Furthermore, it will help bring consensus between the client, the developing company and the software developers leading to measurable and successful implementation of the app functionality and features This is essential for generating positive results for your product development. Furthermore, this guided project is designed to engage and harness your visionary and exploratory abilities. You will use proven models in Agile Project Management with ClickUp to shape the development roadmap of products and services.
Intermediate Intel® Distribution of OpenVINO™ toolkit for Deep Learning Applications
This course is designed for application developers who wants to deploy computer vision inference workloads using the Intel® Distribution of OpenVINOTM toolkit. The course looks at computer vision neural network models from a variety of popular machine learning frameworks and covers writing a portable application capable of deploying inference on a range of compute devices. The course is targeted for application developers, and places focus on examples and discussion of the development workflow. As such, the discussions include not only the details about how to use the toolkit itself, but topics like how to take benchmarks to compare compute devices or what to do when you encounter issues. The course is made so that it serves as a how-to guide for developing a computer vision inference deployment with the toolkit. By the end of the course, students will have the skillset necessary to deploy their own computer vision application using the toolkit.
C++ Basic Structures: Vectors, Pointers, Strings, and Files
Code and run your first C++ program in minutes without installing anything! This course is designed for learners with limited coding experience, providing a solid foundation of not just C++, but core Computer Science topics that can be transferred to other languages. The modules in this course cover vectors, pointers, strings, and files. Completion of C++ Basics: Selection and Iteration before taking this course is recommended. To allow for a truly hands-on, self-paced learning experience, this course is video-free. Assignments contain short explanations with images and runnable code examples with suggested edits to explore code examples further, building a deeper understanding by doing. You'll benefit from instant feedback from a variety of assessment items along the way, gently progressing from quick understanding checks (multiple choice, fill in the blank, and un-scrambling code blocks) to small, approachable coding exercises that take minutes instead of hours.
Introduction to Java as a Second Language
This course is meant to be an introduction to Java as a second language, if you are familiar with any computer programming language. It could be shell scripting, knowledge of older Java versions, JavaScript, etc. This course will allow you to quickly pick up the Java programming language. You will learn Java Object Orientation, and see the parallels with other programming paradigms. This is course 1 of a 3 course Specialization titled Java as a Second Language. It assumes that you know some programming and want to transfer that knowledge into learning Java. Lab exercises will be performed using your system and Java installation. The instructor will guide you through setting up and configuring your environment and working through the labs. Java can be installed on just about any type of computer, but the instructor will demonstrate the installation on a Windows system.
Data Analysis and Representation, Selection and Iteration
This course is the second course in the specialization exploring both computational thinking and beginning C programming. Rather than trying to define computational thinking, we’ll just say it’s a problem-solving process that includes lots of different components. Most people have a better understanding of what beginning C programming means! This course assumes you have the prerequisite knowledge from the previous course in the specialization. You should make sure you have that knowledge, either by taking that previous course or from personal experience, before tackling this course. The required prerequisite knowledge is listed below. Prerequisite computational thinking knowledge: Algorithms and procedures, data collection Prerequisite C knowledge: Data types, variables, constants, and STEM computations Throughout this course you'll learn about data analysis and data representation, which are computational thinking techniques that help us understand what sets of data have to tell us. For the programming topics, you'll continue building on your C knowledge by implementing selection, which lets us decide which code to execute, and iteration (or looping), which lets us repeat chunks of code multiple times. Module 1: Learn about some common statistics we can calculate as we analyze sets of data Module 2: Discover how we make decisions in our code Module 3: Explore the various ways we can represent sets of data Module 4: Use iteration (looping) to repeat actions in your code
Capstone Project: Teaching Impacts of Technology
In this project-based course you’ll review the Advanced Placement Computer Science Principles course and exam description guide to prepare for the “Explore Task”, where students must research a recent computing innovation and and analyze its impacts on the world. You’ll also review the description of this task from the student perspective and complete the task yourself. Then you’ll assess sample secondary student work by following the APCSP scoring guidelines as well as provide feedback to a fellow learner on their submitted task and receive the same from fellow learners. This course is part of a larger Specialization, in which the first five courses focus on teaching impacts of computing concepts and the technology and computing concepts that make them possible, preparing you to teach pre-college learners to be both savvy and effective participants in their digital worlds. While this course and project can be completed without taking the other courses, the bulk of new knowledge is taught there. Additionally, throughout the courses you’ll reflect on your learning experience from both the perspective of the student and the educator, helping you become a more reflective teacher and develop an understanding of how instruction and activities can be designed to support learning. Note, if your goal is to receive graduate credit from the University of California, San Diego, you need to to make that decision before you complete this course. Please see the FAQ “Will I earn university credit for completing this course?” for details on how to receive that credit. In terms of CSTA K-12 computer science standards, throughout the Specialization we primarily cover learning objectives within the “impacts of computing” concept, while also including some within the “networks and the Internet” concepts and the “data and analysis” concept. Practices we cover include “fostering and inclusive computing culture”, “recognizing and defining computational problems”, and “communicating about computing”.